diff --git a/README.md b/README.md index ea728fd4..ec44df85 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,16 @@ - ì›�본 레거시 ë�°ì�´í„°ì�˜ ë°”ì�´íЏ 경로 정보는 manifestì—� ë³´ì¡´ë�©ë‹ˆë‹¤. - macOS 네ì�´í‹°ë¸Œë³´ë‹¤ Linux 컨테ì�´ë„ˆ 기반 실행ì�„ ìš°ì„  권장합니다. +## UTF-8 First ìš´ì˜� ì •ì±… +- í…�스트 리소스/소스는 UTF-8 기준으로 관리합니다. +- ë°”ì�´ë„ˆë¦¬ 산출물(`.exe`, `.arj`, `.mdp`, 실행 ë°”ì�´ë„ˆë¦¬ blob)ì�€ ì�¸ì½”딩 변환 대ìƒ�ì—�서 제외합니다. +- 소켓 ìž…ë ¥ 파ì�´í”„ë�¼ì�¸ì�€ UTF-8 strict 모드입니다. +- 잘못ë�œ UTF-8 시퀀스는 무시ë�˜ë©°, 백스페ì�´ìŠ¤ëŠ” 1ë°”ì�´íŠ¸ê°€ 아닌 1코드í�¬ì�¸íЏ 단위로 처리ë�©ë‹ˆë‹¤. +- 문ìž�ì—´ 길ì�´ 제한ì�€ ë°”ì�´íЏ 길ì�´(`strlen`)ê°€ 아니ë�¼ 유니코드 코드í�¬ì�¸íЏ 길ì�´ 기준입니다. +- 플레ì�´ì–´ ì�´ë¦„ì�€ 유니코드 문ìž�ì—´ì�„ 허용하며, 금지 문ìž�(제어문ìž�, `/` 등)는 차단ë�©ë‹ˆë‹¤. +- 플레ì�´ì–´ 저장 경로는 ì�´ë¦„ 첫 글ìž� 분기(`first_han`)ê°€ 아니ë�¼ SHA-1 2ìž�리 샤딩(`player//`)ì�„ 사용합니다. +- CP949 플레ì�´ì–´ 파ì�¼/입력과ì�˜ 하위 호환ì�€ 제공하지 않습니다. + ## macOS 호환 패치 ë‚´ì—­ - 브랜치: `feat/macos-compat` - 목ì �: macOS(Apple clang)ì—�서 네ì�´í‹°ë¸Œ 빌드/기ë�™ì�´ 가능하ë�„ë¡� 레거시 C 코드 호환성 ë³´ê°• diff --git a/docs/board_make b/docs/board_make index ae5d5e18..f485daeb 100644 --- a/docs/board_make +++ b/docs/board_make @@ -1,43 +1,43 @@ -<< °Ô½ÃÆÇ >> +<< 게시íŒ� >> -Mordor¿¡ °Ô½ÃÆÇ ±â´ÉÀÌ ¾ø¾î ¸¸µé¾ú½À´Ï´Ù. -¼Ò½º¸¦ º¸½Ã¸é ¾ÆÁÖ Á¶ÀâÇÏ°Ô ¸¸µé¾î Á®¼­ -ºÐ¼®ÇϱⰡ Èûµé¼öµµ ÀÖ½À´Ï´Ù.. +Mordorì—� 게시íŒ� 기능ì�´ 없어 만들었습니다. +소스를 보시면 아주 조잡하게 만들어 져서 +ë¶„ì„�하기가 힘들수ë�„ 있습니다.. -board.c¶ó´Â È­ÀϸíÀ¸·Î µÇ¾î ÀÖ°í.. -includeÈ­ÀÏ·Î board.hµµ ÀÖ½À´Ï´Ù. +board.cë�¼ëŠ” í™”ì�¼ëª…으로 ë�˜ì–´ 있고.. +includeí™”ì�¼ë¡œ board.hë�„ 있습니다. -°Ô½ÃÆÇÀº object¸¦ ÀÌ¿ëÇØ¼­ ÀнÀ´Ï´Ù. -objectÀÇ specialº¯¼ö°ª(4=SP_BOARD)À¸·Î -°Ô½ÃÆÇÀÎÁö¸¦ È®ÀÎÇϸç, -typeº¯¼ö·Î ¿©·¯°³ÀÇ °Ô½ÃÆÇÀ» Á¤ÀÇÇÒ¼öµµ ÀÖÀ¸¸ç -ÇϳªÀÇ °Ô½ÃÆÇÀ» ¿©·¯°÷¿¡¼­ ÀÐÀ»¼ö ÀÖ½À´Ï´Ù. -¶È°°Àº °Ô½ÃÆÇ object¸¦ ¿©·¯ ¹æ¿¡ µÎ¸é µÇ°ÚÁö¿ä. -°Ô½ÃÆÇÀº 18¹ø Ç÷¡±×¸¦ ÁÖ¾î ÀÏ¹Ý Ä³¸¯ÅͰ¡ -ÁýÀ»¼ö ¾ø°Ô Çϰí, 19¹ø Ç÷¡±×¸¦ ÁÖ¾î ¾Èº¸ÀÌ°Ô ÇÒ ¼öÀÖ½À´Ï´Ù. +게시íŒ�ì�€ object를 ì�´ìš©í•´ì„œ ì�½ìŠµë‹ˆë‹¤. +objectì�˜ special변수값(4=SP_BOARD)으로 +게시íŒ�ì�¸ì§€ë¥¼ 확ì�¸í•˜ë©°, +type변수로 여러개ì�˜ 게시íŒ�ì�„ ì •ì�˜í• ìˆ˜ë�„ 있으며 +하나ì�˜ 게시íŒ�ì�„ 여러곳ì—�서 ì�½ì�„수 있습니다. +똑같ì�€ 게시íŒ� object를 여러 ë°©ì—� ë‘�ë©´ ë�˜ê² ì§€ìš”. +게시íŒ�ì�€ 18번 플래그를 주어 ì�¼ë°˜ ìº�릭터가 +ì§‘ì�„수 없게 하고, 19번 플래그를 주어 안보ì�´ê²Œ í•  수있습니다. -board.cÀÇ board_dir[]¹è¿­¿¡ º¸¸é.. +board.cì�˜ board_dir[]ë°°ì—´ì—� ë³´ë©´.. { 100, "/home/mordor/board/info" }, -·Î µÇ¾î Àִµ¥... -100 Àº typeº¯¼ö¿¡ ÀÔ·ÂÇÏ´Â °ª, Áï °Ô½ÃÆÇÀ» ±¸ºÐÇϴ°ÍÀÔ´Ï´Ù.. -´Ù¸¥ ¼ýÀÚ¸¦ Ãß°¡ÇÏ¿© ´Ù¸¥ °Ô½ÃÆÇÀ» ¸¸µé¾îµµ µÇ°ÚÁö¿ä.. -´ÙÀ½Àº °Ô½ÃÆÇÀÇ ÀÚ·á°¡ ¸¸µé¾îÁö´Â µð·ºÅ丮ÀÔ´Ï´Ù. -°Ô½ÃÆÇÀ» óÀ½ ¸¸µé¸é °Ô½ÃÆÇ µð·ºÅ丮¿¡¼­ touch board_index -¶ó°í ÀÔ·ÂÇÏ¿© 0¹ÙÀÌÆ®ÀÇ board_indexÈ­ÀÏÀ» ¸¸µé¾îÁÖ¾î¾ß ÇÕ´Ï´Ù. -ÀÔ·ÂµÈ ÀÚ·á´Â board.¹øÈ£ ÀÇ Çü½ÄÀ¸·Î ÀúÀåÀÌ µÇ°í -parseÀÇ Æ¯¼º»ó 1¹øÀº ÀÐÁö ¸øÇϵµ·Ï ÇØµÎ¾ú½À´Ï´Ù. - -board.c¸¦ ¼öÁ¤ÈÄ Àç ÄÄÆÄÀÏÇØÁØ ÈÄ ¸®º×ÇÏ¸é °Ô½ÃÆÇÀ» ¾µ ¼ö ÀÖ½À´Ï´Ù. -»ç¿ë¹ýÀº '°Ô½ÃÆÇ µµ¿ò' À̶ó°í ÇØº¸½Ã¸é ³ª¿É´Ï´Ù. - -À§ÀÇ ³»¿ëÀ» Á¤¸®Çغ¸¸é... - -1. board.cÀÇ board_dir[]º¯¼ö¿¡ type°ª°ú µð·ºÅ丮¸¦ ³Ö´Â´Ù. -2. object¸¦ Çϳª ¸¸µé¾î type¿¡ 1¹ø¿¡¼­ ÀÔ·ÂÇÑ °ªÀ» ³Ö°í, - special¿¡ 4(=SP_BOARD)¸¦ ³Ö´Â´Ù. -3. 1¹ø¿¡¼­ ¼³Á¤ÇÑ µð·ºÅ丮·Î °¡¼­ touch board_index¸¦ ½ÇÇàÇÑ´Ù. -4. °Ô½ÃÆÇÀ» µÑ ¹æ¿¡ 2¹ø¿¡¼­ ¸¸µç object¸¦ ³Ö´Â´Ù. -5. ÄÄÆÄÀÏ ÈÄ ¸®ºÎÆÃÇÑ´Ù. -6. °Ô½Ã¹°À» Çϳª ¾´ ÈÄ [°Ô½ÃÆÇ 1 ±Û»èÁ¦]¸¦ ÀÔ·ÂÇÏ¿© 1¹ø °Ô½Ã¹°Àº Áö¿î´Ù. - -- ³¡ - +로 ë�˜ì–´ 있는ë�°... +100 ì�€ type변수ì—� 입력하는 ê°’, 즉 게시íŒ�ì�„ 구분하는것입니다.. +다른 숫ìž�를 추가하여 다른 게시íŒ�ì�„ 만들어ë�„ ë�˜ê² ì§€ìš”.. +다ì�Œì�€ 게시íŒ�ì�˜ ìž�료가 만들어지는 디렉토리입니다. +게시íŒ�ì�„ 처ì�Œ 만들면 게시íŒ� 디렉토리ì—�서 touch board_index +ë�¼ê³  입력하여 0ë°”ì�´íЏì�˜ board_indexí™”ì�¼ì�„ 만들어주어야 합니다. +ìž…ë ¥ë�œ ìž�료는 board.번호 ì�˜ 형ì‹�으로 저장ì�´ ë�˜ê³  +parseì�˜ 특성ìƒ� 1번ì�€ ì�½ì§€ 못하ë�„ë¡� í•´ë‘�었습니다. + +board.c를 수정후 재 컴파ì�¼í•´ì¤€ 후 리붓하면 게시íŒ�ì�„ 쓸 수 있습니다. +사용법ì�€ '게시íŒ� ë�„움' ì�´ë�¼ê³  해보시면 나옵니다. + +위ì�˜ ë‚´ìš©ì�„ 정리해보면... + +1. board.cì�˜ board_dir[]변수ì—� typeê°’ê³¼ 디렉토리를 넣는다. +2. object를 하나 만들어 typeì—� 1번ì—�서 입력한 ê°’ì�„ 넣고, + specialì—� 4(=SP_BOARD)를 넣는다. +3. 1번ì—�서 설정한 디렉토리로 가서 touch board_index를 실행한다. +4. 게시íŒ�ì�„ 둘 ë°©ì—� 2번ì—�서 만든 object를 넣는다. +5. 컴파ì�¼ 후 리부팅한다. +6. 게시물ì�„ 하나 ì“´ 후 [게시íŒ� 1 글삭제]를 입력하여 1번 게시물ì�€ 지운다. + +- ë�� - diff --git a/docs/cmd_ital b/docs/cmd_ital index 90ccd4a0..29bd1913 100644 --- a/docs/cmd_ital +++ b/docs/cmd_ital @@ -1,6 +1,6 @@ -telnet ´ë½Å italk¸¦ »ç¿ë ÇϽʽÿÀ. -italk´Â telnet¿¡ ºñÇØ ¸Þ¸ð¸®°¡ Àý¾àµÇ°í, ´õ ºü¸¨´Ï´Ù. -»ç¿ëÇÏ´Â ¹æ¹ýÀº ´ÙÀ½°ú °°½À´Ï´Ù. +telnet 대신 italk를 사용 하십시오. +italk는 telnetì—� 비해 메모리가 절약ë�˜ê³ , ë�” 빠릅니다. +사용하는 방법ì�€ 다ì�Œê³¼ 같습니다. italk localhost 4000 diff --git a/docs/crt_expg b/docs/crt_expg index 16563321..899b458f 100644 --- a/docs/crt_expg +++ b/docs/crt_expg @@ -1,4 +1,4 @@ -¹«ÇÑ´ëÀü ¸÷ÀÇ Ç¥ÁØÀû µ¥ÀÌŸ Å×À̺í +무한대전 몹ì�˜ 표준ì � ë�°ì�´íƒ€ í…Œì�´ë¸” LEVEL STATS HP's AC TO XP's DAM 1 55 10 90 19 10 5 diff --git a/docs/crt_flag b/docs/crt_flag index 3ff213e1..bcd213ac 100644 --- a/docs/crt_flag +++ b/docs/crt_flag @@ -1,247 +1,247 @@ -Á¦¸ñ Ç÷¹±× ¹øÈ£ Á¤ÀÇ +제목 플레그 번호 ì •ì�˜ ================================================================== Permanent Monster 1 Perm MPERMT - °íÁ¤µÈ ¸÷À¸·Î½á Á¤ÀÇµÈ ÀÏÁ¤ÇÑ ½Ã°£ °£°ÝÀ¸·Î °è¼Ó ÃâÇöÇÑ´Ù. + ê³ ì •ë�œ 몹으로ì�¨ ì •ì�˜ë�œ ì�¼ì •한 시간 간격으로 계ì†� 출현한다. Hidden 2 MHIDDN - ¼û¾îÀÖ´Â ¸÷À¸·Î ã±âÀü¿¡´Â º¸ÀÌÁö ¾Ê´Â´Ù. + 숨어있는 몹으로 찾기전ì—�는 ë³´ì�´ì§€ 않는다. Invisible 3 Invis MINVIS - ÀºµÐµÇ ÀÖ´Â ¸÷À¸·Î ÀºµÐ°¨Áö°¡ °¡´ÉÇÏÁö ¾ÊÀ¸¸é º¸ÀÌÁö ¾Ê´Â´Ù. + ì�€ë‘”ë�˜ 있는 몹으로 ì�€ë‘”ê°�지가 가능하지 않으면 ë³´ì�´ì§€ 않는다. Plural name 4 MTOMEN - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. No Plural 5 MDROPS - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. No Prefix 6 MNOPRE - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. Aggressive 7 Aggr MAGGRE - °ø°Ý ¼ºÇâÀ» °¡Áø ¸÷À¸·Î º¸ÀÌ´Â »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 공격 성향ì�„ 가진 몹으로 ë³´ì�´ëŠ” 사용ìž�를 공격한다. Guard Treasure 8 Guard MGUARD - ¹æ¿¡ ¶³¾îÁ® ÀÖ´Â ¹°°ÇÀ» ÁýÁö ¸øÇÏ°Ô ¹æÇØÇÑ´Ù. + ë°©ì—� 떨어져 있는 물건ì�„ ì§‘ì§€ 못하게 방해한다. Follow attacker 10 Follow MFOLLO - »ç¿ëÀÚ°¡ µµ¸Á°¥°æ¿ì »ç¿ëÀÚ¸¦ µû¶ó°£´Ù. + 사용ìž�ê°€ ë�„ë§�갈경우 사용ìž�를 ë”°ë�¼ê°„다. Flee 11 Flee MFLEER - ÀÚ½ÅÀÇ Ã¼·ÂÀÌ À§ÇèÇÒ °æ¿ì µµ¸Á°£´Ù. + ìž�ì‹ ì�˜ ì²´ë ¥ì�´ 위험할 경우 ë�„ë§�간다. Scavenger 12 Scav MSCAVE - ¶§¶§·Î ¶¥¿¡ ¹°°ÇÀ» Áý¾î °¡Áö±âµµ ÇÑ´Ù. + 때때로 ë•…ì—� 물건ì�„ ì§‘ì–´ 가지기ë�„ 한다. Gender 13 Male MMALES - ³²¼º°ú ¿©¼ºÀ» ±¸ºÐÇÏ´Â Ç÷¹±·É´²¡¼³Á¤µÇ¸é ³²¼º, ¼³Á¤ ¾ÊµÇ¸é - ¿©¼ºÀÌ µÈ´Ù. + 남성과 여성ì�„ 구분하는 플레굣�눠ã€�냇ㅅ퓔� 남성, 설정 않ë�˜ë©´ + 여성ì�´ ë�œë‹¤. Poisoner 14 Poison MPOISS - »ç¿ëÀÚ¸¦ Áßµ¶½Ãų¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ´Ù. + 사용ìž�를 중ë�…시킬수 있는 능력ì�´ 있다. Undead 15 Undead MUNDED - ºÎȰÇÑ ½Ãü·Î ¹æÈ¥¼ú·Î ¹°¸®Ä¥¼ö ÀÖ´Ù. + 부활한 시체로 방혼술로 물리칠수 있다. No Steal 16 No-steal NUNSTL - µµµÏÀÌ ¾ÆÀÌÅÛÀ» ÈÉÃij¾¼ö ¾ø°Ô ÇÑ´Ù. + ë�„ë‘‘ì�´ ì•„ì�´í…œì�„ í›”ì³�낼수 없게 한다. Poisoned 17 Poisoned MPOISN - Áßµ¶µÇ À־ ÀÏÁ¤ ½Ã°£ÀÌ Áö³ª¸é Á״´Ù. + 중ë�…ë�˜ 있어서 ì�¼ì • 시간ì�´ 지나면 죽는다. Casts spells 18 Magic MMAGIC - ÀüÅõÁß¿¡ »ç¿ëÀÚ³ª Àڽſ¡°Ô ¼³Á¤µÈ ÁÖ¹®À» ¿Ü¿ö °ø°ÝÇϰųª - ÀÚ½ÅÀ» Ä¡·áÇÑ´Ù. + 전투중ì—� 사용ìž�나 ìž�ì‹ ì—�게 설정ë�œ 주문ì�„ 외워 공격하거나 + ìž�ì‹ ì�„ 치료한다. Has Scavenged 19 MHASSC - ¾²ÀÌÁö ¾Ê´Â´Ù. + ì“°ì�´ì§€ 않는다. Breath Weapon Attack 20 MBRETH - ¿ëÀÇ ¹«±â¸¦ »ç¿ëÇÏ´Â flag·Î ¼³Á¤µÇ¸é 29/30 Ç÷¹±× ¼³Á¤À» µû¶ó¼­ - ÀüÅõÁß¿¡ °ø°ÝÇÏ°Ô µÈ´Ù. + ìš©ì�˜ 무기를 사용하는 flag로 설정ë�˜ë©´ 29/30 플레그 설정ì�„ ë”°ë�¼ì„œ + 전투중ì—� 공격하게 ë�œë‹¤. Type of breath 29/30 MBRWP1/MBRWP2 - ÀÌ µÎ°³ÀÇ Ç÷¹±×ÀÇ Á¶ÇÕÀ¸·Î °ø°ÝÇÏ´Â ¹æ½ÄÀÌ Æ²·ÁÁø´Ù. - ´ëºÎºÐ ¿ëÀÇ °ø°ÝÀ¸·Î ¼³Á¤µÇ¸ç ±×¹æ½ÄÀº ´ÙÀ½°ú °°´Ù. + ì�´ ë‘�ê°œì�˜ 플레그ì�˜ 조합으로 공격하는 ë°©ì‹�ì�´ 틀려진다. + 대부분 ìš©ì�˜ 공격으로 설정ë�˜ë©° 그방ì‹�ì�€ 다ì�Œê³¼ 같다. - (0,0) = È­¿° °ø°Ý, (01) = ³Ã±â °ø°Ý, - (1,0) = °¡½º °ø°Ý, (1,1) = µ¶ °ø°Ý + (0,0) = 화염 공격, (01) = 냉기 공격, + (1,0) = 가스 공격, (1,1) = ë�… 공격 Magic Harm Only 21 Magic-only MMGONL - ¸ðµç À°Ã¼Àû °ø°ÝÀ» °ßµð¾î ³½´Ù. ¿À·ÎÁö ÁÖ¹®À¸·Î¼­¸¸ - °ø°Ý ¹ÞÀ»¼ö ÀÖ´Ù. + 모든 육체ì � 공격ì�„ 견디어 낸다. 오로지 주문으로서만 + 공격 ë°›ì�„수 있다. Detect Invisibility 22 Detect-invis MDINVIS - ÀºµÐÇÑ »ç¿ëÀÚ¸¦ º¼¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ´Ù. + ì�€ë‘”한 사용ìž�를 볼수 있는 능력ì�´ 있다. Magic / Enchant 23 Enchant-only MENONL - (+)µÈ ¹«±â³ª ºùÀǰ¡ °É¸° ¹«±â·Î¸¸ °ø°ÝÀÌ °¡´ÉÇÏ´Ù. + (+)ë�œ 무기나 ë¹™ì�˜ê°€ 걸린 무기로만 공격ì�´ 가능하다. Interactive Talk 24 Talks MTALKS - objmon/talk¿¡ ¼³Á¤µÈ ÆÄÀÏÀ» Àо »ç¿ëÀÚ¿Í ´ëÈ­¸¦ °¡´ÉÇÏ°Ô - ÇÑ´Ù. Çü½ÄÀº "¸÷À̸§_·¹º§"ÀÌ´Ù. ¿¹ "°è¼®Ä¡¹«_25" + objmon/talkì—� 설정ë�œ 파ì�¼ì�„ ì�½ì–´ì„œ 사용ìž�와 대화를 가능하게 + 한다. 형ì‹�ì�€ "몹ì�´ë¦„_레벨"ì�´ë‹¤. 예 "계ì„�치무_25" No Harm 25 Unkillable MUNKIL - °ø°ÝÇÒ¼öµµ ¹ÞÀ»¼öµµ ¾ø´Â ¸÷ÀÌ´Ù. + 공격할수ë�„ ë°›ì�„수ë�„ 없는 몹ì�´ë‹¤. Fix amount of gold 26 NonrandGold MNRGLD - º¸É²ª¡¼³Á¤µÈ ¹üÀ§³»¿¡¼­ µ·ÀÌ ·£´ýÇÏ°Ô ³ª¿À³ª ¼³Á¤µÇ¸é - °íÁ¤µÈ ¾çÀÇ µ·À» °®°í ÀÖ´Ù. + 보�꺾ã€�냇ㅅ� 범위내ì—�서 ë�ˆì�´ ëžœë�¤í•˜ê²Œ 나오나 설정ë�˜ë©´ + ê³ ì •ë�œ ì–‘ì�˜ ë�ˆì�„ ê°–ê³  있다. Aggressive talk 27 Talk-aggr MTLKAG - ¸»À» °Å´Â »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + ë§�ì�„ 거는 사용ìž�를 공격한다. Resist-magic 28 Resist-magic MRMAGI - ÁÖ¹®¿¡ ³»¼ºÀÌ »ý±ä´Ù. ¾î´ÀÁ¤µµ ´É·Â¿¡ µû¶ó¼­ ³»¼ºÀÇ - Á¤µµ´Â Â÷À̰¡ ÀÖ´Ù. + 주문ì—� 내성ì�´ ìƒ�긴다. ì–´ëŠ�ì •ë�„ 능력ì—� ë”°ë�¼ì„œ 내성ì�˜ + ì •ë�„는 ì°¨ì�´ê°€ 있다. Experience Drain 31 Energy Drain MENEDR - °ø°ÝÀÚÀÇ °æÇèÄ¡¸¦ °¡²û¾¿ ±ï¾Æ¸Ô´Â´Ù. + 공격ìž�ì�˜ 경험치를 ê°€ë�”씩 ê¹�아먹는다. Kingdom allegiance 32 MKNGDM - ¿Õ±¹¿¡ ¼Ò¼ÓµÈ ¸÷À» ¶æÇÑ´Ù. À̼³Á¤É±¢¡µÇ¾ß ³ª¸ÓÁö ¿Õ±¹°ü·Ã - Ç÷¹±×µéÀÌ ÀÛµ¿ÇÑ´Ù. + 왕국ì—� 소ì†�ë�œ 몹ì�„ 뜻한다. ì�´ì„¤ì •�ê´�〉퓸� 나머지 왕국관련 + 플레그들ì�´ ìž‘ë�™í•œë‹¤. Pledge 33 Pledge 0/1 MPLDGK - »ç¿ëÀÚµéÀº ÀÌ Ç÷¹±×°¡ ¼³Á¤µÈ ¸÷ÀÇ ¿Õ±¹¿¡ °¡À﵂ ÀÖÀ¸¸ç - µÚ¿¡ 53¹ø ÀÌÇÏ ¿Õ±¹ Ç÷¹±×°¡ µ¿½Ã¿¡ ¼³Á¤µÇ ÀÖ¾î¾ß ÇÑ´Ù. + 사용ìž�들ì�€ ì�´ 플레그가 설정ë�œ 몹ì�˜ 왕국ì—� 가입ë�˜ 있으며 + ë’¤ì—� 53번 ì�´í•˜ 왕국 플레그가 ë�™ì‹œì—� 설정ë�˜ 있어야 한다. Rescind 34 Rescind 0/1 MRSCND - »ç¿ëÀÚµéÀº °¡ÀÔÇÑ ¸÷ÀÇ ¿Õ±¹¿¡¼­ Å»ÅðÇÒ¼ö ÀÖÀ¸¸ç, 53¹ø ÀÌÇÏ - ¿Õ±¹ Ç÷¹±×°¡ µ¿½Ã¿¡ ¼³Á¤µÇ ÀÖ¾î¾ß ÇÑ´Ù. + 사용ìž�들ì�€ 가입한 몹ì�˜ 왕국ì—�서 탈퇴할수 있으며, 53번 ì�´í•˜ + 왕국 플레그가 ë�™ì‹œì—� 설정ë�˜ 있어야 한다. Disease 35 Disease MDISEA - »ç¿ëÀÚ¿¡°Ô Áúº´À» ÀÏÀ¸Å°´Â °ø°ÝÀ» ÇÑ´Ù. + 사용ìž�ì—�게 질병ì�„ ì�¼ìœ¼í‚¤ëŠ” 공격ì�„ 한다. Disolve items 36 Dissolve MDISIT - »ç¿ëÀÚÀÌ Àåºñ¸¦ °¡²û ³ì¿©¹ö¸°´Ù. + 사용ìž�ì�´ 장비를 ê°€ë�” 녹여버린다. Vendor 37 Purchase MPURIT - ¼ÒÁöǰ¿¡ ÀÖ´Â ¾ÆÀÌÅÛÀ» »ç¿ëÀÚ¿¡°Ô ÆÇ´Ù. + 소지품ì—� 있는 ì•„ì�´í…œì�„ 사용ìž�ì—�게 íŒ�다. Gives Items for quest 38 Trade MTRADE - "±³È¯" À̶õ ¸í·ÉÀ¸·Î ¹°°ÇÀ» ¸Â¹Ù²Ù¾î ÁØ´Ù. ÀÓ¹« ¼³°è½Ç Áß¿äÇÏ°Ô - ¾²ÀÌ¸ç ±× ±³È¯ÇÏ´Â ¹°°ÇÀº 1¹ø¿¡¼­ 5¹øÀÇ ¾ÆÀÌÅÛÀÌ µÈ´Ù. ±³È¯ÇØÁÖ´Â - ¹°°ÇÀº +5ÀÎ 6¹ø¿¡¼­ 10¹øÀÇ ¼ÒÁöǰÀÌ µÇ¸ç, ¿©·¯°¡Áö¸¦ µ¿½Ã¿¡ - ±³È¯ ÇÒ¼öµµ ÀÖ´Ù. + "êµ�환" ì�´ëž€ 명령으로 물건ì�„ 맞바꾸어 준다. 임무 설계실 중요하게 + ì“°ì�´ë©° ê·¸ êµ�환하는 물건ì�€ 1번ì—�서 5번ì�˜ ì•„ì�´í…œì�´ ë�œë‹¤. êµ�환해주는 + 물건ì�€ +5ì�¸ 6번ì—�서 10번ì�˜ 소지품ì�´ ë�˜ë©°, 여러가지를 ë�™ì‹œì—� + êµ�환 할수ë�„ 있다. Passive guard 39 P-Guard MPGUAR - ÃⱸÀÇ Ç÷¹±×¿¡ XPGUARÀÇ Ç÷¹±×°¡ ¼³Á¤µÇÀÖÀ¸¸é ±× Ãⱸ¸¦ - ÁöŰ¸ç ¸ø Åë°úÇÏ°Ô ÇÑ´Ù. + 출구ì�˜ 플레그ì—� XPGUARì�˜ 플레그가 설정ë�˜ìžˆìœ¼ë©´ ê·¸ 출구를 + 지키며 못 통과하게 한다. Good Aggressive 40 Good-Aggro MGAGGR - ¼±ÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 선한 성향ì�˜ 사용ìž�를 공격한다. Evil Aggressive 41 Evil-Aggro MEAGR - ¾ÇÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 악한 성향ì�˜ 사용ìž�를 공격한다. Death Scene 42 Ddesc MDEATH - ¸÷ÀÌ Á×¾úÀ» °æ¿ì muhan/objmon/ddesc/¿¡ ÀúÀåµÈ ÆÄÀÏÀ» Àо ¹æ¿¡ - Ãâ·ÂÇÏ°Ô µÇ¸ç, ÀÓ¹«ÀÇ ¼º°øÀ̳ª ±ØÀûÀÎ Àå¸éÀ» ¿¬ÃâÇÒ¶§ »ç¿ëµÈ´Ù. - ÆÄÀÏÀº "¸÷À̸§_·¹º§"°°ÀÌ ÀúÀåµÈ´Ù. ¶ÇÇÑ MPERMTÀÇ Ç÷¹±×°¡ µ¿½Ã¿¡ - ¼³Á¤µÇ ÀÖ¾î¾ß ÀÛµ¿µÈ´Ù. ¿¹ "½ÄÀαÍ_25". + 몹ì�´ 죽었ì�„ 경우 muhan/objmon/ddesc/ì—� 저장ë�œ 파ì�¼ì�„ ì�½ì–´ì„œ ë°©ì—� + 출력하게 ë�˜ë©°, 임무ì�˜ 성공ì�´ë‚˜ ê·¹ì �ì�¸ 장면ì�„ 연출할때 사용ë�œë‹¤. + 파ì�¼ì�€ "몹ì�´ë¦„_레벨"ê°™ì�´ 저장ë�œë‹¤. ë˜�한 MPERMTì�˜ 플레그가 ë�™ì‹œì—� + 설정ë�˜ 있어야 ìž‘ë�™ë�œë‹¤. 예 "ì‹�ì�¸ê·€_25". Resist Befuddle 44 R-beffd MRBEFD - È¥µ¿ ÁÖ¹®¿¡ °É·ÁµéÁö ¾Ê´Â´Ù. + 혼ë�™ 주문ì—� 걸려들지 않는다. Resist circle 45 R-circle MNOCIR - ±³¶õÀ̳ª ¸Í°ø¿¡ °É·ÁµéÁö ¾Ê´Â´Ù. + êµ�란ì�´ë‚˜ 맹공ì—� 걸려들지 않는다. Monster Blinds 46 M-blinds MBLNDR - »ç¿ëÀÚ¸¦ ´«¸Ö°Ô ÇÑ´Ù. + 사용ìž�를 눈멀게 한다. DM-follow 47 DM-follow MDMFOL - °ü¸®ÀÚ¸¦ µû¸¥´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ëµÇÁö ¾Ê´Â´Ù. + 관리ìž�를 따른다. 외부ì �으로 사용ë�˜ì§€ 않는다. Monster Fearful 48 M-fear MFEARS - °øÆ÷ ÁÖ¹®¿¡ °É·ÁÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ë ¾Ê´Â´Ù. + ê³µí�¬ 주문ì—� 걸려있다. 외부ì �으로 사용 않는다. Monster silenced 49 M-silenced MSILNC - ÁÖ¹®À» ¿Ü¿ìÁö ¸øÇÑ´Ù. ¿ÜºÎÀû »ç¿ë ¾ÊµÊ. + 주문ì�„ 외우지 못한다. 외부ì � 사용 않ë�¨. Monster Blind 50 M-blind MBLIND - ´«ÀÌ ¸Ö¾î ÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ëµÇÁø ¾Ê´Â´Ù. + 눈ì�´ 멀어 있다. 외부ì �으로 사용ë�˜ì§„ 않는다. Monster charmed 51 M-charm MCHARM - ´©±º°¡ÀÇ Ãָ鿡 °É·Á ÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î ¾²ÀÌÁö ¾Ê´Â´Ù. + 누군가ì�˜ 최면ì—� 걸려 있다. 외부ì �으로 ì“°ì�´ì§€ 않는다. Monster Befuddle 52 M-beffd MBEFUD - È¥µ¿µÇ¾î ÀÖ´Ù. ¿ÜºÎ »ç¿ë ¾ÊÇÔ. + 혼ë�™ë�˜ì–´ 있다. 외부 사용 않함. Monster Kingdom1 53 kingdom1 MKNDM1 - 1¹ø ¿Õ±¹ÀÇ ¼Ò¼Ó ¸÷ + 1번 왕국ì�˜ 소ì†� 몹 Monster Kingdom2 54 kingdom2 MKNDM2 - 2¹ø ¿Õ±¹ÀÇ ¼Ò¼Ó ¸÷ + 2번 왕국ì�˜ 소ì†� 몹 Monster Kingdom3 55 kingdom3 MKNDM3 - 3¹ø ¿¹ºñ ¿Õ±¹ + 3번 예비 왕국 Monster Kingdom4 56 kingdom4 MKNDM4 - 4¹ø ¿¹ºñ ¿Õ±¹ + 4번 예비 왕국 Monster King1 57 king1 MKING1 - 1¹ø ¿Õ±¹ÀÇ ¿Õ + 1번 왕국ì�˜ 왕 Monster King2 58 king2 MKING2 - 2¹ø ¿Õ±¹ÀÇ ¿Õ + 2번 왕국ì�˜ 왕 Monster King3 59 king3 MKING3 - 3¹ø ¿¹ºñ ¿Õ + 3번 예비 왕 Monster King4 60 king4 MKING4 - 4¹ø ¿¹ºñ ¿Õ + 4번 예비 왕 Monster saytalk 61 saytalk MSAYTLK - ¾ÆÁ÷ Á¦ÀÛÁß ¼³Á¤ ±ÝÁö. + ì•„ì§� 제작중 설정 금지. Monster Summon 62 summoner MSUMMO - MPERM Ç÷¹±×¿Í µ¿½Ã¿¡ ¼³Á¤ ÇØ¾ß ÀÛµ¿Çϸç, ¸÷ÀÇ µ¥ÀÌŸÁß - special¹øÈ£¿¡ ÀÖ´Â ¸÷ÀÇ ¹øÈ£¸¦ Á×À» ¶§ ¼ÒȯÇÑ´Ù. ¼ÒȯµÈ - ¸÷Àº ¼ÒȯÇÑ ¸÷°ú ÀüÅõÁßÀÎ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + MPERM 플레그와 ë�™ì‹œì—� 설정 해야 ìž‘ë�™í•˜ë©°, 몹ì�˜ ë�°ì�´íƒ€ì¤‘ + special번호ì—� 있는 몹ì�˜ 번호를 죽ì�„ 때 소환한다. 소환ë�œ + 몹ì�€ 소환한 몹과 전투중ì�¸ 사용ìž�를 공격한다. ----------------------- ÀüÀï ·çÆÀɲº¡¼³¸í -------------------------- +---------------------- ì „ìŸ� 루팀�껼ã€�낯� -------------------------- - ÀüÀï ·çÆ¾Àº ¸î°¡Áö º¹ÀâÇÑ Ç÷¹±×µéÀÇ Á¶ÇÕÀ¸·Î ÀÌ·ç¾î Áø´Ù. ¿ø·¡ -Á¤´çÇÑ »ç¿ëÀÚµéÀÇ ´ë°áÀ» À§ÇØ Á¦ÀÛÇßÀ¸³ª, Á¦ÀÛÁß ½ºÅ丮¿Í »óȲº¯¼öÀÇ -º¹À⼺À¸·Î ÀÎÇØ µÎ°³ÀÇ ³ª¶ó¸¸ Áö¿ø ÇÏ°Ô ¼³°èÇÏ¿´´Ù. ³ª¸ÓÁö µÎ°³ÀÇ ¿Õ±¹Àº -¿¹ºñ·Î ³öµÎ°Ô µÇ¾ú´Ù. + ì „ìŸ� 루틴ì�€ 몇가지 복잡한 플레그들ì�˜ 조합으로 ì�´ë£¨ì–´ 진다. ì›�래 +정당한 사용ìž�들ì�˜ 대결ì�„ 위해 제작했으나, 제작중 스토리와 ìƒ�황변수ì�˜ +복잡성으로 ì�¸í•´ ë‘�ê°œì�˜ 나ë�¼ë§Œ ì§€ì›� 하게 설계하였다. 나머지 ë‘�ê°œì�˜ 왕국ì�€ +예비로 놔ë‘�게 ë�˜ì—ˆë‹¤. -¸ÕÀú ¿Õ±¹Àº ¸÷µé·Î ÀÌ·ç¾î Áø´Ù. °¢ ¿Õ±¹Àº ¿Õ°ú ºÎÇϵé·Î ÀÌ·ç¾îÁ® ÀÖÀ¸¸ç, -¿ÕÀº ¿ÕÀÇ Ç÷¹±×¸¦ ¼³Á¤ÇÏ°Ô µÈ´Ù. °¡ÀÔÇÑ »ç¿ëÀÚ´Â ±× ¿Õ±¹¿¡ ¼Ò¼ÓµÇ°Ô µÇ¸ç, -»ó´ë ¿Õ±¹ÀÇ ¸÷À» ÀâÀ¸¸é »ó±ÝÀ» ¾ò°ÔµÇ°í, ÀÚ½ÅÀÇ ¿Õ±¹ÀÇ »ç¿ëÀÚ³ª ¸÷À» -°ø°ÝÇϸé ÇÇÇØ¸¦ ÀԴ´Ù. ¼±¾ðµÈ ÀüÀïÀº ¼­·ÎÀÇ ¿ÕÀ» Àâ¾Æ¾ß¸¸ ³¡³¾¼ö ÀÖÀ¸¸ç, -À̶§ ½Â¸®ÇÑ ÂÊÀº »óÀ» ¹Þ°ÔµÇ°í, ÆÐ¹èÇÑ ÂÊÀº ¹úÀ» ¹Þ°Ô µÈ´Ù. +먼저 왕국ì�€ 몹들로 ì�´ë£¨ì–´ 진다. ê°� 왕국ì�€ 왕과 부하들로 ì�´ë£¨ì–´ì ¸ 있으며, +왕ì�€ 왕ì�˜ 플레그를 설정하게 ë�œë‹¤. 가입한 사용ìž�는 ê·¸ 왕국ì—� 소ì†�ë�˜ê²Œ ë�˜ë©°, +ìƒ�대 왕국ì�˜ 몹ì�„ 잡으면 ìƒ�금ì�„ 얻게ë�˜ê³ , ìž�ì‹ ì�˜ 왕국ì�˜ 사용ìž�나 몹ì�„ +공격하면 피해를 입는다. ì„ ì–¸ë�œ ì „ìŸ�ì�€ 서로ì�˜ 왕ì�„ 잡아야만 ë��낼수 있으며, +ì�´ë•Œ 승리한 쪽ì�€ ìƒ�ì�„ 받게ë�˜ê³ , 패배한 쪽ì�€ 벌ì�„ 받게 ë�œë‹¤. -¾ÆÁ÷ ¸¹Àº ºÎºÐÀÌ °³¹ßÀÌ ´ú µÈ »óÅÂÀ̰í, ¸¹Àº °³¼±Á¡ÀÌ ÀÖ´Ù. +ì•„ì§� ë§Žì�€ 부분ì�´ 개발ì�´ ë�œ ë�œ ìƒ�태ì�´ê³ , ë§Žì�€ 개선ì �ì�´ 있다. ---------------------- ´ëÈ­ÇÏ´Â ¸÷ÀÇ ¼³Á¤ ------------------------ +--------------------- 대화하는 몹ì�˜ 설정 ------------------------ - ´ëÈ­ÇÏ´Â ¸÷Àº ÀÓÀÇ µ¿±â¸¦ ¼³Á¤ÇÔ°ú µ¿½Ã¿¡ ÈùÆ®¸¦ Á¦°øÇϱâ À§ÇØ -Á¸ÀçÇÑ´Ù. ¶ÇÇÑ ºÎ°¡ÀûÀÎ ¸î°³ÀÇ ±â´ÉÀ» °®°í ÀÖ°í, ±× ´ëÈ­ Çü½ÄÀº + 대화하는 몹ì�€ ìž„ì�˜ ë�™ê¸°ë¥¼ 설정함과 ë�™ì‹œì—� 힌트를 제공하기 위해 +존재한다. ë˜�한 부가ì �ì�¸ 몇개ì�˜ 기능ì�„ ê°–ê³  있고, ê·¸ 대화 형ì‹�ì�€ ------------------- -"´Ü¾î" -"´Ü¾î¿¡ ´ëÇÑ ´ë´ä" +"단어" +"단어ì—� 대한 대답" ------------------ -Çü½ÄÀ¸·Î muhan/objmon/talk/¿¡ ÀúÀå µÈ´Ù. +형ì‹�으로 muhan/objmon/talk/ì—� 저장 ë�œë‹¤. -ºÎ°¡ÀûÀÎ ±â´ÉÀ» »ìÆìº¸¸é +부가ì �ì�¸ 기능ì�„ 살펴보면 -"´Ü¾î" ATTACK -À̰ÍÀº ¸÷°ú ƯÁ¤ÇÑ ´Ü¾î·Î ´ëÈ­ÇÏ¸é °ø°ÝÀ» ÇÏ´Â ±â´ÉÀÌ´Ù. +"단어" ATTACK +ì�´ê²ƒì�€ 몹과 특정한 단어로 대화하면 공격ì�„ 하는 기능ì�´ë‹¤. -"´Ü¾î" ACTION <Çൿ> PLAYER -´Ü¾î¸¦ À̾߱âÇÏ¸é ¸÷ÀÌ Çൿ¿¡ ÀûÇôÀִ ǥÇöÀ» »ç¿ëÀÚ¿¡°Ô ÇÒ°ÍÀÌ´Ù. -Ç¥ÇöÀº action.c¿¡ Á¤ÀÇµÈ Ç¥ÇöÀÌ °¡´ÉÇÏ´Ù. +"단어" ACTION <í–‰ë�™> PLAYER +단어를 ì�´ì•¼ê¸°í•˜ë©´ 몹ì�´ í–‰ë�™ì—� ì �혀있는 표현ì�„ 사용ìž�ì—�게 할것ì�´ë‹¤. +표현ì�€ action.cì—� ì •ì�˜ë�œ 표현ì�´ 가능하다. -"´Ü¾î" CAST <ÁÖ¹®> -´Ü¾î¸¦ À̾߱â Çϸé ÁÖ¹®¿¡ Á¤ÀÇµÈ ÁÖ¹Àɯº¡»ç¿ëÀÚ¿¡°Ô »ç¿ëÇÒ °ÍÀÌ´Ù. -´ëºÎºÐ Ä¡·á ±â´ÉÀ» ÁÙ¶§ »ç¿ëÇϸé ÁÁ´Ù. +"단어" CAST <주문> +단어를 ì�´ì•¼ê¸° 하면 주문ì—� ì •ì�˜ë�œ 주뮌��벙사용ìž�ì—�게 사용할 것ì�´ë‹¤. +대부분 치료 기능ì�„ 줄때 사용하면 좋다. -"´Ü¾î" GIVE <¾ÆÀÌÅÛ ¹øÈ£> -´Ü¾î¸¦ À̾߱â ÇÏ¸é ¾ÆÀÌÅÛ ¹øÈ£¿¡ Á¤ÀÇµÈ ¾ÆÀÌÅÛÀ» ÁÙ°ÍÀÌ´Ù. À̰ÍÀº ÀÓ¹«¸¦ -¼³°èÇÒ¶§ Áß¿äÇÏ°Ô ¾²ÀÌ°Ô µÇ¸ç, À̶§ ¹ö±× Ç÷¹À̰¡ °¡´ÉÇѰ¡? ¹®Á¦´Â ¾ø´Â°¡ -Àß °í·ÁÇØ¾ß ÇÑ´Ù. ´Ü¾î¸¦ À̾߱âÇÏ¸é ¼öõ°³¶óµµ ¾ÆÀÌÅÛÀ» ÁÙ°ÍÀ̱⠶§¹®ÀÌ´Ù. +"단어" GIVE <ì•„ì�´í…œ 번호> +단어를 ì�´ì•¼ê¸° 하면 ì•„ì�´í…œ 번호ì—� ì •ì�˜ë�œ ì•„ì�´í…œì�„ 줄것ì�´ë‹¤. ì�´ê²ƒì�€ 임무를 +설계할때 중요하게 ì“°ì�´ê²Œ ë�˜ë©°, ì�´ë•Œ 버그 플레ì�´ê°€ 가능한가? 문제는 없는가 +잘 고려해야 한다. 단어를 ì�´ì•¼ê¸°í•˜ë©´ 수천개ë�¼ë�„ ì•„ì�´í…œì�„ 줄것ì�´ê¸° 때문ì�´ë‹¤. diff --git a/docs/crt_make b/docs/crt_make index 23b65537..b64a6cb6 100644 --- a/docs/crt_make +++ b/docs/crt_make @@ -1,6 +1,6 @@ - ¸÷µéÀº ¿¡µðÅÍ¿¡¼­ ½±°Ô ¸¸µé ¼ö ÀÖ½À´Ï´Ù. - dm.doc ÆÄÀÏÀ» ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù. - dm.doc ÆÄÀÏÀº ¸÷ Ç÷¡±×¿Í ±âŸ º¯¼ö¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ´ã°í ÀÖ½À´Ï´Ù. + 몹들ì�€ ì—�디터ì—�서 쉽게 만들 수 있습니다. + dm.doc 파ì�¼ì�„ 참조하시기 ë°”ëž�니다. + dm.doc 파ì�¼ì�€ 몹 플래그와 기타 변수ì—� 대한 ìž�세한 정보를 ë‹´ê³  있습니다. - ¸÷Àº ¿Â¶óÀλ󿡼­ "*Àç¼³Á¤" ¸í·ÉÀ» ÅëÇØ ¾÷µ¥ÀÌÆ® µÉ ¼ö ÀÖ½À´Ï´Ù. + 몹ì�€ 온ë�¼ì�¸ìƒ�ì—�서 "*재설정" 명령ì�„ 통해 ì—…ë�°ì�´íЏ ë�  수 있습니다. diff --git a/docs/crt_talk b/docs/crt_talk index d0178c6f..a9b954d6 100644 --- a/docs/crt_talk +++ b/docs/crt_talk @@ -1,32 +1,32 @@ -¸÷°úÀÇ ´ëÈ­ +몹과ì�˜ 대화 - ÀÌ ¹®¼­´Â »ç¿ëÀÚ¿Í ¸÷°úÀÇ ´ëÈ­¿¡ ´ëÇÑ ¹®¼­ÀÔ´Ï´Ù. + ì�´ 문서는 사용ìž�와 몹과ì�˜ 대화ì—� 대한 문서입니다. - Ç÷¹À̾ ¸÷¿¡°Ô ƯÁ¤ ´Ü¾î¿¡ ´ëÇØ ¹°¾îº¼¶§, ¸÷Àº Ưº°ÇÑ ¹ÝÀÀÀ» - ÇÒ ¼ö ÀÖ½À´Ï´Ù. - ÀÌ´Â ´ÙÀ½ ÆÄÀÏ¿¡ ¼³Á¤ÇØ ÁÝ´Ï´Ù. + 플레ì�´ì–´ê°€ 몹ì—�게 특정 단어ì—� 대해 물어볼때, 몹ì�€ 특별한 ë°˜ì�‘ì�„ + í•  수 있습니다. + ì�´ëŠ” 다ì�Œ 파ì�¼ì—� 설정해 ì¤�니다. ~/objmon/talk. - ÀϹÝÀûÀ¸·Î ÆÄÀÏ À̸§Àº [¸÷À̸§]-[¸÷·¹º§]·Î Á¤ÇØÁý´Ï´Ù. - ÀÌ ÆÄÀÏÀ» ±â·ÏÇÏ´Â ¾ç½ÄÀº ´ÙÀ½°ú °°½À´Ï´Ù. + ì�¼ë°˜ì �으로 파ì�¼ ì�´ë¦„ì�€ [몹ì�´ë¦„]-[몹레벨]로 정해집니다. + ì�´ 파ì�¼ì�„ 기ë¡�하는 ì–‘ì‹�ì�€ 다ì�Œê³¼ 같습니다. - <ƯÁ¤´Ü¾î> [µ¿ÀÛ±¸¹®] - <ÀÀ´ä¶óÀÎ> + <특정단어> [ë�™ìž‘구문] + <ì�‘답ë�¼ì�¸> - ¹ÝÀÀÇÒ Æ¯Á¤´Ü¾îÀÇ ÃÖ´ë ±æÀÌ´Â ÇÑ±Û 40ÀÚ, ¿µ¹® 80ÀÚÀÔ´Ï´Ù. - ÀÀ´ä ¶óÀÎÀº ÃÖ´ë ÇÑ±Û 512ÀÚ¸¦ ±â·ÏÇÒ¼ö ÀÖ½À´Ï´Ù. + ë°˜ì�‘í•  특정단어ì�˜ 최대 길ì�´ëŠ” 한글 40ìž�, ì˜�문 80ìž�입니다. + ì�‘답 ë�¼ì�¸ì�€ 최대 한글 512ìž�를 기ë¡�할수 있습니다. - <ƯÁ¤´Ü¾î> ´Â °ø¹é ¾ø´Â ÇÑ ´Ü¾î·Î ±¸¼ºµÇ¾î¾ß ÇÕ´Ï´Ù. + <특정단어> 는 공백 없는 한 단어로 구성ë�˜ì–´ì•¼ 합니다. - <ƯÁ¤´Ü¾î> ATTACK - À§¿Í °°ÀÌ ½áÁÖ°Ô µÇ¸é »ç¿ëÀÚ°¡ ƯÁ¤´Ü¾î·Î ´ëÈ­ÇÒ°æ¿ì ¸÷ÀÌ »ç¿ëÀÚ¸¦ - °ø°ÝÇÕ´Ï´Ù. - ÀÌ¿Í °°Àº ¹æ½ÄÀ¸·Î ´ÙÀ½°ú °°Àº ¸í·É¾îµéÀÌ ÀÖ½À´Ï´Ù. + <특정단어> ATTACK + 위와 ê°™ì�´ ì�¨ì£¼ê²Œ ë�˜ë©´ 사용ìž�ê°€ 특정단어로 대화할경우 몹ì�´ 사용ìž�를 + 공격합니다. + ì�´ì™€ ê°™ì�€ ë°©ì‹�으로 다ì�Œê³¼ ê°™ì�€ 명령어들ì�´ 있습니다. - <ƯÁ¤´Ü¾î> ACTION [¹ÝÀÀŸÀÔ] PLAYER : °¨Á¤Ç¥Çö - <ƯÁ¤´Ü¾î> CAST <¸¶¹ý¹øÈ£> : ¸÷ÀÌ ÁÖ¹®À» ¿Ü¿ò - <ƯÁ¤´Ü¾î> GIVE <¾ÆÀÌÅÛ¹øÈ£> : »ç¿ëÀÚ¿¡°Ô ƯÁ¤ ¾ÆÀÌÅÛÀ» ÁØ´Ù + <특정단어> ACTION [ë°˜ì�‘타입] PLAYER : ê°�정표현 + <특정단어> CAST <마법번호> : 몹ì�´ 주문ì�„ 외움 + <특정단어> GIVE <ì•„ì�´í…œë²ˆí˜¸> : 사용ìž�ì—�게 특정 ì•„ì�´í…œì�„ 준다 - ±âŸ ÀÚ¼¼ÇѰÍÀº ÀÌ¹Ì ±¸ÇöµÇ¾î ÀÖ´Â talk µð·ºÅ丮 ³»ÀÇ ÆÄÀÏÀ» - ÂüÁ¶ÇϽñ⠹ٶø´Ï´Ù. + 기타 ìž�세한것ì�€ ì�´ë¯¸ 구현ë�˜ì–´ 있는 talk 디렉토리 ë‚´ì�˜ 파ì�¼ì�„ + 참조하시기 ë°”ëž�니다. diff --git a/docs/dm.doc b/docs/dm.doc index e2b08906..94e74293 100644 --- a/docs/dm.doc +++ b/docs/dm.doc @@ -1,24 +1,24 @@ - >>°ü¸®ÀÚÀÇ ¸Þ´º¾ó<< + >>관리ìž�ì�˜ 메뉴얼<< -list À¯Æ¿ »ç¿ë¹ý +list 유틸 사용법 -¸®´ª½º ½© »ó¿¡¼­ ´ÙÀ½À» ÀÔ·ÂÇÑ´Ù. +리눅스 쉘 ìƒ�ì—�서 다ì�Œì�„ 입력한다. list [options] -[options]: -r#:# ¹øÈ£¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù - -s# ÁöÁ¤µÈ ´Ü¾î¸¦ °Ë»öÇÑ´Ù - -l#:# ·¹º§¹üÀ§¸¦ ÁöÁ¤ÇÑ´Ù - -t# ¹°°Ç ¼º°ÝÀ» ÁöÁ¤ÇÑ´Ù - -w# Âø¿ëÇÏ´Â ºÎÀ§¸¦ ÁöÁ¤ÇÑ´Ù - -f# flag¸¦ ÁöÁ¤ - -F# flag¼³Á¤ ¾ÊµÈ°ÍÀ» ÁöÁ¤ - -q ÀÓ¹« ¾ÆÀÌÅÛ ÁöÁ¤ - -o# ¾ÆÀÌÅÛÀÌ ÀÖ´Â ¸÷°ú ¹æÀ» ÁöÁ¤ - -m# ¸÷ÀÌ ÀÖ´Â ¹æÀ» ÁöÁ¤ +[options]: -r#:# 번호범위를 지정한다 + -s# 지정ë�œ 단어를 검색한다 + -l#:# 레벨범위를 지정한다 + -t# 물건 성격ì�„ 지정한다 + -w# 착용하는 부위를 지정한다 + -f# flag를 지정 + -F# flag설정 않ë�œê²ƒì�„ 지정 + -q 임무 ì•„ì�´í…œ 지정 + -o# ì•„ì�´í…œì�´ 있는 몹과 ë°©ì�„ 지정 + -m# 몹ì�´ 있는 ë°©ì�„ 지정 -¹«ÇÑ´ëÀü ¸÷ÀÇ Ç¥ÁØÀû µ¥ÀÌŸ Å×À̺í +무한대전 몹ì�˜ 표준ì � ë�°ì�´íƒ€ í…Œì�´ë¸” LEVEL STATS HP's AC TO XP's DAM 1 55 10 90 19 10 5 @@ -51,799 +51,799 @@ LEVEL STATS HP's AC TO XP's DAM - >¸÷µéÀÇ Flags< + >몹들ì�˜ Flags< -´ÙÀ½Àº ¸÷µéÀÇ »óÅÂ¿Í Çൿ¾ç½ÄÀ» ±ÔÁ¤ÇÏ´Â Ç·¹±×ÀÌ´É·ª¯ -±¸¼ºÀº ´ÙÀ½°ú °°´Ù Ç÷¹±× ¹øÈ£´Â ¿¡µðÅͳª mtype.h¿¡¼­ ±ÔÁ¤µÈ -Ç÷¹±×¸¦ ¶æÇϰí Á¤ÀÇ´Â mtype.h¿¡¼­ DEFINEµÈ ½Äº°ÀÚÀÌ´Ù. -ÁÖÀÇÇÒÁ¡É±¢¡Çì´õ¿¡¼­´Â 0ºÎÅÍ Á¤ÀÇÇϹǷΠÀ̰÷ÀÇ ¼³¸íº¸´Ù -1À» -ÇØ ÁÖ¾î¾ß ÇÑ´Ù. +다ì�Œì�€ 몹들ì�˜ ìƒ�태와 í–‰ë�™ì–‘ì‹�ì�„ 규정하는 í“�묽戮甄�랴� +구성ì�€ 다ì�Œê³¼ 같다 플레그 번호는 ì—�디터나 mtype.hì—�서 규정ë�œ +플레그를 뜻하고 ì •ì�˜ëŠ” mtype.hì—�서 DEFINEë�œ ì‹�별ìž�ì�´ë‹¤. +주ì�˜í• ì ��ê´�′ç�¥å�¢ã€��는 0부터 ì •ì�˜í•˜ë¯€ë¡œ ì�´ê³³ì�˜ 설명보다 -1ì�„ +í•´ 주어야 한다. -Á¦¸ñ Ç÷¹±× ¹øÈ£ Á¤ÀÇ +제목 플레그 번호 ì •ì�˜ ================================================================== Permanent Monster 1 Perm MPERMT - °íÁ¤µÈ ¸÷À¸·Î½á Á¤ÀÇµÈ ÀÏÁ¤ÇÑ ½Ã°£ °£°ÝÀ¸·Î °è¼Ó ÃâÇöÇÑ´Ù. + ê³ ì •ë�œ 몹으로ì�¨ ì •ì�˜ë�œ ì�¼ì •한 시간 간격으로 계ì†� 출현한다. Hidden 2 MHIDDN - ¼û¾îÀÖ´Â ¸÷À¸·Î ã±âÀü¿¡´Â º¸ÀÌÁö ¾Ê´Â´Ù. + 숨어있는 몹으로 찾기전ì—�는 ë³´ì�´ì§€ 않는다. Invisible 3 Invis MINVIS - ÀºµÐµÇ ÀÖ´Â ¸÷À¸·Î ÀºµÐ°¨Áö°¡ °¡´ÉÇÏÁö ¾ÊÀ¸¸é º¸ÀÌÁö ¾Ê´Â´Ù. + ì�€ë‘”ë�˜ 있는 몹으로 ì�€ë‘”ê°�지가 가능하지 않으면 ë³´ì�´ì§€ 않는다. Plural name 4 MTOMEN - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. No Plural 5 MDROPS - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. No Prefix 6 MNOPRE - ¾²ÀÌÁö ¾ÊÀ½. + ì“°ì�´ì§€ 않ì�Œ. Aggressive 7 Aggr MAGGRE - °ø°Ý ¼ºÇâÀ» °¡Áø ¸÷À¸·Î º¸ÀÌ´Â »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 공격 성향ì�„ 가진 몹으로 ë³´ì�´ëŠ” 사용ìž�를 공격한다. Guard Treasure 8 Guard MGUARD - ¹æ¿¡ ¶³¾îÁ® ÀÖ´Â ¹°°ÇÀ» ÁýÁö ¸øÇÏ°Ô ¹æÇØÇÑ´Ù. + ë°©ì—� 떨어져 있는 물건ì�„ ì§‘ì§€ 못하게 방해한다. Follow attacker 10 Follow MFOLLO - »ç¿ëÀÚ°¡ µµ¸Á°¥°æ¿ì »ç¿ëÀÚ¸¦ µû¶ó°£´Ù. + 사용ìž�ê°€ ë�„ë§�갈경우 사용ìž�를 ë”°ë�¼ê°„다. Flee 11 Flee MFLEER - ÀÚ½ÅÀÇ Ã¼·ÂÀÌ À§ÇèÇÒ °æ¿ì µµ¸Á°£´Ù. + ìž�ì‹ ì�˜ ì²´ë ¥ì�´ 위험할 경우 ë�„ë§�간다. Scavenger 12 Scav MSCAVE - ¶§¶§·Î ¶¥¿¡ ¹°°ÇÀ» Áý¾î °¡Áö±âµµ ÇÑ´Ù. + 때때로 ë•…ì—� 물건ì�„ ì§‘ì–´ 가지기ë�„ 한다. Gender 13 Male MMALES - ³²¼º°ú ¿©¼ºÀ» ±¸ºÐÇÏ´Â Ç÷¹±·É´²¡¼³Á¤µÇ¸é ³²¼º, ¼³Á¤ ¾ÊµÇ¸é - ¿©¼ºÀÌ µÈ´Ù. + 남성과 여성ì�„ 구분하는 플레굣�눠ã€�냇ㅅ퓔� 남성, 설정 않ë�˜ë©´ + 여성ì�´ ë�œë‹¤. Poisoner 14 Poison MPOISS - »ç¿ëÀÚ¸¦ Áßµ¶½Ãų¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ´Ù. + 사용ìž�를 중ë�…시킬수 있는 능력ì�´ 있다. Undead 15 Undead MUNDED - ºÎȰÇÑ ½Ãü·Î ¹æÈ¥¼ú·Î ¹°¸®Ä¥¼ö ÀÖ´Ù. + 부활한 시체로 방혼술로 물리칠수 있다. No Steal 16 No-steal NUNSTL - µµµÏÀÌ ¾ÆÀÌÅÛÀ» ÈÉÃij¾¼ö ¾ø°Ô ÇÑ´Ù. + ë�„ë‘‘ì�´ ì•„ì�´í…œì�„ í›”ì³�낼수 없게 한다. Poisoned 17 Poisoned MPOISN - Áßµ¶µÇ À־ ÀÏÁ¤ ½Ã°£ÀÌ Áö³ª¸é Á״´Ù. + 중ë�…ë�˜ 있어서 ì�¼ì • 시간ì�´ 지나면 죽는다. Casts spells 18 Magic MMAGIC - ÀüÅõÁß¿¡ »ç¿ëÀÚ³ª Àڽſ¡°Ô ¼³Á¤µÈ ÁÖ¹®À» ¿Ü¿ö °ø°ÝÇϰųª - ÀÚ½ÅÀ» Ä¡·áÇÑ´Ù. + 전투중ì—� 사용ìž�나 ìž�ì‹ ì—�게 설정ë�œ 주문ì�„ 외워 공격하거나 + ìž�ì‹ ì�„ 치료한다. Has Scavenged 19 MHASSC - ¾²ÀÌÁö ¾Ê´Â´Ù. + ì“°ì�´ì§€ 않는다. Breath Weapon Attack 20 MBRETH - ¿ëÀÇ ¹«±â¸¦ »ç¿ëÇÏ´Â flag·Î ¼³Á¤µÇ¸é 29/30 Ç÷¹±× ¼³Á¤À» µû¶ó¼­ - ÀüÅõÁß¿¡ °ø°ÝÇÏ°Ô µÈ´Ù. + ìš©ì�˜ 무기를 사용하는 flag로 설정ë�˜ë©´ 29/30 플레그 설정ì�„ ë”°ë�¼ì„œ + 전투중ì—� 공격하게 ë�œë‹¤. Type of breath 29/30 MBRWP1/MBRWP2 - ÀÌ µÎ°³ÀÇ Ç÷¹±×ÀÇ Á¶ÇÕÀ¸·Î °ø°ÝÇÏ´Â ¹æ½ÄÀÌ Æ²·ÁÁø´Ù. - ´ëºÎºÐ ¿ëÀÇ °ø°ÝÀ¸·Î ¼³Á¤µÇ¸ç ±×¹æ½ÄÀº ´ÙÀ½°ú °°´Ù. + ì�´ ë‘�ê°œì�˜ 플레그ì�˜ 조합으로 공격하는 ë°©ì‹�ì�´ 틀려진다. + 대부분 ìš©ì�˜ 공격으로 설정ë�˜ë©° 그방ì‹�ì�€ 다ì�Œê³¼ 같다. - (0,0) = È­¿° °ø°Ý, (01) = ³Ã±â °ø°Ý, - (1,0) = °¡½º °ø°Ý, (1,1) = µ¶ °ø°Ý + (0,0) = 화염 공격, (01) = 냉기 공격, + (1,0) = 가스 공격, (1,1) = ë�… 공격 Magic Harm Only 21 Magic-only MMGONL - ¸ðµç À°Ã¼Àû °ø°ÝÀ» °ßµð¾î ³½´Ù. ¿À·ÎÁö ÁÖ¹®À¸·Î¼­¸¸ - °ø°Ý ¹ÞÀ»¼ö ÀÖ´Ù. + 모든 육체ì � 공격ì�„ 견디어 낸다. 오로지 주문으로서만 + 공격 ë°›ì�„수 있다. Detect Invisibility 22 Detect-invis MDINVIS - ÀºµÐÇÑ »ç¿ëÀÚ¸¦ º¼¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ´Ù. + ì�€ë‘”한 사용ìž�를 볼수 있는 능력ì�´ 있다. Magic / Enchant 23 Enchant-only MENONL - (+)µÈ ¹«±â³ª ºùÀǰ¡ °É¸° ¹«±â·Î¸¸ °ø°ÝÀÌ °¡´ÉÇÏ´Ù. + (+)ë�œ 무기나 ë¹™ì�˜ê°€ 걸린 무기로만 공격ì�´ 가능하다. Interactive Talk 24 Talks MTALKS - objmon/talk¿¡ ¼³Á¤µÈ ÆÄÀÏÀ» Àо »ç¿ëÀÚ¿Í ´ëÈ­¸¦ °¡´ÉÇÏ°Ô - ÇÑ´Ù. Çü½ÄÀº "¸÷À̸§_·¹º§"ÀÌ´Ù. ¿¹ "°è¼®Ä¡¹«_25" + objmon/talkì—� 설정ë�œ 파ì�¼ì�„ ì�½ì–´ì„œ 사용ìž�와 대화를 가능하게 + 한다. 형ì‹�ì�€ "몹ì�´ë¦„_레벨"ì�´ë‹¤. 예 "계ì„�치무_25" No Harm 25 Unkillable MUNKIL - °ø°ÝÇÒ¼öµµ ¹ÞÀ»¼öµµ ¾ø´Â ¸÷ÀÌ´Ù. + 공격할수ë�„ ë°›ì�„수ë�„ 없는 몹ì�´ë‹¤. Fix amount of gold 26 NonrandGold MNRGLD - º¸É²ª¡¼³Á¤µÈ ¹üÀ§³»¿¡¼­ µ·ÀÌ ·£´ýÇÏ°Ô ³ª¿À³ª ¼³Á¤µÇ¸é - °íÁ¤µÈ ¾çÀÇ µ·À» °®°í ÀÖ´Ù. + 보�꺾ã€�냇ㅅ� 범위내ì—�서 ë�ˆì�´ ëžœë�¤í•˜ê²Œ 나오나 설정ë�˜ë©´ + ê³ ì •ë�œ ì–‘ì�˜ ë�ˆì�„ ê°–ê³  있다. Aggressive talk 27 Talk-aggr MTLKAG - ¸»À» °Å´Â »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + ë§�ì�„ 거는 사용ìž�를 공격한다. Resist-magic 28 Resist-magic MRMAGI - ÁÖ¹®¿¡ ³»¼ºÀÌ »ý±ä´Ù. ¾î´ÀÁ¤µµ ´É·Â¿¡ µû¶ó¼­ ³»¼ºÀÇ - Á¤µµ´Â Â÷À̰¡ ÀÖ´Ù. + 주문ì—� 내성ì�´ ìƒ�긴다. ì–´ëŠ�ì •ë�„ 능력ì—� ë”°ë�¼ì„œ 내성ì�˜ + ì •ë�„는 ì°¨ì�´ê°€ 있다. Experience Drain 31 Energy Drain MENEDR - °ø°ÝÀÚÀÇ °æÇèÄ¡¸¦ °¡²û¾¿ ±ï¾Æ¸Ô´Â´Ù. + 공격ìž�ì�˜ 경험치를 ê°€ë�”씩 ê¹�아먹는다. Kingdom allegiance 32 MKNGDM - ¿Õ±¹¿¡ ¼Ò¼ÓµÈ ¸÷À» ¶æÇÑ´Ù. À̼³Á¤É±¢¡µÇ¾ß ³ª¸ÓÁö ¿Õ±¹°ü·Ã - Ç÷¹±×µéÀÌ ÀÛµ¿ÇÑ´Ù. + 왕국ì—� 소ì†�ë�œ 몹ì�„ 뜻한다. ì�´ì„¤ì •�ê´�〉퓸� 나머지 왕국관련 + 플레그들ì�´ ìž‘ë�™í•œë‹¤. Pledge 33 Pledge 0/1 MPLDGK - »ç¿ëÀÚµéÀº ÀÌ Ç÷¹±×°¡ ¼³Á¤µÈ ¸÷ÀÇ ¿Õ±¹¿¡ °¡À﵂ ÀÖÀ¸¸ç - µÚ¿¡ 53¹ø ÀÌÇÏ ¿Õ±¹ Ç÷¹±×°¡ µ¿½Ã¿¡ ¼³Á¤µÇ ÀÖ¾î¾ß ÇÑ´Ù. + 사용ìž�들ì�€ ì�´ 플레그가 설정ë�œ 몹ì�˜ 왕국ì—� 가입ë�˜ 있으며 + ë’¤ì—� 53번 ì�´í•˜ 왕국 플레그가 ë�™ì‹œì—� 설정ë�˜ 있어야 한다. Rescind 34 Rescind 0/1 MRSCND - »ç¿ëÀÚµéÀº °¡ÀÔÇÑ ¸÷ÀÇ ¿Õ±¹¿¡¼­ Å»ÅðÇÒ¼ö ÀÖÀ¸¸ç, 53¹ø ÀÌÇÏ - ¿Õ±¹ Ç÷¹±×°¡ µ¿½Ã¿¡ ¼³Á¤µÇ ÀÖ¾î¾ß ÇÑ´Ù. + 사용ìž�들ì�€ 가입한 몹ì�˜ 왕국ì—�서 탈퇴할수 있으며, 53번 ì�´í•˜ + 왕국 플레그가 ë�™ì‹œì—� 설정ë�˜ 있어야 한다. Disease 35 Disease MDISEA - »ç¿ëÀÚ¿¡°Ô Áúº´À» ÀÏÀ¸Å°´Â °ø°ÝÀ» ÇÑ´Ù. + 사용ìž�ì—�게 질병ì�„ ì�¼ìœ¼í‚¤ëŠ” 공격ì�„ 한다. Disolve items 36 Dissolve MDISIT - »ç¿ëÀÚÀÌ Àåºñ¸¦ °¡²û ³ì¿©¹ö¸°´Ù. + 사용ìž�ì�´ 장비를 ê°€ë�” 녹여버린다. Vendor 37 Purchase MPURIT - ¼ÒÁöǰ¿¡ ÀÖ´Â ¾ÆÀÌÅÛÀ» »ç¿ëÀÚ¿¡°Ô ÆÇ´Ù. + 소지품ì—� 있는 ì•„ì�´í…œì�„ 사용ìž�ì—�게 íŒ�다. Gives Items for quest 38 Trade MTRADE - "±³È¯" À̶õ ¸í·ÉÀ¸·Î ¹°°ÇÀ» ¸Â¹Ù²Ù¾î ÁØ´Ù. ÀÓ¹« ¼³°è½Ç Áß¿äÇÏ°Ô - ¾²ÀÌ¸ç ±× ±³È¯ÇÏ´Â ¹°°ÇÀº 1¹ø¿¡¼­ 5¹øÀÇ ¾ÆÀÌÅÛÀÌ µÈ´Ù. ±³È¯ÇØÁÖ´Â - ¹°°ÇÀº +5ÀÎ 6¹ø¿¡¼­ 10¹øÀÇ ¼ÒÁöǰÀÌ µÇ¸ç, ¿©·¯°¡Áö¸¦ µ¿½Ã¿¡ - ±³È¯ ÇÒ¼öµµ ÀÖ´Ù. + "êµ�환" ì�´ëž€ 명령으로 물건ì�„ 맞바꾸어 준다. 임무 설계실 중요하게 + ì“°ì�´ë©° ê·¸ êµ�환하는 물건ì�€ 1번ì—�서 5번ì�˜ ì•„ì�´í…œì�´ ë�œë‹¤. êµ�환해주는 + 물건ì�€ +5ì�¸ 6번ì—�서 10번ì�˜ 소지품ì�´ ë�˜ë©°, 여러가지를 ë�™ì‹œì—� + êµ�환 할수ë�„ 있다. Passive guard 39 P-Guard MPGUAR - ÃⱸÀÇ Ç÷¹±×¿¡ XPGUARÀÇ Ç÷¹±×°¡ ¼³Á¤µÇÀÖÀ¸¸é ±× Ãⱸ¸¦ - ÁöŰ¸ç ¸ø Åë°úÇÏ°Ô ÇÑ´Ù. + 출구ì�˜ 플레그ì—� XPGUARì�˜ 플레그가 설정ë�˜ìžˆìœ¼ë©´ ê·¸ 출구를 + 지키며 못 통과하게 한다. Good Aggressive 40 Good-Aggro MGAGGR - ¼±ÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 선한 성향ì�˜ 사용ìž�를 공격한다. Evil Aggressive 41 Evil-Aggro MEAGR - ¾ÇÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + 악한 성향ì�˜ 사용ìž�를 공격한다. Death Scene 42 Ddesc MDEATH - ¸÷ÀÌ Á×¾úÀ» °æ¿ì muhan/objmon/ddesc/¿¡ ÀúÀåµÈ ÆÄÀÏÀ» Àо ¹æ¿¡ - Ãâ·ÂÇÏ°Ô µÇ¸ç, ÀÓ¹«ÀÇ ¼º°øÀ̳ª ±ØÀûÀÎ Àå¸éÀ» ¿¬ÃâÇÒ¶§ »ç¿ëµÈ´Ù. - ÆÄÀÏÀº "¸÷À̸§_·¹º§"°°ÀÌ ÀúÀåµÈ´Ù. ¶ÇÇÑ MPERMTÀÇ Ç÷¹±×°¡ µ¿½Ã¿¡ - ¼³Á¤µÇ ÀÖ¾î¾ß ÀÛµ¿µÈ´Ù. ¿¹ "½ÄÀαÍ_25". + 몹ì�´ 죽었ì�„ 경우 muhan/objmon/ddesc/ì—� 저장ë�œ 파ì�¼ì�„ ì�½ì–´ì„œ ë°©ì—� + 출력하게 ë�˜ë©°, 임무ì�˜ 성공ì�´ë‚˜ ê·¹ì �ì�¸ 장면ì�„ 연출할때 사용ë�œë‹¤. + 파ì�¼ì�€ "몹ì�´ë¦„_레벨"ê°™ì�´ 저장ë�œë‹¤. ë˜�한 MPERMTì�˜ 플레그가 ë�™ì‹œì—� + 설정ë�˜ 있어야 ìž‘ë�™ë�œë‹¤. 예 "ì‹�ì�¸ê·€_25". Resist Befuddle 44 R-beffd MRBEFD - È¥µ¿ ÁÖ¹®¿¡ °É·ÁµéÁö ¾Ê´Â´Ù. + 혼ë�™ 주문ì—� 걸려들지 않는다. Resist circle 45 R-circle MNOCIR - ±³¶õÀ̳ª ¸Í°ø¿¡ °É·ÁµéÁö ¾Ê´Â´Ù. + êµ�란ì�´ë‚˜ 맹공ì—� 걸려들지 않는다. Monster Blinds 46 M-blinds MBLNDR - »ç¿ëÀÚ¸¦ ´«¸Ö°Ô ÇÑ´Ù. + 사용ìž�를 눈멀게 한다. DM-follow 47 DM-follow MDMFOL - °ü¸®ÀÚ¸¦ µû¸¥´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ëµÇÁö ¾Ê´Â´Ù. + 관리ìž�를 따른다. 외부ì �으로 사용ë�˜ì§€ 않는다. Monster Fearful 48 M-fear MFEARS - °øÆ÷ ÁÖ¹®¿¡ °É·ÁÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ë ¾Ê´Â´Ù. + ê³µí�¬ 주문ì—� 걸려있다. 외부ì �으로 사용 않는다. Monster silenced 49 M-silenced MSILNC - ÁÖ¹®À» ¿Ü¿ìÁö ¸øÇÑ´Ù. ¿ÜºÎÀû »ç¿ë ¾ÊµÊ. + 주문ì�„ 외우지 못한다. 외부ì � 사용 않ë�¨. Monster Blind 50 M-blind MBLIND - ´«ÀÌ ¸Ö¾î ÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î »ç¿ëµÇÁø ¾Ê´Â´Ù. + 눈ì�´ 멀어 있다. 외부ì �으로 사용ë�˜ì§„ 않는다. Monster charmed 51 M-charm MCHARM - ´©±º°¡ÀÇ Ãָ鿡 °É·Á ÀÖ´Ù. ¿ÜºÎÀûÀ¸·Î ¾²ÀÌÁö ¾Ê´Â´Ù. + 누군가ì�˜ 최면ì—� 걸려 있다. 외부ì �으로 ì“°ì�´ì§€ 않는다. Monster Befuddle 52 M-beffd MBEFUD - È¥µ¿µÇ¾î ÀÖ´Ù. ¿ÜºÎ »ç¿ë ¾ÊÇÔ. + 혼ë�™ë�˜ì–´ 있다. 외부 사용 않함. Monster Kingdom1 53 kingdom1 MKNDM1 - 1¹ø ¿Õ±¹ÀÇ ¼Ò¼Ó ¸÷ + 1번 왕국ì�˜ 소ì†� 몹 Monster Kingdom2 54 kingdom2 MKNDM2 - 2¹ø ¿Õ±¹ÀÇ ¼Ò¼Ó ¸÷ + 2번 왕국ì�˜ 소ì†� 몹 Monster Kingdom3 55 kingdom3 MKNDM3 - 3¹ø ¿¹ºñ ¿Õ±¹ + 3번 예비 왕국 Monster Kingdom4 56 kingdom4 MKNDM4 - 4¹ø ¿¹ºñ ¿Õ±¹ + 4번 예비 왕국 Monster King1 57 king1 MKING1 - 1¹ø ¿Õ±¹ÀÇ ¿Õ + 1번 왕국ì�˜ 왕 Monster King2 58 king2 MKING2 - 2¹ø ¿Õ±¹ÀÇ ¿Õ + 2번 왕국ì�˜ 왕 Monster King3 59 king3 MKING3 - 3¹ø ¿¹ºñ ¿Õ + 3번 예비 왕 Monster King4 60 king4 MKING4 - 4¹ø ¿¹ºñ ¿Õ + 4번 예비 왕 Monster saytalk 61 saytalk MSAYTLK - ¾ÆÁ÷ Á¦ÀÛÁß ¼³Á¤ ±ÝÁö. + ì•„ì§� 제작중 설정 금지. Monster Summon 62 summoner MSUMMO - MPERM Ç÷¹±×¿Í µ¿½Ã¿¡ ¼³Á¤ ÇØ¾ß ÀÛµ¿Çϸç, ¸÷ÀÇ µ¥ÀÌŸÁß - special¹øÈ£¿¡ ÀÖ´Â ¸÷ÀÇ ¹øÈ£¸¦ Á×À» ¶§ ¼ÒȯÇÑ´Ù. ¼ÒȯµÈ - ¸÷Àº ¼ÒȯÇÑ ¸÷°ú ÀüÅõÁßÀÎ »ç¿ëÀÚ¸¦ °ø°ÝÇÑ´Ù. + MPERM 플레그와 ë�™ì‹œì—� 설정 해야 ìž‘ë�™í•˜ë©°, 몹ì�˜ ë�°ì�´íƒ€ì¤‘ + special번호ì—� 있는 몹ì�˜ 번호를 죽ì�„ 때 소환한다. 소환ë�œ + 몹ì�€ 소환한 몹과 전투중ì�¸ 사용ìž�를 공격한다. ----------------------- ÀüÀï ·çÆÀɲº¡¼³¸í -------------------------- +---------------------- ì „ìŸ� 루팀�껼ã€�낯� -------------------------- - ÀüÀï ·çÆ¾Àº ¸î°¡Áö º¹ÀâÇÑ Ç÷¹±×µéÀÇ Á¶ÇÕÀ¸·Î ÀÌ·ç¾î Áø´Ù. ¿ø·¡ -Á¤´çÇÑ »ç¿ëÀÚµéÀÇ ´ë°áÀ» À§ÇØ Á¦ÀÛÇßÀ¸³ª, Á¦ÀÛÁß ½ºÅ丮¿Í »óȲº¯¼öÀÇ -º¹À⼺À¸·Î ÀÎÇØ µÎ°³ÀÇ ³ª¶ó¸¸ Áö¿ø ÇÏ°Ô ¼³°èÇÏ¿´´Ù. ³ª¸ÓÁö µÎ°³ÀÇ ¿Õ±¹Àº -¿¹ºñ·Î ³öµÎ°Ô µÇ¾ú´Ù. + ì „ìŸ� 루틴ì�€ 몇가지 복잡한 플레그들ì�˜ 조합으로 ì�´ë£¨ì–´ 진다. ì›�래 +정당한 사용ìž�들ì�˜ 대결ì�„ 위해 제작했으나, 제작중 스토리와 ìƒ�황변수ì�˜ +복잡성으로 ì�¸í•´ ë‘�ê°œì�˜ 나ë�¼ë§Œ ì§€ì›� 하게 설계하였다. 나머지 ë‘�ê°œì�˜ 왕국ì�€ +예비로 놔ë‘�게 ë�˜ì—ˆë‹¤. -¸ÕÀú ¿Õ±¹Àº ¸÷µé·Î ÀÌ·ç¾î Áø´Ù. °¢ ¿Õ±¹Àº ¿Õ°ú ºÎÇϵé·Î ÀÌ·ç¾îÁ® ÀÖÀ¸¸ç, -¿ÕÀº ¿ÕÀÇ Ç÷¹±×¸¦ ¼³Á¤ÇÏ°Ô µÈ´Ù. °¡ÀÔÇÑ »ç¿ëÀÚ´Â ±× ¿Õ±¹¿¡ ¼Ò¼ÓµÇ°Ô µÇ¸ç, -»ó´ë ¿Õ±¹ÀÇ ¸÷À» ÀâÀ¸¸é »ó±ÝÀ» ¾ò°ÔµÇ°í, ÀÚ½ÅÀÇ ¿Õ±¹ÀÇ »ç¿ëÀÚ³ª ¸÷À» -°ø°ÝÇϸé ÇÇÇØ¸¦ ÀԴ´Ù. ¼±¾ðµÈ ÀüÀïÀº ¼­·ÎÀÇ ¿ÕÀ» Àâ¾Æ¾ß¸¸ ³¡³¾¼ö ÀÖÀ¸¸ç, -À̶§ ½Â¸®ÇÑ ÂÊÀº »óÀ» ¹Þ°ÔµÇ°í, ÆÐ¹èÇÑ ÂÊÀº ¹úÀ» ¹Þ°Ô µÈ´Ù. +먼저 왕국ì�€ 몹들로 ì�´ë£¨ì–´ 진다. ê°� 왕국ì�€ 왕과 부하들로 ì�´ë£¨ì–´ì ¸ 있으며, +왕ì�€ 왕ì�˜ 플레그를 설정하게 ë�œë‹¤. 가입한 사용ìž�는 ê·¸ 왕국ì—� 소ì†�ë�˜ê²Œ ë�˜ë©°, +ìƒ�대 왕국ì�˜ 몹ì�„ 잡으면 ìƒ�금ì�„ 얻게ë�˜ê³ , ìž�ì‹ ì�˜ 왕국ì�˜ 사용ìž�나 몹ì�„ +공격하면 피해를 입는다. ì„ ì–¸ë�œ ì „ìŸ�ì�€ 서로ì�˜ 왕ì�„ 잡아야만 ë��낼수 있으며, +ì�´ë•Œ 승리한 쪽ì�€ ìƒ�ì�„ 받게ë�˜ê³ , 패배한 쪽ì�€ 벌ì�„ 받게 ë�œë‹¤. -¾ÆÁ÷ ¸¹Àº ºÎºÐÀÌ °³¹ßÀÌ ´ú µÈ »óÅÂÀ̰í, ¸¹Àº °³¼±Á¡ÀÌ ÀÖ´Ù. +ì•„ì§� ë§Žì�€ 부분ì�´ 개발ì�´ ë�œ ë�œ ìƒ�태ì�´ê³ , ë§Žì�€ 개선ì �ì�´ 있다. ---------------------- ´ëÈ­ÇÏ´Â ¸÷ÀÇ ¼³Á¤ ------------------------ +--------------------- 대화하는 몹ì�˜ 설정 ------------------------ - ´ëÈ­ÇÏ´Â ¸÷Àº ÀÓÀÇ µ¿±â¸¦ ¼³Á¤ÇÔ°ú µ¿½Ã¿¡ ÈùÆ®¸¦ Á¦°øÇϱâ À§ÇØ -Á¸ÀçÇÑ´Ù. ¶ÇÇÑ ºÎ°¡ÀûÀÎ ¸î°³ÀÇ ±â´ÉÀ» °®°í ÀÖ°í, ±× ´ëÈ­ Çü½ÄÀº + 대화하는 몹ì�€ ìž„ì�˜ ë�™ê¸°ë¥¼ 설정함과 ë�™ì‹œì—� 힌트를 제공하기 위해 +존재한다. ë˜�한 부가ì �ì�¸ 몇개ì�˜ 기능ì�„ ê°–ê³  있고, ê·¸ 대화 형ì‹�ì�€ ------------------- -"´Ü¾î" -"´Ü¾î¿¡ ´ëÇÑ ´ë´ä" +"단어" +"단어ì—� 대한 대답" ------------------ -Çü½ÄÀ¸·Î muhan/objmon/talk/¿¡ ÀúÀå µÈ´Ù. +형ì‹�으로 muhan/objmon/talk/ì—� 저장 ë�œë‹¤. -ºÎ°¡ÀûÀÎ ±â´ÉÀ» »ìÆìº¸¸é +부가ì �ì�¸ 기능ì�„ 살펴보면 -"´Ü¾î" ATTACK -À̰ÍÀº ¸÷°ú ƯÁ¤ÇÑ ´Ü¾î·Î ´ëÈ­ÇÏ¸é °ø°ÝÀ» ÇÏ´Â ±â´ÉÀÌ´Ù. +"단어" ATTACK +ì�´ê²ƒì�€ 몹과 특정한 단어로 대화하면 공격ì�„ 하는 기능ì�´ë‹¤. -"´Ü¾î" ACTION <Çൿ> PLAYER -´Ü¾î¸¦ À̾߱âÇÏ¸é ¸÷ÀÌ Çൿ¿¡ ÀûÇôÀִ ǥÇöÀ» »ç¿ëÀÚ¿¡°Ô ÇÒ°ÍÀÌ´Ù. -Ç¥ÇöÀº action.c¿¡ Á¤ÀÇµÈ Ç¥ÇöÀÌ °¡´ÉÇÏ´Ù. +"단어" ACTION <í–‰ë�™> PLAYER +단어를 ì�´ì•¼ê¸°í•˜ë©´ 몹ì�´ í–‰ë�™ì—� ì �혀있는 표현ì�„ 사용ìž�ì—�게 할것ì�´ë‹¤. +표현ì�€ action.cì—� ì •ì�˜ë�œ 표현ì�´ 가능하다. -"´Ü¾î" CAST <ÁÖ¹®> -´Ü¾î¸¦ À̾߱â Çϸé ÁÖ¹®¿¡ Á¤ÀÇµÈ ÁÖ¹Àɯº¡»ç¿ëÀÚ¿¡°Ô »ç¿ëÇÒ °ÍÀÌ´Ù. -´ëºÎºÐ Ä¡·á ±â´ÉÀ» ÁÙ¶§ »ç¿ëÇϸé ÁÁ´Ù. +"단어" CAST <주문> +단어를 ì�´ì•¼ê¸° 하면 주문ì—� ì •ì�˜ë�œ 주뮌��벙사용ìž�ì—�게 사용할 것ì�´ë‹¤. +대부분 치료 기능ì�„ 줄때 사용하면 좋다. -"´Ü¾î" GIVE <¾ÆÀÌÅÛ ¹øÈ£> -´Ü¾î¸¦ À̾߱â ÇÏ¸é ¾ÆÀÌÅÛ ¹øÈ£¿¡ Á¤ÀÇµÈ ¾ÆÀÌÅÛÀ» ÁÙ°ÍÀÌ´Ù. À̰ÍÀº ÀÓ¹«¸¦ -¼³°èÇÒ¶§ Áß¿äÇÏ°Ô ¾²ÀÌ°Ô µÇ¸ç, À̶§ ¹ö±× Ç÷¹À̰¡ °¡´ÉÇѰ¡? ¹®Á¦´Â ¾ø´Â°¡ -Àß °í·ÁÇØ¾ß ÇÑ´Ù. ´Ü¾î¸¦ À̾߱âÇÏ¸é ¼öõ°³¶óµµ ¾ÆÀÌÅÛÀ» ÁÙ°ÍÀ̱⠶§¹®ÀÌ´Ù. +"단어" GIVE <ì•„ì�´í…œ 번호> +단어를 ì�´ì•¼ê¸° 하면 ì•„ì�´í…œ 번호ì—� ì •ì�˜ë�œ ì•„ì�´í…œì�„ 줄것ì�´ë‹¤. ì�´ê²ƒì�€ 임무를 +설계할때 중요하게 ì“°ì�´ê²Œ ë�˜ë©°, ì�´ë•Œ 버그 플레ì�´ê°€ 가능한가? 문제는 없는가 +잘 고려해야 한다. 단어를 ì�´ì•¼ê¸°í•˜ë©´ 수천개ë�¼ë�„ ì•„ì�´í…œì�„ 줄것ì�´ê¸° 때문ì�´ë‹¤. - =====>°ü¸®ÀÚÀÇ ¸í·É¾îµé<====== + =====>관리ìž�ì�˜ 명령어들<====== -ÀÌ ¸í·ÉÀÇ ÀϺδ ºÒ»çµéÀÌ °øÀ¯Çϰí ÀÖ°í, ´ëºÎºÐ µð½ºÅ© ÀÔÃâ·Â -¸í·ÉÀº °ü¸®ÀÚ¸¸ÀÌ ¼ÒÀ¯Çϰí ÀÖ´Ù. +ì�´ 명령ì�˜ ì�¼ë¶€ëŠ” 불사들ì�´ 공유하고 있고, 대부분 디스í�¬ 입출력 +명령ì�€ 관리ìž�ë§Œì�´ 소유하고 있다. -[»ç¿ëÀÚ] *¹æ¾î·Â - ÁöÁ¤µÈ »ç¿ëÀÚÀÇ ¹æ¾î·Â ¾à°£ÀÇ Á¤º¸ Ãâ·Â. +[사용ìž�] *ë°©ì–´ë ¥ + 지정ë�œ 사용ìž�ì�˜ ë°©ì–´ë ¥ 약간ì�˜ ì •ë³´ 출력. -r <¹æ¹øÈ£> *¹æÁ¦ÀÛ - »õ·Î¿î ¹æÀ» ÁöÁ¤Çϰí Á¦ÀÛÇÑ´Ù. +r <방번호> *방제작 + 새로운 ë°©ì�„ 지정하고 제작한다. -[-n] <¹®Àå...> *Ãß°¡ - ¹æ¼³¸í¿¡ ¹®ÀåÀ» Ãß°¡ÇÑ´Ù. - -n ¹æ¼³¸íÀÇ ¸¶Áö¸· ¹®ÀåÀÇ ³¡¿¡¼­ À̾ ¹®ÀåÀ» Ãß°¡ÇÑ´Ù. +[-n] <문장...> *추가 + 방설명ì—� 문장ì�„ 추가한다. + -n 방설명ì�˜ 마지막 문장ì�˜ ë��ì—�서 ì�´ì–´ì„œ 문장ì�„ 추가한다. -[-n] <³»¿ë ....> *°øÁö - ³»¿ëÀÌ ¸ðµç »ç¿ëÀÚ¿¡°Ô °øÁöµÈ´Ù. - -n °øÁöÀÇ ³»¿ëÀÌ ###À¸·Î ½ÃÀÛµÇÁö ¾Ê´Â´Ù. +[-n] <ë‚´ìš© ....> *공지 + ë‚´ìš©ì�´ 모든 사용ìž�ì—�게 공지ë�œë‹¤. + -n 공지ì�˜ ë‚´ìš©ì�´ ###으로 시작ë�˜ì§€ 않는다. -<¾ÆÀÌÅÛ ¹øÈ£> *âÁ¶ - ¾ÆÀÌÅÛ ¹øÈ£ÀÇ ¹°°ÇÀ» ¸¸µç´Ù. +<ì•„ì�´í…œ 번호> *창조 + ì•„ì�´í…œ 번호ì�˜ 물건ì�„ 만든다. -<¹®Àå....> *¹æ¼Û - ¹®ÀåÀÇ ³»¿ëÀ» °°Àº ¹æ¿¡ ÀÖ´Â »ç¿ëÀڵ鿡°Ô ¾Ë¸°´Ù. +<문장....> *방송 + 문장ì�˜ ë‚´ìš©ì�„ ê°™ì�€ ë°©ì—� 있는 사용ìž�들ì—�게 알린다. -<»ç¿ëÀÚ> *ÇΰŠ- »ç¿ëÀÚÀÇ È£½ºÆ®¿¡ finger°Ë»öÀ» ÇÑ´Ù. +<사용ìž�> *í•‘ê±° + 사용ìž�ì�˜ 호스트ì—� finger검색ì�„ 한다. -*Àç¼³Á¤ - ¸Þ¸ð¸®»óÀÇ ¾ÆÀÌÅÛ°ú ¸÷À» µð½ºÅ©ÀÇ º¯°æµÈ ³»¿ëÀ¸·Î °»½ÅÇÑ´Ù. +*재설정 + 메모리ìƒ�ì�˜ ì•„ì�´í…œê³¼ 몹ì�„ 디스í�¬ì�˜ 변경ë�œ 내용으로 갱신한다. -<»ç¿ëÀÚ> <Çൿ> *°­Á¦ - »ç¿ëÀÚ¿¡°Ô ÇൿÀ» °­¿äÇÑ´Ù. +<사용ìž�> <í–‰ë�™> *ê°•ì œ + 사용ìž�ì—�게 í–‰ë�™ì�„ 강요한다. --r <ÁÖ¹®> *ÀüÁÖ¹® - ¸ðµç »ç¿ëÀÚ¿¡°Ô ÁÖ¹®À» ¿Ü¿î´Ù. µµ·ÂÀÌ ÇÊ¿äÄ¡ ¾Ê´Ù. - -r °°Àº ¹æÀÇ »ç¿ëÀÚ¿¡°Ô¸¸ ÁÖ¹®À» ¿Ü¿î´Ù. +-r <주문> *전주문 + 모든 사용ìž�ì—�게 주문ì�„ 외운다. ë�„ë ¥ì�´ 필요치 않다. + -r ê°™ì�€ ë°©ì�˜ 사용ìž�ì—�게만 주문ì�„ 외운다. -<»ç¿ëÀÚ> *±×·ì - »ç¿ëÀÚ ±×·ì¿øÀ» °Ë»öÇÑ´Ù. +<사용ìž�> *그룹 + 사용ìž� 그룹ì›�ì�„ 검색한다. -*Á¤º¸ - ¸ÓµåÀÇ »óŸ¦ º»´Ù. +*ì •ë³´ + 머드ì�˜ ìƒ�태를 본다. -*Åõ¸í - ÀÚ½ÅÀ» »ç¿ëÀڵ鿡°Ô¼­ °¨Ãá´Ù. +*투명 + ìž�ì‹ ì�„ 사용ìž�들ì—�게서 ê°�춘다. - *¸®½ºÆ® - °¢ Á¾·ùº°·Î ¸®½ºÆ® °Ë»öÇÑ´Ù. ¹Ì¸® list À¯Æ¿ÀÌ ÄÄÆÄÀϵǾ - bin/¿¡ À§Ä¡ÇØ ÀÖ¾î¾ß ÇÑ´Ù. + *리스트 + ê°� 종류별로 리스트 검색한다. 미리 list 유틸ì�´ 컴파ì�¼ë�˜ì–´ì„œ + bin/ì—� 위치해 있어야 한다. -*Á¦ÇÑ - Á¢¼ÓÁö Á¦ÇÑ ÆÄÀÏÀ» °»½ÅÇØ Àд´Ù. +*제한 + ì ‘ì†�ì§€ 제한 파ì�¼ì�„ 갱신해 ì�½ëŠ”ë‹¤. -<¸÷ ¹øÈ£> [n #] *±«¹° - ¸÷¹øÈ£ÀÇ ±«¹°À» ¼ÒȯÇÑ´Ù. n ´ÙÀ½ ¼öÄ¡°¡ ÁöÁ¤µÇ¸é ±×¼ýÀÚ¸¸Å­ - ¼ÒȯµÈ´Ù. +<몹 번호> [n #] *괴물 + 몹번호ì�˜ 괴물ì�„ 소환한다. n 다ì�Œ 수치가 지정ë�˜ë©´ 그숫ìž�ë§Œí�¼ + 소환ë�œë‹¤. -<À̸§ ...> *¹æÀ̸§ - ¹æÀÇ Á¦¸ñÀ» ±³Ã¼ÇÑ´Ù. +<ì�´ë¦„ ...> *ë°©ì�´ë¦„ + ë°©ì�˜ 제목ì�„ êµ�체한다. -[dr #] *¼öÄ¡ +[dr #] *수치 - d ¸î°¡Áö ¼öÄ¡Àû Á¤º¸¸¦ °Ë»öÇÑ´Ù. + d 몇가지 수치ì � 정보를 검색한다. - r # ·£´ý ¸÷ÀÇ ÃâÇö ºóµµ¸¦ Á¤ÀÇÇÑ´Ù. + r # ëžœë�¤ 몹ì�˜ 출현 빈ë�„를 ì •ì�˜í•œë‹¤. -<¾ÆÀÅ¥® *¿µ¿ø - ÁöÁ¤µÈ ¾ÆÀÌÅÛÀ» OPERM Ç÷¹±× ¼³Á¤ÇÑ´Ù. +<ì•„ì�–�� *ì˜�ì›� + 지정ë�œ ì•„ì�´í…œì�„ OPERM 플레그 설정한다. -[-sn] <¹®Àå...> *¼­¾ð - *Ãß°¡¿Í °°Àº ¹æ½ÄÀ¸·Î ¹æ¼³¸íÀ» À§ÂÊ¿¡¼­ Ãß°¡ÇÑ´Ù. +[-sn] <문장...> *서언 + *추가와 ê°™ì�€ ë°©ì‹�으로 방설명ì�„ 위쪽ì—�서 추가한다. -*¾ø¾Ö±â - ¹æÀÇ ¸÷°ú ¾ÆÀÌÅÛÀ» Á¦°ÅÇÑ´Ù. +*없애기 + ë°©ì�˜ 몹과 ì•„ì�´í…œì�„ 제거한다. -*·Îµå - ¹æ »óŸ¦ µð½ºÅ©¿¡¼­ ´Ù½Ã Àд´Ù. +*로드 + ë°© ìƒ�태를 디스í�¬ì—�서 다시 ì�½ëŠ”ë‹¤. -[-D] <´Ü¾î> <±³Ã¼ÇÒ ´Ü¾î> *±³Ã¼ - ¹æ ¼³¸íÁß ´Ü¾î¸¦ ã¾Æ¼­ ±³Ã¼ÇÒ ´Ü¾î·Î ±³Ã¼ÇÑ´Ù. - -D ´Â ±³Ã¼ÇÒ ´Ü¾îºÎºÐÀ» Áö¿ì°í ±³Ã¼ÇÑ´Ù. +[-D] <단어> <êµ�ì²´í•  단어> *êµ�ì²´ + ë°© 설명중 단어를 찾아서 êµ�ì²´í•  단어로 êµ�체한다. + -D 는 êµ�ì²´í•  단어부분ì�„ 지우고 êµ�체한다. -*¹æ¹øÈ£ - ¹æ¹øÈ£¸¦ º»´Ù. +*방번호 + 방번호를 본다. -*¼¼À̺ê - ¹æÀÇ »óŸ¦ ÀúÀåÇÑ´Ù. ¸ðµç ±â´ÉÀ¸·Î »óŸ¦ ¹Ù²Ù¾ú´õ¶óµµ ¸Þ¸ð¸®¿¡¼­ - Á¸ÀçÇϱ⠶§¹®¿¡ ÀúÀåÀ» ÇØ¾ß ´ÙÀ½¿¡µµ »óŸ¦ À¯ÁöÇÑ´Ù. +*세ì�´ë¸Œ + ë°©ì�˜ ìƒ�태를 저장한다. 모든 기능으로 ìƒ�태를 바꾸었ë�”ë�¼ë�„ 메모리ì—�서 + 존재하기 때문ì—� 저장ì�„ 해야 다ì�Œì—�ë�„ ìƒ�태를 유지한다. -<¹®Àå> *ÀüÇϱâ - ¸ðµç °ü¸®ÀÚ¿Í ºÒ»çµé¿¡°Ô ¹®ÀåÀ» ÀüÇÑ´Ù. +<문장> *전하기 + 모든 관리ìž�와 불사들ì—�게 문장ì�„ 전한다. -[now] [#] *Á¾·á - ¸Óµå¸¦ Á¾·áÇÑ´Ù. - now ¹Ù·Î Á¾·áÇÑ´Ù. - # ÁöÁ¤µÈ ¼ýÀÚ ¸¸Å­ 1ºÐ ´ÜÀ§·Î Áö¿¬Çؼ­ Á¾·áÇÑ´Ù. +[now] [#] *종료 + 머드를 종료한다. + now 바로 종료한다. + # 지정ë�œ 숫ìž� ë§Œí�¼ 1ë¶„ 단위로 지연해서 종료한다. -<»ç¿ëÀÚ> [cm] *º¡¾î¸® - »ç¿ëÀÚÀÇ Àâ´ãÀ» ±ÝÁö½ÃŲ´Ù. - c ³²É±¢¡Àâ´ã Ƚ¼ö¸¦ º»´Ù - m # Àâ´ã ȸ¼ö¸¦ ¼³Á¤ÇÑ´Ù. +<사용ìž�> [cm] *벙어리 + 사용ìž�ì�˜ 잡담ì�„ 금지시킨다. + c 남�ê´�÷穗� 횟수를 본다 + m # 잡담 회수를 설정한다. -<»ç¿ëÀÚ> *°¨½Ã - »ç¿ëÀÚÀÇ ¼ö»óÇÑ ÇൿÀ» °¨½ÃÇÑ´Ù. +<사용ìž�> *ê°�시 + 사용ìž�ì�˜ 수ìƒ�한 í–‰ë�™ì�„ ê°�시한다. - *¼³Á¤ - ¸÷, »ç¿ëÀÚ, ¾ÆÀÌÅÛ, ¹æ, Ãⱸ¸¦ ¼³Á¤ÇÑ´Ù. + *설정 + 몹, 사용ìž�, ì•„ì�´í…œ, ë°©, 출구를 설정한다. -o <¹°°Ç> [#] [¸÷,»ç¿ëÀÚ] <¼±ÅûçÇ×> [°ª] *¼³Á¤ - ¸÷ ¶Ç´Â »ç¿ëÀÚ°¡ °®°í ÀÖ´Â ¹°°ÇÀÇ Á¤º¸¸¦ ¼³Á¤ÇÑ´Ù. +o <물건> [#] [몹,사용ìž�] <ì„ íƒ�사항> [ê°’] *설정 + 몹 ë˜�는 사용ìž�ê°€ ê°–ê³  있는 물건ì�˜ 정보를 설정한다. -c/p/m <À̸§> [#] <¼±ÅûçÇ×> [°ª] *¼³Á¤ - »ç¿ëÀÚ³ª ¸÷ÀÇ Á¤º¸¸¦ ¼öÁ¤ÇÑ´Ù. +c/p/m <ì�´ë¦„> [#] <ì„ íƒ�사항> [ê°’] *설정 + 사용ìž�나 몹ì�˜ 정보를 수정한다. -r <¼±ÅûçÇ×> [°ª] *¼³Á¤ - ÇöÀç ÀÚ½ÅÀÌ Á¸ÀçÇÏ´Â ¹æÀÇ Á¤º¸¸¦ ¼öÁ¤ÇÑ´Ù. +r <ì„ íƒ�사항> [ê°’] *설정 + 현재 ìž�ì‹ ì�´ 존재하는 ë°©ì�˜ 정보를 수정한다. -xf <Ãⱸ> <¹øÈ£> *¼³Á¤ - ÇöÀç ÀÚ½ÅÀÌ Á¸ÀçÇÏ´Â ¹æÀÇ Ãⱸ Ç÷¡±×¸¦ ¼³Á¤/ÇØÁ¦ÇÑ´Ù. +xf <출구> <번호> *설정 + 현재 ìž�ì‹ ì�´ 존재하는 ë°©ì�˜ 출구 플래그를 설정/해제한다. -x <ÃⱸÀ̸§> <¹æ¹øÈ£> [<ÃⱸÀ̸§2>] *¼³Á¤ - <ÃⱸÀ̸§>À¸·Î <¹æ¹øÈ£>·Î Ãⱸ¸¦ ¸¸µç´Ù. <¹æ¹øÈ£>°¡ 0À̸é - <ÃⱸÀ̸§>ÀÇ Ãⱸ°¡ »èÁ¦µÈ´Ù. <ÃⱸÀ̸§2>°¡ ¼³Á¤µÇ¸é - Ãⱸ¸¦ ¼³Á¤ÇÑ ÈÄ¿¡ <¹æ¹øÈ£>¿¡¼­ ÇöÀçÀÖ´Â ¹æÀ¸·Î <ÃⱸÀ̸§2>·Î - ´Ù½Ã Ãⱸ°¡ ¸¸µé¾îÁø´Ù. +x <출구ì�´ë¦„> <방번호> [<출구ì�´ë¦„2>] *설정 + <출구ì�´ë¦„>으로 <방번호>로 출구를 만든다. <방번호>ê°€ 0ì�´ë©´ + <출구ì�´ë¦„>ì�˜ 출구가 ì‚­ì œë�œë‹¤. <출구ì�´ë¦„2>ê°€ 설정ë�˜ë©´ + 출구를 설정한 후ì—� <방번호>ì—�서 현재있는 방으로 <출구ì�´ë¦„2>로 + 다시 출구가 만들어진다. -x bl <·¹º§> *¼³Á¤ - ±× Ãⱸ·Î °¥¼ö ÀÖ´Â ÃÖ¼Ò·¹º§À» ¼³Á¤ÇÑ´Ù. +x bl <레벨> *설정 + ê·¸ 출구로 갈수 있는 최소레벨ì�„ 설정한다. -x bh <·¹º§> *¼³Á¤ - ±× Ãⱸ·Î °¥¼ö ÀÖ´Â ÃÖ°í·¹º§À» ¼³Á¤ÇÑ´Ù. +x bh <레벨> *설정 + ê·¸ 출구로 갈수 있는 최고레벨ì�„ 설정한다. -x x <¹øÈ£> *¼³Á¤ - ÇöÀç ¹æÀÇ ÇÔÁ¤ ¹øÈ£¸¦ ¼³Á¤ÇÑ´Ù. +x x <번호> *설정 + 현재 ë°©ì�˜ 함정 번호를 설정한다. -[¹°°Ç/»ç¿ëÀÚ/¸÷] *»óÅ - °¢±â ÀÚ¼¼ÇÑ Á¤º¸¿Í Ç÷¹±×¸¦ º»´Ù. +[물건/사용ìž�/몹] *ìƒ�태 + ê°�기 ìž�세한 정보와 플레그를 본다. -[»ç¿ëÀÚ1/¹æ¹øÈ£] [»ç¿ëÀÚ2] *¼ø°£À̵¿ - ¼ø°£ À̵¿ÇÑ´Ù. - *¼ø°£À̵¿ »ý¸íÀÇ ³ª¹«·Î À̵¿. - # *¼ø°£À̵¿ #¹øÈ£ÀÇ ¹À¸·É´²¡À̵¿. - »ç¿ëÀÚ *¼ø°£À̵¿ »ç¿ëÀÚ·Î À̵¿. - »ç¿ëÀÚ1 »ç¿ëÀÚ2 *¼ø°£À̵¿ 1¹ø »ç¿ëÀÚ¸¦ 2¹ø »ç¿ëÀÚ·Î À̵¿. - ply1 . *¼ø°£À̵¿ 1¹ø »ç¿ëÀÚ¸¦ Àڽſ¡°Ô À̵¿. +[사용ìž�1/방번호] [사용ìž�2] *순간ì�´ë�™ + 순간 ì�´ë�™í•œë‹¤. + *순간ì�´ë�™ ìƒ�명ì�˜ 나무로 ì�´ë�™. + # *순간ì�´ë�™ #번호ì�˜ 뮌막�눠÷絹�. + 사용ìž� *순간ì�´ë�™ 사용ìž�로 ì�´ë�™. + 사용ìž�1 사용ìž�2 *순간ì�´ë�™ 1번 사용ìž�를 2번 사용ìž�로 ì�´ë�™. + ply1 . *순간ì�´ë�™ 1번 사용ìž�를 ìž�ì‹ ì—�게 ì�´ë�™. -*´©±¸ - »ç¿ëÀÚ ¸ñ·ÏÀ» º»´Ù +*누구 + 사용ìž� 목ë¡�ì�„ 본다 - >¾ÆÀÌÅÛÀÇ Flags< + >ì•„ì�´í…œì�˜ Flags< -mtype.h¿¡ ÀÇµÈ ½Äº°ÀÚ´Â À̰÷º¸´Ù 1ÀÌ ÀÛ´Ù. +mtype.hì—� ì�˜ë�œ ì‹�별ìž�는 ì�´ê³³ë³´ë‹¤ 1ì�´ 작다. ======================================================================= Permanent 1 Pperm OPERMT - ´©±º°¡°¡ Áý¾îµé±âÀü¿¡´Â °è¼Ó ¹æ¿¡ Á¸ÀçÇÑ´Ù. + 누군가가 집어들기전ì—�는 계ì†� ë°©ì—� 존재한다. Hidden 2 Hidden OPERMT - Æ÷Á¹À̳ª ´©±º°¡ ¹ß°ßÇϱâ Àü±îÁö´Â º¸ÀÌÁö ¾Ê´Â´Ù. + í�¬ì¡¸ì�´ë‚˜ 누군가 발견하기 전까지는 ë³´ì�´ì§€ 않는다. Invisible 3 Invis OINVIS - Åõ¸íÇÑ ¾ÆÀÌÅÛÀ¸·Î ÀºµÐ °¨Áö°¡ ÇÊ¿äÇÏ´Ù. + 투명한 ì•„ì�´í…œìœ¼ë¡œ ì�€ë‘” ê°�지가 필요하다. Prefix Some 4 OSOMEA - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ Plurals 5 ODROPS - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ No Prefix 6 ONOPRE - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ Container 7 Cont OCONTN - º¸µû¸® Á¾·ù·Î ´Ù¸¥ ¾ÆÀÌÅÛÀ» ´ãÀ»¼ö ÀÖÉ®¢¯ + 보따리 종류로 다른 ì•„ì�´í…œì�„ ë‹´ì�„수 있��¿ Weightless Container 8 Wtless OCONTN - ¹«°Ô ¾ø´Â º¸µû¸®·Î ¾ÆÀÌÅÛÀ» ´ãÀ¸¸é ¹«°Ô°¡ »ç¶óÁø´Ù. + 무게 없는 보따리로 ì•„ì�´í…œì�„ 담으면 무게가 사ë�¼ì§„다. Temp Permanent 9 Tperm OTEMPP Inventory Permanent 10 IPerm OPERM2 Mage restricted 11 Nomage ONOMAG - µµ¼ú»ç »ç¿ë ±ÝÁö. + ë�„술사 사용 금지. Light Source 12 Light OLIGHT - »ç¿ëÇÏ¸é ±¤¿øÀ¸·Î ºûÀ» ³½´Ù. + 사용하면 ê´‘ì›�으로 ë¹›ì�„ 낸다. Good Only 13 Good OGOODO - ¼±ÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¿ë + 선한 성향ì�˜ 사용ìž�ìš© Evil Only 14 Evil OEVILO - ¾ÇÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¿ë + 악한 성향ì�˜ 사용ìž�ìš© Enchanted 15 Ench OENCHA - "ºùÀÇ"·Î °­È­µÈ ¹°°Ç + "ë¹™ì�˜"로 ê°•í™”ë�œ 물건 Non repairable 16 NoFix ONOFIX - ¼ö¸® ºÒ°¡ÇÑ ¹°°Ç + 수리 불가한 물건 Climbing Gear 17 Climbing OCLIMB - µî¹Ý Àåºñ·Î ¿À¸£¸·±æ¿¡¼­ µµ¿ò µÊ + 등반 장비로 오르막길ì—�서 ë�„움 ë�¨ Cannot be taken 18 Notake ONOTAK - »ç¿ëÀÚ°¡ ÁÖÀ»¼ö ¾ø´Â ¹°°Ç + 사용ìž�ê°€ 주ì�„수 없는 물건 OSCENE 19 Scenery OSCENE - ¹æ¼³¸íÀÇ ÀϺηΠÁ¸Àç´Â ³ª º¸ÀÌÁö´Â ¾Ê´Â´Ù. + 방설명ì�˜ ì�¼ë¶€ë¡œ 존재는 나 ë³´ì�´ì§€ëŠ” 않는다. Sized armor 20/21 Sized OSIZE1/OSIZE2 - °©¿ÊÀÇ °æ¿ìó·³ Å©±â ¼³Á¤ÇÏ´Â °ÍÀ¸·Î Á¾Á·ÀÇ ¿µÇâÀ» ¹Þ´Â´Ù. - 00´Â Á¦ÇѾø°í, 01Àº ÀÛÀº Å©±â, 10Àº Áß°£ Å©±â, 11Àº Å« Å©±â·Î - ¸Â´Â Á¾Á·¸¸ »ç¿ë°¡´ÉÇÏ´Ù. + 갑옷ì�˜ 경우처럼 í�¬ê¸° 설정하는 것으로 종족ì�˜ ì˜�í–¥ì�„ 받는다. + 00는 제한없고, 01ì�€ ìž‘ì�€ í�¬ê¸°, 10ì�€ 중간 í�¬ê¸°, 11ì�€ í�° í�¬ê¸°ë¡œ + 맞는 종족만 사용가능하다. Random Enchant 22 RandEnch ORENCH - ¹°°ÇÀÌ µîÀåÇÒ¶§ ·£´ýÇÏ°Ô ºùÀÇµÇ¾î ³ª¿Â´Ù. + 물건ì�´ 등장할때 ëžœë�¤í•˜ê²Œ ë¹™ì�˜ë�˜ì–´ 나온다. Cursed 23 Cursed OCURSE - ÀúÁÖ °É¸° ¹°°Ç + 저주 걸린 물건 Worn 24 Worn OWEARS - ÀÔ°í ÀÖ´Ù´Â Ç÷¹É­ª¡¿ÜºÎ »ç¿ë ±ÝÁö. + ìž…ê³  있다는 플레��ã��외부 사용 금지. Floor usable 25 Use-floor OUSEFl - ¹Ù´Ú¿¡ ¶³¾îÁ® ÀÖÀ»¶§µµ »ç¿ë °¡´É. + 바닥ì—� 떨어져 있ì�„때ë�„ 사용 가능. Devouring container 26 Devours OCNDES - º¸µû¸® Á¾·ù·Î µé¾î°¡´Â ¹°°ÇÀº ÆÄ±« µÈ´Ù. + 보따리 종류로 들어가는 물건ì�€ 파괴 ë�œë‹¤. Female only 27 Nomale ONOMAL - ¿©¼º Àü¿ë + 여성 ì „ìš© Male only 27 Nofemale ONOFEM - ³²¼º Àü¿ë + 남성 ì „ìš© Damage based object 29 NdS dam ODDICE - ÀüÅõ½Ã ¼³Á¤µÈ Ÿ°ÝÄ¡¿¡ µû¶ó »ç¿ëµÊ. + 전투시 설정ë�œ 타격치ì—� ë”°ë�¼ 사용ë�¨. Pledge Only 30/31 Kingdom 0/1 OPLDGK/OKNGDM - ¿Õ±¹¿¡ °¡ÀÔµÈ »ç¶÷¸¸ »ç¿ë °¡´É. µÑ´Ù Ç÷¹±×¸¦ ¼³Á¤ÇØ¾ß ÇÑ´Ù. + 왕국ì—� 가입ë�œ 사람만 사용 가능. 둘다 플레그를 설정해야 한다. Class selective 32 Cls-Sel: OCLSSEl - ¼³Á¤µÇ¸é ´ÙÀ½ÀÇ Ç÷¹±×¿¡ µû¶ó Á÷¾÷ ¼ºÇâÀÌ Á¤ÇØÁø´Ù. + 설정ë�˜ë©´ 다ì�Œì�˜ 플레그ì—� ë”°ë�¼ ì§�ì—… 성향ì�´ 정해진다. Assassin usable 33 A OASSNO - ÀÚ°´ »ç¿ë + ìž�ê°� 사용 Barbarian usable 34 B OBARBO - ±Ç¹ý°¡ »ç¿ë + 권법가 사용 Cleric usable 35 C OCLERO - ºÒÁ¦ÀÚ »ç¿ë + 불제ìž� 사용 Fighter usable 36 F OFIGHO - °Ë»ç »ç¿ë + 검사 사용 Mage usable 37 M OMAGEO - µµ¼ú»ç »ç¿ë + ë�„술사 사용 Paladin usable 38 P OPALAO - ¹«»ç »ç¿ë + 무사 사용 Ranger usable 39 R ORNGRO - Æ÷Á¹ »ç¿ë + í�¬ì¡¸ 사용 Thief usable 40 T OTHIEO - µµµÏ »ç¿ë + ë�„ë‘‘ 사용 Changeble Name 44 OCNAME - À̸§À» »ç¿ëÀÚ°¡ ¸í¸í ÇÒ¼ö ÀÖ´Â ¾ÆÀÌÅÛ. + ì�´ë¦„ì�„ 사용ìž�ê°€ 명명 할수 있는 ì•„ì�´í…œ. ------------------- ÁÖ¹®¼­ Ư¼º ------------------------------ +------------------ 주문서 특성 ------------------------------ -ÁÖ¹®¼­´Â special¿¡ °¢±â ·¹º§ÀÌ ÁöÁ¤µÈ´Ù. À̶§ ·¹º§Àº ¹è¿ì·Á´Â »ç¶÷ÀÌ -ÁöÁ¤µÈ ·¹º§º¸´Ù ÀÛÀ¸¸é ±× ÁÖ¹®¼­¸¦ ÀÌÇØÇÒ¼ö ¾ø´Ù. +주문서는 specialì—� ê°�기 레벨ì�´ 지정ë�œë‹¤. ì�´ë•Œ 레벨ì�€ 배우려는 사람ì�´ +지정ë�œ 레벨보다 작으면 ê·¸ 주문서를 ì�´í•´í• ìˆ˜ 없다. ------------------- ¿­¼è Á¦ÀÛ¹ý ------------------------------ +------------------ 열쇠 제작법 ------------------------------ -Ãⱸ¿¡¼­ ÁöÁ¤µÈ ¿­¼è´Â ¿­¼èÀÇ ¾ÆÀÌÅÛ ¹øÈ£°¡ ¾Æ´Ï¶ó ¿­¼èÀÇ Dice¹øÈ£·Î -ÁöÁ¤µÈ´Ù. ÀÌ ¹øÈ£¸¦ Ãⱸ¿Í ÀÏÄ¡½ÃÄÑ¾ß ÇÑ´Ù. +출구ì—�서 지정ë�œ 열쇠는 열쇠ì�˜ ì•„ì�´í…œ 번호가 아니ë�¼ 열쇠ì�˜ Dice번호로 +지정ë�œë‹¤. ì�´ 번호를 출구와 ì�¼ì¹˜ì‹œì¼œì•¼ 한다. - >¹æÀÇ Flags< + >ë°©ì�˜ Flags< -mtype.h¿¡¼­ ½Äº°ÀÚ´Â 1ÀÌ ÀÛ´Ù. +mtype.hì—�서 ì‹�별ìž�는 1ì�´ 작다. ======================================================================= Shop 1 Shoppe RSHOPP - ¹°°Ç ÆÄ´Â »óÁ¡ + 물건 파는 ìƒ�ì � Recycle 2 Dump RDUMPR - À̰÷¿¡ ¹ö¸° ¹°°ÇÀº ¾ø¾îÁö°í ¾à°£ÀÇ µ·ÀÌ »ç¿ëÀÚ¿¡°Ô º¸ÅÂÁü. + ì�´ê³³ì—� 버린 물건ì�€ 없어지고 약간ì�˜ ë�ˆì�´ 사용ìž�ì—�게 보태ì§�. Pawnshop 3 Pawnshop RPAWNS - »ç¿ëÀÚÀÇ ¹°°ÇÀ» »ç´Â Àü´çÆ÷ + 사용ìž�ì�˜ 물건ì�„ 사는 전당í�¬ Training ground 4-5-6-7 Train RTRAIN - Á÷¾÷º° ¼ö·ÃÀåÀ¸·Î 4°³ÀÇ ºñÆ®·Î ¼³Á¤µÈ´Ù. - 000:ÀÚ°´, 001:±Ç¹ý°¡.........111:µµµÏ¼ø ÀÌ´Ù. + ì§�업별 수련장으로 4ê°œì�˜ 비트로 설정ë�œë‹¤. + 000:ìž�ê°�, 001:권법가.........111:ë�„둑순 ì�´ë‹¤. Repair Shop 8 Repair RREPAI - ¼ö¸®Á¡À¸·Î ¹°°ÇÀ» °íÄ£´Ù. + 수리ì �으로 물건ì�„ 고친다. Continual Darkness 9 DarkAlways RDARKR - ±¤¿øÀÌ ÇÊ¿äÇÑ Ç×»ó ¾îµÎ¿î Áö¿ª + ê´‘ì›�ì�´ 필요한 í•­ìƒ� ì–´ë‘�ìš´ 지역 Dark At Night 10 DarkNight RDARKN - ¹ãÀÌ µÇ¸é ¾îµÎ¿î Áö¿ª + ë°¤ì�´ ë�˜ë©´ ì–´ë‘�ìš´ 지역 Post Office 11 PostOffice RPOSTO - »ç¿ëÀÚ³¢¸® ÆíÁö¸¦ ÁÖ°í¹Þ´Â ¿ìü±¹ + 사용ìž�ë�¼ë¦¬ 편지를 주고받는 ìš°ì²´êµ­ Safe Room 12 NoPlyKill RNOKIL - »ç¿ëÀÚ °ø°Ý ±ÝÁö Áö¿ª + 사용ìž� 공격 금지 지역 No Teleport 13 NoTeleport RNOTEL - °ø°£À̵¿, ÃßÀû, ¼Òȯ ±ÝÁöÁö¿ª + 공간ì�´ë�™, ì¶”ì �, 소환 금지지역 Fast heal 14 HealFast RHEALR - ºü¸¥ ȸº¹ Áö¿ª + 빠른 회복 지역 One Player 15 OnePlayer RONEPL - ÇÑ»ç¶÷¸¸ µé¾î°¥¼ö ÀÖ´Â Áö¿ª + 한사람만 들어갈수 있는 지역 Two Player 16 TwoPlayer RTWOPL - µÎ»ç¶÷¸¸ µé¾î°¥¼ö ÀÕ´Â Áö¿ª + ë‘�사람만 들어갈수 잇는 지역 Three Player 17 Threeplyr RTHREE - ¼¼»ç¶÷¸¸ µé¾î°¥¼ö ÀÖ´Â Áö¿ª + 세사람만 들어갈수 있는 지역 No Magic 18 NoMagic RNOMAG - ÁÖ¹® ±ÝÁö Áö¿ª + 주문 금지 지역 Permanent Tracks 19 PermTrack RPTRAK - Æ÷Á¹ÀÌ ¹ß°ßÇÒ¼ö ÀÖ´Â ÈçÀûÀÌ ÀÖ´Â ¹æ + í�¬ì¡¸ì�´ 발견할수 있는 í�”ì �ì�´ 있는 ë°© Earth Realm 20 Earth REATH - ¶¥°è¿­ Áö¿ª + 땅계열 지역 Wind Realm 21 Wind RWINDR - ¹Ù¶÷°è¿­ Áö¿ª + 바람계열 지역 Fire Realm 22 Fire RFIRER - ºÒ°è¿­ Áö¿ª + 불계열 지역 Water Realm 23 Water RWATER - ¹°°è¿­ Áö¿ª + 물계열 지역 Group Wander 24 Group RPLWAN - Random Monster¿¡ Á¤ÀÇµÈ ¸÷ÀÌ ¹æ¿¡ Á¸ÀçÇÏ´Â »ç¿ëÀÚÀÇ - ¼ö¿¡ µû¶ó µîÀåÇÑ´Ù. + Random Monsterì—� ì •ì�˜ë�œ 몹ì�´ ë°©ì—� 존재하는 사용ìž�ì�˜ + 수ì—� ë”°ë�¼ 등장한다. Player Harm 25 PHarm RPHARM - »ç¿ëÀÚ°¡ ÀûÀýÇÑ °è¿­ÀÇ º¸È£ ÁÖ¹®ÀÌ ¾øÀ¸¸é, À§¿¡ ¼³Á¤µÈ - °è¿­º°·Î ÇÇÇØ¸¦ ÀÔ°Ô µÈ´Ù. + 사용ìž�ê°€ ì �절한 계열ì�˜ 보호 주문ì�´ 없으면, 위ì—� 설정ë�œ + 계열별로 피해를 입게 ë�œë‹¤. Poison 26 P-Poison RPPOIS - »ç¿ëÀÚ°¡ ÀÏÁ¤ ½Ã°£ ¸Ó¹°¸é Áßµ¶µÊ. + 사용ìž�ê°€ ì�¼ì • 시간 머물면 중ë�…ë�¨. Magic Drain 27 MPDrain RPMPRD - º¸È£ ÁÖ¹®ÀÌ ¾øÀ¸¸é µµ·ÂÀ» Á¡Á¡ »ó½ÇÇÑ´Ù. + 보호 주문ì�´ 없으면 ë�„ë ¥ì�„ ì �ì � ìƒ�실한다. Befudlng 28 Confusion RPBEFU - »ç¿ëÀÚ°¡ ÀÏÁ¤ ½Ã°£ ¸Ó¹°¸é È¥µ¿µÈ´Ù. + 사용ìž�ê°€ ì�¼ì • 시간 머물면 혼ë�™ë�œë‹¤. No Summon 29 No SUmmon RNOLEA - ¼Òȯ ±ÝÁö Áö¿ª + 소환 금지 지역 Pledge 30 Pledge RPLDGK - ¿Õ±¹ ·çƾÁßÀÇ Çϳª·Î À̰÷¿¡¼­ ¿Õ±¹ÀÇ ¸÷¿¡°Ô °¡ÀÔ. + 왕국 루틴중ì�˜ 하나로 ì�´ê³³ì—�서 왕국ì�˜ 몹ì—�게 가입. Rescind 31 Rescind RRSCND - ¿Õ±¹ ·çƾÁßÀÇ Çϳª·Î À̰÷¿¡ ¿Õ±¹ÀÇ ¸÷¿¡°Ô Å»Åð. + 왕국 루틴중ì�˜ 하나로 ì�´ê³³ì—� 왕국ì�˜ 몹ì—�게 탈퇴. No Potion 32 No Potion RNOPOT - ¾à »ç¿ë ±ÝÁö Áö¿ª + 약 사용 금지 지역 Extended Magic 33 Pmagic RPMEXT - ÁÖ¹® °­È­ Áö¿ª + 주문 ê°•í™” 지역 Room nologon 34 Rnolog RNOLOG - À̰÷¿¡¼­ ³¡³ª´õ¶óµµ ´Ù½Ã Á¢¼Ó½Ã À̰÷¿¡¼­ - ½ÃÀÛÇÒ¼ö ¾ø´Ù. + ì�´ê³³ì—�서 ë��나ë�”ë�¼ë�„ 다시 ì ‘ì†�시 ì�´ê³³ì—�서 + 시작할수 없다. Election Box 35 R-elec RELECT - ÅõÇ¥¼Ò + 투표소 Room Forge 36 R-forge RFORGE - Ư¼ö¹«±â¸¦ Á¦·ÃÇÏ´Â ´ëÀå°£. + 특수무기를 제련하는 대장간. ---------------------- »óÁ¡ ¸¸µå´Â ¹ý -------------------------- +--------------------- ìƒ�ì � 만드는 법 -------------------------- -»óÁ¡Àº â°í¸¦ °¡Áö°í ÀÖ¾î¾ß ÇÑ´Ù. â°í´Â »óÁ¡¹øÈ£+1 ·Î ¼³Á¤µÈ´Ù. -»óÁ¡ÀÌ 1000¹øÀÌ¸é ±× »óÁ¡ÀÇ Ã¢°í´Â 1001¹øÀÌ µÈ´Ù. -À̰÷¿¡ ¾ÆÀÌÅÛÀ» ³Ö¾îµÎ¸é µÈ´Ù. À̶§ °ø°£À̵¿, ¼Òȯ ±ÝÁö Áö¿ªÀ¸·Î -¼³Á¤ÇØ¾ß ÇÑ´Ù. +ìƒ�ì �ì�€ 창고를 가지고 있어야 한다. 창고는 ìƒ�ì �번호+1 로 설정ë�œë‹¤. +ìƒ�ì �ì�´ 1000번ì�´ë©´ ê·¸ ìƒ�ì �ì�˜ 창고는 1001번ì�´ ë�œë‹¤. +ì�´ê³³ì—� ì•„ì�´í…œì�„ 넣어ë‘�ë©´ ë�œë‹¤. ì�´ë•Œ 공간ì�´ë�™, 소환 금지 지역으로 +설정해야 한다. - >Ãⱸ Flags< + >출구 Flags< -mtype.h¿¡¼­ ½Äº°ÀÚ´Â 1ÀÌ ÀÛ´Ù. +mtype.hì—�서 ì‹�별ìž�는 1ì�´ 작다. ======================================================================= Hidden 1 Secret XSECRT - ¼û°ÜÁø Ãⱸ·Î Æ÷Á¹¿Ü¿¡´Â ã¾Æ¾ß¸¸ ¹ß°ß °¡´É + 숨겨진 출구로 í�¬ì¡¸ì™¸ì—�는 찾아야만 발견 가능 Invisible 2 Invisible XINVIS - Åõ¸íÇÑ Ãⱸ·Î ÀºµÐ °¨Áö ÇÊ¿ä. + 투명한 출구로 ì�€ë‘” ê°�ì§€ í•„ìš”. Locked 3 Locked XLOCKED - Àá±ä Ãⱸ·Î ¿­¼è ¼³Á¤ÀÌ ÇÊ¿ä. + 잠긴 출구로 열쇠 설정ì�´ í•„ìš”. Closed 4 Closed XCLOSD - ´ÝÈù Ãⱸ. + 닫힌 출구. Lockable 5 Lockable XLOCKS - Àá±æ¼ö ÀÖ´Â Ãⱸ. ¿­¼è ¼³Á¤ÀÌ ÇÊ¿ä. + 잠길수 있는 출구. 열쇠 설정ì�´ í•„ìš”. Clossable 6 Closable XCLOSS - ´ÝÈú¼ö ÀÖ´Â Ãⱸ + ë‹«íž�수 있는 출구 Unpickable 7 Un-pick XUNPCK - µµµÏÀÇ µû±â ±ÝÁö. + ë�„ë‘‘ì�˜ 따기 금지. Weightless 8 Naked XNAKED - Àåºñ¸¦ µé°í Åë°ú ±ÝÁö. + 장비를 들고 통과 금지. Climbing Up 9 ClimbUp XCLIMB - ±â¾î¿À¸£´Â Ãⱸ ¶³¾îÁú °¡´É¼º ÀÖÀ½. + 기어오르는 출구 떨어질 가능성 있ì�Œ. Climb Down 10 ClimbRepel XREPEL - ±â¾î³»·Á¿À´Â Ãⱸ. + 기어내려오는 출구. Difficult Climb 11 HardClimb XDCLIM - µî¹ÝÀåºñ³ª Ư¼ö ÁÖ¹®ÀÌ ¾øÀÌ Åë°ú ¾ÊµÊ. + 등반장비나 특수 주문ì�´ ì—†ì�´ 통과 않ë�¨. Fly 12 Fly XFLYSP - ³¯¾Æ¼­¸¸ Åë°ú °¡´É. + 날아서만 통과 가능. Female only 13 Female XFEMAL - ¿©¼º Àü¿ë + 여성 ì „ìš© Male only 14 Male XMALES - ³²¼º Àü¿ë + 남성 ì „ìš© Kingdom / Pledge 14/15 Kingdom 0/1 XPLDGK / XKNGDM - ¿Õ±¹¿¡ ¼Ò¼ÓµÈ »ç¿ëÀÚ¸¸ ÃâÀÔ °¡´É. µÎ Ç÷¹±×°¡ - µ¿½Ã¿¡ ¼³Á¤µÇ¾î¾ß ÇÔ. ÈÄ¿¡ ¿Õ±¹ Ç÷¹±×¿¡ ¿µÇâ ¹ÞÀ½. + 왕국ì—� 소ì†�ë�œ 사용ìž�ë§Œ 출입 가능. ë‘� 플레그가 + ë�™ì‹œì—� 설정ë�˜ì–´ì•¼ 함. 후ì—� 왕국 플레그ì—� ì˜�í–¥ ë°›ì�Œ. Night time 17 Night XNGHTO - °ÔÀÓ»óÀÇ ¹ã ½Ã°£¿¡¸¸ ÃâÀÔ °¡´É. + 게임ìƒ�ì�˜ ë°¤ 시간ì—�ë§Œ 출입 가능. Day time 18 Day XDATON - ³·¿¡¸¸ ÃâÀÔ °¡´É. + ë‚®ì—�ë§Œ 출입 가능. Gaurded 19 P-Guard XPGUAR - ¸÷¿¡ MGUARD Ç÷¹±×°¡ ¼³Á¤µÇ ÀÖÀ¸¸é ÀÌÃⱸ¸¦ ÁöŲ´Ù. + 몹ì—� MGUARD 플레그가 설정ë�˜ 있으면 ì�´ì¶œêµ¬ë¥¼ 지킨다. unseen exit 20 NoSee XNOSEE - È®Àå¿ë... º¸ÀÌÁöµµ »ç¿ëÇÏÁöµµ ¸øÇÔ. + 확장용... ë³´ì�´ì§€ë�„ 사용하지ë�„ 못함. king1 road 20 kingdom1 XKNDM1 - 1¹ø ¿Õ±¹ »ç¿ëÀÚ¸¸ Åë°ú + 1번 왕국 사용ìž�ë§Œ 통과 king2 road 20 kingdom2 XKNDM2 - 2¹ø ¿Õ±¹ »ç¿ëÀÚ¸¸ Åë°ú - À̶§ ÀüÀïÀÌ ½ÃÀ۵Ǹé ÀÌÇ÷¹±×´Â Àá½Ã Á¤ÁöµÇ¸ç, È¿·ÂÀ» - ÀҴ´Ù. ÀüÀïÀÌ ³¡³ª¸é È¿·ÂÀÌ ´Ù½Ã °³½ÃµÈ´Ù. + 2번 왕국 사용ìž�ë§Œ 통과 + ì�´ë•Œ ì „ìŸ�ì�´ 시작ë�˜ë©´ ì�´í”Œë ˆê·¸ëŠ” 잠시 ì •ì§€ë�˜ë©°, 효력ì�„ + 잃는다. ì „ìŸ�ì�´ ë��나면 효력ì�´ 다시 개시ë�œë‹¤. - >Ưº° Flags< + >특별 Flags< -ÀÌ ½Äº°ÀÚµéÀº ¾ÆÀÌÅÛÀÇ special¿¡ ÀúÀå µÇ¸ç, Ư¼ö ¿ëµµ·Î »ç¿ëµÈ´Ù. +ì�´ ì‹�별ìž�들ì�€ ì•„ì�´í…œì�˜ specialì—� 저장 ë�˜ë©°, 특수 ìš©ë�„로 사용ë�œë‹¤. ======================================================================= SP_MAPSC 1 - ¾ÆÀÌÅÛÀ» º¸¸é muhan/objmon/¿¡ ÀúÀåµÇ ¾ÆÀÌÅÛ À̸§ÀÇ ÆÄÀÏÀ» - ÀÐ¾î µé¿© º¸¿©ÁØ´Ù. Áöµµ³ª ¹®¼­¸¦ ¸¸µé¶§ »ç¿ëµÈ´Ù. + ì•„ì�´í…œì�„ ë³´ë©´ muhan/objmon/ì—� 저장ë�˜ ì•„ì�´í…œ ì�´ë¦„ì�˜ 파ì�¼ì�„ + ì�½ì–´ 들여 보여준다. ì§€ë�„나 문서를 만들때 사용ë�œë‹¤. SP_COMBO 2 - ¹øÈ£Å°¸¦ °¡Áø Ãⱸ¿¡ ¼³Á¤µÈ´Ù. + 번호키를 가진 출구ì—� 설정ë�œë‹¤. SP_WAR 3 - ÀüÀïÀ» ¼±¾ðÇÒ¶§ »ç¿ëµÈ´Ù. ¸î°¡Áö ±î´Ù·Î¿î Á¶°ÇÀÌ ÀÖ´Ù. -¸ÕÀú ¿Õ±¹¿¡ °¡À﵂ ÀÖ¾î¾ß Çϸç, ÀüÀïÀÌ ¾Æ´Ï¾î¾ß ÇÑ´Ù. ¸ÕÀú »ç¿ëÇÑ -¿Õ±¹¿¡¼­ µµÀüÇÏ°í ´ÙÀ½¿¡ »ç¿ëÇÑ ¿Õ±¹¿¡¼­ µµÀüÀ» ¹Þ´Â´Ù. -´Ù½Ã »ç¿ëÇÏ¸é µµÀüÀ» Ãë¼ÒÇÑ´Ù. ÀüÀï ³ªÆÈ¿Ü¿¡ »ç¿ëÀº ±î´Ù·Î¿Í -¾Ê¾²´Â ÆíÀÌ ÁÁ´Ù. + ì „ìŸ�ì�„ 선언할때 사용ë�œë‹¤. 몇가지 까다로운 ì¡°ê±´ì�´ 있다. +먼저 왕국ì—� 가입ë�˜ 있어야 하며, ì „ìŸ�ì�´ 아니어야 한다. 먼저 사용한 +왕국ì—�서 ë�„전하고 다ì�Œì—� 사용한 왕국ì—�서 ë�„ì „ì�„ 받는다. +다시 사용하면 ë�„ì „ì�„ 취소한다. ì „ìŸ� 나팔외ì—� 사용ì�€ 까다로와 +않쓰는 편ì�´ 좋다. SP_BOARD 4 - °Ô½ÃÆÇ¿¡ ¼³Á¤µÈ´Ù. ÀÚ¼¼ÇÑ ³»¿ëÀº board.doc¸¦ ÂüÁ¶. + 게시íŒ�ì—� 설정ë�œë‹¤. ìž�세한 ë‚´ìš©ì�€ board.doc를 참조. - >ÇÔÁ¤ Flags< + >함정 Flags< -ÀÌ ½Äº°ÀÚµéÀº ¹æµéÀÇ trap¿¡ ÀúÀåµÈ´Ù. +ì�´ ì‹�별ìž�들ì�€ 방들ì�˜ trapì—� 저장ë�œë‹¤. ======================================================================= TRAP_PIT 1 - ±¸µ¢ÀÌ ÇÔÁ¤À¸·Î µÎ¹øÂ°¿¡ ¶³¾îÁö´Â ¹æÀ» ÁöÁ¤ÇØ¾ß ÇÑ´Ù. + 구ë�©ì�´ 함정으로 ë‘�번째ì—� 떨어지는 ë°©ì�„ 지정해야 한다. TRAP_DART 2 - µ¶È­»ì ÇÔÁ¤ + ë�…화살 함정 TRAP_BLOCK 3 - Å« ¹ÙÀ§ ÇÔÁ¤ ¾öû³­ ÇÇÇØ¸¦ ÀÔÈù´Ù. + í�° 바위 함정 엄청난 피해를 입힌다. TRAP_MPDAM 4 - µµ·ÂÀ» ÀÒ´Â ÇÔÁ¤ + ë�„ë ¥ì�„ 잃는 함정 TRAP_RMSPL 5 - ÁÖ¹®À» ÀÒ´Â ÇÔÁ¤....¾²Áö ¾Ê´Â °ÍÀÌ ÁÁÀ½. + 주문ì�„ 잃는 함정....ì“°ì§€ 않는 것ì�´ 좋ì�Œ. TRAP_NAKED 6 - ¸ðµç Àåºñ¸¦ ÀÒÀ½ + 모든 장비를 잃ì�Œ TRAP_ALARM - °æº¸ ÇÔÁ¤ µÎ¹øÂ°¿¡ °æºñº´µéÀÌ ÀÖ´Â ¹æÀ» ÁöÁ¤Çϰí, ±×¹æ¿¡ ¸÷À» - ¼³Á¤ÇØ ³õ¾Æ¾ß ÀÛµ¿ÇÑ´Ù. + 경보 함정 ë‘�번째ì—� 경비병들ì�´ 있는 ë°©ì�„ 지정하고, 그방ì—� 몹ì�„ + 설정해 놓아야 ìž‘ë�™í•œë‹¤. diff --git a/docs/obj_flag b/docs/obj_flag index 8d138e75..fccb4084 100644 --- a/docs/obj_flag +++ b/docs/obj_flag @@ -1,134 +1,134 @@ - >¾ÆÀÌÅÛÀÇ Flags< + >ì•„ì�´í…œì�˜ Flags< -mtype.h¿¡ ÀÇµÈ ½Äº°ÀÚ´Â À̰÷º¸´Ù 1ÀÌ ÀÛ´Ù. +mtype.hì—� ì�˜ë�œ ì‹�별ìž�는 ì�´ê³³ë³´ë‹¤ 1ì�´ 작다. ======================================================================= Permanent 1 Pperm OPERMT - ´©±º°¡°¡ Áý¾îµé±âÀü¿¡´Â °è¼Ó ¹æ¿¡ Á¸ÀçÇÑ´Ù. + 누군가가 집어들기전ì—�는 계ì†� ë°©ì—� 존재한다. Hidden 2 Hidden OPERMT - Æ÷Á¹À̳ª ´©±º°¡ ¹ß°ßÇϱâ Àü±îÁö´Â º¸ÀÌÁö ¾Ê´Â´Ù. + í�¬ì¡¸ì�´ë‚˜ 누군가 발견하기 전까지는 ë³´ì�´ì§€ 않는다. Invisible 3 Invis OINVIS - Åõ¸íÇÑ ¾ÆÀÌÅÛÀ¸·Î ÀºµÐ °¨Áö°¡ ÇÊ¿äÇÏ´Ù. + 투명한 ì•„ì�´í…œìœ¼ë¡œ ì�€ë‘” ê°�지가 필요하다. Prefix Some 4 OSOMEA - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ Plurals 5 ODROPS - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ No Prefix 6 ONOPRE - ¾²ÀÌÁö ¾ÊÀ½ + ì“°ì�´ì§€ 않ì�Œ Container 7 Cont OCONTN - º¸µû¸® Á¾·ù·Î ´Ù¸¥ ¾ÆÀÌÅÛÀ» ´ãÀ»¼ö ÀÖÉ®¢¯ + 보따리 종류로 다른 ì•„ì�´í…œì�„ ë‹´ì�„수 있��¿ Weightless Container 8 Wtless OCONTN - ¹«°Ô ¾ø´Â º¸µû¸®·Î ¾ÆÀÌÅÛÀ» ´ãÀ¸¸é ¹«°Ô°¡ »ç¶óÁø´Ù. + 무게 없는 보따리로 ì•„ì�´í…œì�„ 담으면 무게가 사ë�¼ì§„다. Temp Permanent 9 Tperm OTEMPP Inventory Permanent 10 IPerm OPERM2 Mage restricted 11 Nomage ONOMAG - µµ¼ú»ç »ç¿ë ±ÝÁö. + ë�„술사 사용 금지. Light Source 12 Light OLIGHT - »ç¿ëÇÏ¸é ±¤¿øÀ¸·Î ºûÀ» ³½´Ù. + 사용하면 ê´‘ì›�으로 ë¹›ì�„ 낸다. Good Only 13 Good OGOODO - ¼±ÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¿ë + 선한 성향ì�˜ 사용ìž�ìš© Evil Only 14 Evil OEVILO - ¾ÇÇÑ ¼ºÇâÀÇ »ç¿ëÀÚ¿ë + 악한 성향ì�˜ 사용ìž�ìš© Enchanted 15 Ench OENCHA - "ºùÀÇ"·Î °­È­µÈ ¹°°Ç + "ë¹™ì�˜"로 ê°•í™”ë�œ 물건 Non repairable 16 NoFix ONOFIX - ¼ö¸® ºÒ°¡ÇÑ ¹°°Ç + 수리 불가한 물건 Climbing Gear 17 Climbing OCLIMB - µî¹Ý Àåºñ·Î ¿À¸£¸·±æ¿¡¼­ µµ¿ò µÊ + 등반 장비로 오르막길ì—�서 ë�„움 ë�¨ Cannot be taken 18 Notake ONOTAK - »ç¿ëÀÚ°¡ ÁÖÀ»¼ö ¾ø´Â ¹°°Ç + 사용ìž�ê°€ 주ì�„수 없는 물건 OSCENE 19 Scenery OSCENE - ¹æ¼³¸íÀÇ ÀϺηΠÁ¸Àç´Â ³ª º¸ÀÌÁö´Â ¾Ê´Â´Ù. + 방설명ì�˜ ì�¼ë¶€ë¡œ 존재는 나 ë³´ì�´ì§€ëŠ” 않는다. Sized armor 20/21 Sized OSIZE1/OSIZE2 - °©¿ÊÀÇ °æ¿ìó·³ Å©±â ¼³Á¤ÇÏ´Â °ÍÀ¸·Î Á¾Á·ÀÇ ¿µÇâÀ» ¹Þ´Â´Ù. - 00´Â Á¦ÇѾø°í, 01Àº ÀÛÀº Å©±â, 10Àº Áß°£ Å©±â, 11Àº Å« Å©±â·Î - ¸Â´Â Á¾Á·¸¸ »ç¿ë°¡´ÉÇÏ´Ù. + 갑옷ì�˜ 경우처럼 í�¬ê¸° 설정하는 것으로 종족ì�˜ ì˜�í–¥ì�„ 받는다. + 00는 제한없고, 01ì�€ ìž‘ì�€ í�¬ê¸°, 10ì�€ 중간 í�¬ê¸°, 11ì�€ í�° í�¬ê¸°ë¡œ + 맞는 종족만 사용가능하다. Random Enchant 22 RandEnch ORENCH - ¹°°ÇÀÌ µîÀåÇÒ¶§ ·£´ýÇÏ°Ô ºùÀÇµÇ¾î ³ª¿Â´Ù. + 물건ì�´ 등장할때 ëžœë�¤í•˜ê²Œ ë¹™ì�˜ë�˜ì–´ 나온다. Cursed 23 Cursed OCURSE - ÀúÁÖ °É¸° ¹°°Ç + 저주 걸린 물건 Worn 24 Worn OWEARS - ÀÔ°í ÀÖ´Ù´Â Ç÷¹É­ª¡¿ÜºÎ »ç¿ë ±ÝÁö. + ìž…ê³  있다는 플레��ã��외부 사용 금지. Floor usable 25 Use-floor OUSEFl - ¹Ù´Ú¿¡ ¶³¾îÁ® ÀÖÀ»¶§µµ »ç¿ë °¡´É. + 바닥ì—� 떨어져 있ì�„때ë�„ 사용 가능. Devouring container 26 Devours OCNDES - º¸µû¸® Á¾·ù·Î µé¾î°¡´Â ¹°°ÇÀº ÆÄ±« µÈ´Ù. + 보따리 종류로 들어가는 물건ì�€ 파괴 ë�œë‹¤. Female only 27 Nomale ONOMAL - ¿©¼º Àü¿ë + 여성 ì „ìš© Male only 27 Nofemale ONOFEM - ³²¼º Àü¿ë + 남성 ì „ìš© Damage based object 29 NdS dam ODDICE - ÀüÅõ½Ã ¼³Á¤µÈ Ÿ°ÝÄ¡¿¡ µû¶ó »ç¿ëµÊ. + 전투시 설정ë�œ 타격치ì—� ë”°ë�¼ 사용ë�¨. Pledge Only 30/31 Kingdom 0/1 OPLDGK/OKNGDM - ¿Õ±¹¿¡ °¡ÀÔµÈ »ç¶÷¸¸ »ç¿ë °¡´É. µÑ´Ù Ç÷¹±×¸¦ ¼³Á¤ÇØ¾ß ÇÑ´Ù. + 왕국ì—� 가입ë�œ 사람만 사용 가능. 둘다 플레그를 설정해야 한다. Class selective 32 Cls-Sel: OCLSSEl - ¼³Á¤µÇ¸é ´ÙÀ½ÀÇ Ç÷¹±×¿¡ µû¶ó Á÷¾÷ ¼ºÇâÀÌ Á¤ÇØÁø´Ù. + 설정ë�˜ë©´ 다ì�Œì�˜ 플레그ì—� ë”°ë�¼ ì§�ì—… 성향ì�´ 정해진다. Assassin usable 33 A OASSNO - ÀÚ°´ »ç¿ë + ìž�ê°� 사용 Barbarian usable 34 B OBARBO - ±Ç¹ý°¡ »ç¿ë + 권법가 사용 Cleric usable 35 C OCLERO - ºÒÁ¦ÀÚ »ç¿ë + 불제ìž� 사용 Fighter usable 36 F OFIGHO - °Ë»ç »ç¿ë + 검사 사용 Mage usable 37 M OMAGEO - µµ¼ú»ç »ç¿ë + ë�„술사 사용 Paladin usable 38 P OPALAO - ¹«»ç »ç¿ë + 무사 사용 Ranger usable 39 R ORNGRO - Æ÷Á¹ »ç¿ë + í�¬ì¡¸ 사용 Thief usable 40 T OTHIEO - µµµÏ »ç¿ë + ë�„ë‘‘ 사용 Changeble Name 44 OCNAME - À̸§À» »ç¿ëÀÚ°¡ ¸í¸í ÇÒ¼ö ÀÖ´Â ¾ÆÀÌÅÛ. + ì�´ë¦„ì�„ 사용ìž�ê°€ 명명 할수 있는 ì•„ì�´í…œ. ------------------- ÁÖ¹®¼­ Ư¼º ------------------------------ +------------------ 주문서 특성 ------------------------------ -ÁÖ¹®¼­´Â special¿¡ °¢±â ·¹º§ÀÌ ÁöÁ¤µÈ´Ù. À̶§ ·¹º§Àº ¹è¿ì·Á´Â »ç¶÷ÀÌ -ÁöÁ¤µÈ ·¹º§º¸´Ù ÀÛÀ¸¸é ±× ÁÖ¹®¼­¸¦ ÀÌÇØÇÒ¼ö ¾ø´Ù. +주문서는 specialì—� ê°�기 레벨ì�´ 지정ë�œë‹¤. ì�´ë•Œ 레벨ì�€ 배우려는 사람ì�´ +지정ë�œ 레벨보다 작으면 ê·¸ 주문서를 ì�´í•´í• ìˆ˜ 없다. ------------------- ¿­¼è Á¦ÀÛ¹ý ------------------------------ +------------------ 열쇠 제작법 ------------------------------ -Ãⱸ¿¡¼­ ÁöÁ¤µÈ ¿­¼è´Â ¿­¼èÀÇ ¾ÆÀÌÅÛ ¹øÈ£°¡ ¾Æ´Ï¶ó ¿­¼èÀÇ Dice¹øÈ£·Î -ÁöÁ¤µÈ´Ù. ÀÌ ¹øÈ£¸¦ Ãⱸ¿Í ÀÏÄ¡½ÃÄÑ¾ß ÇÑ´Ù. +출구ì—�서 지정ë�œ 열쇠는 열쇠ì�˜ ì•„ì�´í…œ 번호가 아니ë�¼ 열쇠ì�˜ Dice번호로 +지정ë�œë‹¤. ì�´ 번호를 출구와 ì�¼ì¹˜ì‹œì¼œì•¼ 한다. diff --git a/docs/obj_make b/docs/obj_make index d00397d8..9d3c9641 100644 --- a/docs/obj_make +++ b/docs/obj_make @@ -2,6 +2,6 @@ this is how to make an item lalala........ ^^ -dm.doc À» ÂüÁ¶Çϼ¼¿ä.. +dm.doc ì�„ 참조하세요.. mk_item diff --git a/docs/revive/baseline.md b/docs/revive/baseline.md index 0247e3c6..4a641772 100644 --- a/docs/revive/baseline.md +++ b/docs/revive/baseline.md @@ -51,3 +51,11 @@ docker run --rm --platform linux/amd64 \ -v "$(pwd)":/work -w /work gcc:14 bash -lc \ 'make -C src clean >/dev/null 2>&1 || true; make -C src CC=gcc -j4' ``` + +## UTF-8 First migration constraints (2026-02-11) +- Scope: í…�스트 파ì�¼ì�€ UTF-8로 통ì�¼, ë°”ì�´ë„ˆë¦¬ 파ì�¼ì�€ 기존 ë°”ì�´íЏ 유지. +- Input policy: 소켓 ìž…ë ¥ì�€ UTF-8 strict 처리, invalid sequence는 버림. +- Backspace policy: ìž…ë ¥ 버í�¼ 편집ì�€ ë°”ì�´íЏ 단위가 아니ë�¼ UTF-8 코드í�¬ì�¸íЏ 단위. +- String-length policy: CP949 2ë°”ì�´íЏ 가정 대신 Unicode 코드í�¬ì�¸íЏ 길ì�´ 기준 사용. +- Name/path policy: 플레ì�´ì–´ ì�´ë¦„ì�€ 유니코드 허용(금지문ìž� 차단), 저장 경로는 SHA-1 2ìž�리 샤딩. +- Compatibility policy: CP949 플레ì�´ì–´ ë�°ì�´í„°/ìž…ë ¥ 호환ì�€ 제공하지 않ì�Œ. diff --git a/docs/rom_flag b/docs/rom_flag index 09084c08..c5f3faa8 100644 --- a/docs/rom_flag +++ b/docs/rom_flag @@ -1,108 +1,108 @@ - >¹æÀÇ Flags< + >ë°©ì�˜ Flags< -mtype.h¿¡¼­ ½Äº°ÀÚ´Â 1ÀÌ ÀÛ´Ù. +mtype.hì—�서 ì‹�별ìž�는 1ì�´ 작다. ======================================================================= Shop 1 Shoppe RSHOPP - ¹°°Ç ÆÄ´Â »óÁ¡ + 물건 파는 ìƒ�ì � Recycle 2 Dump RDUMPR - À̰÷¿¡ ¹ö¸° ¹°°ÇÀº ¾ø¾îÁö°í ¾à°£ÀÇ µ·ÀÌ »ç¿ëÀÚ¿¡°Ô º¸ÅÂÁü. + ì�´ê³³ì—� 버린 물건ì�€ 없어지고 약간ì�˜ ë�ˆì�´ 사용ìž�ì—�게 보태ì§�. Pawnshop 3 Pawnshop RPAWNS - »ç¿ëÀÚÀÇ ¹°°ÇÀ» »ç´Â Àü´çÆ÷ + 사용ìž�ì�˜ 물건ì�„ 사는 전당í�¬ Training ground 4-5-6-7 Train RTRAIN - Á÷¾÷º° ¼ö·ÃÀåÀ¸·Î 4°³ÀÇ ºñÆ®·Î ¼³Á¤µÈ´Ù. - 000:ÀÚ°´, 001:±Ç¹ý°¡.........111:µµµÏ¼ø ÀÌ´Ù. + ì§�업별 수련장으로 4ê°œì�˜ 비트로 설정ë�œë‹¤. + 000:ìž�ê°�, 001:권법가.........111:ë�„둑순 ì�´ë‹¤. Repair Shop 8 Repair RREPAI - ¼ö¸®Á¡À¸·Î ¹°°ÇÀ» °íÄ£´Ù. + 수리ì �으로 물건ì�„ 고친다. Continual Darkness 9 DarkAlways RDARKR - ±¤¿øÀÌ ÇÊ¿äÇÑ Ç×»ó ¾îµÎ¿î Áö¿ª + ê´‘ì›�ì�´ 필요한 í•­ìƒ� ì–´ë‘�ìš´ 지역 Dark At Night 10 DarkNight RDARKN - ¹ãÀÌ µÇ¸é ¾îµÎ¿î Áö¿ª + ë°¤ì�´ ë�˜ë©´ ì–´ë‘�ìš´ 지역 Post Office 11 PostOffice RPOSTO - »ç¿ëÀÚ³¢¸® ÆíÁö¸¦ ÁÖ°í¹Þ´Â ¿ìü±¹ + 사용ìž�ë�¼ë¦¬ 편지를 주고받는 ìš°ì²´êµ­ Safe Room 12 NoPlyKill RNOKIL - »ç¿ëÀÚ °ø°Ý ±ÝÁö Áö¿ª + 사용ìž� 공격 금지 지역 No Teleport 13 NoTeleport RNOTEL - °ø°£À̵¿, ÃßÀû, ¼Òȯ ±ÝÁöÁö¿ª + 공간ì�´ë�™, ì¶”ì �, 소환 금지지역 Fast heal 14 HealFast RHEALR - ºü¸¥ ȸº¹ Áö¿ª + 빠른 회복 지역 One Player 15 OnePlayer RONEPL - ÇÑ»ç¶÷¸¸ µé¾î°¥¼ö ÀÖ´Â Áö¿ª + 한사람만 들어갈수 있는 지역 Two Player 16 TwoPlayer RTWOPL - µÎ»ç¶÷¸¸ µé¾î°¥¼ö ÀÕ´Â Áö¿ª + ë‘�사람만 들어갈수 잇는 지역 Three Player 17 Threeplyr RTHREE - ¼¼»ç¶÷¸¸ µé¾î°¥¼ö ÀÖ´Â Áö¿ª + 세사람만 들어갈수 있는 지역 No Magic 18 NoMagic RNOMAG - ÁÖ¹® ±ÝÁö Áö¿ª + 주문 금지 지역 Permanent Tracks 19 PermTrack RPTRAK - Æ÷Á¹ÀÌ ¹ß°ßÇÒ¼ö ÀÖ´Â ÈçÀûÀÌ ÀÖ´Â ¹æ + í�¬ì¡¸ì�´ 발견할수 있는 í�”ì �ì�´ 있는 ë°© Earth Realm 20 Earth REATH - ¶¥°è¿­ Áö¿ª + 땅계열 지역 Wind Realm 21 Wind RWINDR - ¹Ù¶÷°è¿­ Áö¿ª + 바람계열 지역 Fire Realm 22 Fire RFIRER - ºÒ°è¿­ Áö¿ª + 불계열 지역 Water Realm 23 Water RWATER - ¹°°è¿­ Áö¿ª + 물계열 지역 Group Wander 24 Group RPLWAN - Random Monster¿¡ Á¤ÀÇµÈ ¸÷ÀÌ ¹æ¿¡ Á¸ÀçÇÏ´Â »ç¿ëÀÚÀÇ - ¼ö¿¡ µû¶ó µîÀåÇÑ´Ù. + Random Monsterì—� ì •ì�˜ë�œ 몹ì�´ ë°©ì—� 존재하는 사용ìž�ì�˜ + 수ì—� ë”°ë�¼ 등장한다. Player Harm 25 PHarm RPHARM - »ç¿ëÀÚ°¡ ÀûÀýÇÑ °è¿­ÀÇ º¸È£ ÁÖ¹®ÀÌ ¾øÀ¸¸é, À§¿¡ ¼³Á¤µÈ - °è¿­º°·Î ÇÇÇØ¸¦ ÀÔ°Ô µÈ´Ù. + 사용ìž�ê°€ ì �절한 계열ì�˜ 보호 주문ì�´ 없으면, 위ì—� 설정ë�œ + 계열별로 피해를 입게 ë�œë‹¤. Poison 26 P-Poison RPPOIS - »ç¿ëÀÚ°¡ ÀÏÁ¤ ½Ã°£ ¸Ó¹°¸é Áßµ¶µÊ. + 사용ìž�ê°€ ì�¼ì • 시간 머물면 중ë�…ë�¨. Magic Drain 27 MPDrain RPMPRD - º¸È£ ÁÖ¹®ÀÌ ¾øÀ¸¸é µµ·ÂÀ» Á¡Á¡ »ó½ÇÇÑ´Ù. + 보호 주문ì�´ 없으면 ë�„ë ¥ì�„ ì �ì � ìƒ�실한다. Befudlng 28 Confusion RPBEFU - »ç¿ëÀÚ°¡ ÀÏÁ¤ ½Ã°£ ¸Ó¹°¸é È¥µ¿µÈ´Ù. + 사용ìž�ê°€ ì�¼ì • 시간 머물면 혼ë�™ë�œë‹¤. No Summon 29 No SUmmon RNOLEA - ¼Òȯ ±ÝÁö Áö¿ª + 소환 금지 지역 Pledge 30 Pledge RPLDGK - ¿Õ±¹ ·çƾÁßÀÇ Çϳª·Î À̰÷¿¡¼­ ¿Õ±¹ÀÇ ¸÷¿¡°Ô °¡ÀÔ. + 왕국 루틴중ì�˜ 하나로 ì�´ê³³ì—�서 왕국ì�˜ 몹ì—�게 가입. Rescind 31 Rescind RRSCND - ¿Õ±¹ ·çƾÁßÀÇ Çϳª·Î À̰÷¿¡ ¿Õ±¹ÀÇ ¸÷¿¡°Ô Å»Åð. + 왕국 루틴중ì�˜ 하나로 ì�´ê³³ì—� 왕국ì�˜ 몹ì—�게 탈퇴. No Potion 32 No Potion RNOPOT - ¾à »ç¿ë ±ÝÁö Áö¿ª + 약 사용 금지 지역 Extended Magic 33 Pmagic RPMEXT - ÁÖ¹® °­È­ Áö¿ª + 주문 ê°•í™” 지역 Room nologon 34 Rnolog RNOLOG - À̰÷¿¡¼­ ³¡³ª´õ¶óµµ ´Ù½Ã Á¢¼Ó½Ã À̰÷¿¡¼­ - ½ÃÀÛÇÒ¼ö ¾ø´Ù. + ì�´ê³³ì—�서 ë��나ë�”ë�¼ë�„ 다시 ì ‘ì†�시 ì�´ê³³ì—�서 + 시작할수 없다. Election Box 35 R-elec RELECT - ÅõÇ¥¼Ò + 투표소 Room Forge 36 R-forge RFORGE - Ư¼ö¹«±â¸¦ Á¦·ÃÇÏ´Â ´ëÀå°£. + 특수무기를 제련하는 대장간. diff --git a/docs/rom_make b/docs/rom_make index 84f330ea..72782395 100644 --- a/docs/rom_make +++ b/docs/rom_make @@ -1,14 +1,14 @@ - ´ÙÀ½Àº ¹æÀ» ¸¸µå´Â µÎ°¡Áö ¹æ¹ýÀÔ´Ï´Ù. + 다ì�Œì�€ ë°©ì�„ 만드는 ë‘�가지 방법입니다. -1) ¿Â¶óÀλ󿡼­ *add ¸í·ÉÀ» »ç¿ëÇÏ´Â ¹æ¹ý - dm_cmnd ÆÄÀÏÀÇ *add, *replace, *save, *reload, *name, - *set, *rm ¹®¼­¸¦ ã¾Æº¸½Ê½Ã¿À. +1) 온ë�¼ì�¸ìƒ�ì—�서 *add 명령ì�„ 사용하는 방법 + dm_cmnd 파ì�¼ì�˜ *add, *replace, *save, *reload, *name, + *set, *rm 문서를 찾아보십시오. -2) ¿ÀÇÁ¶óÀλ󿡼­ ¿¡µðÅ͸¦ »ç¿ëÇÏ´Â ¹æ¹ý - ¸¸¾à ¿ÀÇÁ¶óÀλ󿡼­ ¼öÁ¤Çß°í, °ÔÀÓÀÌ ½ÇÇàÁßÀ̶ó¸é ¿¡µðÅÍ¿¡¼­ - º¯°æÇѰÍÀ» ·ÎµåÇϱâ À§ÇØ *Àç¼³Á¤ ¸í·ÉÀ» »ç¿ëÇϽʽÿÀ. - »¡¸® *Àç¼³Á¤ ¸í·ÉÀ» »ç¿ëÇÏÁö ¾ÊÀ¸¸é º¯°æµÈ »çÇ×Àº °ÔÀÓ¿¡ ÀÇÇØ - Áö¿öÁö°Ô µË´Ï´Ù. +2) 오프ë�¼ì�¸ìƒ�ì—�서 ì—�디터를 사용하는 방법 + 만약 오프ë�¼ì�¸ìƒ�ì—�서 수정했고, 게임ì�´ 실행중ì�´ë�¼ë©´ ì—�디터ì—�서 + 변경한것ì�„ 로드하기 위해 *재설정 명령ì�„ 사용하십시오. + 빨리 *재설정 명령ì�„ 사용하지 않으면 변경ë�œ 사항ì�€ 게임ì—� ì�˜í•´ + 지워지게 ë�©ë‹ˆë‹¤. diff --git a/docs/rom_xflg b/docs/rom_xflg index b70243f6..e006e40e 100644 --- a/docs/rom_xflg +++ b/docs/rom_xflg @@ -1,71 +1,71 @@ - >Ãⱸ Flags< + >출구 Flags< -mtype.h¿¡¼­ ½Äº°ÀÚ´Â 1ÀÌ ÀÛ´Ù. +mtype.hì—�서 ì‹�별ìž�는 1ì�´ 작다. ======================================================================= Hidden 1 Secret XSECRT - ¼û°ÜÁø Ãⱸ·Î Æ÷Á¹¿Ü¿¡´Â ã¾Æ¾ß¸¸ ¹ß°ß °¡´É + 숨겨진 출구로 í�¬ì¡¸ì™¸ì—�는 찾아야만 발견 가능 Invisible 2 Invisible XINVIS - Åõ¸íÇÑ Ãⱸ·Î ÀºµÐ °¨Áö ÇÊ¿ä. + 투명한 출구로 ì�€ë‘” ê°�ì§€ í•„ìš”. Locked 3 Locked XLOCKED - Àá±ä Ãⱸ·Î ¿­¼è ¼³Á¤ÀÌ ÇÊ¿ä. + 잠긴 출구로 열쇠 설정ì�´ í•„ìš”. Closed 4 Closed XCLOSD - ´ÝÈù Ãⱸ. + 닫힌 출구. Lockable 5 Lockable XLOCKS - Àá±æ¼ö ÀÖ´Â Ãⱸ. ¿­¼è ¼³Á¤ÀÌ ÇÊ¿ä. + 잠길수 있는 출구. 열쇠 설정ì�´ í•„ìš”. Clossable 6 Closable XCLOSS - ´ÝÈú¼ö ÀÖ´Â Ãⱸ + ë‹«íž�수 있는 출구 Unpickable 7 Un-pick XUNPCK - µµµÏÀÇ µû±â ±ÝÁö. + ë�„ë‘‘ì�˜ 따기 금지. Weightless 8 Naked XNAKED - Àåºñ¸¦ µé°í Åë°ú ±ÝÁö. + 장비를 들고 통과 금지. Climbing Up 9 ClimbUp XCLIMB - ±â¾î¿À¸£´Â Ãⱸ ¶³¾îÁú °¡´É¼º ÀÖÀ½. + 기어오르는 출구 떨어질 가능성 있ì�Œ. Climb Down 10 ClimbRepel XREPEL - ±â¾î³»·Á¿À´Â Ãⱸ. + 기어내려오는 출구. Difficult Climb 11 HardClimb XDCLIM - µî¹ÝÀåºñ³ª Ư¼ö ÁÖ¹®ÀÌ ¾øÀÌ Åë°ú ¾ÊµÊ. + 등반장비나 특수 주문ì�´ ì—†ì�´ 통과 않ë�¨. Fly 12 Fly XFLYSP - ³¯¾Æ¼­¸¸ Åë°ú °¡´É. + 날아서만 통과 가능. Female only 13 Female XFEMAL - ¿©¼º Àü¿ë + 여성 ì „ìš© Male only 14 Male XMALES - ³²¼º Àü¿ë + 남성 ì „ìš© Kingdom / Pledge 14/15 Kingdom 0/1 XPLDGK / XKNGDM - ¿Õ±¹¿¡ ¼Ò¼ÓµÈ »ç¿ëÀÚ¸¸ ÃâÀÔ °¡´É. µÎ Ç÷¹±×°¡ - µ¿½Ã¿¡ ¼³Á¤µÇ¾î¾ß ÇÔ. ÈÄ¿¡ ¿Õ±¹ Ç÷¹±×¿¡ ¿µÇâ ¹ÞÀ½. + 왕국ì—� 소ì†�ë�œ 사용ìž�ë§Œ 출입 가능. ë‘� 플레그가 + ë�™ì‹œì—� 설정ë�˜ì–´ì•¼ 함. 후ì—� 왕국 플레그ì—� ì˜�í–¥ ë°›ì�Œ. Night time 17 Night XNGHTO - °ÔÀÓ»óÀÇ ¹ã ½Ã°£¿¡¸¸ ÃâÀÔ °¡´É. + 게임ìƒ�ì�˜ ë°¤ 시간ì—�ë§Œ 출입 가능. Day time 18 Day XDATON - ³·¿¡¸¸ ÃâÀÔ °¡´É. + ë‚®ì—�ë§Œ 출입 가능. Gaurded 19 P-Guard XPGUAR - ¸÷¿¡ MGUARD Ç÷¹±×°¡ ¼³Á¤µÇ ÀÖÀ¸¸é ÀÌÃⱸ¸¦ ÁöŲ´Ù. + 몹ì—� MGUARD 플레그가 설정ë�˜ 있으면 ì�´ì¶œêµ¬ë¥¼ 지킨다. unseen exit 20 NoSee XNOSEE - È®Àå¿ë... º¸ÀÌÁöµµ »ç¿ëÇÏÁöµµ ¸øÇÔ. + 확장용... ë³´ì�´ì§€ë�„ 사용하지ë�„ 못함. king1 road 20 kingdom1 XKNDM1 - 1¹ø ¿Õ±¹ »ç¿ëÀÚ¸¸ Åë°ú + 1번 왕국 사용ìž�ë§Œ 통과 king2 road 20 kingdom2 XKNDM2 - 2¹ø ¿Õ±¹ »ç¿ëÀÚ¸¸ Åë°ú - À̶§ ÀüÀïÀÌ ½ÃÀ۵Ǹé ÀÌÇ÷¹±×´Â Àá½Ã Á¤ÁöµÇ¸ç, È¿·ÂÀ» - ÀҴ´Ù. ÀüÀïÀÌ ³¡³ª¸é È¿·ÂÀÌ ´Ù½Ã °³½ÃµÈ´Ù. + 2번 왕국 사용ìž�ë§Œ 통과 + ì�´ë•Œ ì „ìŸ�ì�´ 시작ë�˜ë©´ ì�´í”Œë ˆê·¸ëŠ” 잠시 ì •ì§€ë�˜ë©°, 효력ì�„ + 잃는다. ì „ìŸ�ì�´ ë��나면 효력ì�´ 다시 개시ë�œë‹¤. diff --git a/help/char b/help/char index d6386cb3..6eaf2bf2 100644 --- a/help/char +++ b/help/char @@ -1,12 +1,12 @@ -Á÷¾÷ À̸§ Á¾Á· À̸§ - 1 ´ÑÀÚ 1 ³­ÀåÀÌÁ· - 2 ±Ç¹ýÀÚ 2 ¿ë½ÅÁ· - 3 ºÒÁ¦ÀÚ 3 ¿ä±«Á· - 4 °Ë»ç 4 Åä½ÅÁ· - 5 µµ¼ú»ç 5 Àΰ£Á· - 6 ¹«»ç 6 µµ²²ºñÁ· - 7 Æ÷Á¹ 7 °ÅÀÎÁ· - 8 µµµÏ 8 Gnome +ì§�ì—… ì�´ë¦„ 종족 ì�´ë¦„ + 1 닌ìž� 1 난장ì�´ì¡± + 2 권법ìž� 2 용신족 + 3 불제ìž� 3 요괴족 + 4 검사 4 토신족 + 5 ë�„술사 5 ì�¸ê°„족 + 6 무사 6 ë�„께비족 + 7 í�¬ì¡¸ 7 ê±°ì�¸ì¡± + 8 ë�„ë‘‘ 8 Gnome 9 Bard 9 Troll 10 Caretaker 11 Dungeonmaster diff --git a/help/exp b/help/exp index 08d210b9..b45077ba 100644 --- a/help/exp +++ b/help/exp @@ -1,4 +1,4 @@ -°æÇèÄ¡¿¡ µû¸¥ µî±Þ +경험치ì—� 따른 등급 1 0 11 146,410 21 4,465,120 2 512 12 207,360 22 5,792,661 diff --git a/help/help.1 b/help/help.1 index 231158f9..ed359695 100644 --- a/help/help.1 +++ b/help/help.1 @@ -1,13 +1,13 @@ -µµ¿ò¸»: - À§ ¹Ø ºÏ ³² µ¿ ¼­ ¹Û ³ª°¡ +ë�„움ë§�: + 위 ë°‘ ë¶� 남 ë�™ 서 ë°– 나가 -±×ÂÊÀ¸·Î °¡´Â ¸í·É¾î¶ó³×. +그쪽으로 가는 명령어ë�¼ë„¤. -¿¹: +예: -¼±ºñÃÌ +선비촌 -Ãⱸ: ºÏ, ³². +출구: ë¶�, 남. -:ºÏ +:ë¶� diff --git a/help/help.10 b/help/help.10 index ce8de33a..f249cbb4 100644 --- a/help/help.10 +++ b/help/help.10 @@ -1,16 +1,16 @@ -µµ¿ò¸»: - <¹°°Ç> ¹þ¾î [#] +ë�„움ë§�: + <물건> ë²—ì–´ [#] -'¹þ¾î'´Â ´ç½ÅÀÌ Àâ°í Àְųª ÀÔ°íÀִ°ÍÀ» ¹þ°Å³ª ³õ´Â°ÍÀ» ¸»ÇÕ´Ï´Ù. -ÀÔÀº°ÍÀ» º¼·Á¸é 'Àåºñ'¶ó°í ÀÔ·ÂÇϼ¼¿ä. -±×·¯¸é ÀåºñǰÀÌ ³ª¿É´Ï´Ù. -'¸ðµÎ ¹þ¾î'´Â ¸ðµçÀåºñ¸¦ ¹þ½À´Ï´Ù. +'ë²—ì–´'는 당신ì�´ 잡고 있거나 입고있는것ì�„ 벗거나 놓는것ì�„ ë§�합니다. +ìž…ì�€ê²ƒì�„ 볼려면 '장비'ë�¼ê³  입력하세요. +그러면 장비품ì�´ 나옵니다. +'모ë‘� ë²—ì–´'는 모든장비를 벗습니다. -¿¹: +예: -:Àåºñ -Àåºñǰ:ÀÛÀº Ä® +:장비 +장비품:ìž‘ì�€ ì¹¼ -:Ä® ¹þ¾î -´ç½ÅÀº ÀÛÀº Ä®À» ¹þ¾ú½À´Ï´Ù. +:ì¹¼ ë²—ì–´ +당신ì�€ ìž‘ì�€ ì¹¼ì�„ 벗었습니다. diff --git a/help/help.100 b/help/help.100 index efb2f97b..d9c586f0 100644 --- a/help/help.100 +++ b/help/help.100 @@ -1,22 +1,22 @@ -°¨Á¤ Ç¥Çö ¸í·É¾î µµ¿ò¸»: +ê°�ì • 표현 명령어 ë�„움ë§�: - ÀÌ ¸í·ÉµéÀº ´ç½ÅÀÇ °¨Á¤À» »ó´ë¿¡°Ô Ç¥ÇöÇϴµ¥ -»ç¿ëµË´Ï´Ù. ºñÀüÅõ½Ã¿¡ »ç¿ëµÇÁö¸¸ ¸î¸î ¸»µéÀº ÀüÅõ¸¦ -ÀÏÀ¸Å°°Ô ÇÒ¼ö ÀÖ½À´Ï´Ù. + ì�´ 명령들ì�€ 당신ì�˜ ê°�ì •ì�„ ìƒ�대ì—�게 표현하는ë�° +사용ë�©ë‹ˆë‹¤. 비전투시ì—� 사용ë�˜ì§€ë§Œ 몇몇 ë§�들ì�€ 전투를 +ì�¼ìœ¼í‚¤ê²Œ 할수 있습니다. - [»ç¶÷] <¼ö½Ä¾î> °¨Á¤¸í·É¾î + [사람] <수ì‹�ì–´> ê°�정명령어 -°¨Á¤ Ç¥Çö: +ê°�ì • 표현: -²ô´ö(=ÀÀ) ¾Æ´Ï °¨»ç ¹Ì¼Ò ¿ô¾î ¾Ç¼ö ÇÏÀÌÆÄÀ̺ê -¹Ú¼ö Èí¿¬(=´ã¹è) Àý Âñ·¯ Ã㠳뷡 ¿ï¾î ´Þ·¡ -´çȲ »ý°¢ º¸¾Æ ³ë·ÁºÁ ¹Ì¾È À®Å© »Ç»Ç ¾È³ç ¹ÙÀÌ -¼³·¹ ³î·Á ºÎ²ô·¯ ±¸¹Ú µû±Í ¾È¾Æ(=²¸¾È¾Æ) ±¸°É -ÇØ ¶³¾î ÇÏǰ ûȥ +ë�„ë�•(=ì�‘) 아니 ê°�사 미소 웃어 악수 하ì�´íŒŒì�´ë¸Œ +박수 í�¡ì—°(=ë‹´ë°°) ì ˆ 찔러 춤 노래 울어 달래 +당황 ìƒ�ê°� ë³´ì•„ 노려ë´� 미안 윙í�¬ 뽀뽀 안녕 ë°”ì�´ +설레 놀려 ë¶€ë�„러 구박 ë”°ê·€ 안아(=껴안아) 구걸 +í•´ 떨어 하품 청혼 -¿¹> ŸÀÌ ¼ÕÀ» ³ôÀÌ µé¾î ÇÏÀÌÆÄÀ̺ê - => ´ç½ÅÀº ŸÀÌ´Ô°ú ¼ÕÀ» ³ôÀÌ µé¾î ÇÏÀÌÆÄÀ̺긦 ÇÕ´Ï´Ù. +예> 타ì�´ ì†�ì�„ 높ì�´ 들어 하ì�´íŒŒì�´ë¸Œ + => 당신ì�€ 타ì�´ë‹˜ê³¼ ì†�ì�„ 높ì�´ 들어 하ì�´íŒŒì�´ë¸Œë¥¼ 합니다. -Ãß°¡ÇÏ°í ½ÍÀº °¨Á¤ Ç¥ÇöÀÌ ÀÖÀ¸½Ã¸é 'Ǫ¸¥ÇÏ´Ã'¿¡°Ô -ÆíÁöº¸³» Áֽʽÿä. +추가하고 ì‹¶ì�€ ê°�ì • 표현ì�´ 있으시면 '푸른하늘'ì—�게 +편지보내 주십시요. diff --git a/help/help.101 b/help/help.101 index 9572948d..bccf9b15 100644 --- a/help/help.101 +++ b/help/help.101 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹æ # | »ç¿ëÀÚ > [ »ç¿ëÀÚ2 | . ] *¼ø°£À̵¿ + <ë°© # | 사용ìž� > [ 사용ìž�2 | . ] *순간ì�´ë�™ -»ç¶÷À» À̵¿½Ãų¶§ ¾²´Â ¸í·ÉÀÌ´Ù. +사람ì�„ ì�´ë�™ì‹œí‚¬ë•Œ 쓰는 명령ì�´ë‹¤. diff --git a/help/help.102 b/help/help.102 index 4780e25d..0a217deb 100644 --- a/help/help.102 +++ b/help/help.102 @@ -1,9 +1,9 @@ -µµ¿ò¸»: +ë�„움ë§�: - *¹æ¹øÈ£ + *방번호 -¹æ¹øÈ£¸¦ Ãâ·ÂÇÑ´Ù. +방번호를 출력한다. diff --git a/help/help.103 b/help/help.103 index 98cdb588..3d3b58f6 100644 --- a/help/help.103 +++ b/help/help.103 @@ -1,8 +1,8 @@ -µµ¿ò¸»: +ë�„움ë§�: - *·Îµå + *로드 -¹æÀ» ´Ù½Ã µð½ºÅ©¿¡¼­ ·ÎµåÇÑ´Ù. +ë°©ì�„ 다시 디스í�¬ì—�서 로드한다. diff --git a/help/help.104 b/help/help.104 index 807e65b9..937d753e 100644 --- a/help/help.104 +++ b/help/help.104 @@ -1,7 +1,7 @@ - µµ¿ò¸»: + ë�„움ë§�: - *¼¼À̺ê + *세ì�´ë¸Œ -¹æÀÇ ¹Ù²ï »óŸ¦ µð½ºÅ©¿¡ ÀúÀåÇÑ´Ù. +ë°©ì�˜ ë°”ë€� ìƒ�태를 디스í�¬ì—� 저장한다. diff --git a/help/help.105 b/help/help.105 index 2b17a728..8f58b992 100644 --- a/help/help.105 +++ b/help/help.105 @@ -1,8 +1,8 @@ Help on: - [¹°°Ç #] *âÁ¶ + [물건 #] *창조 -¹øÈ£ÀÇ ¹°°ÇÀ» ¸¸µé¾î³½´Ù. +번호ì�˜ 물건ì�„ 만들어낸다. diff --git a/help/help.106 b/help/help.106 index 0c10a3b1..7ccce295 100644 --- a/help/help.106 +++ b/help/help.106 @@ -1,8 +1,8 @@ Help on: - [¹°°ÇÀ̸§] *¿µ¿ø + [물건ì�´ë¦„] *ì˜�ì›� -»óÁ¡ °°Àº°÷¿¡ ¿µ¿øÇÑ ¹°°ÇÀ» ¼³Á¤ÇÒ¶§ ¾´´Ù... -°¡±ÞÀûÀÌ¸é »ç¿ëÇÏÁö ¾Ê´Â°ÍÀÌ ÁÁ´Ù. +ìƒ�ì � ê°™ì�€ê³³ì—� ì˜�ì›�한 물건ì�„ 설정할때 쓴다... +가급ì �ì�´ë©´ 사용하지 않는것ì�´ 좋다. diff --git a/help/help.107 b/help/help.107 index d360a6d5..77896e47 100644 --- a/help/help.107 +++ b/help/help.107 @@ -1,6 +1,6 @@ Help on: - *Åõ¸í + *투명 -Åõ¸í ¸ðµå·Î µé¾î°£´Ù. +투명 모드로 들어간다. diff --git a/help/help.108 b/help/help.108 index e46344c7..e3d72bf5 100644 --- a/help/help.108 +++ b/help/help.108 @@ -1,6 +1,6 @@ Help on: - *ÀüÇϱâ + *전하기 -ºÒ»çÀÌ»ó ¼­·Î Àǻ縦 Àü´ÞÇÒ¶§ ¾´´Ù. +불사ì�´ìƒ� 서로 ì�˜ì‚¬ë¥¼ 전달할때 쓴다. diff --git a/help/help.109 b/help/help.109 index f75129cc..8eb3e7f9 100644 --- a/help/help.109 +++ b/help/help.109 @@ -1,6 +1,6 @@ help: - *¾ø¾Ö±â + *없애기 -¹æÀÇ ¸ðµç¹°°Ç°ú ±«¹°À» ¾ø¾Ø´Ù. +ë°©ì�˜ 모든물건과 괴물ì�„ 없앤다. diff --git a/help/help.11 b/help/help.11 index 782a6a88..c2d845bb 100644 --- a/help/help.11 +++ b/help/help.11 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - Àåºñ +ë�„움ë§�: + 장비 -'Àåºñ'´Â ´ç½ÅÀÌ ÀÔ°íÀְųª Àâ°íÀÖ´Â ¹°°ÇÀ» ³ªÅ¸³»ÁÝ´Ï´Ù. +'장비'는 당신ì�´ 입고있거나 잡고있는 물건ì�„ 나타내ì¤�니다. diff --git a/help/help.110 b/help/help.110 index 790fbd50..cbb6f5e0 100644 --- a/help/help.110 +++ b/help/help.110 @@ -1,5 +1,5 @@ Help on: - [»ç¿ëÀÚ | ±«¹°] *¹æ¾î·Â + [사용ìž� | 괴물] *ë°©ì–´ë ¥ -°£´ÜÈ÷ ¹æ¾î·ÂÀ» »ìÆìº»´Ù. +간단히 ë°©ì–´ë ¥ì�„ 살펴본다. diff --git a/help/help.111 b/help/help.111 index 16603624..48c992f9 100644 --- a/help/help.111 +++ b/help/help.111 @@ -1,6 +1,6 @@ Help on: - [f] *´©±¸ + [f] *누구 -»ç¿ëÀÚÀÇ Á¢¼ÓÁö¿Í »óŸ¦ »ìÇÉ´Ù. +사용ìž�ì�˜ ì ‘ì†�지와 ìƒ�태를 살핀다. diff --git a/help/help.112 b/help/help.112 index 8c3fe73d..8bf9d218 100644 --- a/help/help.112 +++ b/help/help.112 @@ -1,6 +1,6 @@ Help on: - [¹®Àå] *°øÁö + [문장] *공지 -¹æÀÇ »ç¶÷µé¿¡°Ô °øÁö¸¦ º¸³½´Ù. +ë°©ì�˜ 사람들ì—�게 공지를 보낸다. diff --git a/help/help.113 b/help/help.113 index fb454702..5b2fd16d 100644 --- a/help/help.113 +++ b/help/help.113 @@ -1,8 +1,8 @@ Help on: - *¸ðµçÀúÀå + *모든저장 -¸ðµç ¹æ°ú ±«¹° ¹°°ÇÀ» µð½ºÅ©¿¡ ÀúÀåÇÑ´Ù... -±×·¯³ª ¾Ê»ç¿ëÇÏ´Â°Ô ÁÁ´Ù. +모든 ë°©ê³¼ 괴물 물건ì�„ 디스í�¬ì—� 저장한다... +그러나 않사용하는게 좋다. diff --git a/help/help.114 b/help/help.114 index a11b44e2..aa9f9681 100644 --- a/help/help.114 +++ b/help/help.114 @@ -1,5 +1,5 @@ Help on: - <½Ã°£ #> *Á¾·á + <시간 #> *종료 -ÁöÁ¤µÈ ºÐ ÈÄ¿¡ ¸Óµå¸¦ Á¾·áÇÑ´Ù. +지정ë�œ ë¶„ 후ì—� 머드를 종료한다. diff --git a/help/help.115 b/help/help.115 index 8a0bea9c..5247b29c 100644 --- a/help/help.115 +++ b/help/help.115 @@ -1,7 +1,7 @@ Help on: - [»ç¿ëÀÚ] [¸í·É] *°­Á¦ + [사용ìž�] [명령] *ê°•ì œ -»ç¿ëÀÚ¿¡°Ô ¸í·ÉÀ» °­Á¦ÇÑ´Ù. +사용ìž�ì—�게 명령ì�„ 강제한다. diff --git a/help/help.116 b/help/help.116 index 7365fa12..43d90dde 100644 --- a/help/help.116 +++ b/help/help.116 @@ -1,7 +1,7 @@ Help on: - *Àç¼³Á¤ + *재설정 -µð½ºÅ©ÀÇ ±«¹°À̳ª ¹°°ÇÀÇ ¼³Á¤ÀÌ ¹Ù²î¾úÀ»¶§ ´Ù½Ã ¸Þ¸ð¸®·Î -ºÒ·¯¿Â´Ù. +디스í�¬ì�˜ 괴물ì�´ë‚˜ 물건ì�˜ 설정ì�´ 바뀌었ì�„때 다시 메모리로 +불러온다. diff --git a/help/help.117 b/help/help.117 index e5e78b3c..ff0e3da3 100644 --- a/help/help.117 +++ b/help/help.117 @@ -1,7 +1,7 @@ Help on: - [#] *±«¹° + [#] *괴물 -ÁöÁ¤µÈ ¹øÈ£ÀÇ ±«¹°À» ºÒ·¯¿Â´Ù. -¹øÈ£°¡ ÁöÁ¤µÇÁö ¾ÊÀ¸¸é ±×¹æÀÇ ·£´ý ÇÑ ±«¹°À» ºÎ¸¥´Ù. +지정ë�œ 번호ì�˜ 괴물ì�„ 불러온다. +번호가 지정ë�˜ì§€ 않으면 그방ì�˜ ëžœë�¤ 한 괴물ì�„ 부른다. diff --git a/help/help.118 b/help/help.118 index 4a39e526..80200031 100644 --- a/help/help.118 +++ b/help/help.118 @@ -1,9 +1,9 @@ Help on: - [¹°°Ç/»ç¿ëÀÚ/±«¹°/¹æ] *»óÅ + [물건/사용ìž�/괴물/ë°©] *ìƒ�태 -ÁöÁ¤µÈ°ÍÀÇ »óŸ¦ º»´Ù. +지정ë�œê²ƒì�˜ ìƒ�태를 본다. diff --git a/help/help.119 b/help/help.119 index 06b0093f..ee73b1bb 100644 --- a/help/help.119 +++ b/help/help.119 @@ -1,7 +1,7 @@ Help on: - [#] *¹æÁ¦ÀÛ + [#] *방제작 -ÁöÁ¤µÈ ¹øÈ£ÀÇ ¹æÀ» »õ·Î Á¦ÀÛÇÑ´Ù. +지정ë�œ 번호ì�˜ ë°©ì�„ 새로 제작한다. diff --git a/help/help.12 b/help/help.12 index dbd8085e..b76c1fab 100644 --- a/help/help.12 +++ b/help/help.12 @@ -1,12 +1,12 @@ -µµ¿ò¸»: - <¹°°Ç> [#] Àâ¾Æ +ë�„움ë§�: + <물건> [#] 잡아 -'Àâ¾Æ'´Â ÀâÀ»¼ö ÀÖ´Â ¹°°ÇÀ» ¼Õ¿¡ µé°ÔÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. -·£ÅÏÀ̳ª ȶºÒ°°Àº°ÍÀ» ÀâÀ»¼ö Àִµ¥ Àâ°í ÀÖ´Â ¹°°ÇÀ» µµµÏÁú ´çÇÒ¼ö ¾ø½À´Ï´Ù. -¾î¶² ¹°°ÇÀº ÀâÀ¸¸é »ç¿ëµË´Ï´Ù.(¿¹:ȶºÒ) +'잡아'는 ìž¡ì�„수 있는 물건ì�„ ì†�ì—� 들게하는 명령입니다. +랜턴ì�´ë‚˜ 횃불같ì�€ê²ƒì�„ ìž¡ì�„수 있는ë�° 잡고 있는 물건ì�„ ë�„둑질 당할수 없습니다. +ì–´ë–¤ 물건ì�€ 잡으면 사용ë�©ë‹ˆë‹¤.(예:횃불) -¿¹: +예: -: ȶºÒ 2 Àâ¾Æ -´ç½ÅÀº ȶºÒÀ» ¹àÇû½À´Ï´Ù.. +: 횃불 2 잡아 +당신ì�€ 횃불ì�„ ë°�혔습니다.. diff --git a/help/help.120 b/help/help.120 index eff410d2..77cce2b6 100644 --- a/help/help.120 +++ b/help/help.120 @@ -1,6 +1,6 @@ Help on: - DM function *¼³Á¤ + DM function *설정 This function allows the DM to set any variable on an exit, room, player, monster, or object. The syntax is different for each class of diff --git a/help/help.121 b/help/help.121 index 873ca083..ef865845 100644 --- a/help/help.121 +++ b/help/help.121 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - [r] *Á¢¼Ó + [r] *ì ‘ì†� -Á¢¼ÓÀÏÁö¸¦ º»´Ù. -rÀº »èÁ¦ÇÑ´Ù. +ì ‘ì†�ì�¼ì§€ë¥¼ 본다. +rì�€ 삭제한다. diff --git a/help/help.122 b/help/help.122 index 19c0a1f5..82ec2332 100644 --- a/help/help.122 +++ b/help/help.122 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - <»ç¿ëÀÚ> *°¨½Ã +ë�„움ë§�: + <사용ìž�> *ê°�시 -¸ô·¡ ±×»ç¶÷À» °¨½ÃÇÑ´Ù. +몰래 그사람ì�„ ê°�시한다. diff --git a/help/help.123 b/help/help.123 index aa51b72f..4e65acd5 100644 --- a/help/help.123 +++ b/help/help.123 @@ -1,3 +1,3 @@ -µµ¿ò¸»: - *Á¦ÇÑ -¼³Á¤µÇÀÖ´Â Á¢¼ÓÁö Á¦ÇÑÀ» ·ÎµåÇÑ´Ù. +ë�„움ë§�: + *제한 +설정ë�˜ìžˆëŠ” ì ‘ì†�ì§€ 제한ì�„ 로드한다. diff --git a/help/help.124 b/help/help.124 index a2b26866..a7ca8b5e 100644 --- a/help/help.124 +++ b/help/help.124 @@ -1,3 +1,3 @@ -µµ¿ò¸»: - <»ç¿ëÀÚ> *ÇΰŠ-»ç¿ëÀÚÀÇ ÇΰÅÁ¤º¸¸¦ °Ë»öÇÑ´Ù. +ë�„움ë§�: + <사용ìž�> *í•‘ê±° +사용ìž�ì�˜ 핑거정보를 검색한다. diff --git a/help/help.125 b/help/help.125 index 4b45f31e..f721f8bb 100644 --- a/help/help.125 +++ b/help/help.125 @@ -1,7 +1,7 @@ Help on: - [options] *¸®½ºÆ® + [options] *리스트 This funtion calls a program that lists any and all rooms, objects, or monsters. WARNING: The output may be extrememly long if the diff --git a/help/help.126 b/help/help.126 index 394affee..823ef372 100644 --- a/help/help.126 +++ b/help/help.126 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - *Á¤º¸ + *ì •ë³´ -°£´ÜÇÑ °ÔÀÓÀÇ Á¤º¸¸¦ º»´Ù. +간단한 게임ì�˜ 정보를 본다. diff --git a/help/help.127 b/help/help.127 index c3c6e28d..8b981e47 100644 --- a/help/help.127 +++ b/help/help.127 @@ -1,7 +1,7 @@ Help on: - [r|d|s] *¼öÄ¡ + [r|d|s] *수치 This function allows the DM to set various game parameters. These parameters can be listed by using the 'd' flag. diff --git a/help/help.128 b/help/help.128 index a9687ff9..f8c95768 100644 --- a/help/help.128 +++ b/help/help.128 @@ -1,6 +1,6 @@ Help on: - [»ç¿ëÀÚ] [c/m] (x) *º¡¾î¸® + [사용ìž�] [c/m] (x) *벙어리 -»ç¿ëÀÚÀÇ Àâ´ãÀ» ±ÝÁöÇÑ´Ù. +사용ìž�ì�˜ 잡담ì�„ 금지한다. diff --git a/help/help.130 b/help/help.130 index 76c550ad..4b8db978 100644 --- a/help/help.130 +++ b/help/help.130 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - *[´Ü¾î1] [´Ü¾î2] ±³Ã¼ + *[단어1] [단어2] êµ�ì²´ -´Ü¾î1À» ´Ü¾î2·Î ±³Ã¼ÇÑ´Ù ±×·¯³ª À§Ä¡»óÀÇ ¹®Á¦·Î Àß ÀÛµ¿ ¾ÊÇÑ´Ù. +단어1ì�„ 단어2로 êµ�체한다 그러나 위치ìƒ�ì�˜ 문제로 잘 ìž‘ë�™ 않한다. diff --git a/help/help.131 b/help/help.131 index 8e13078d..d985aa0b 100644 --- a/help/help.131 +++ b/help/help.131 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - [¹æÀ̸§] *¹æÀ̸§ + [ë°©ì�´ë¦„] *ë°©ì�´ë¦„ -¹æÀ̸§À» ¼³Á¤ÇÑ´Ù. +ë°©ì�´ë¦„ì�„ 설정한다. diff --git a/help/help.132 b/help/help.132 index cc771481..d8ded5c1 100644 --- a/help/help.132 +++ b/help/help.132 @@ -1,8 +1,8 @@ -µµ¿ò¸»: +ë�„움ë§�: - [-sn] [¹®Àå] *Ãß°¡ + [-sn] [문장] *추가 -¹®ÀåÀ» ¹æ¼³¸í·¹ Ãß°¡ÇÑ´Ù. s´Â °£´Ü ¼³¸í¿¡ Ãß°¡µÇ°í -nÀº »õ·Î¿î ¶óÀÎÀ¸·Î ¹Ù²ÙÁö ¾Ê´Â´Ù. +문장ì�„ 방설명레 추가한다. s는 간단 설명ì—� 추가ë�˜ê³  +nì�€ 새로운 ë�¼ì�¸ìœ¼ë¡œ 바꾸지 않는다. diff --git a/help/help.133 b/help/help.133 index 8857a2de..50567f71 100644 --- a/help/help.133 +++ b/help/help.133 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - [-sn] [¹®Àå] *¼­¾ð + [-sn] [문장] *서언 -¿É¼ÇÀ̳ª ±â´ÉÀº *Ãß°¡¿Í °°´Ù. -¹®ÀåÀ» ¾ÕÂÊ¿¡´Ù Áý¾î³Ö´Â´Ù. +옵션ì�´ë‚˜ 기능ì�€ *추가와 같다. +문장ì�„ 앞쪽ì—�다 집어넣는다. diff --git a/help/help.134 b/help/help.134 index c4516e71..41b707c1 100644 --- a/help/help.134 +++ b/help/help.134 @@ -1,8 +1,8 @@ -µµ¿ò¸»: +ë�„움ë§�: - [-r] <ÁÖ¹®> *ÀüÁÖ¹® + [-r] <주문> *전주문 -ÁÖ¹®À» ¸ðµç »ç¶÷¿¡°Ô ¿Ü¿î´Ù. -rÀº ¹æ¿¡ ÀÖ´Â »ç¶÷¿¡°Ô¸¸ ¿µÇâÀ» ¹ÌÄ£´Ù. +주문ì�„ 모든 사람ì—�게 외운다. +rì�€ ë°©ì—� 있는 사람ì—�게만 ì˜�í–¥ì�„ 미친다. diff --git a/help/help.135 b/help/help.135 index 64e71d9f..40ace1d1 100644 --- a/help/help.135 +++ b/help/help.135 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - [»ç¿ëÀÚ] *±×·ì + [사용ìž�] *그룹 -»ç¿ëÀÚÀÇ ±×·ìÀ» »ìÇÉ´Ù. +사용ìž�ì�˜ 그룹ì�„ 살핀다. diff --git a/help/help.136 b/help/help.136 index 774f38e9..6ff2b26e 100644 --- a/help/help.136 +++ b/help/help.136 @@ -1,9 +1,9 @@ -¸Þ¸ð: +메모: - [d|a] *¸Þ¸ð + [d|a] *메모 -¸Þ¸ðÀåÀ» ¾´´Ù ¿É¼ÇÀÌ ¾øÀ¸¸é ±×³É »ç¿ëÀÌ µÈ´Ù. -¸¶Ä¥¶§´Â .À» Âï´Â´Ù. a´Â Ãß°¡ÇÏ´Â °ÍÀ̰í d´Â Áö¿ì´Â °ÍÀÌ´Ù. +메모장ì�„ 쓴다 옵션ì�´ 없으면 그냥 사용ì�´ ë�œë‹¤. +마칠때는 .ì�„ ì°�는다. a는 추가하는 것ì�´ê³  d는 지우는 것ì�´ë‹¤. diff --git a/help/help.14 b/help/help.14 index d7277598..833b3b2d 100644 --- a/help/help.14 +++ b/help/help.14 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - µµ¿ò +ë�„움ë§�: + ë�„움 -¸» ±×´ë·Î ¶ó³×. +ë§� 그대로 ë�¼ë„¤. diff --git a/help/help.140 b/help/help.140 index 79ae0db2..476206d5 100644 --- a/help/help.140 +++ b/help/help.140 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - *Ȱ¼º + *활성 -Áö±Ý ¸Þ¸ð¸®¿¡ Ȱ¼ºÈ­µÈ ±«¹°À» º»´Ù. +지금 메모리ì—� 활성화ë�œ 괴물ì�„ 본다. diff --git a/help/help.141 b/help/help.141 index ee3f0e31..8d8a619a 100644 --- a/help/help.141 +++ b/help/help.141 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <»ç¿ëÀÚ> *º­¶ôÄ¡±â + <사용ìž�> *ë²¼ë�½ì¹˜ê¸° -»ç¿ëÀÚ¸¦ ¿ÏÀüÈ÷ Áõ¹ß½ÃŲ´Ù. +사용ìž�를 완전히 ì¦�발시킨다. diff --git a/help/help.142 b/help/help.142 index 123dcfa1..a7383910 100644 --- a/help/help.142 +++ b/help/help.142 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> *µû¸£±â + <괴물> *따르기 -±«¹°À» µû¶ó¿À°Ô ¸¸µç´Ù. +괴물ì�„ ë”°ë�¼ì˜¤ê²Œ 만든다. diff --git a/help/help.144 b/help/help.144 index db8896c1..32fa0e1c 100644 --- a/help/help.144 +++ b/help/help.144 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> <»ç¿ëÀÚ> *°ø°Ý + <괴물> <사용ìž�> *공격 -±«¹°¿¡°Ô »ç¿ëÀÚ¸¦ °ø°ÝÇÏ°Ô ÇÑ´Ù. +괴물ì—�게 사용ìž�를 공격하게 한다. diff --git a/help/help.145 b/help/help.145 index 42e519fb..9b38bd10 100644 --- a/help/help.145 +++ b/help/help.145 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> *Àû + <괴물> *ì � -±«¹°ÀÇ ÀûÀ» º»´Ù. +괴물ì�˜ ì �ì�„ 본다. diff --git a/help/help.146 b/help/help.146 index a4af2b05..06ae7280 100644 --- a/help/help.146 +++ b/help/help.146 @@ -1,8 +1,8 @@ -µµ¿ò¸»: +ë�„움ë§�: - <»ç¿ëÀÚ> *ÃÖ¸é + <사용ìž�> *최면 -»ç¿ëÀÚÀÇ Ãָ鿡 °É¸° »ç¶÷À» º»´Ù. +사용ìž�ì�˜ 최면ì—� 걸린 사람ì�„ 본다. diff --git a/help/help.148 b/help/help.148 index a2164e8d..41c47b41 100644 --- a/help/help.148 +++ b/help/help.148 @@ -1,24 +1,24 @@ -<ÆÐ°Å¸® ¸í·É> -ÆÐ°Å¸®°¡ÀÔ : ÆÐ°Å¸®¿¡ °¡ÀÔ½ÅûÀ» ÇÏ´Â ¸í·É. - °¡ÀÔ½ÅûÀº ±× ÆÐ°Å¸®ÀÇ µÎ¸ñÀÌ ÀÌ¿ëÁßÀ̾î¾ß¸¸ °¡´ÉÇÕ´Ï´Ù. - °¡ÀÔ½ÅûÀ» ÇÏ¿´´Ù°í ÇØµµ µÎ¸ñÀÌ °¡ÀÔÇã°¡¸¦ ÇØÁÖÁö - ¾ÊÀ¸¸é °¡ÀÔÀÌ µÇÁö ¾Ê½À´Ï´Ù. -°¡ÀÔÇã°¡ : ÆÐ°Å¸®ÀÇ µÎ¸ñ¸¸ÀÌ °¡´ÉÇÑ ¸í·ÉÀ¸·Î ÀÚ½ÅÀÇ ÆÐ°Å¸®¿¡ - »õ·Î¿î »ç¿ëÀÚ¸¦ ¹Þ¾ÆµéÀÌ´Â ¸í·ÉÀÔ´Ï´Ù. - °¡ÀÔÇã°¡¸¦ À§Çؼ­´Â ¸ÕÀú »ç¿ëÀÚ°¡ °¡ÀÔ½ÅûÀ» ÇØµÖ¾ß - °¡ÀÔÇã°¡¸¦ ÇØÁÙ¼ö ÀÖ½À´Ï´Ù. -ÆÐ°Å¸®Å»Åð : ÀÚ½ÅÀÌ °¡ÀÔÇÑ ÆÐ°Å¸®¿¡¼­ Å»Å𸦠ÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. - °¡ÀÔ½ÅûÁßÀ̰í, ¾ÆÁ÷ °¡ÀÔÇã°¡¸¦ ¹ÞÁö ¾Ê¾ÒÀ»¶§µµ - ÀÌ ¸í·ÉÀ¸·Î °¡ÀÔ½ÅûÀ» Ãë¼ÒÇÒ¼ö ÀÖ½À´Ï´Ù. -ÆÐ°Å¸® : ÇöÀç ÀÌ¿ëÁßÀÎ ÆÐ°Å¸®¿øÀ» º¸¿©ÁÝ´Ï´Ù. -ÆÐ°Å¸®¸»(]): ÆÐ°Å¸®¿øµé¿¡°Ô À̾߱⸦ ÀüÇØÁÝ´Ï´Ù. -¸ðµçÆÐ°Å¸® : ¸Óµå¿¡¼­ Ȱµ¿ÁßÀÎ ¸ðµç ÆÐ°Å¸®ÀÇ ¸®½ºÆ®¸¦ º¸¿©ÁÝ´Ï´Ù. -ÆÐ°Å¸®Ãß¹æ : µÎ¸ñ¸¸ÀÌ °¡´ÉÇÑ ¸í·ÉÀ¸·Î ÀÚ½ÅÀÇ ÆÐ°Å¸®¿¡¼­ °­Á¦·Î - Ãß¹æÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. -ÆÐ°Å¸®°øÁö : [a/d] ÆÐ°Å¸®°øÁö. - ÆÐ°Å¸®³»¿¡¼­ÀÇ °øÁö»çÇ×À» º¸¿©ÁÖ´Â ¸í·ÉÀ¸·Î. - µÎ¸ñÀÇ °æ¿ì¿¡´Â À§ÀÇ ¿É¼ÇÀ» »ç¿ëÇÏ¿© Áö¿ì°Å³ª ¾µ¼ö ÀÖ½À´Ï´Ù. - ¾µ¶§´Â ¸¶Áö¸·¿¡ [.]À» Ä¡¸é ÀúÀåÀÌ µË´Ï´Ù. +<패거리 명령> +패거리가입 : 패거리ì—� 가입신청ì�„ 하는 명령. + 가입신청ì�€ ê·¸ 패거리ì�˜ ë‘�목ì�´ ì�´ìš©ì¤‘ì�´ì–´ì•¼ë§Œ 가능합니다. + 가입신청ì�„ 하였다고 í•´ë�„ ë‘�목ì�´ 가입허가를 해주지 + 않으면 가입ì�´ ë�˜ì§€ 않습니다. +가입허가 : 패거리ì�˜ ë‘�목만ì�´ 가능한 명령으로 ìž�ì‹ ì�˜ 패거리ì—� + 새로운 사용ìž�를 받아들ì�´ëŠ” 명령입니다. + 가입허가를 위해서는 먼저 사용ìž�ê°€ 가입신청ì�„ 해둬야 + 가입허가를 해줄수 있습니다. +패거리탈퇴 : ìž�ì‹ ì�´ 가입한 패거리ì—�서 탈퇴를 하는 명령입니다. + 가입신청중ì�´ê³ , ì•„ì§� 가입허가를 받지 않았ì�„때ë�„ + ì�´ 명령으로 가입신청ì�„ 취소할수 있습니다. +패거리 : 현재 ì�´ìš©ì¤‘ì�¸ 패거리ì›�ì�„ ë³´ì—¬ì¤�니다. +패거리ë§�(]): 패거리ì›�들ì—�게 ì�´ì•¼ê¸°ë¥¼ ì „í•´ì¤�니다. +모든패거리 : 머드ì—�서 활ë�™ì¤‘ì�¸ 모든 패거리ì�˜ 리스트를 ë³´ì—¬ì¤�니다. +패거리추방 : ë‘�목만ì�´ 가능한 명령으로 ìž�ì‹ ì�˜ 패거리ì—�서 강제로 + 추방하는 명령입니다. +패거리공지 : [a/d] 패거리공지. + 패거리내ì—�서ì�˜ 공지사항ì�„ 보여주는 명령으로. + ë‘�목ì�˜ 경우ì—�는 위ì�˜ 옵션ì�„ 사용하여 지우거나 쓸수 있습니다. + 쓸때는 마지막ì—� [.]ì�„ 치면 저장ì�´ ë�©ë‹ˆë‹¤. ->>> ¾ÆÁ÷ ¸í·ÉÀ» ´Ù ¸¸µç°Ô ¾Æ´Ï¶ó¼­ ºÎÁ·ÇÑ Á¡ÀÌ ¸¹½À´Ï´Ù. - ÇÊ¿äÇÑ ±â´ÉÀÌ ÀÖÀ¸½Ã¸é "°³°ñ"¿¡°Ô ¸ÞÀÏÀ» º¸³»ÁÖ¼¼¿ä. +>>> ì•„ì§� 명령ì�„ 다 만든게 아니ë�¼ì„œ 부족한 ì �ì�´ 많습니다. + 필요한 기능ì�´ 있으시면 "개골"ì—�게 ë©”ì�¼ì�„ 보내주세요. diff --git a/help/help.149 b/help/help.149 index dd7eb135..b964ef3a 100644 --- a/help/help.149 +++ b/help/help.149 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - <ü·Â/µµ·Â> Çâ»ó +ë�„움ë§�: + <ì²´ë ¥/ë�„ë ¥> í–¥ìƒ� -ÃÊÀÎ ¸¸ÀÌ °¡´ÉÇÑ ¸í·ÉÀ¸·Î, °æÇèÄ¡¿Í µ·À¸·Î -ü·Â ¶Ç´Â µµ·ÂÀ» »ì ¼ö ÀÖ´Â ¸í·ÉÀÔ´Ï´Ù. +ì´ˆì�¸ ë§Œì�´ 가능한 명령으로, 경험치와 ë�ˆìœ¼ë¡œ +ì²´ë ¥ ë˜�는 ë�„ë ¥ì�„ ì‚´ 수 있는 명령입니다. diff --git a/help/help.15 b/help/help.15 index 785b66c2..977c520f 100644 --- a/help/help.15 +++ b/help/help.15 @@ -1,4 +1,4 @@ -µµ¿ò¸»: - Á¡¼ö +ë�„움ë§�: + ì �수 -'Á¡¼ö'´Â ´ç½ÅÀÇ »óÅÂ¿Í µ·,°æÇè°°Àº °£·«ÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù. +'ì �수'는 당신ì�˜ ìƒ�태와 ë�ˆ,경험같ì�€ 간략한 정보를 ë³´ì—¬ì¤�니다. diff --git a/help/help.150 b/help/help.150 index d31dc054..3bb8d9cd 100644 --- a/help/help.150 +++ b/help/help.150 @@ -1,10 +1,10 @@ -[µµ¿ò¸»] - °áÈ¥ -»ç¿ë : [»ó´ë¹æÀ̸§] °áÈ¥ -°áÈ¥½ÄÀå¿¡¼­¸¸ °¡´ÉÇϸç, ¼­·Î°¡ °áÈ¥¸í·ÉÀ» ÇßÀ»¶§¸¸ -°áÈ¥ÀÌ ¼º¸³ÀÌ µË´Ï´Ù. +[ë�„움ë§�] + 결혼 +사용 : [ìƒ�대방ì�´ë¦„] 결혼 +결혼ì‹�장ì—�서만 가능하며, 서로가 결혼명령ì�„ í–ˆì�„때만 +결혼ì�´ 성립ì�´ ë�©ë‹ˆë‹¤. - »ç¶û¸» -»ç¿ë : [¸»ÇÒ³»¿ë] »ç¶û¸» -ÀڽŰú °áÈ¥ÇÑ »ç¶÷°ú µÑ¸¸ÀÇ ´ëÈ­¸¦ ÇÏ´Â °ÍÀÔ´Ï´Ù. -ÀڽŰú °áÈ¥ÇÑ »ç¶÷ÀÌ »ç¿ëÁßÀÎÁö È®Àο©ºÎµµ °¡´ÉÇÕ´Ï´Ù. + 사랑ë§� +사용 : [ë§�í• ë‚´ìš©] 사랑ë§� +ìž�ì‹ ê³¼ 결혼한 사람과 둘만ì�˜ 대화를 하는 것입니다. +ìž�ì‹ ê³¼ 결혼한 사람ì�´ 사용중ì�¸ì§€ 확ì�¸ì—¬ë¶€ë�„ 가능합니다. diff --git a/help/help.151 b/help/help.151 index c37d1204..051a5e86 100644 --- a/help/help.151 +++ b/help/help.151 @@ -1,8 +1,8 @@ -[µµ¿ò¸»] - [»ç¿ëÀÚ] [³²±æ ³»¿ë] ¸Þ¸ð +[ë�„움ë§�] + [사용ìž�] [남길 ë‚´ìš©] 메모 -'¸Þ¸ð'´Â ÇöÀç Á¢¼ÓÁßÀÌ ¾Æ´Ñ »ç¶÷¿¡°Ô °£´ÜÇÑ ¸Þ¸ð¸¦ ³²±â´Â ±â´ÉÀÔ´Ï´Ù. -ÆíÁö·Î º¸³»Áö ¾Ê¾Æµµ µÉ Á¤µµÀÇ °£´ÜÇÑ ¸Þ¸ð¸¸ °¡´ÉÇϸç, ±× »ó´ë¹æÀÌ -´ÙÀ½ Á¢¼Ó½Ã¿¡ ¸Þ¸ðÀÇ ³»¿ëÀ» ¹Ù·Î º¼ ¼ö ÀÖ½À´Ï´Ù. -´Ü, Çѹø ÀÐÀº ¸Þ¸ðÀÇ ³»¿ëÀº ÀúÀåÀÌ µÇÁö ¾Ê¾Æ ´ÙÀ½¿¡ ´Ù½Ã º¼¼ö ¾ø½À´Ï´Ù. +'메모'는 현재 ì ‘ì†�중ì�´ 아닌 사람ì—�게 간단한 메모를 남기는 기능입니다. +편지로 ë³´ë‚´ì§€ 않아ë�„ ë�  ì •ë�„ì�˜ 간단한 메모만 가능하며, ê·¸ ìƒ�대방ì�´ +다ì�Œ ì ‘ì†�시ì—� 메모ì�˜ ë‚´ìš©ì�„ 바로 ë³¼ 수 있습니다. +단, 한번 ì�½ì�€ 메모ì�˜ ë‚´ìš©ì�€ 저장ì�´ ë�˜ì§€ 않아 다ì�Œì—� 다시 볼수 없습니다. diff --git a/help/help.16 b/help/help.16 index 7bbab7bb..2afe9f02 100644 --- a/help/help.16 +++ b/help/help.16 @@ -1,4 +1,4 @@ -µµ¿ò¸»: - Á¤º¸ +ë�„움ë§�: + ì •ë³´ -'Á¤º¸'´Â ´ç½ÅÀÇ »ó¼¼ÇÑ »óŸ¦ º¸¿©ÁÝ´Ï´Ù. +'ì •ë³´'는 당신ì�˜ ìƒ�세한 ìƒ�태를 ë³´ì—¬ì¤�니다. diff --git a/help/help.17 b/help/help.17 index a07ea6b8..8abe63fc 100644 --- a/help/help.17 +++ b/help/help.17 @@ -1,11 +1,11 @@ -µµ¿ò¸»: - <ŸÀÎ> <¹®Àå> À̾߱â - <ŸÀÎ> <¹®Àå> ¾ê±â +ë�„움ë§�: + <타ì�¸> <문장> ì�´ì•¼ê¸° + <타ì�¸> <문장> 얘기 -'À̾߱â'´Â »ó´ë¹æ¿¡°Ô ÀÚ½ÅÀÇ ¸»À» ÀüÇÕ´Ï´Ù. +'ì�´ì•¼ê¸°'는 ìƒ�대방ì—�게 ìž�ì‹ ì�˜ ë§�ì�„ 전합니다. -¿¹: +예: -: ¶Ç¶óÀÌ ¾È³ç ¸Ûû¾Æ! À̾߱â -À̾߱Ⱑ ¶Ç¶óÀÌ¿¡°Ô ÀüÇØÁ³½À´Ï´Ù. +: ë˜�ë�¼ì�´ 안녕 ë©�ì²­ì•„! ì�´ì•¼ê¸° +ì�´ì•¼ê¸°ê°€ ë˜�ë�¼ì�´ì—�게 전해졌습니다. diff --git a/help/help.18 b/help/help.18 index 2f30e73b..39a5574a 100644 --- a/help/help.18 +++ b/help/help.18 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <ŸÀÎ> µû¶ó +ë�„움ë§�: + <타ì�¸> ë”°ë�¼ -'µû¶ó'´Â ´Ù¸¥ »ç¶÷À» µû¶ó°¡´Â ¸í·ÉÀÔ´Ï´Ù. -±×»ç¶÷ÀÌ ¿òÁ÷ÀÌ´Â ¹æÇâÀ¸·Î ÀÚµ¿ÀûÀ¸·Î µû¶ó°¡°Ô µË´Ï´Ù. -±×·ìÀ» ¸¸µå´Âµ¥ Áß¿äÇÑ ¸í·ÉÀÔ´Ï´Ù. +'ë”°ë�¼'는 다른 사람ì�„ ë”°ë�¼ê°€ëŠ” 명령입니다. +그사람ì�´ 움ì§�ì�´ëŠ” 방향으로 ìž�ë�™ì �으로 ë”°ë�¼ê°€ê²Œ ë�©ë‹ˆë‹¤. +그룹ì�„ 만드는ë�° 중요한 명령입니다. diff --git a/help/help.19 b/help/help.19 index ac11b6c9..660680a0 100644 --- a/help/help.19 +++ b/help/help.19 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - <ŸÀÎ> ³»º¸³» +ë�„움ë§�: + <타ì�¸> ë‚´ë³´ë‚´ -'³»º¸³»'´Â ±×·ì¿¡¼­ ÇÊ¿ä¾ø´Â »ç¶÷À» ³»º¸³»´Â ¸í·ÉÀÔ´Ï´Ù. +'ë‚´ë³´ë‚´'는 그룹ì—�서 필요없는 사람ì�„ 내보내는 명령입니다. diff --git a/help/help.2 b/help/help.2 index a4eba213..182781b5 100644 --- a/help/help.2 +++ b/help/help.2 @@ -1,15 +1,15 @@ -µµ¿ò¸»: - [<¹°°Ç/±«¹°> [#]] º¸´Ù - [<¹°°Ç/±«¹°> [#]] ºÁ - [<¹°°Ç/±«¹°> [#]] Á¶»ç +ë�„움ë§�: + [<물건/괴물> [#]] 보다 + [<물건/괴물> [#]] ë´� + [<물건/괴물> [#]] 조사 -±×³É ÀÔ·ÂÇÏ¸é ±×¹æÀÇ »óŸ¦ º¸¿©ÁÝ´Ï´Ù. -¹°°ÇÀ̳ª ±«¹°À» ÀÔ·ÂÇÏ¸é ±×¿¡ ´ëÇÑ »ó¼¼ÇÑ Á¤º¸¸¦ º¸¿©ÁÝ´Ï´Ù. +그냥 입력하면 그방ì�˜ ìƒ�태를 ë³´ì—¬ì¤�니다. +물건ì�´ë‚˜ 괴물ì�„ 입력하면 ê·¸ì—� 대한 ìƒ�세한 정보를 ë³´ì—¬ì¤�니다. -¿¹: +예: -:°¡¹æ ºÁ +:가방 ë´� -ƯÀÌÇÑ Á¡ÀÌ ¾ø½À´Ï´Ù. -³»¿ë¹°: Ã¥. +특ì�´í•œ ì �ì�´ 없습니다. +내용물: ì±…. diff --git a/help/help.20 b/help/help.20 index d731ffb2..f1a22441 100644 --- a/help/help.20 +++ b/help/help.20 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ±×·ì +ë�„움ë§�: + 그룹 -'±×·ì'Àº ÇöÀç ´ç½ÅÀ» µû¸£´Â ±×·ì¿øÀÇ »óŸ¦ º¸¿©ÁÝ´Ï´Ù. -±×·ìÀÇ ¸®´õ´Â Ç×»ó ÀÚ½ÅÀÇ ±×·ì»óŸ¦ È®ÀÎÇØ¼­ º¸È£ÇØ¾ß ÇÕ´Ï´Ù. -´ç½ÅÀº '³»º¸³»'·Î ±×·ì¿øÀ» ³»º¸³¾¼ö ÀÖ½À´Ï´Ù. +'그룹'ì�€ 현재 당신ì�„ 따르는 그룹ì›�ì�˜ ìƒ�태를 ë³´ì—¬ì¤�니다. +그룹ì�˜ 리ë�”는 í•­ìƒ� ìž�ì‹ ì�˜ 그룹ìƒ�태를 확ì�¸í•´ì„œ 보호해야 합니다. +당신ì�€ 'ë‚´ë³´ë‚´'로 그룹ì›�ì�„ 내보낼수 있습니다. diff --git a/help/help.21 b/help/help.21 index 70162fbe..9b7e25f8 100644 --- a/help/help.21 +++ b/help/help.21 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - ÃßÀû +ë�„움ë§�: + ì¶”ì � -ÃßÀûÀº Æ÷Á¹ÀÇ Æ¯¼ö±â¼úÀÔ´Ï´Ù. ¼º°øÀûÀ¸·Î ÇØ³»¸é ¸¶Áö¸·À¸·Î ¹æÀ» ¶°³­ -¸¶Áö¸· »ç¶÷ÀÇ ÈçÀûÀ» ¹ß°ßÇÒ¼ö ÀÖ½À´Ï´Ù. +ì¶”ì �ì�€ í�¬ì¡¸ì�˜ 특수기술입니다. 성공ì �으로 í•´ë‚´ë©´ 마지막으로 ë°©ì�„ 떠난 +마지막 사람ì�˜ í�”ì �ì�„ 발견할수 있습니다. diff --git a/help/help.22 b/help/help.22 index af883480..904981ae 100644 --- a/help/help.22 +++ b/help/help.22 @@ -1,13 +1,13 @@ -µµ¿ò: - <¹°°Ç/±«¹°> ¿³ºÁ +ë�„움: + <물건/괴물> ì—¿ë´� -'¿³ºÁ'´Â ´Ù¸¥ »ç¶÷À̳ª ±«¹°ÀÇ ¼ÒÀ¯¹°À» ÈÉÃĺ¼¼ö ÀÖ½À´Ï´Ù. -±×Á¤º¸´Â Á¤È®ÇÏÁö ¾ÊÀ»¼öµµ ÀÖ½À´Ï´Ù. -´ÑÀÚ¿Í µµµÏÀÇ Àü¿ë ±â¼úÀÔ´Ï´Ù. +'ì—¿ë´�'는 다른 사람ì�´ë‚˜ 괴물ì�˜ 소유물ì�„ í›”ì³�볼수 있습니다. +그정보는 정확하지 않ì�„수ë�„ 있습니다. +닌ìž�와 ë�„ë‘‘ì�˜ ì „ìš© 기술입니다. -¿¹: +예: -¶Ç¶óÀ̰¡ ¾È³ç À̶ó°í ¸»Çß½À´Ï´Ù. -: ¶Ç¶óÀÌ ¿³ºÁ -±×ÀÇ ¼ÒÁöǰ: Ȱ, ÀÛÀº Ä®. +ë˜�ë�¼ì�´ê°€ 안녕 ì�´ë�¼ê³  ë§�했습니다. +: ë˜�ë�¼ì�´ ì—¿ë´� +ê·¸ì�˜ 소지품: 활, ìž‘ì�€ ì¹¼. diff --git a/help/help.23 b/help/help.23 index 0a4cfd97..f6346d90 100644 --- a/help/help.23 +++ b/help/help.23 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <ŸÀÎ/±«¹°> [#] °ø°Ý - <ŸÀÎ/±«¹°> [#] ¶§·Á +ë�„움ë§�: + <타ì�¸/괴물> [#] 공격 + <타ì�¸/괴물> [#] 때려 -'°ø°Ý'Àº ±«¹°À̳ª ´Ù¸¥»ç¶÷À» °ø°ÝÇÕ´Ï´Ù. -°ø°Ý´çÇÑ ±«¹°Àº ´ç½ÅÀÇ ¾ó±¼À» ±â¾ïÇÑ´Ù´Â°É ÀØÁö ¸¶¼¼¿ä. +'공격'ì�€ 괴물ì�´ë‚˜ 다른사람ì�„ 공격합니다. +공격당한 괴물ì�€ 당신ì�˜ 얼굴ì�„ 기억한다는걸 잊지 마세요. -¿¹: +예: -°õ ¼¼¸¶¸®°¡ ÀÖ½À´Ï´Ù. -: °õ 2 ¶§·Á -´ç½ÅÀº °õÀ» °ø°ÝÇß½À´Ï´Ù. -´ç½ÅÀº 5 µ¥¹ÌÁö¸¦ ÀÔÇû½À´Ï´Ù. +ê³° 세마리가 있습니다. +: ê³° 2 때려 +당신ì�€ ê³°ì�„ 공격했습니다. +당신ì�€ 5 ë�°ë¯¸ì§€ë¥¼ 입혔습니다. diff --git a/help/help.24 b/help/help.24 index 3d80045e..d08f2f1c 100644 --- a/help/help.24 +++ b/help/help.24 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - ã¾Æ +ë�„움ë§�: + 찾아 -'ã¾Æ'´Â ¹æ¿¡ ÀÖ´Â ºñ¹Ð½º·± ¹«¾ùÀΰ¡¸¦ ŽÁöÇØ³À´Ï´Ù. -Æ÷Á¹ÀÌ Ã£¾Æ¿¡ °¡Àå ÀûÇÕÇÑ Á÷¾÷ÀÔ´Ï´Ù. +'찾아'는 ë°©ì—� 있는 비밀스런 무엇ì�¸ê°€ë¥¼ íƒ�지해냅니다. +í�¬ì¡¸ì�´ 찾아ì—� 가장 ì �합한 ì§�업입니다. diff --git a/help/help.25 b/help/help.25 index 34ce3817..7c06b816 100644 --- a/help/help.25 +++ b/help/help.25 @@ -1,13 +1,13 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹®Àå> Ç¥Çö + <문장> 표현 -'°¨Á¤'Àº ´ç½ÅÀÇ Ç¥ÇöÀ» ÀÚÀ¯·ÎÀÌ ³ªÅ¸³»°Ô ÇÕ´Ï´Ù. +'ê°�ì •'ì�€ 당신ì�˜ 표현ì�„ ìž�유로ì�´ 나타내게 합니다. -¿¹: -:¿­¹Þ¾Ò´ç Ç¥Çö. +예: +:열받았당 표현. Ok. -ŸÀÌ´Â ¿­¹Þ¾Ò´ç. +타ì�´ëŠ” 열받았당. diff --git a/help/help.26 b/help/help.26 index 09db3d0c..30668e1a 100644 --- a/help/help.26 +++ b/help/help.26 @@ -1,17 +1,17 @@ -µµ¿ò¸»: - [<¹°°Ç> [#]] ¼û°Ü +ë�„움ë§�: + [<물건> [#]] 숨겨 -'¼û¾î'´Â ¹°°ÇÀ̳ª ´ç½ÅÀ» ¹æµÚ¿¡ ¼û±âµµ·Ï ÇÕ´Ï´Ù. -¼º°øÀûÀÌ¸é ¾Æ¹«µµ ´ç½ÅÀ» º¸Áö¸øÇÕ´Ï´Ù. -±×·¯³ª ¼ûÀº°÷À» ´©°¡ ¼ö»öÇÏ¸é ¹ß°ßµË´Ï´Ù. -Æ÷Á¹,µµµÏ,´ÑÀÚÀÇ Æ¯±âÀÔ´Ï´Ù. +'숨어'는 물건ì�´ë‚˜ 당신ì�„ ë°©ë’¤ì—� 숨기ë�„ë¡� 합니다. +성공ì �ì�´ë©´ 아무ë�„ 당신ì�„ 보지못합니다. +그러나 숨ì�€ê³³ì�„ 누가 수색하면 발견ë�©ë‹ˆë‹¤. +í�¬ì¡¸,ë�„ë‘‘,닌ìž�ì�˜ 특기입니다. -¿¹: +예: -¹Ù´Ú¿¡¼­ ¹ß°ßÇѰÍ: ÀÛÀº Ä®, °¡¹æ. -: Ä® ¼û°Ü -´ç½ÅÀº Ä®À» ¼û±â·Á ÇÕ´Ï´Ù. -: ºÁ -¹Ù´Ú¿¡¼­ ¹ß°ßÇѰÍ: °¡¹æ. -: ¼û°Ü -´ç½ÅÀº ±×¸²ÀÚµÚ·Î ¼ûÀ¸·Á ÇÕ´Ï´Ù. +바닥ì—�서 발견한것: ìž‘ì�€ ì¹¼, 가방. +: ì¹¼ 숨겨 +당신ì�€ ì¹¼ì�„ 숨기려 합니다. +: ë´� +바닥ì—�서 발견한것: 가방. +: 숨겨 +당신ì�€ 그림ìž�뒤로 숨으려 합니다. diff --git a/help/help.27 b/help/help.27 index 0bbf2f0a..728ef219 100644 --- a/help/help.27 +++ b/help/help.27 @@ -1,26 +1,26 @@ -µµ¿ò¸»: - <»óÅÂ> ¼³Á¤ +ë�„움ë§�: + <ìƒ�태> 설정 -´ÙÀ½ »óŸ¦ ¼³Á¤ÇÒ¼ö ÀÖ½À´Ï´Ù.: +다ì�Œ ìƒ�태를 설정할수 있습니다.: -Àâ´ãµè±â Àâ´ãµéÀ» µèÁö ¾Ê½À´Ï´Ù. -À̾߱âµè±â °³ÀÎÀûÀÎ À̾߱⸦ µèÁö ¾Ê½À´Ï´Ù. -Ãà¾à °á°ú°¡ °£´ÜÈ÷ ³ª¿É´Ï´Ù. -¹æÀ̸§ ¹æÀ̸§À» º¸Áö ¾Ê½À´Ï´Ù. -°£´Ü ¹æÀÇ °£´ÜÇÑ ¼³¸íÀ» º¾´Ï´Ù. -ÀÏ¹Ý ¹æÀÇ ÀÚ¼¼ÇÑ ¼³¸íÀ» º¾´Ï´Ù -µµ¸Á¼öÄ¡ <ü·Â> µµ¸Á°¡´Â ü·ÂÄ¡¸¦ ¼³Á¤ÇÕ´Ï´Ù. -»óÅ ´ç½ÅÀÇ »óŸ¦ º¸¿©ÁÝ´Ï´Ù. -»ö ´ç½ÅÀÇ Å͹̳¯ÀÌ °¡´ÉÇϸé Ä®¶ó°¡ ³ª¿É´Ï´Ù. -¹àÀº»ö »ö ¼³Á¤ÀÌ µÈ »óÅ¿¡¼­ »ç¿ëÇÏ¸é ¹àÀº»öÀ¸·Î ³ª¿É´Ï´Ù. -¼Òȯ°ÅºÎ ´Ù¸¥ »ç¶÷ÀÌ ¼ÒȯÇÏ´Â°É °ÅºÎÇÕ´Ï´Ù. -¹ÝÇâ ´ç½ÅÀÇ ¸Þ¼¼Áö°¡ ¹ÝÇâµË´Ï´Ù. -¼öµ¿°ø°Ý ¼öµ¿À¸·Î °ø°ÝÇÕ´Ï´Ù. +잡담듣기 잡담들ì�„ 듣지 않습니다. +ì�´ì•¼ê¸°ë“£ê¸° ê°œì�¸ì �ì�¸ ì�´ì•¼ê¸°ë¥¼ 듣지 않습니다. +축약 결과가 간단히 나옵니다. +ë°©ì�´ë¦„ ë°©ì�´ë¦„ì�„ ë³´ì§€ 않습니다. +간단 ë°©ì�˜ 간단한 설명ì�„ 봅니다. +ì�¼ë°˜ ë°©ì�˜ ìž�세한 설명ì�„ 봅니다 +ë�„ë§�수치 <ì²´ë ¥> ë�„ë§�가는 체력치를 설정합니다. +ìƒ�태 당신ì�˜ ìƒ�태를 ë³´ì—¬ì¤�니다. +색 당신ì�˜ 터미날ì�´ 가능하면 ì¹¼ë�¼ê°€ 나옵니다. +ë°�ì�€ìƒ‰ 색 설정ì�´ ë�œ ìƒ�태ì—�서 사용하면 ë°�ì�€ìƒ‰ìœ¼ë¡œ 나옵니다. +소환거부 다른 사람ì�´ 소환하는걸 거부합니다. +반향 당신ì�˜ 메세지가 반향ë�©ë‹ˆë‹¤. +수ë�™ê³µê²© 수ë�™ìœ¼ë¡œ 공격합니다. -¿¹ +예 -: Ãà¾à ¼³Á¤ -¼³¸íÀÌ °£´ÜÈ÷ ³ª¿É´Ï´Ù. -: Ãà¾à ÇØÁ¦ -Ãà¾à ¼³¸íÀ» ÇØÁ¦ÇÕ´Ï´Ù. +: 축약 설정 +설명ì�´ 간단히 나옵니다. +: 축약 í•´ì œ +축약 설명ì�„ 해제합니다. diff --git a/help/help.28 b/help/help.28 index b4b941b6..ed78cd9e 100644 --- a/help/help.28 +++ b/help/help.28 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - <»óÅÂ> ÇØÁ¦ +ë�„움ë§�: + <ìƒ�태> í•´ì œ -ÀÚ¼¼ÇÑ »çÇ×Àº '¼³Á¤'À» ÂüÁ¶Çϼ¼¿ä +ìž�세한 사항ì�€ '설정'ì�„ 참조하세요 diff --git a/help/help.29 b/help/help.29 index 8be58447..7c66db52 100644 --- a/help/help.29 +++ b/help/help.29 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - <¹®Àå> ¿ÜÃÄ +ë�„움ë§�: + <문장> 외ì³� -'¿ÜÃÄ'´Â ±Ùó¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô ´ç½ÅÀÇ Àǻ縦 Àü´ÞÇÒ¼ö ÀÖ½À´Ï´Ù. -±×·¯³ª ±«¹°ÀÌ µè°í Á¢±ÙÇÒ¼öµµ ÀÖ½À´Ï´Ù. +'외ì³�'는 근처ì—� 있는 사람들ì—�게 당신ì�˜ ì�˜ì‚¬ë¥¼ 전달할수 있습니다. +그러나 괴물ì�´ 듣고 접근할수ë�„ 있습니다. diff --git a/help/help.3 b/help/help.3 index a77db5f4..e1d4634e 100644 --- a/help/help.3 +++ b/help/help.3 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ³¡ - ¸¶Ä§ +ë�„움ë§�: + ë�� + 마침 -°ÔÀÓÀ» ³¡³À´Ï´Ù. +게임ì�„ ë��냅니다. diff --git a/help/help.30 b/help/help.30 index 4b86f129..c93de3a6 100644 --- a/help/help.30 +++ b/help/help.30 @@ -1,11 +1,11 @@ -µµ¿ò¸»: - <Ãⱸ/¹®> [#] °¡ - <Ãⱸ/¹®> [#] À̵¿ +ë�„움ë§�: + <출구/문> [#] ê°€ + <출구/문> [#] ì�´ë�™ -ƯÁ¤ Àå¼Ò·Î À̵¿Çϰųª ÀÔ±¸·Î µé¾î°©´Ï´Ù. +특정 장소로 ì�´ë�™í•˜ê±°ë‚˜ 입구로 들어갑니다. -¿¹: +예: -Ãⱸ: ¹®, ±æ. -: ±æ °¡ +출구: 문, 길. +: 길 ê°€ diff --git a/help/help.32 b/help/help.32 index 2b08b389..79c94b69 100644 --- a/help/help.32 +++ b/help/help.32 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - <Ãⱸ/¹®> [#] ´Ý¾Æ - <Ãⱸ/¹®> [#] ¸·¾Æ +ë�„움ë§�: + <출구/문> [#] ë‹«ì•„ + <출구/문> [#] 막아 -'´Ý¾Æ'´Â ¿­·ÁÀÖ´Â ¹®À» ´Ý´Â´Ù. +'ë‹«ì•„'는 열려있는 문ì�„ 닫는다. diff --git a/help/help.33 b/help/help.33 index ca7cffe8..fcf392ce 100644 --- a/help/help.33 +++ b/help/help.33 @@ -1,13 +1,13 @@ -µµ¿ò¸»: - <Ãⱸ/¹®> [#] <¿­¼è> [#] Ç®¾î +ë�„움ë§�: + <출구/문> [#] <열쇠> [#] 풀어 -'Ç®¾î'´Â Àá±ä¹®À» ¿­¼è·Î Ǭ´Ù. +'풀어'는 잠긴문ì�„ 열쇠로 푼다. -¿¹: +예: -Ãⱸ: ö´ë¹®. -: Àåºñ -´ç½ÅÀÇ ¼ÒÁöǰ: Àº ¿­¼è, ö ¿­¼è, »ó¾Æ ¿­¼è. -: ¹® ¿­¼è 2 Ç®¾î -´ç½ÅÀº ö´ë¹®À» Ç®¾ú½À´Ï´Ù. +출구: 철대문. +: 장비 +당신ì�˜ 소지품: ì�€ 열쇠, ì²  열쇠, ìƒ�ì•„ 열쇠. +: 문 열쇠 2 풀어 +당신ì�€ 철대문ì�„ 풀었습니다. diff --git a/help/help.34 b/help/help.34 index 9a22ed52..79da9d17 100644 --- a/help/help.34 +++ b/help/help.34 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - <Ãⱸ/¹®> [#] [with] <¿­¼è> [#] Àá±Å +ë�„움ë§�: + <출구/문> [#] [with] <열쇠> [#] 잠궈 -'Àá±Å'´Â ¿­¸° ¹®À» ¿­¼è·Î Àá±Þ´Ï´Ù. +'잠궈'는 열린 문ì�„ 열쇠로 잠급니다. diff --git a/help/help.35 b/help/help.35 index 26265820..26b6042d 100644 --- a/help/help.35 +++ b/help/help.35 @@ -1,8 +1,8 @@ -µµ¿ò¸»: - <Ãⱸ/¹®> [#] µû +ë�„움ë§�: + <출구/문> [#] ë”° -'µû'´Â µµµÏÀÌ Àá±ä¹®À» ¿­¼è¾øÀÌ µû´Â ¸í·ÉÀÔ´Ï´Ù. -·¹º§ÀÌ ³ôÀ»¼ö·Ï ¼º°øÈ®·üÀÌ ³ô½À´Ï´Ù. +'ë”°'는 ë�„ë‘‘ì�´ 잠긴문ì�„ 열쇠없ì�´ 따는 명령입니다. +레벨ì�´ 높ì�„수ë¡� 성공확률ì�´ 높습니다. diff --git a/help/help.36 b/help/help.36 index 30844215..fc70e316 100644 --- a/help/help.36 +++ b/help/help.36 @@ -1,10 +1,10 @@ -µµ¿ò¸»: - <¹°°Ç> [from] <ŸÀÎ/±«¹°> [#] ÈÉÃÄ +ë�„움ë§�: + <물건> [from] <타ì�¸/괴물> [#] í›”ì³� -µµµÏ°ú ´ÑÀÚµéÀº ±«¹°À̳ª ´Ù¸¥ »ç¶÷µé·ÎºÎÅÍ ¹°°ÇÀ» ÈÉÄ¥¼ö ÀÖ½À´Ï´Ù. -¸¸¾à ¼º°øÀûÀÌ¸é ´ë»óÀÌ ¸ð¸£°Ô ¹°°ÇÀ» ÈÉÄ¥¼ö ÀÖ½À´Ï´Ù. -½ÇÆÐÇÏ¸é »ó´ë¿¡°Ô ¾Ë·ÁÁö°Ô µË´Ï´Ù. +ë�„ë‘‘ê³¼ 닌ìž�들ì�€ 괴물ì�´ë‚˜ 다른 사람들로부터 물건ì�„ 훔칠수 있습니다. +만약 성공ì �ì�´ë©´ 대ìƒ�ì�´ 모르게 물건ì�„ 훔칠수 있습니다. +실패하면 ìƒ�대ì—�게 알려지게 ë�©ë‹ˆë‹¤. -°æ°í : ´Ù¸¥ »ç¶÷ÀÇ ¹°°ÇÀ» ÈÉÄ¡´Â°ÍÀÌ ³²¿ëµÇ¸é ÈÉÄ¡´Â ±â¼úÀ» - ÀÒ°Ô µË´Ï´Ù. +경고 : 다른 사람ì�˜ 물건ì�„ 훔치는것ì�´ 남용ë�˜ë©´ 훔치는 기술ì�„ + 잃게 ë�©ë‹ˆë‹¤. diff --git a/help/help.37 b/help/help.37 index b620f7ff..d4e4eac5 100644 --- a/help/help.37 +++ b/help/help.37 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - µµ¸Á +ë�„움ë§�: + ë�„ë§� -'µµ¸Á'Àº ±«¹°µé·Î ºÎÅÍ ½É°¢ÇÑ ÇÇÇØ¸¦ ÀÔ¾úÀ»¶§ ÇÇÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. -±×·¯³ª ¾î¶² ±«¹°Àº Ãⱸ¸¦ ¸·°í ÀÖ´Â °æ¿ìµµ ÀÖ½À´Ï´Ù. -¶ÇÇÑ ¹«±â¸¦ ¶³¾î¶ß¸®°í °¡±âµµ ÇÕ´Ï´Ù. +'ë�„ë§�'ì�€ 괴물들로 부터 심ê°�한 피해를 ìž…ì—ˆì�„때 피하는 명령입니다. +그러나 ì–´ë–¤ 괴물ì�€ 출구를 막고 있는 경우ë�„ 있습니다. +ë˜�한 무기를 떨어뜨리고 가기ë�„ 합니다. diff --git a/help/help.38 b/help/help.38 index d601ca71..9edcecee 100644 --- a/help/help.38 +++ b/help/help.38 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <ÁÖ¼ú> <´ë»ó> [#] ÁÖ¹® +ë�„움ë§�: + <주술> <대ìƒ�> [#] 주문 -'ÁÖ¹®'Àº µÎ·ç¸¶±â·ÎºÎÅÍ ¹è¿î ÁÖ¹®À» »ç¿ëÇÏ´Â ¸í·ÉÀÔ´Ï´Ù -¸ðµç Á÷¾÷ÀÌ ÁÖ¹®À» »ç¿ëÇÒ¼ö ÀÖÁö¸¸ ƯÁ¤Á÷¾÷µéÀÌ ÈξÀ ´õ -Àß »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù. +'주문'ì�€ ë‘�루마기로부터 ë°°ìš´ 주문ì�„ 사용하는 명령입니다 +모든 ì§�ì—…ì�´ 주문ì�„ 사용할수 있지만 특정ì§�업들ì�´ 훨씬 ë�” +잘 사용할수 있습니다. diff --git a/help/help.39 b/help/help.39 index 02122933..20151fe7 100644 --- a/help/help.39 +++ b/help/help.39 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <¹°°Ç> [#] ¿¬¸¶ - <¹°°Ç> [#] ¹è¿ö +ë�„움ë§�: + <물건> [#] 연마 + <물건> [#] 배워 -'¿¬¸¶'´Â µÎ·ç¸¶±â·ÎºÎÅÍ ÁÖ¹®À» ¹è¿ì´Â ¸í·ÉÀÔ´Ï´Ù. -ÁÖ¹®À» ÀÐÀº µÎ·ç¸¶±â´Â »ç¶óÁý´Ï´Ù. +'연마'는 ë‘�루마기로부터 주문ì�„ 배우는 명령입니다. +주문ì�„ ì�½ì�€ ë‘�루마기는 사ë�¼ì§‘니다. -¿¹: +예: -´ç½ÅÀÇ ¼ÒÁöǰ: ȸ»ö µÎ·ç¸¶±â, °ËÀº µÎ·ç¸¶±â. -:µÎ·ç¸¶±â 2 ¹è¿ö -´ç½ÅÀº Ä¡·áÁÖ¼úÀ» ¹è¿ü½À´Ï´Ù. -°ËÀº µÎ·ç¸¶±â°¡ »ç¶óÁ³½À´Ï´Ù. +당신ì�˜ 소지품: 회색 ë‘�루마기, ê²€ì�€ ë‘�루마기. +:ë‘�루마기 2 배워 +당신ì�€ 치료주술ì�„ 배웠습니다. +ê²€ì�€ ë‘�루마기가 사ë�¼ì¡ŒìŠµë‹ˆë‹¤. diff --git a/help/help.4 b/help/help.4 index 0dd510d6..65d18238 100644 --- a/help/help.4 +++ b/help/help.4 @@ -1,10 +1,10 @@ -µµ¿ò¸»: - <¹®Àå> ¸» - <¹®Àå> " - <¹®Àå> ' - <¹®Àå> ? - <¹®Àå> . +ë�„움ë§�: + <문장> ë§� + <문장> " + <문장> ' + <문장> ? + <문장> . -'¸»ÇØ'´Â °°Àº ¹æ¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô Àǻ縦 Àü´ÞÇÕ´Ï´Ù. +'ë§�í•´'는 ê°™ì�€ ë°©ì—� 있는 사람들ì—�게 ì�˜ì‚¬ë¥¼ 전달합니다. diff --git a/help/help.40 b/help/help.40 index 63fb8b33..584a71bb 100644 --- a/help/help.40 +++ b/help/help.40 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <¹°°Ç> [#] [on] [<´ë»ó> [#]] Àоî - <¹°°Ç> [#] [on] [<´ë»ó> [#]] ¿Ü¿ö +ë�„움ë§�: + <물건> [#] [on] [<대ìƒ�> [#]] ì�½ì–´ + <물건> [#] [on] [<대ìƒ�> [#]] 외워 -'Àоî'´Â µÎ·ç¸¶±â¸¦ Àо ÁÖ¼úÀ» »ç¿ëÇÕ´Ï´Ù. -±×·¯³ª ±× ÁÖ¼úÀ» ¹è¿ï¼ö´Â ¾ø½À´Ï´Ù. +'ì�½ì–´'는 ë‘�루마기를 ì�½ì–´ì„œ 주술ì�„ 사용합니다. +그러나 ê·¸ 주술ì�„ 배울수는 없습니다. -¿¹: +예: -´ç½ÅÀÇ ¼ÒÁöǰ: °ËÀº µÎ·ç¸¶±â. -: µÎ·ç¸¶±â on °³ Àоî -´ç½ÅÀº °³¿¡°Ô Ä¡·áÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù. -°ËÀº µÎ·ç¸¶±â°¡ »ç¶óÁ³½À´Ï´Ù. +당신ì�˜ 소지품: ê²€ì�€ ë‘�루마기. +: ë‘�루마기 on ê°œ ì�½ì–´ +당신ì�€ ê°œì—�게 치료주문ì�„ 외웠습니다. +ê²€ì�€ ë‘�루마기가 사ë�¼ì¡ŒìŠµë‹ˆë‹¤. diff --git a/help/help.41 b/help/help.41 index 7b44791f..c2b973c6 100644 --- a/help/help.41 +++ b/help/help.41 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - ǰ¸ñ +ë�„움ë§�: + 품목 -'ǰ¸ñ'Àº »óÁ¡¿¡¼­ »óǰÀÇ °¡°Ý°ú ¸®½ºÆ®¸¦ º¸¿©ÁÝ´Ï´Ù. +'품목'ì�€ ìƒ�ì �ì—�서 ìƒ�í’ˆì�˜ 가격과 리스트를 ë³´ì—¬ì¤�니다. diff --git a/help/help.42 b/help/help.42 index 81f720cd..0f39dfe9 100644 --- a/help/help.42 +++ b/help/help.42 @@ -1,15 +1,15 @@ -µµ¿ò¸»: - <¹°°Ç> [#] »ç +ë�„움ë§�: + <물건> [#] 사 -'»ç'´Â »óÁ¡¿¡¼­ ¹°°ÇÀ» »ì¶§ »ç¿ëµË´Ï´Ù. -°¡Á× ±¸µÎ °¡Á× ¸ðÀÚ µîÀÌ ÀÖÀ»¶§ '°¡Á× »ç' ÇÏ¸é ¾ÊµÇ°í -'±¸µÎ »ç' '¸ðÀÚ »ç'¸¦ ÇÏ¼Å¾ß ÇÕ´Ï´Ù. +'사'는 ìƒ�ì �ì—�서 물건ì�„ 살때 사용ë�©ë‹ˆë‹¤. +가죽 구ë‘� 가죽 모ìž� 등ì�´ 있ì�„때 '가죽 사' 하면 않ë�˜ê³  +'구ë‘� 사' '모ìž� 사'를 하셔야 합니다. -¿¹: -: ǰ¸ñ -»óǰµé: - °¡Á× ¸ðÀÚ °¡°Ý: 3 - °¡Á× ±¸µÎ °¡°Ý: 2 -: ¸ðÀÚ »ç -´ç½ÅÀº °¡Á× ¸ðÀÚ¸¦ »ò½À´Ï´Ù. +예: +: 품목 +ìƒ�품들: + 가죽 모ìž� 가격: 3 + 가죽 구ë‘� 가격: 2 +: 모ìž� 사 +당신ì�€ 가죽 모ìž�를 샀습니다. diff --git a/help/help.43 b/help/help.43 index 3b8d588f..36d28659 100644 --- a/help/help.43 +++ b/help/help.43 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - <¹°°Ç> [#] ÆÈ¾Æ +ë�„움ë§�: + <물건> [#] 팔아 -'ÆÈ¾Æ'´Â Áß°í»ó¿¡¼­ ¹°°ÇÀ» ÆÈ¼öÀÖ´Â ¸í·ÉÀÔ´Ï´Ù. -´ç½ÅÀº '°¡Ä¡'·Î ¹°°ÇÀ» °¨Á¤ÇÒ¼ö ÀÖ½À´Ï´Ù. +'팔아'는 중고ìƒ�ì—�서 물건ì�„ 팔수있는 명령입니다. +당신ì�€ '가치'로 물건ì�„ ê°�정할수 있습니다. diff --git a/help/help.44 b/help/help.44 index dbfee2eb..a9a95aa2 100644 --- a/help/help.44 +++ b/help/help.44 @@ -1,8 +1,8 @@ -µµ¿ò¸»: - <¹°°Ç> [#] °¡Ä¡ - <¹°°Ç> [#] °¡°Ý +ë�„움ë§�: + <물건> [#] 가치 + <물건> [#] 가격 -'°¡Ä¡'´Â Áß°í»óÁ¡¿¡¼­¸¸ ÀÛµ¿ÇÕ´Ï´Ù. -¹°°ÇÀÇ °¡Ä¡¸¦ »óÁ¡ ÁÖÀο¡°Ô ¹°¾îº¸´Â ±â´ÉÀÔ´Ï´Ù. -¼ö¸®Á¡¿¡¼­´Â ¼ö¸®ºñ¸¦ ¾Ë¾Æº¸´Âµ¥ »ç¿ëµË´Ï´Ù. +'가치'는 중고ìƒ�ì �ì—�서만 ìž‘ë�™í•©ë‹ˆë‹¤. +물건ì�˜ 가치를 ìƒ�ì � 주ì�¸ì—�게 물어보는 기능입니다. +수리ì �ì—�서는 수리비를 알아보는ë�° 사용ë�©ë‹ˆë‹¤. diff --git a/help/help.45 b/help/help.45 index 39423444..4a22c67e 100644 --- a/help/help.45 +++ b/help/help.45 @@ -1,8 +1,8 @@ -µµ¿ò¸»: - [#] ±â½À +ë�„움ë§�: + [#] 기습 -'±â½À'Àº ´ÑÀÚ¿Í µµµÏ¸¸ °¡´ÉÇÑ ±â¼úÀÔ´Ï´Ù. -³¯Ä«·Ó°Å³ª Â´Â ¹«±â¸¦ ÀåÂøÇϰí ÀÖÀ»¶§ ´õ¿í ¸¹Àº ÇÇÇØ¸¦ -ÁÙ¼ö ÀÖ½À´Ï´Ù. ±â½ÀÀ» ÇϱâÀ§Çؼ± ¹Ýµå½Ã ¼û¾î ÀÖ¾î¾ß ÇÕ´Ï´Ù. -ÀüÅõ ½ÃÀ۽ÿ¡¸¸ »ç¿ëÀÌ °¡´ÉÇÕ´Ï´Ù. +'기습'ì�€ 닌ìž�와 ë�„ë‘‘ë§Œ 가능한 기술입니다. +날카롭거나 찌르는 무기를 장착하고 있ì�„때 ë�”ìš± ë§Žì�€ 피해를 +줄수 있습니다. 기습ì�„ 하기위해선 반드시 숨어 있어야 합니다. +전투 시작시ì—�ë§Œ 사용ì�´ 가능합니다. diff --git a/help/help.46 b/help/help.46 index 7a46b9d3..5f075115 100644 --- a/help/help.46 +++ b/help/help.46 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - ¼ö·Ã +ë�„움ë§�: + 수련 -'¼ö·Ã'Àº ÃæºÐÇÑ °æÇèÀ» ½×¾ÒÀ»¶§ ·¹º§À» ¿Ã¸®´Âµ¥ »ç¿ëµË´Ï´Ù. -°¢ Á÷¾÷Àº °¢±â ¼ö·ÃÀå¿¡¼­ ¼ö·ÃÀ» ÇØ¾ßÇÕ´Ï´Ù. +'수련'ì�€ 충분한 경험ì�„ 쌓았ì�„때 레벨ì�„ 올리는ë�° 사용ë�©ë‹ˆë‹¤. +ê°� ì§�ì—…ì�€ ê°�기 수련장ì—�서 수련ì�„ 해야합니다. diff --git a/help/help.47 b/help/help.47 index 3e87c781..6ba00511 100644 --- a/help/help.47 +++ b/help/help.47 @@ -1,12 +1,12 @@ -µµ¿ò¸»: - <¹°°Ç> [#] <ŸÀÎ/±«¹°> [#] Áà - <¾×¼ö>³É <ŸÀÎ/±«¹°> [#] Áà +ë�„움ë§�: + <물건> [#] <타ì�¸/괴물> [#] 줘 + <액수>냥 <타ì�¸/괴물> [#] 줘 -'Áà'´Â ¹°°ÇÀ̳ª µ·À» »ó´ë¿¡°Ô ÁÙ¶§ »ç¿ëµË´Ï´Ù. +'줘'는 물건ì�´ë‚˜ ë�ˆì�„ ìƒ�대ì—�게 줄때 사용ë�©ë‹ˆë‹¤. -¿¹: -: Ä® ŸÀÌ Áà -´ç½ÅÀº Ä®À» ŸÀÌ¿¡°Ô ÁÖ¾ú½À´Ï´Ù. -: 100³É ŸÀÌ Áà -´ç½ÅÀº 100¿øÀ» ŸÀÌ¿¡°Ô ÁÖ¾ú½À´Ï´Ù. +예: +: ì¹¼ 타ì�´ 줘 +당신ì�€ ì¹¼ì�„ 타ì�´ì—�게 주었습니다. +: 100냥 타ì�´ 줘 +당신ì�€ 100ì›�ì�„ 타ì�´ì—�게 주었습니다. diff --git a/help/help.48 b/help/help.48 index c97cb54b..02d45061 100644 --- a/help/help.48 +++ b/help/help.48 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - <¹°°Ç> [#] ¼ö¸® +ë�„움ë§�: + <물건> [#] 수리 -'¼ö¸®'´Â ¼ö¸®»óÁ¡¿¡¼­ °íÀå³­ ¹°°ÇÀ» ¼ö¸®ÇÒ¶§ ¾²ÀÔ´Ï´Ù. -°¡²û ¹°°ÇÀÌ ¹Ú»ì³¯¼öµµ ÀÖ½À´Ï´Ù. +'수리'는 수리ìƒ�ì �ì—�서 고장난 물건ì�„ 수리할때 쓰입니다. +ê°€ë�” 물건ì�´ 박살날수ë�„ 있습니다. diff --git a/help/help.49 b/help/help.49 index b19edafe..6aeeedf0 100644 --- a/help/help.49 +++ b/help/help.49 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - ½Ã°£ +ë�„움ë§�: + 시간 -ÇöÀç ½Ã°£À» º¸¿©ÁÝ´Ï´Ù. +현재 시간ì�„ ë³´ì—¬ì¤�니다. diff --git a/help/help.5 b/help/help.5 index cd52b0a4..b1c90be6 100644 --- a/help/help.5 +++ b/help/help.5 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <¹°°Ç> [#] [<¹°°Ç> [#]] °¡Á® - <¹°°Ç> [#] [<¹°°Ç> [#]] ÁÖ¿ö +ë�„움ë§�: + <물건> [#] [<물건> [#]] 가져 + <물건> [#] [<물건> [#]] 주워 -'°¡Á®'´Â ¹°°ÇÀ» ¾îµð¼­ Áݰųª °¡Áú¶§ »ç¿ëµË´Ï´Ù. -´ã´Â°ÍÀ¸·Î ºÎÅÍ ²¨³¾¶§µµ »ç¿ëµÇ¸ç ¸ðµÎ¶ó°í ºÙÀÌ¸é ¸ðµç ¹°°ÇÀ» -ÁݽÀ´Ï´Ù. +'가져'는 물건ì�„ 어디서 ì¤�거나 가질때 사용ë�©ë‹ˆë‹¤. +담는것으로 부터 꺼낼때ë�„ 사용ë�˜ë©° 모ë‘�ë�¼ê³  ë¶™ì�´ë©´ 모든 물건ì�„ +ì¤�습니다. -¿¹: +예: -¹Ù´Ú¿¡ °¡¹æÀÌ ÀÖ½À´Ï´Ù. -: ¸ðµÎ °¡¹æ ÁÖ¿ö -´ç½ÅÀº Ã¥, ¿¬ÇÊ, °øÃ¥À» ÁÖ¿ü½À´Ï´Ù. +바닥ì—� 가방ì�´ 있습니다. +: 모ë‘� 가방 주워 +당신ì�€ ì±…, ì—°í•„, 공책ì�„ 주웠습니다. diff --git a/help/help.50 b/help/help.50 index 1b33a950..e23f2894 100644 --- a/help/help.50 +++ b/help/help.50 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <ŸÀÎ/±«¹°> [#] ±³¶õ +ë�„움ë§�: + <타ì�¸/괴물> [#] êµ�란 -'±³¶õ'Àº °Ë»ç¿Í ±Ç¹ý°¡°¡ ÀûÀ» È¥¶õ¿¡ ºü¶ß¸±¶§ »ç¿ëµË´Ï´Ù. -È¥¶õµÇ ±«¹°Àº Àá½Ã °ø°ÝÀ» ¸øÇÕ´Ï´Ù. -±×·ì¿¡ À¯¿ëÇÕ´Ï´Ù. +'êµ�란'ì�€ 검사와 권법가가 ì �ì�„ 혼란ì—� 빠뜨릴때 사용ë�©ë‹ˆë‹¤. +혼란ë�˜ 괴물ì�€ 잠시 공격ì�„ 못합니다. +그룹ì—� 유용합니다. diff --git a/help/help.51 b/help/help.51 index c31d1fe9..b2b5a0ce 100644 --- a/help/help.51 +++ b/help/help.51 @@ -1,8 +1,8 @@ -µµ¿ò¸»: - <ŸÀÎ/±«¹°> [#] ¸Í°ø +ë�„움ë§�: + <타ì�¸/괴물> [#] 맹공 -'¸Í°ø'Àº ±â¸¦ ¸ð¾Æ »ó´ë¸¦ °­ÇÑ Å¸°ÝÀ¸·Î ¶¥¿¡ ¾²·¯¶ß¸³´Ï´Ù. -°Ë»ç´Â ¾àµÎ¹èÀÇ Å¸°Ý ±Ç¹ý°¡´Â ¸Ç¼ÕÀÌ¸é °æ¿ì¿¡ µû¶ó ¿©¼¸¹èÀÇ -Ÿ°ÝÀ» °¡ÇÕ´Ï´Ù. -ÀüÅõ Ãʱ⿡ È¿°úÀûÀÔ´Ï´Ù. +'맹공'ì�€ 기를 모아 ìƒ�대를 강한 타격으로 ë•…ì—� 쓰러뜨립니다. +검사는 약ë‘�ë°°ì�˜ 타격 권법가는 맨ì†�ì�´ë©´ 경우ì—� ë”°ë�¼ 여섯배ì�˜ +타격ì�„ 가합니다. +전투 초기ì—� 효과ì �입니다. diff --git a/help/help.52 b/help/help.52 index 37bbd4fa..e71c4f6d 100644 --- a/help/help.52 +++ b/help/help.52 @@ -1,4 +1,4 @@ -µµ¿ò¸»: - ÀúÀå +ë�„움ë§�: + 저장 -'ÀúÀå'Àº´ç½ÅÀÇ ÀڷḦ ÀúÀåÇÕ´Ï´Ù. +'저장'ì�€ë‹¹ì‹ ì�˜ ìž�료를 저장합니다. diff --git a/help/help.53 b/help/help.53 index 2f69e3d3..ffd547b0 100644 --- a/help/help.53 +++ b/help/help.53 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ÆíÁöº¸³»±â - ÆíÁö¹Þ±â - ÆíÁö»èÁ¦ +ë�„움ë§�: + 편지보내기 + 편지받기 + 편지삭제 -À̵éÀº ¿ìü±¹¿¡¼­ ÆíÁö¸¦ º¸³¾¶§ »ç¿ëÇÕ´Ï´Ù. +ì�´ë“¤ì�€ ìš°ì²´êµ­ì—�서 편지를 보낼때 사용합니다. diff --git a/help/help.54 b/help/help.54 index 2f69e3d3..ffd547b0 100644 --- a/help/help.54 +++ b/help/help.54 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ÆíÁöº¸³»±â - ÆíÁö¹Þ±â - ÆíÁö»èÁ¦ +ë�„움ë§�: + 편지보내기 + 편지받기 + 편지삭제 -À̵éÀº ¿ìü±¹¿¡¼­ ÆíÁö¸¦ º¸³¾¶§ »ç¿ëÇÕ´Ï´Ù. +ì�´ë“¤ì�€ ìš°ì²´êµ­ì—�서 편지를 보낼때 사용합니다. diff --git a/help/help.55 b/help/help.55 index 2f69e3d3..ffd547b0 100644 --- a/help/help.55 +++ b/help/help.55 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ÆíÁöº¸³»±â - ÆíÁö¹Þ±â - ÆíÁö»èÁ¦ +ë�„움ë§�: + 편지보내기 + 편지받기 + 편지삭제 -À̵éÀº ¿ìü±¹¿¡¼­ ÆíÁö¸¦ º¸³¾¶§ »ç¿ëÇÕ´Ï´Ù. +ì�´ë“¤ì�€ ìš°ì²´êµ­ì—�서 편지를 보낼때 사용합니다. diff --git a/help/help.56 b/help/help.56 index 27cdf610..6f7f71ff 100644 --- a/help/help.56 +++ b/help/help.56 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <±«¹°> [#] <´Ü¾î> ´ëÈ­ +ë�„움ë§�: + <괴물> [#] <단어> 대화 -'´ëÈ­'´Â ƯÁ¤ ±«¹°µé°ú À̾߱⸦ ÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. -ÀûÀýÇÑ ¸»À» Çϸé Áß¿äÇÑ Á¤º¸¸¦ Á¦°øÇÏ´Â ±«¹°ÀÌ ÀÖ½À´Ï´Ù. -ÀÓ¹«¿¡ Áß¿äÇÑ ¿ªÈ°À» ÇÏ´Ï ´ëÈ­¸¦ Àß »ç¿ëÇм¼¿ä. +'대화'는 특정 괴물들과 ì�´ì•¼ê¸°ë¥¼ 하는 명령입니다. +ì �절한 ë§�ì�„ 하면 중요한 정보를 제공하는 괴물ì�´ 있습니다. +임무ì—� 중요한 역활ì�„ 하니 대화를 잘 사용학세요. -¿¹: +예: -: ¹Ùº¸ ´ëÈ­ -½ÄÃæÀ̰¡ "¾Æ~ '¹ä' ¸ÔÀÚ"¶ó°í ¸»ÇÕ´Ï´Ù. -: ¹Ùº¸ ¹ä ´ëÈ­ -½ÄÃæÀ̰¡ "³­ ¹è°íÇÁ´Ï À̸¸ °¡¾ß°Ú´Ù"¶ó°í ¸»ÇÕ´Ï´Ù. +: 바보 대화 +ì‹�ì¶©ì�´ê°€ "ì•„~ 'ë°¥' 먹ìž�"ë�¼ê³  ë§�합니다. +: 바보 ë°¥ 대화 +ì‹�ì¶©ì�´ê°€ "난 배고프니 ì�´ë§Œ 가야겠다"ë�¼ê³  ë§�합니다. diff --git a/help/help.57 b/help/help.57 index d2495a0f..ebde6fde 100644 --- a/help/help.57 +++ b/help/help.57 @@ -1,12 +1,12 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹®Àå> ±×·ì¸» + <문장> 그룹ë§� -°°Àº ±×·ì¿øµé³¢¸® À̾߱âÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. +ê°™ì�€ 그룹ì›�들ë�¼ë¦¬ ì�´ì•¼ê¸°í• ë•Œ 사용합니다. -¿¹: -:¾îµð·Î °¡Áö ±×·ì¸»? -### ŸÀ̰¡ ¾îµð·Î °¡Áö¶ó°í ¸»Çß½À´Ï´Ù. +예: +:어디로 가지 그룹ë§�? +### 타ì�´ê°€ 어디로 가지ë�¼ê³  ë§�했습니다. diff --git a/help/help.58 b/help/help.58 index 911bef39..8d5a9276 100644 --- a/help/help.58 +++ b/help/help.58 @@ -1,9 +1,9 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹°°Ç> ¸¶¼Å - <¹°°Ç> ¸Ô¾î + <물건> 마셔 + <물건> 먹어 -'¸Ô¾î'´Â ¾à°°Àº ¹°°ÇÀ» ¸Ô½À´Ï´Ù. +'먹어'는 약같ì�€ 물건ì�„ 먹습니다. diff --git a/help/help.59 b/help/help.59 index f4fdfb6f..3f216d9c 100644 --- a/help/help.59 +++ b/help/help.59 @@ -1,9 +1,9 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹®Àå> Àâ´ã + <문장> 잡담 -'Àâ´ã'Àº ¸ðµç »ç¶÷µé¿¡°Ô ÀÚ½ÅÀÇ Àǻ縦 ¾Ë¸³´Ï´Ù. -Àâ´ãÀ» Çϸé ÀÚ½ÅÀÇ Ã¼·ÂÀÌ ¾à°£ ´â½À´Ï´Ù. -¿¬¼ÓÇÏ¿© Àâ´ãÀ» ÇÏ½Ã¸é ±×¿¡ ºñ·ÊÇØ¼­ ¸¹ÀÌ ´â°Ô µÇ´Ï -Á¶½ÉÇϽʽÿä. +'잡담'ì�€ 모든 사람들ì—�게 ìž�ì‹ ì�˜ ì�˜ì‚¬ë¥¼ 알립니다. +잡담ì�„ 하면 ìž�ì‹ ì�˜ ì²´ë ¥ì�´ 약간 닳습니다. +ì—°ì†�하여 잡담ì�„ 하시면 ê·¸ì—� 비례해서 ë§Žì�´ 닳게 ë�˜ë‹ˆ +조심하십시요. diff --git a/help/help.6 b/help/help.6 index dca47a3e..907381da 100644 --- a/help/help.6 +++ b/help/help.6 @@ -1,11 +1,11 @@ -µµ¿ò¸»: - ¼ÒÁö +ë�„움ë§�: + 소지 -'¼ÒÁö'´Â ´ç½ÅÀÌ ÀÔ°íÀְųª °¡Áö°í Àִ ǰ¸ñÀ» º¸¿©ÁÝ´Ï´Ù. -º¸ÀÌÁö ¾Ê´Â ǰ¸ñÀº È­¸é¿¡ ³ªÅ¸³ªÁö ¾Ê½À´Ï´Ù. +'소지'는 당신ì�´ 입고있거나 가지고 있는 품목ì�„ ë³´ì—¬ì¤�니다. +ë³´ì�´ì§€ 않는 품목ì�€ 화면ì—� 나타나지 않습니다. -¿¹: +예: -:¼ÒÁö -´ç½ÅÀº ¸·´ë±â, Ã¥, ¹ÝÁö¸¦ °®°í ÀÖ½À´Ï´Ù. +:소지 +당신ì�€ 막대기, ì±…, 반지를 ê°–ê³  있습니다. diff --git a/help/help.60 b/help/help.60 index 8fea3e24..e9350266 100644 --- a/help/help.60 +++ b/help/help.60 @@ -1,13 +1,13 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹°°Ç> <±«¹°> »ç¿ë + <물건> <괴물> 사용 -¸¶¹ýÀÇ ¹°°ÇÀ¸·Î ±«¹°À» °ø°ÝÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. +마법ì�˜ 물건으로 괴물ì�„ 공격할때 사용합니다. -¿¹: -:µÎ·ç¸¶±â »ç¿ë -´ç½ÅÀº Ä¡·á¸¶¹ýÀ» »ç¿ëÇß½À´Ï´Ù. -ÁÖ¼ú·Î ÀÎÇØ 8µ¥¹ÌÁö¸¦ ÀÔ¾ú½À´Ï´Ù. +예: +:ë‘�루마기 사용 +당신ì�€ 치료마법ì�„ 사용했습니다. +주술로 ì�¸í•´ 8ë�°ë¯¸ì§€ë¥¼ 입었습니다. diff --git a/help/help.61 b/help/help.61 index c6f8e75b..1d6da2ec 100644 --- a/help/help.61 +++ b/help/help.61 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - ȯ¿µ + 환ì˜� -óÀ½ ¿À½Å ºÐ²² µµ¿ò¸»À» µå¸³´Ï´Ù. +처ì�Œ 오신 분께 ë�„움ë§�ì�„ 드립니다. diff --git a/help/help.62 b/help/help.62 index 0d178237..15d5eb7d 100644 --- a/help/help.62 +++ b/help/help.62 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - <±«¹°> [#] ¹æÈ¥¼ú +ë�„움ë§�: + <괴물> [#] 방혼술 -'¹æÈ¥¼ú'Àº ¹«»ç¿Í ºÒÁ¦ÀÚÀÇ Æ¯¼ö±â¼úÀÌ´Ù. -¹«´ý¿¡¼­ »ì¾Æ³­ ±«¹°µéÀ» °­ÇÑ ¸¶·ÂÀ¸·Î µÇµ¹¸°´Ù. +'방혼술'ì�€ 무사와 불제ìž�ì�˜ 특수기술ì�´ë‹¤. +무ë�¤ì—�서 살아난 괴물들ì�„ 강한 마력으로 ë�˜ë�Œë¦°ë‹¤. diff --git a/help/help.63 b/help/help.63 index 0d9c4183..e95fafef 100644 --- a/help/help.63 +++ b/help/help.63 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - < ÀºÇà¿¡¼­ÀÇ ¸í·É¾î > -º¸°ü¹° - ÀºÇà¿¡ º¸°üÇØµÐ ¹°°ÇÀÇ ¸®½ºÆ®¸¦ º¸´Â °ÍÀÔ´Ï´Ù. -[¹°°ÇÀ̸§] º¸°ü¹° - ¹°°ÇÀ» º¸°üÇÏ´Â °ÍÀÔ´Ï´Ù. -[¹°°ÇÀ̸§] ¹Þ¾Æ - ¹°°ÇÀ» ÀºÇàÀ¸·ÎºÎÅÍ ¹Þ´Â °ÍÀÔ´Ï´Ù. -ÀÜ¾× - ÀºÇàÀÇ ÀÜ°í¸¦ È®ÀÎÇÏ´Â °ÍÀÔ´Ï´Ù. -###³É ÀÔ±Ý - ÀºÇà¿¡ µ·À» ÀÔ±ÝÇÏ´Â °ÍÀÔ´Ï´Ù. -###³É Ãâ±Ý - ÀºÇà¿¡¼­ µ·À» Ãâ±ÝÇÏ´Â °ÍÀÔ´Ï´Ù. +ë�„움ë§�: + < ì�€í–‰ì—�서ì�˜ 명령어 > +보관물 + ì�€í–‰ì—� 보관해둔 물건ì�˜ 리스트를 보는 것입니다. +[물건ì�´ë¦„] 보관물 + 물건ì�„ 보관하는 것입니다. +[물건ì�´ë¦„] 받아 + 물건ì�„ ì�€í–‰ìœ¼ë¡œë¶€í„° 받는 것입니다. +잔액 + ì�€í–‰ì�˜ 잔고를 확ì�¸í•˜ëŠ” 것입니다. +###냥 입금 + ì�€í–‰ì—� ë�ˆì�„ 입금하는 것입니다. +###냥 출금 + ì�€í–‰ì—�서 ë�ˆì�„ 출금하는 것입니다. diff --git a/help/help.64 b/help/help.64 index 2d16c395..9603f5d7 100644 --- a/help/help.64 +++ b/help/help.64 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - Ȱº¸¹ý +ë�„움ë§�: + 활보법 -'Ȱº¸¹ý'Àº Æ÷Á¹ÀÇ Æ¯¼ö±â¼ú·Î½á ¹Îø¼ºÀ» ¿Ã·ÁÁÝ´Ï´Ù. -µû¶ó¼­ ÀüÅõ½Ã À¯¸®ÇÑ ¿òÁ÷ÀÓÀ¸·Î ¿òÁ÷Àϼö ÀÖ½À´Ï´Ù. +'활보법'ì�€ í�¬ì¡¸ì�˜ 특수기술로ì�¨ 민첩성ì�„ 올려ì¤�니다. +ë”°ë�¼ì„œ 전투시 유리한 움ì§�임으로 움ì§�ì�¼ìˆ˜ 있습니다. diff --git a/help/help.65 b/help/help.65 index 853260ff..a92f0e7b 100644 --- a/help/help.65 +++ b/help/help.65 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - ½Å¿ø¹ý +ë�„움ë§�: + ì‹ ì›�법 -'½Å¿ø¹ý'Àº ºÒÁ¦ÀÚ¿Í ¹«»çÀÇ Æ¯¼ö±â¼ú·Î ½Å¿¡°Ô ±â¿øÇÏ¿© -º¸È£¸¦ ¹Þ°íÀÚ ÇÒ¶§ »ç¿ëµÇ´Â ¸í·ÉÀÔ´Ï´Ù. +'ì‹ ì›�법'ì�€ 불제ìž�와 무사ì�˜ 특수기술로 ì‹ ì—�게 기ì›�하여 +보호를 받고ìž� 할때 사용ë�˜ëŠ” 명령입니다. diff --git a/help/help.66 b/help/help.66 index 2105ef1a..118e199c 100644 --- a/help/help.66 +++ b/help/help.66 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - °æ°è +ë�„움ë§�: + 경계 -'°æ°è'´Â ´ÙÀ½¹æ¿¡ ÇÔÁ¤ÀÌ ÀÖÀ»°æ¿ì ÁÖÀÇÇØ¼­ »ìÇÇ´Â ¸í·ÉÀÔ´Ï´Ù. -´É·Â¿¡ µû¶ó¼­ ¼º°øÀûÀ¸·Î ÇÔÁ¤À» ÇÇÇÒ¼öÀÖ½À´Ï´Ù. +'경계'는 다ì�Œë°©ì—� 함정ì�´ 있ì�„경우 주ì�˜í•´ì„œ 살피는 명령입니다. +능력ì—� ë”°ë�¼ì„œ 성공ì �으로 함정ì�„ 피할수있습니다. diff --git a/help/help.67 b/help/help.67 index 207fe19f..d9dd3a40 100644 --- a/help/help.67 +++ b/help/help.67 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹°°Ç> <´ë»ó> »ç¿ë + <물건> <대ìƒ�> 사용 -'»ç¿ë'Àº ¹°°ÇÀ» ´ë»ó¿¡°Ô »ç¿ëÇÕ´Ï´Ù. -´ë»óÀÌ »ý·«µÇ¸é Àڽſ¡°Ô »ç¿ëµË´Ï´Ù. +'사용'ì�€ 물건ì�„ 대ìƒ�ì—�게 사용합니다. +대ìƒ�ì�´ ìƒ�ëžµë�˜ë©´ ìž�ì‹ ì—�게 사용ë�©ë‹ˆë‹¤. diff --git a/help/help.68 b/help/help.68 index ee3d89d2..354ea09e 100644 --- a/help/help.68 +++ b/help/help.68 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - [ŸÀÎ] µè±â°ÅºÎ +ë�„움ë§�: + [타ì�¸] 듣기거부 -'µè±â°ÅºÎ'´Â ´©±º°¡ÀÇ À̾߱⸦ µè±â ½ÈÀ»¶§ »ç¿ëÇÕ´Ï´Ù. +'듣기거부'는 누군가ì�˜ ì�´ì•¼ê¸°ë¥¼ 듣기 ì‹«ì�„때 사용합니다. diff --git a/help/help.69 b/help/help.69 index e5923ac7..707aaed1 100644 --- a/help/help.69 +++ b/help/help.69 @@ -1,7 +1,7 @@ -µµ¿ò¸»: +ë�„움ë§�: - <´©±¸> »ç¿ëÀÚ°Ë»ö + <누구> 사용ìž�검색 -±×»ç¶÷¿¡ ´ëÇÑ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¾Ë¾Æº¾´Ï´Ù +그사람ì—� 대한 ìž�세한 정보를 알아봅니다 diff --git a/help/help.7 b/help/help.7 index 2199585f..8e1e2cf2 100644 --- a/help/help.7 +++ b/help/help.7 @@ -1,11 +1,11 @@ -µµ¿ò¸»: - <¹°°Ç> [#] [in] [<¹°°Ç> [#]] ¹ö·Á - <¹°°Ç> [#] [in] [<¹°°Ç> [#]] ³Ö¾î +ë�„움ë§�: + <물건> [#] [in] [<물건> [#]] 버려 + <물건> [#] [in] [<물건> [#]] 넣어 -'³Ö¾î'´Â ´ç½ÅÀÇ ¼ÒÁöǰÀ» ¹Ù´Ú¿¡ ¹ö¸®°Å³ª ´ë»ó¿¡ ³ÖÀ»¶§ »ç¿ëµË´Ï´Ù. +'넣어'는 당신ì�˜ 소지품ì�„ 바닥ì—� 버리거나 대ìƒ�ì—� ë„£ì�„때 사용ë�©ë‹ˆë‹¤. -¿¹: +예: -:Ã¥ 3 in °¡¹æ 2 ³Ö¾î -´ç½ÅÀº °¡¹æ¿¡ Ã¥À» ³Ö¾ú½À´Ï´Ù. +:ì±… 3 in 가방 2 넣어 +당신ì�€ 가방ì—� ì±…ì�„ 넣었습니다. diff --git a/help/help.70 b/help/help.70 index 4897bde5..a79d907d 100644 --- a/help/help.70 +++ b/help/help.70 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¸»ÇÒ³»¿ë> ȯȣ + <ë§�í• ë‚´ìš©> 환호 -ÃàÇÏ µîÀÇ ³»¿ëÀ» ÀüºÎ¿¡°Ô ¸»ÇÏ´Â °ÍÀÔ´Ï´Ù. +축하 등ì�˜ ë‚´ìš©ì�„ ì „ë¶€ì—�게 ë§�하는 것입니다. diff --git a/help/help.71 b/help/help.71 index fc5c710f..a78b73dd 100644 --- a/help/help.71 +++ b/help/help.71 @@ -1,12 +1,12 @@ -µµ¿ò¸»: +ë�„움ë§�: - <ŸÀÎ> <ÁÖ¼ú> °¡¸£ÃÄ + <타ì�¸> <주술> 가르ì³� -'°¡¸£ÃÄ'´Â µµ¼ú»çÀÇ Æ¯¼ö±â¼ú·Î °£´ÜÇÑ ÁÖ¼úÀ» ´Ù¸¥ »ç¶÷¿¡°Ô -°¡¸£Ä¥¶§ »ç¿ëµË´Ï´Ù. +'가르ì³�'는 ë�„술사ì�˜ 특수기술로 간단한 주술ì�„ 다른 사람ì—�게 +가르칠때 사용ë�©ë‹ˆë‹¤. -¿¹: -:ŸÀÌ Ä¡·á °¡¸£ÃÄ -ÁÖ¼ú "Ä¡·á¸¦ ŸÀÌ¿¡°Ô °¡¸£ÃƽÀ´Ï´Ù. +예: +:타ì�´ 치료 가르ì³� +주술 "치료를 타ì�´ì—�게 가르쳤습니다. diff --git a/help/help.72 b/help/help.72 index 14313877..2bf37bf4 100644 --- a/help/help.72 +++ b/help/help.72 @@ -1,12 +1,12 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> °¡ÀÔ + <괴물> 가입 -'°¡ÀÔ'Àº ±«¹°ÀÇ Á¶Á÷¿¡ °¡ÀÔÇÒ¶§ »ç¿ëµË´Ï´Ù. -°¡ÀÔÀ» ÇÏ¸é ´ç½ÅÀº ¿©·¯°¡Áö À̵æÀ» º¾´Ï´Ù. »ó´ë°¡ ¼±ÇÑ »ç¶÷ÀÌ¶óµµ -ÀüÀïÁßÀΠŸ Á¶Á÷¿¡ ¼Ò¼ÓµÇÀÖÀ¸¸é Á׿©µµ °æÇèÄ¡¸¦ ¾ò½À´Ï´Ù. -ÀÚ½ÅÀÌ ±× ÇÇÇØÀÚ°¡ µÉ¼öµµ ÀÖÀ¸´Ï Á¶½ÉÇØ¼­ °¡ÀÔÀ» ÇÏ¼Å¾ß ÇÕ´Ï´Ù. -°¡ÀÔÈÄ ´çÇÑ ÇÇÇØ´Â ¾Æ¹«·± º¸»óÀÌ ¾ø½À´Ï´Ù. +'가입'ì�€ 괴물ì�˜ ì¡°ì§�ì—� 가입할때 사용ë�©ë‹ˆë‹¤. +가입ì�„ 하면 당신ì�€ 여러가지 ì�´ë“�ì�„ 봅니다. ìƒ�대가 선한 사람ì�´ë�¼ë�„ +ì „ìŸ�중ì�¸ 타 ì¡°ì§�ì—� 소ì†�ë�˜ìžˆìœ¼ë©´ 죽여ë�„ 경험치를 얻습니다. +ìž�ì‹ ì�´ ê·¸ 피해ìž�ê°€ ë� ìˆ˜ë�„ 있으니 조심해서 가입ì�„ 하셔야 합니다. +가입후 당한 피해는 아무런 ë³´ìƒ�ì�´ 없습니다. diff --git a/help/help.73 b/help/help.73 index fce3018c..d0e882ca 100644 --- a/help/help.73 +++ b/help/help.73 @@ -1,8 +1,8 @@ -µµ¿ò¸»: +ë�„움ë§�: - (±«¹°) Å»Åð + (괴물) 탈퇴 -'Å»Åð'´Â ´ç½ÅÀÌ °¡ÀÔÇÑ Á¶Á÷¿¡¼­ ³ª¿À´Â ¸í·ÉÀÔ´Ï´Ù. -¹°·Ð °Å±â¿¡ ÇÕ´çÇÑ ´ñ°¡¸¦ Ä¡·ç¾î¾ß ÇÕ´Ï´Ù. +'탈퇴'는 당신ì�´ 가입한 ì¡°ì§�ì—�서 나오는 명령입니다. +물론 거기ì—� 합당한 댓가를 치루어야 합니다. diff --git a/help/help.74 b/help/help.74 index 7fe9bd69..4674cb08 100644 --- a/help/help.74 +++ b/help/help.74 @@ -1,13 +1,13 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> <¹°°Ç> ±¸ÀÔ + <괴물> <물건> 구입 -'±¸ÀÔ'Àº °¡²û ±«¹°ÀÌ ¹°°ÇÀ» ÆÇ¸ÅÇÏ´Â °æ¿ì ±¸ÀÔÇÒ¶§ »ç¿ëµË´Ï´Ù. -¸ÕÀú '¼±ÅÃ'À¸·Î »ì ¹°°ÇÀ» ¼±ÅÃÇϽʽÿä. +'구입'ì�€ ê°€ë�” 괴물ì�´ 물건ì�„ íŒ�매하는 경우 구입할때 사용ë�©ë‹ˆë‹¤. +먼저 'ì„ íƒ�'으로 ì‚´ 물건ì�„ ì„ íƒ�하십시요. -¿¹: +예: -:ÁöÈÖºÀ Á¡¿ø ±¸ÀÔ -´ç½ÅÀº Á¡¿ø¿¡°Ô 7000 ±ÝÀ» ÁÖ¾ú½À´Ï´Ù. -Á¡¿øÀÌ °í¸¿½À´Ï´Ù ¿©±â ÁöÈÖºÀÀÌ ÀÖ½À´Ï´Ù¶ó°í ¸»ÇÕ´Ï´Ù. +:지휘봉 ì �ì›� 구입 +당신ì�€ ì �ì›�ì—�게 7000 금ì�„ 주었습니다. +ì �ì›�ì�´ 고맙습니다 여기 지휘봉ì�´ 있습니다ë�¼ê³  ë§�합니다. diff --git a/help/help.75 b/help/help.75 index 9f82c474..e23c28b7 100644 --- a/help/help.75 +++ b/help/help.75 @@ -1,13 +1,13 @@ -µµ¿ò¸»: +ë�„움ë§�: - <±«¹°> ¼±Åà + <괴물> ì„ íƒ� -'¼±ÅÃ'Àº ±«¹°ÀÌ ¹°°ÇÀ» ÆÈ°æ¿ì ¹°°ÇÀ» ¼±ÅÃÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. +'ì„ íƒ�'ì�€ 괴물ì�´ 물건ì�„ 팔경우 물건ì�„ ì„ íƒ�하는 명령입니다. -¿¹: +예: -: Á¡¿ø ¼±ÅÃselection registrar +: ì �ì›� ì„ íƒ�selection registrar -Á¡¿øÀÇ ÇöÀç ¹°°Çµé: -1) Ã¥°¡¹æ 7000 ±Ý +ì �ì›�ì�˜ 현재 물건들: +1) 책가방 7000 금 diff --git a/help/help.76 b/help/help.76 index f1660a60..acb46c4a 100644 --- a/help/help.76 +++ b/help/help.76 @@ -1,12 +1,12 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹°°Ç> <±«¹°> ±³È¯ + <물건> <괴물> êµ�환 -'±³È¯'Àº ƯÁ¤ ±«¹°°ú ¹°°ÇÀ» ±³È¯ÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. -±«¹°ÀÌ ¿øÇÏ´Â ¹°°ÇÀ» ÁÖ¾î¾ßÁö¸¸ ¼º¸³ÇÕ´Ï´Ù. -ÀÓ¹«¿¡ Áß¿äÇÑ ¿ªÈ°À» ÇÕ´Ï´Ù. +'êµ�환'ì�€ 특정 괴물과 물건ì�„ êµ�환할때 사용합니다. +괴물ì�´ ì›�하는 물건ì�„ 주어야지만 성립합니다. +임무ì—� 중요한 역활ì�„ 합니다. -¿¹: -:Ä® ¿Õ°Å¹Ì ±³È¯ -¿Õ°Å¹Ì°¡ ³­ ±×°É ¿øÇÏÁö ¾Ê¾Æ!¶ó°í ¸»ÇÕ´Ï´Ù. +예: +:ì¹¼ 왕거미 êµ�환 +왕거미가 난 그걸 ì›�하지 않아!ë�¼ê³  ë§�합니다. diff --git a/help/help.77 b/help/help.77 index 3334d52e..3bf83d5b 100644 --- a/help/help.77 +++ b/help/help.77 @@ -1,6 +1,6 @@ -µµ¿ò¸»: - ¸ñ¸Å´Þ±â +ë�„움ë§�: + 목매달기 -'¸ñ¸Å´Þ±â'´Â ¸ðµç°É Æ÷±âÇÏ°í ³¡³¾¶§ »ç¿ëÇÕ´Ï´Ù. -´Ù½Ã´Â »ì¾Æ³¯¼ö ¾ø´Ù´Â°É ±â¾ïÇϼ¼¿ä. +'목매달기'는 모든걸 í�¬ê¸°í•˜ê³  ë��낼때 사용합니다. +다시는 살아날수 없다는걸 기억하세요. diff --git a/help/help.79 b/help/help.79 index c39261d8..3c521bf8 100644 --- a/help/help.79 +++ b/help/help.79 @@ -1,6 +1,6 @@ -ÅõÇ¥: +투표: - ÅõÇ¥ + 투표 -'ÅõÇ¥'´Â ¸î¸î Áß¿äÇÑ »çÇ×À̳ª ´©±º°¡¸¦ »ÌÀ»¶§ »ç¿ëµË´Ï´Ù. +'투표'는 몇몇 중요한 사항ì�´ë‚˜ 누군가를 뽑ì�„때 사용ë�©ë‹ˆë‹¤. diff --git a/help/help.8 b/help/help.8 index 502201e2..a6389824 100644 --- a/help/help.8 +++ b/help/help.8 @@ -1,5 +1,5 @@ -µµ¿ò¸»: - ´©±¸ +ë�„움ë§�: + 누구 -'´©±¸'´Â ´©°¡ Áö±Ý Á¢¼ÓÇØ ÀÖ´ÂÁö ¾Ë¾Æº¾´Ï´Ù. +'누구'는 누가 지금 ì ‘ì†�í•´ 있는지 알아봅니다. diff --git a/help/help.80 b/help/help.80 index 75cdff3a..b73d6edd 100644 --- a/help/help.80 +++ b/help/help.80 @@ -1,11 +1,11 @@ -µµ¿ò¸»: +ë�„움ë§�: - <ŸÀÎ> »ç¿ëÀÚÁ¤º¸ + <타ì�¸> 사용ìž�ì •ë³´ -'»ç¿ëÀÚÁ¤º¸'´Â ±× »ç¶÷ÀÇ Á¤º¸¸¦ °Ë»öÇÕ´Ï´Ù. +'사용ìž�ì •ë³´'는 ê·¸ 사람ì�˜ 정보를 검색합니다. -¿¹: -: ŸÀÌ »ç¿ëÀÚÁ¤º¸ -ŸÀÌ Àΰ£Á· ºÒÁ¦ÀÚ -¸¶Áö¸· Á¢¼Ó: 9¿ù Åä¿äÀÏ 3 13:02:51 1994 -ÆíÁö ¾øÀ½. +예: +: 타ì�´ 사용ìž�ì •ë³´ +타ì�´ ì�¸ê°„족 불제ìž� +마지막 ì ‘ì†�: 9ì›” 토요ì�¼ 3 13:02:51 1994 +편지 ì—†ì�Œ. diff --git a/help/help.81 b/help/help.81 index de668876..7171496a 100644 --- a/help/help.81 +++ b/help/help.81 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - ±Íȯ + 귀환 -'±Íȯ'Àº ±¤ÀåÀ¸·Î µ¹¾Æ°©´Ï´Ù. +'귀환'ì�€ 광장으로 ë�Œì•„갑니다. diff --git a/help/help.82 b/help/help.82 index b33a2c0f..7723440d 100644 --- a/help/help.82 +++ b/help/help.82 @@ -1,22 +1,22 @@ -µµ¿ò¸»: +ë�„움ë§�: - [ÁÙÀӴܾî] [¸í·É¾î] ÁÙÀÓ¸» + [줄임단어] [명령어] 줄임ë§� -'ÁÙÀÓ¸»'Àº ¿©·¯ ¸í·É¾î¸¦ ÇÑ ¸í·É¾î·Î ÁÙ¿©¼­ ¾µ¼ö ÀÖ½À´Ï´Ù. +'줄임ë§�'ì�€ 여러 명령어를 한 명령어로 줄여서 쓸수 있습니다. -ÁÙÀÓ¸» : ÁÙÀÓ¸»µéÀ» º¸¿©ÁÝ´Ï´Ù. -[ÁÙÀӴܾî] ÁÙÀÓ¸»: ÁÙÀÓ¸»À» »èÁ¦ÇÕ´Ï´Ù. -[ÁÙÀӴܾî] [¸í·É¾î] ÁÙÀÓ¸»: ÁÙÀÓ¸»À» Ãß°¡ÇÕ´Ï´Ù. +줄임ë§� : 줄임ë§�들ì�„ ë³´ì—¬ì¤�니다. +[줄임단어] 줄임ë§�: 줄임ë§�ì�„ 삭제합니다. +[줄임단어] [명령어] 줄임ë§�: 줄임ë§�ì�„ 추가합니다. -¸í·É¾î´Â ';' ±âÈ£·Î ¿©·¯ ¸í·É¾î¸¦ ÀûÀ» ¼ö ÀÖ½À´Ï´Ù. -ÁÙÀӴܾ ¼ýÀÚ¸¦ ÀÌ¿ëÇϽ÷Á¸é '¼ýÀÚxxxx'ÀÇ Çü½Ä(xxx´Â ¼ýÀÚ)À¸·Î -ÀûÀ¸½Ê½Ã¿ä. -¸í·É¾î ºÎºÐ¿¡ $1, $2, ... , $16, $*°ú °°ÀÌ ÀÎÀÚ¸¦ ³Ö¾îÁÙ¼ö ÀÖ½À´Ï´Ù. -ÀÎÀÚ´Â 16°³±îÁö °¡´ÉÇϸç $*´Â ¸í·É¾î¾ÕÀÇ ¸ðµç ±ÛÀ» ÀǹÌÇÕ´Ï´Ù. +명령어는 ';' 기호로 여러 명령어를 ì �ì�„ 수 있습니다. +줄임단어ì—� 숫ìž�를 ì�´ìš©í•˜ì‹œë ¤ë©´ '숫ìž�xxxx'ì�˜ 형ì‹�(xxx는 숫ìž�)으로 +ì �으십시요. +명령어 부분ì—� $1, $2, ... , $16, $*ê³¼ ê°™ì�´ ì�¸ìž�를 넣어줄수 있습니다. +ì�¸ìž�는 16개까지 가능하며 $*는 명령어앞ì�˜ 모든 글ì�„ ì�˜ë¯¸í•©ë‹ˆë‹¤. -¿¹) ] Ãà $1´ÔÀÇ ·¹º§¾÷À» Áø½ÉÀ¸·Î ÃàÇϵ帳´Ï´Ù. Àâ ÁÙÀÓ¸» - ÁÙÀÓ¸»ÀÌ ¼³Á¤µÇ¾ú½À´Ï´Ù. +예) ] ì¶• $1님ì�˜ 레벨업ì�„ 진심으로 축하드립니다. ìž¡ 줄임ë§� + 줄임ë§�ì�´ 설정ë�˜ì—ˆìŠµë‹ˆë‹¤. - ] Ǫ¸¥ÇÏ´Ã Ãà - ŸÀÌ> Ǫ¸¥ÇϴôÔÀÇ ·¹º§¾÷À» Áø½ÉÀ¸·Î ÃàÇϵ帳´Ï´Ù. + ] 푸른하늘 ì¶• + 타ì�´> 푸른하늘님ì�˜ 레벨업ì�„ 진심으로 축하드립니다. diff --git a/help/help.83 b/help/help.83 index 61805eb8..43e5971a 100644 --- a/help/help.83 +++ b/help/help.83 @@ -1,13 +1,13 @@ -µµ¿ò¸»: +ë�„움ë§�: - <¹°°Ç> Å¿ö + <물건> 태워 -'Å¿ö'´Â ÇÊ¿ä¾ø´Â ¹°°ÇÀ» ±×ÀÚ¸®¿¡¼­ ¼Ò°¢ÇÏ´Â ¸í·ÉÀÔ´Ï´Ù.. -¾à°£ÀÇ °æÇèÄ¡¿Í »ó±ÝÀ» ¹ÞÁö¸¸ Á¦»çÀå¿¡¼­ Á¦¹°·Î ¹ÞÄ¡´Â°ÍÀÇ -¹ÝÀ» ¹Þ½À´Ï´Ù. -°¡²û ½ÅÀÌ ÈíÁ·ÇÏ¸é µ·º­¶ô°ú °æÇèÄ¡¸¦ ³»¸®±âµµ ÇÕ´Ï´Ù. +'태워'는 필요없는 물건ì�„ ê·¸ìž�리ì—�서 소ê°�하는 명령입니다.. +약간ì�˜ 경험치와 ìƒ�금ì�„ 받지만 제사장ì—�서 제물로 받치는것ì�˜ +ë°˜ì�„ 받습니다. +ê°€ë�” ì‹ ì�´ í�¡ì¡±í•˜ë©´ ë�ˆë²¼ë�½ê³¼ 경험치를 내리기ë�„ 합니다. -¿¹ -Ä® Å¿ö -´ç½ÅÀº Ä®À» Å¿ö ¾à°£ÀÇ »ó±Ý°ú °æÇèÀ» ¹Þ¾Ò½À´Ï´Ù. +예 +ì¹¼ 태워 +당신ì�€ ì¹¼ì�„ 태워 약간ì�˜ ìƒ�금과 경험ì�„ 받았습니다. diff --git a/help/help.84 b/help/help.84 index f8cdf857..4c46964b 100644 --- a/help/help.84 +++ b/help/help.84 @@ -1,14 +1,14 @@ -µµ¿ò¸»: - <Īȣ> Īȣ - Īȣ»èÁ¦ +ë�„움ë§�: + <칭호> 칭호 + 칭호삭제 -'Īȣ'´Â ÀÚ½ÅÀÇ ÄªÈ£¸¦ ¼³Á¤ÇÏ´Â ¸í·É¾îÀÔ´Ï´Ù. -'´©±¸'¸í·É¿¡¼­ ÀÚ½ÅÀÇ ÄªÈ£¸¦ º¼ ¼ö ÀÖ½À´Ï´Ù. -'Īȣ»èÁ¦'´Â ¼³Á¤ÇÑ ÄªÈ£¸¦ »èÁ¦ÇÕ´Ï´Ù. +'칭호'는 ìž�ì‹ ì�˜ 칭호를 설정하는 명령어입니다. +'누구'명령ì—�서 ìž�ì‹ ì�˜ 칭호를 ë³¼ 수 있습니다. +'칭호삭제'는 설정한 칭호를 삭제합니다. -Īȣ¿¡ »öÀ» ³ÖÀ» ¼ö ÀÖ½À´Ï´Ù. -{»¡, {³ë, {³ì, {ÆÄ, {ÇÏ, {º¸, {Èò 7°¡Áö »ö±òÀÌ °¡´ÉÇϰí -'}'´Â ¿ø·¡ÀÇ »öÀ¸·Î µÇµ¹¸³´Ï´Ù. -'¹àÀº»ö ¼³Á¤'À» ÇÏ½Ã¸é ¹àÀº»öÀ¸·Î Ãâ·ÂÇÕ´Ï´Ù. +칭호ì—� 색ì�„ ë„£ì�„ 수 있습니다. +{빨, {ë…¸, {ë…¹, {파, {하, {ë³´, {í�° 7가지 색깔ì�´ 가능하고 +'}'는 ì›�래ì�˜ 색으로 ë�˜ë�Œë¦½ë‹ˆë‹¤. +'ë°�ì�€ìƒ‰ 설정'ì�„ 하시면 ë°�ì�€ìƒ‰ìœ¼ë¡œ 출력합니다. -¿¹) {»¡¹«ÇÑ{ÆÄ´ëÀü {³ë¸¸¼¼~~} Īȣ +예) {빨무한{파대전 {노만세~~} 칭호 diff --git a/help/help.85 b/help/help.85 index b65a0490..c333c316 100644 --- a/help/help.85 +++ b/help/help.85 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - Á¦·Ã +ë�„움ë§�: + 제련 -'Á¦·Ã'Àº ´ëÀå°£¿¡¼­ Ư¼öÇÑ ¹«±â¸¦ Á¦ÀÛÇÒ¶§ »ç¿ëµË´Ï´Ù. -Ÿ°ÝÄ¡¿Í ³»±¸¼º ±×¸®°í À̸§À» ÀÚ½ÅÀÌ ¼³°èÇÒ¼ö ÀÖÀ¸¸ç, -ÈǸ¢ÇÑ À̸§ÀÌ ºÙ´Â ¹«±â´Â ¾öû³­ °¡°ÝÀ» Áö´Ï°í ÀÖÀ¾´Ï´Ù. +'제련'ì�€ 대장간ì—�서 특수한 무기를 제작할때 사용ë�©ë‹ˆë‹¤. +타격치와 내구성 그리고 ì�´ë¦„ì�„ ìž�ì‹ ì�´ 설계할수 있으며, +훌륭한 ì�´ë¦„ì�´ 붙는 무기는 엄청난 가격ì�„ 지니고 있ì��니다. diff --git a/help/help.86 b/help/help.86 index 7ea4ae0f..fccba6c9 100644 --- a/help/help.86 +++ b/help/help.86 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - Á÷¾÷Àüȯ +ë�„움ë§�: + ì§�업전환 -'Á÷¾÷Àüȯ'Àº ÀÚ½ÅÀÇ Á÷¾÷À» ¹Ù²Ü¶§ »ç¿ëÇÕ´Ï´Ù. -¹Ù²Ù±æ ¿øÇÏ´Â Á÷¾÷ÀÇ ¼ö·ÃÀå¿¡ ã¾Æ°¡¼­ Á÷¾÷ÀüȯÇÏ¸é µË´Ï´Ù. -±×´ñ°¡·Î ´ç½ÅÀº 10¸¸Á¡ÀÇ °æÇè°ú ¾à°£ÀÇ ´É·ÂÀ» ÀÒ°Ô µË´Ï´Ù. +'ì§�업전환'ì�€ ìž�ì‹ ì�˜ ì§�ì—…ì�„ 바꿀때 사용합니다. +바꾸길 ì›�하는 ì§�ì—…ì�˜ 수련장ì—� 찾아가서 ì§�업전환하면 ë�©ë‹ˆë‹¤. +그댓가로 당신ì�€ 10ë§Œì �ì�˜ 경험과 약간ì�˜ 능력ì�„ 잃게 ë�©ë‹ˆë‹¤. diff --git a/help/help.87 b/help/help.87 index 16bff14d..2e80d0c4 100644 --- a/help/help.87 +++ b/help/help.87 @@ -1,5 +1,5 @@ -µµ¿ò¸»: +ë�„움ë§�: - ±â°øÁý°á + 기공집결 -'±â°øÁý°á'Àº °Ë»çµéÀÌ ±â¸¦ ¿îÇàÇÏ¿© ÈûÀ» ¹è°¡½ÃŰ´Â ±â¼úÀÔ´Ï´Ù. +'기공집결'ì�€ 검사들ì�´ 기를 운행하여 힘ì�„ 배가시키는 기술입니다. diff --git a/help/help.88 b/help/help.88 index 21e4171c..de7207d3 100644 --- a/help/help.88 +++ b/help/help.88 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - »ì±âÃæÀü + 살기충전 -'»ì±âÃæÀü'Àº ÀÚ°´°ú µµµÏÀÇ ±â¼ú·Î ÀÚ½ÅÀÇ ¹«±â¿¡ ÇǸ¦ ¸ÔÀÓÀ¸·Î½á -¹«±â°¡ »ó´ë¸¦ °¡°ÝÇÒ¶§ ½ÇÆÐ°¡ Àû¾îÁö´Â ±â¼úÀÔ´Ï´Ù. +'살기충전'ì�€ ìž�ê°�ê³¼ ë�„ë‘‘ì�˜ 기술로 ìž�ì‹ ì�˜ 무기ì—� 피를 먹임으로ì�¨ +무기가 ìƒ�대를 가격할때 실패가 ì �어지는 기술입니다. diff --git a/help/help.89 b/help/help.89 index 5c112e7d..e48d4b8d 100644 --- a/help/help.89 +++ b/help/help.89 @@ -1,8 +1,8 @@ -µµ¿ò¸» +ë�„움ë§� - <±«¹°> Èí¼º´ë¹ý + <괴물> í�¡ì„±ëŒ€ë²• -'Èí¼º´ë¹ý'Àº µµ¼ú»çÀÇ Æ¯¼ö ±â¼ú·Î ÀûÀÇ ±â¸¦ »©¾Ñ¾Æ ÀÚ½ÅÀÇ -±â¿¡ ´õÇÏ´Â ÁÖ¹®ÀÔ´Ï´Ù. -±×·¯³ª Á×¾ú´Ù »ì¾Æ³­ ¾Ç·ÉÁ·µéÀº »ç¾ÇÇÑ ±â¸¦ Áö´Ï°í ÀÖÀ¸´Ï -Á¶½ÉÇÏ¿©¾ß ÇÕ´Ï´Ù. +'í�¡ì„±ëŒ€ë²•'ì�€ ë�„술사ì�˜ 특수 기술로 ì �ì�˜ 기를 빼앗아 ìž�ì‹ ì�˜ +기ì—� ë�”하는 주문입니다. +그러나 죽었다 살아난 악령족들ì�€ 사악한 기를 지니고 있으니 +조심하여야 합니다. diff --git a/help/help.9 b/help/help.9 index 95bbc91c..ba45317c 100644 --- a/help/help.9 +++ b/help/help.9 @@ -1,13 +1,13 @@ -µµ¿ò¸»: - <¹°°Ç> [#] ÀÔ¾î +ë�„움ë§�: + <물건> [#] ìž…ì–´ -'ÀÔ¾î'´Â °©¿ÊÀ̳ª ¸ö¿¡ Âø¿ëÇÏ´Â ¹°°ÇÀ» Âø¿ëÇÕ´Ï´Ù. -'¸ðµÎ ÀÔ¾î'´Â ¸ðµç°É Âø¿ëÇÕ´Ï´Ù. +'ìž…ì–´'는 갑옷ì�´ë‚˜ 몸ì—� 착용하는 물건ì�„ 착용합니다. +'모ë‘� ìž…ì–´'는 모든걸 착용합니다. -¿¹: +예: -: ¼ÒÁö -´ç½ÅÀÇ ¼ÒÁöǰ: °¡¹æ, ½Å¹ß. -: ½Å¹ß ÀÔ¾î -´ç½ÅÀº ½Å¹ßÀ» ÀÔ½À´Ï´Ù. +: 소지 +당신ì�˜ 소지품: 가방, ì‹ ë°œ. +: ì‹ ë°œ ìž…ì–´ +당신ì�€ ì‹ ë°œì�„ 입습니다. diff --git a/help/help.90 b/help/help.90 index b80f34a3..0c6abf9a 100644 --- a/help/help.90 +++ b/help/help.90 @@ -1,6 +1,6 @@ -µµ¿ò¸»: +ë�„움ë§�: - Âü¼± + 참선 -'Âü¼±'Àº ¹«»ç¿Í ºÒÁ¦ÀÚÀÇ Æ¯¼ö±â´ÉÀ¸·Î Âü¼±À» ÅëÇÏ¿© -»ç¹°À» ¹Ù¶óº¸´Â ÁöÀû´É·ÂÀ» Çâ»ó½Ã۰í ÁÖ¹®´É·ÂÀ» Çâ»ó½Ãŵ´Ï´Ù. +'참선'ì�€ 무사와 불제ìž�ì�˜ 특수기능으로 참선ì�„ 통하여 +사물ì�„ ë°”ë�¼ë³´ëŠ” ì§€ì �능력ì�„ í–¥ìƒ�시키고 주문능력ì�„ í–¥ìƒ�시킵니다. diff --git a/help/help.91 b/help/help.91 index 393b6e1c..c07d4fa4 100644 --- a/help/help.91 +++ b/help/help.91 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <±«¹°> Ç÷µµºÀ¼â +ë�„움ë§�: + <괴물> 혈ë�„봉쇄 -'Ç÷µµºÀ¼â'´Â Æ÷Á¹ÀÇ Àü¿ë±â¼ú·Î ÀûÀÇ Ç÷µµ¸¦ ¤¾î³» ÁÖ¹®À» -¿Ü¿ï¼ö ¾ø°ÔÇÏ´Â ±â¼úÀÔ´Ï´Ù. ¿îÁÁ°Ô ±Þ¼Ò¸¦ ¤À¸¸é ¾öû³­ Ÿ°ÝÀ» -ÀÔ°Ô µË´Ï´Ù. +'혈ë�„봉쇄'는 í�¬ì¡¸ì�˜ 전용기술로 ì �ì�˜ 혈ë�„를 ì§šì–´ë‚´ 주문ì�„ +외울수 없게하는 기술입니다. 운좋게 급소를 짚으면 엄청난 타격ì�„ +입게 ë�©ë‹ˆë‹¤. diff --git a/help/help.92 b/help/help.92 index 6a047d66..91c77d17 100644 --- a/help/help.92 +++ b/help/help.92 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - ½á +ë�„움ë§�: + ì�¨ -'½á'´Â °Ô½ÃÆÇ¿¡ ±ÛÀ» ¿Ã¸®´Â ¸í·ÉÀÔ´Ï´Ù. -Á¦¸ñÀ» ÀÔ·ÂÇÏ°í ±ÛÀ» ÀÔ·ÂÇÏ¸é ±ÛÀÌ ¿Ã·ÁÁý´Ï´Ù. +'ì�¨'는 게시íŒ�ì—� 글ì�„ 올리는 명령입니다. +제목ì�„ 입력하고 글ì�„ 입력하면 글ì�´ 올려집니다. -Âü°í¸í·É: ºÁ ÀÐ¾î ±Û»èÁ¦ +참고명령: ë´� ì�½ì–´ 글삭제 diff --git a/help/help.94 b/help/help.94 index 589dc9fa..1722540f 100644 --- a/help/help.94 +++ b/help/help.94 @@ -1,10 +1,10 @@ -µµ¿ò¸»: - °Ô½ÃÆÇ - ½á - <¹øÈ£> Àоî - °Ô½ÃÆÇ <¹øÈ£> ±Û»èÁ¦ +ë�„움ë§�: + 게시íŒ� + ì�¨ + <번호> ì�½ì–´ + 게시íŒ� <번호> 글삭제 -'°Ô½ÃÆÇ'¸í·ÉÀº °Ô½Ã¹°ÀÇ ¸ñ·ÏÀ» º¼¶§ »ç¿ëÇÏ´Â ¸í·ÉÀÔ´Ï´Ù.(= °Ô½Ã¹° ºÁ) -'½á'¸í·ÉÀº °Ô½ÃÆÇ¿¡ ±ÛÀ» ¿Ã¸®´Â ¸í·ÉÀÔ´Ï´Ù. -'Àоî' ¸í·ÉÀº °Ô½ÃÆÇÀÇ ±ÛÀ» ÀÐÀ»¶§ »ç¿ëÇÕ´Ï´Ù. -'±Û»èÁ¦' ¸í·ÉÀº °Ô½ÃÆÇÀÇ ±ÛÀ» »èÁ¦ÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. +'게시íŒ�'명령ì�€ 게시물ì�˜ 목ë¡�ì�„ 볼때 사용하는 명령입니다.(= 게시물 ë´�) +'ì�¨'명령ì�€ 게시íŒ�ì—� 글ì�„ 올리는 명령입니다. +'ì�½ì–´' 명령ì�€ 게시íŒ�ì�˜ 글ì�„ ì�½ì�„때 사용합니다. +'글삭제' 명령ì�€ 게시íŒ�ì�˜ 글ì�„ 삭제할때 사용합니다. diff --git a/help/help.95 b/help/help.95 index f541cd66..832109c3 100644 --- a/help/help.95 +++ b/help/help.95 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <¹°°Ç> [#] <À̸§> ¸í¸í +ë�„움ë§�: + <물건> [#] <ì�´ë¦„> 명명 -'¸í¸í'Àº ±â³äǰÁ¡¿¡¼­ »ê ¹°°ÇÀ» À̸§À» ÁöÀ»¶§ »ç¿ëÇÏ´Â ¸í·ÉÀÔ´Ï´Ù. -´Ü Çѹø¸¸ ¸í¸í °¡´ÉÇÏ´Ï ÁÖÀÇÇØ¼­ À̸§À» Áö¾î¾ß ÇÕ´Ï´Ù. -¿µ¾î³ª Ư¼ö ¹®ÀÚ´Â ÀνÄÇÏÁö ¾ÊÀ¸´Ï ³ÖÁö¸¶¼¼¿ä. +'명명'ì�€ 기ë…�í’ˆì �ì—�서 ì‚° 물건ì�„ ì�´ë¦„ì�„ ì§€ì�„때 사용하는 명령입니다. +단 한번만 명명 가능하니 주ì�˜í•´ì„œ ì�´ë¦„ì�„ 지어야 합니다. +ì˜�어나 특수 문ìž�는 ì�¸ì‹�하지 않으니 넣지마세요. diff --git a/help/help.96 b/help/help.96 index 6bc310ff..2b56162f 100644 --- a/help/help.96 +++ b/help/help.96 @@ -1,8 +1,8 @@ -µµ¿ò¸»: - <¹°°Ç> [#] °¨Á¤ +ë�„움ë§�: + <물건> [#] ê°�ì • -'°¨Á¤'Àº µµµÏÀÇ Æ¯¼ö±â¼ú·Î ¹°°ÇÀÇ »ç¿ëó¿Í Á¤º¸¸¦ ij³¾¶§ »ç¿ëµË´Ï´Ù. +'ê°�ì •'ì�€ ë�„ë‘‘ì�˜ 특수기술로 물건ì�˜ 사용처와 정보를 ìº�낼때 사용ë�©ë‹ˆë‹¤. - <¹°°Ç> [#] ºñ±³ + <물건> [#] 비êµ� -'ºñ±³'´Â °¢ ¾ÆÀÌÅÛ¿¡ µû¸¥ ·¹º§Á¦ÇÑÀ» º¸¿©ÁÝ´Ï´Ù. +'비êµ�'는 ê°� ì•„ì�´í…œì—� 따른 레벨제한ì�„ ë³´ì—¬ì¤�니다. diff --git a/help/help.97 b/help/help.97 index fbc494c6..9c85756b 100644 --- a/help/help.97 +++ b/help/help.97 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <ŸÀÎ/±«¹°> [#] Â÷±â +ë�„움ë§�: + <타ì�¸/괴물> [#] 차기 -'Â÷±â'´Â ±Ç¹ý°¡ÀÇ Æ¯¼ö±â¼ú·Î °­ÇÑ ÈûÀ» ¸ð¾Æ ÀûÀ» ¹ß·Î °È¾îÂ÷ -°ø°ÝÇÏ´Â ±â¼úÀÔ´Ï´Ù. ¼º°øÇÏ¸é °­ÇÑ Å¸°ÝÀ» ÀÔÈ÷Áö¸¸ ½ÇÆÐÇϸé -ÇêÁ¡ÀÌ ³ëÃâµË´Ï´Ù. +'차기'는 권법가ì�˜ 특수기술로 강한 힘ì�„ 모아 ì �ì�„ 발로 ê±·ì–´ì°¨ +공격하는 기술입니다. 성공하면 강한 타격ì�„ 입히지만 실패하면 +í—›ì �ì�´ 노출ë�©ë‹ˆë‹¤. diff --git a/help/help.98 b/help/help.98 index 6d75cb73..51269ebb 100644 --- a/help/help.98 +++ b/help/help.98 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - <±«¹°> [#] µ¶»ìÆ÷ +ë�„움ë§�: + <괴물> [#] ë�…ì‚´í�¬ -'µ¶»ìÆ÷'´Â ÀÚ°´ÀÇ Æ¯¼ö±â¼ú·Î ±«¹°¿¡°Ô µ¶À» »Ñ·Á¼­ Áßµ¶À» -½ÃŰ´Â ±â¼úÀÔ´Ï´Ù. ¼º°øÇÏ¸é ±«¹°ÀÌ Áßµ¶ÀÌ µÇ¾î¼­ ÀÏÁ¤ ½Ã°£ÀÌ -Áö³ª°Ô µÇ¸é Á×°Ô µË´Ï´Ù. +'ë�…ì‚´í�¬'는 ìž�ê°�ì�˜ 특수기술로 괴물ì—�게 ë�…ì�„ 뿌려서 중ë�…ì�„ +시키는 기술입니다. 성공하면 괴물ì�´ 중ë�…ì�´ ë�˜ì–´ì„œ ì�¼ì • 시간ì�´ +지나게 ë�˜ë©´ 죽게 ë�©ë‹ˆë‹¤. diff --git a/help/help.99 b/help/help.99 index bdc3439f..ee8c29bb 100644 --- a/help/help.99 +++ b/help/help.99 @@ -1,7 +1,7 @@ -µµ¿ò¸»: - Àá·Â°Ý¹ß +ë�„움ë§�: + 잠력격발 -¹«Àû°ú ÃÊÀθ¸ÀÌ »ç¿ë°¡´ÉÇÑ Æ¯¼ö±â¼ú·Î¼­ »ç¿ë½Ã¿¡ -ü·Â°ú µµ·ÂÀÌ ¿À¸£¸ç, ÁÖ¸Ô Å¸°ÝÄ¡µµ ¾à°£ »ó½ÂÇÏ°Ô -µË´Ï´Ù. +무ì �ê³¼ ì´ˆì�¸ë§Œì�´ 사용가능한 특수기술로서 사용시ì—� +체력과 ë�„ë ¥ì�´ 오르며, 주먹 타격치ë�„ 약간 ìƒ�승하게 +ë�©ë‹ˆë‹¤. diff --git a/help/helpfile b/help/helpfile index dfdf8b84..bf8cfb32 100644 --- a/help/helpfile +++ b/help/helpfile @@ -1,34 +1,34 @@ - ¸í·É¾î µµ¿ò¸»: + 명령어 ë�„움ë§�: [===================] - À̵¿: - µ¿(¤§,6) / ¼­(¤µ,4) / ³²(¤¤,2) / ºÏ(¤²,8) / À§(¤·,9) / ¹Ø(¤±,3) - °¡ / µµ¸Á / ¹Û / ±Íȯ + ì�´ë�™: + ë�™(ã„·,6) / 서(ã……,4) / 남(ã„´,2) / ë¶�(ã…‚,8) / 위(ã…‡,9) / ë°‘(ã…�,3) + ê°€ / ë�„ë§� / ë°– / 귀환 +-------------------------------------------------------------------+ - Åë½Å: - ¸» / À̾߱â / ±×·ì¸» / ÆÐ°Å¸®¸» / ¿ÜÃÄ / Àâ´ã / µè±â°ÅºÎ - ÆíÁöº¸³»±â / ÆíÁö¹Þ±â / ÆíÁö»èÁ¦ + 통신: + ë§� / ì�´ì•¼ê¸° / 그룹ë§� / 패거리ë§� / 외ì³� / 잡담 / 듣기거부 + 편지보내기 / 편지받기 / 편지삭제 +-------------------------------------------------------------------+ - Á¤º¸: - Á¡¼ö / Á¤º¸ / ´©±¸ / »ç¿ëÀÚ°Ë»ö / ºÁ / »ç¿ëÀÚÁ¤º¸ / ¼³Á¤ / ÇØÁ¦ - ±×·ì / Àåºñ / ¼ÒÁö / ½Ã°£ / °¡°Ý / ÀúÀå / ȯ¿µ / °¨Á¤ / Á¤Ã¥ / ¾ÏÈ£ - ÆÐ°Å¸® / ¸ðµçÆÐ°Å¸® + ì •ë³´: + ì �수 / ì •ë³´ / 누구 / 사용ìž�검색 / ë´� / 사용ìž�ì •ë³´ / 설정 / í•´ì œ + 그룹 / 장비 / 소지 / 시간 / 가격 / 저장 / 환ì˜� / ê°�ì • / ì •ì±… / 암호 + 패거리 / 모든패거리 +-------------------------------------------------------------------+ - Çൿ: - °¡Á® / ¹þ¾î / ¹«Àå / Àâ¾Æ / ¸¶¼Å / »ç¿ë / ÀÔ¾î / ¸Å¼ö / °¡ÀÔ - ³»º¸³» / ¿­¾î / Àá±Å / ¹è¿ö / ÁÖ¹® / ¼û°Ü / ¸ñ¸Å´Þ±â / °æ°è - ã¾Æ / ³Ö¾î / ¹ö·Á / Àоî / Å»Åð / ±³È¯ / »ç / ÅõÇ¥ / ¼±Åà - µû¶ó / Ç¥Çö / ´Ý¾Æ / Ç®¾î / ÆÈ¾Æ / ¼ö·Ã / Áà / ¼ö¸® / ´ëÈ­ - ±¸ÀÔ / ǰ¸ñ / ÁÙÀÓ¸» / Å¿ö / ¸Ô¾î / Á¦·Ã / Á÷¾÷Àüȯ / ¸í¸í - °¨Á¤ + í–‰ë�™: + 가져 / ë²—ì–´ / 무장 / 잡아 / 마셔 / 사용 / ìž…ì–´ / 매수 / 가입 + ë‚´ë³´ë‚´ / ì—´ì–´ / 잠궈 / 배워 / 주문 / 숨겨 / 목매달기 / 경계 + 찾아 / 넣어 / 버려 / ì�½ì–´ / 탈퇴 / êµ�환 / 사 / 투표 / ì„ íƒ� + ë”°ë�¼ / 표현 / ë‹«ì•„ / 풀어 / 팔아 / 수련 / 줘 / 수리 / 대화 + 구입 / 품목 / 줄임ë§� / 태워 / 먹어 / 제련 / ì§�업전환 / 명명 + ê°�ì • +-------------------------------------------------------------------+ - ÀüÅõ: - ¶§·Á / ¸Í°ø / °ø°Ý / ±³¶õ / ±â½À / ¹æÈ¥¼ú / ÁÖ¹® + 전투: + 때려 / 맹공 / 공격 / êµ�란 / 기습 / 방혼술 / 주문 +-------------------------------------------------------------------+ - Ư¼ö±â¼ú: - ¸Í°ø / ±³¶õ / ½Å¿ø¹ý / µû / ¿³ºÁ / ±â°øÁý°á / »ì±âÃæÀü / Èí¼º´ë¹ý - ÈÉÃÄ / ±â½À / Ȱº¸¹ý / ÃßÀû / ¹æÈ¥¼ú / °¡¸£ÃÄ / Âü¼± / Ç÷µµºÀ¼â - µ¶»ìÆ÷ / Â÷±â + 특수기술: + 맹공 / êµ�란 / ì‹ ì›�법 / ë”° / ì—¿ë´� / 기공집결 / 살기충전 / í�¡ì„±ëŒ€ë²• + í›”ì³� / 기습 / 활보법 / ì¶”ì � / 방혼술 / 가르ì³� / 참선 / 혈ë�„봉쇄 + ë�…ì‚´í�¬ / 차기 [===================================================================] - "<¸í·É> µµ¿ò"À̶ó°í Ä¡¸é ÀÚ¼¼ÇÑ ¼³¸íÀÌ ³ª¿É´Ï´Ù. - " ÁÖ¼ú µµ¿ò" Ä¡¸é ÁÖ¼úµéÀÇ ¼³¸íÀÌ ³ª¿É´Ï´Ù. -±¤Àå¿¡¼­ "Á¾Á· ¼Ò°³¼­ ºÁ"Çϸé ÀÚ¼¼ÇÑ Á¾Á· Á÷¾÷ ¼³¸íÀÌ ³ª¿É´Ï´Ù. + "<명령> ë�„움"ì�´ë�¼ê³  치면 ìž�세한 설명ì�´ 나옵니다. + " 주술 ë�„움" 치면 주술들ì�˜ 설명ì�´ 나옵니다. +광장ì—�서 "종족 소개서 ë´�"하면 ìž�세한 종족 ì§�ì—… 설명ì�´ 나옵니다. diff --git a/help/helpfiles b/help/helpfiles index 610471ad..8c79ab4e 100644 --- a/help/helpfiles +++ b/help/helpfiles @@ -1,24 +1,24 @@ - ¸í·É¾î µµ¿ò¸»: + 명령어 ë�„움ë§�: [===================] - Åë½Å: À̵¿: - ¸»\À̾߱â\±×·ì¸»\¿ÜÃÄ\Àâ´ã\µè±â°ÅºÎ °¡ / µµ¸Á / ÀºµÐ¹ý / ¹Û + 통신: ì�´ë�™: + ë§�\ì�´ì•¼ê¸°\그룹ë§�\외ì³�\잡담\듣기거부 ê°€ / ë�„ë§� / ì�€ë‘”법 / ë°– +-------------------------------------------------------------------+ STATUS: - Á¡¼ö / Á¤º¸ / ´©±¸ / »ç¿ëÀÚ°Ë»ö / ºÁ / »ç¿ëÀÚÁ¤º¸ / ¼³Á¤ / ÇØÁ¦ - ±×·ì / Àåºñ / ¼ÒÁö / ½Ã°£ / °¡°Ý / ÀúÀå / ȯ¿µ + ì �수 / ì •ë³´ / 누구 / 사용ìž�검색 / ë´� / 사용ìž�ì •ë³´ / 설정 / í•´ì œ + 그룹 / 장비 / 소지 / 시간 / 가격 / 저장 / 환ì˜� +-------------------------------------------------------------------+ - Çൿ: - °¡Á® / ¹þ¾î / ¹«Àå / Àâ¾Æ / ¸¶¼Å / »ç¿ë / ÀÔ¾î / ¸Å¼ö / °¡ÀÔ - ³»º¸³» / ¿­¾î / Àá±Å / °øºÎ / ÁÖ¹® / ¼û°Ü / ÀÚ»ì / °æ°è / ǰ¸ñ - ã¾Æ / ³Ö¾î / ¹ö·Á / Àоî / Å»Åð / ±³È¯ / »ç / ÅõÇ¥ / ¼±Åà - µû¶ó / Ç¥Çö / ´Ý¾Æ / Ç®¾î / ÆÈ¾Æ / ¼ö·Ã / Áà / ¼ö¸® / ´ëÈ­ / ±¸ÀÔ + í–‰ë�™: + 가져 / ë²—ì–´ / 무장 / 잡아 / 마셔 / 사용 / ìž…ì–´ / 매수 / 가입 + ë‚´ë³´ë‚´ / ì—´ì–´ / 잠궈 / 공부 / 주문 / 숨겨 / ìž�ì‚´ / 경계 / 품목 + 찾아 / 넣어 / 버려 / ì�½ì–´ / 탈퇴 / êµ�환 / 사 / 투표 / ì„ íƒ� + ë”°ë�¼ / 표현 / ë‹«ì•„ / 풀어 / 팔아 / 수련 / 줘 / 수리 / 대화 / 구입 +-------------------------------------------------------------------+ - ÀüÅõ: - ¶§·Á / °ø°Ý / ³Ñ°Ü / ±³¶õ / ±â½À / ¹æÈ¥¼ú / charm / ÁÖ¹® + 전투: + 때려 / 공격 / 넘겨 / êµ�란 / 기습 / 방혼술 / charm / 주문 +-------------------------------------------------------------------+ - Ư¼ö±â´É: - ³Ñ°Ü / ±³¶õ / ½Å¿ø¹ý / meditate / touch / µû / ¿³ºÁ - ÈÉÃÄ / ±â½À / Ȱº¸¹ý / ÃßÀû / ¹æÈ¥¼ú / charm / °¡¸£ÃÄ / ÀºµÐ¹ý + 특수기능: + 넘겨 / êµ�란 / ì‹ ì›�법 / meditate / touch / ë”° / ì—¿ë´� + í›”ì³� / 기습 / 활보법 / ì¶”ì � / 방혼술 / charm / 가르ì³� / ì�€ë‘”법 [===================================================================] - "<¸í·É> µµ¿ò"À̶ó°í Ä¡¸é ÀÚ¼¼ÇÑ ¼³¸íÀÌ ³ª¿É´Ï´Ù. - " ÁÖ¹® µµ¿ò" Ä¡¸é ÁÖ¼úµéÀÇ ¼³¸íÀÌ ³ª¿É´Ï´Ù. + "<명령> ë�„움"ì�´ë�¼ê³  치면 ìž�세한 설명ì�´ 나옵니다. + " 주문 ë�„움" 치면 주술들ì�˜ 설명ì�´ 나옵니다. diff --git a/help/policy b/help/policy index 3eeae7ca..d3372733 100644 --- a/help/policy +++ b/help/policy @@ -1,67 +1,67 @@ -¸¶Áö¸· °»½ÅÀÏ: 95³â 9¿ù +마지막 갱신ì�¼: 95ë…„ 9ì›” -Áؼö»çÇ×: +준수사항: -´ÙÀ½Àº °ÔÀÓ¿¡¼­ ÁؼöÇØ¾ßÇÒ »çÇ×µéÀÔ´Ï´Ù. -¸¸ÀÏ À§¹Ý½Ã ±×¿¡´ëÇÑ »ó´çÇÑ ¹úÄ¢À» ¹Þ°Ô µË´Ï´Ù. -½ÉÁö¾î À§¹ÝÀÚ°¡ ¿µ¿øÈ÷ »èÁ¦µÉ¼öµµ ÀÖ½À´Ï´Ù. +다ì�Œì�€ 게임ì—�서 준수해야할 사항들입니다. +ë§Œì�¼ 위반시 ê·¸ì—�대한 ìƒ�당한 벌칙ì�„ 받게 ë�©ë‹ˆë‹¤. +심지어 위반ìž�ê°€ ì˜�ì›�히 ì‚­ì œë� ìˆ˜ë�„ 있습니다. -1. °ÔÀÓÀ» ±ú¶ß¸®Áö ¸¶¼¼¿ä. - ¿©·¯ºÐÀ» À§ÇØ Á¦À۵Ǿú½À´Ï´Ù. ¸¸ÀÏ ¼ö»óÇÑ ÇൿÀ» ÇÏ´Â »ç¶÷À» - ¹ß°ß½Ã ¿î¿µÀÚ¿¡°Ô ¿¬¶ôÁÖ¼¼¿ä. - °ÔÀÓÀÌ ±úÁö´Â °æ¿ì ¾öû³­ ±â°£µ¿¾È ´Ù½Ã ÀÛ¾÷À» ÇØ¾ß Çϰí - ±× µ¿¾È ¿©·¯ºÐÀº Á¢¼ÓÀ» ¸øÇÏ½Ç °ÍÀÔ´Ï´Ù. +1. 게임ì�„ 깨뜨리지 마세요. + 여러분ì�„ 위해 제작ë�˜ì—ˆìŠµë‹ˆë‹¤. ë§Œì�¼ 수ìƒ�한 í–‰ë�™ì�„ 하는 사람ì�„ + 발견시 ìš´ì˜�ìž�ì—�게 ì—°ë�½ì£¼ì„¸ìš”. + 게임ì�´ 깨지는 경우 엄청난 기간ë�™ì•ˆ 다시 작업ì�„ 해야 하고 + ê·¸ ë�™ì•ˆ 여러분ì�€ ì ‘ì†�ì�„ 못하실 것입니다. -2. ÀÓ¹«¿¡ °üÇÑ ¹°°ÇÀ» ÆÈÁö ¸¶¼¼¿ä. - ÀÓ¹«´Â °ÔÀÓÀÇ Áß¿äÇÑ ºÎºÐÀÔ´Ï´Ù. ¼­·Î Á¤º¸¸¦ ³ª´©°í ÇÔ²² - ¸ðÇèÀ» ³ª¼³¼ö ÀÖ°í, ¹°°ÇÀ» ºÐ¹èÇÒ¼ö ÀÖ½À´Ï´Ù. - ±×·¯³ª ÀÓ¹«¿¡ °üÇÑ ¹°°ÇÀ» ÆÄ´Â°ÍÀÌ Àû¹ßµÇ´Â °æ¿ì ±×¿¡ µû¸¥ - ¹úÄ¢À» ¹Þ°ÔµË´Ï´Ù. +2. 임무ì—� 관한 물건ì�„ 팔지 마세요. + 임무는 게임ì�˜ 중요한 부분입니다. 서로 정보를 나누고 함께 + 모험ì�„ 나설수 있고, 물건ì�„ 분배할수 있습니다. + 그러나 임무ì—� 관한 물건ì�„ 파는것ì�´ ì �ë°œë�˜ëŠ” 경우 ê·¸ì—� 따른 + 벌칙ì�„ 받게ë�©ë‹ˆë‹¤. -3. ±«¹°À» ´Ù¸¥ Àå¼Ò·Î À̵¿½ÃŰÁö ¸¶¼¼¿ä. - °­·ÂÇÑ ±«¹°À» Ãʺ¸Àڵ鿡°Ô·Î µ¥¸®°í °¡¸é ¾î¶»°Ô µÉ±î¿ä? +3. 괴물ì�„ 다른 장소로 ì�´ë�™ì‹œí‚¤ì§€ 마세요. + 강력한 괴물ì�„ 초보ìž�들ì—�게로 ë�°ë¦¬ê³  가면 어떻게 ë� ê¹Œìš”? -4. ŸÀÎÀ» ±«·ÓÈ÷Áö ¸¶¼¼¿ä. - ¸¸ÀÏ ±×·± °æ¿ì¸¦ ´çÇϸé '¹«½Ã'·Î µèÁö¸¶¼¼¿ä. - ¿î¿µÀÚ¿¡°Ô ¹ß°¢½Ã ¿ª½Ã ¹úÄ¢À» ¹Þ½À´Ï´Ù. +4. 타ì�¸ì�„ 괴롭히지 마세요. + ë§Œì�¼ 그런 경우를 당하면 '무시'로 듣지마세요. + ìš´ì˜�ìž�ì—�게 ë°œê°�시 역시 벌칙ì�„ 받습니다. -5. ´ÙÁß Á¢¼ÓÀ» ÇÏÁö ¸¶¼¼¿ä. - ´ÙÁß Á¢¼ÓÀ» ÇÒ°æ¿ì ÀÚ½ÅÀÌ ½É°¢ÇÑ ÇÇÇØ¸¦ º»´Ù°í ÇÕ´Ï´Ù. +5. 다중 ì ‘ì†�ì�„ 하지 마세요. + 다중 ì ‘ì†�ì�„ 할경우 ìž�ì‹ ì�´ 심ê°�한 피해를 본다고 합니다. -6. ŸÀÎÀ» Á¶Á¾ÇÏÁö ¸¶¼¼¿ä. - ¼­·ÎÀÇ °¨Á¤À» »óÇÏ°Ô ÇÕ´Ï´Ù. ¶ÇÇÑ °ÔÀÓ ³»¿ëÀ» ÁøÇàÇϴµ¥ - Àç¹Ì°¡ ¾ø¾îÁý´Ï´Ù. +6. 타ì�¸ì�„ 조종하지 마세요. + 서로ì�˜ ê°�ì •ì�„ ìƒ�하게 합니다. ë˜�한 게임 ë‚´ìš©ì�„ 진행하는ë�° + 재미가 없어집니다. -±âº» ¿¹Àý: +기본 예절: -´ÙÀ½Àº ±ÝÁöµÇÁö´Â ¾ÊÁö¸¸ ŸÀΰúÀÇ °ü°è¿¡ À־ ºÒÆíÀ» ÃÊ·¡ÇÏ´Ï -ÀÚÁ¦ÇؾßÇÒ ÇൿµéÀÔ´Ï´Ù. -½ÅÀÌ ¹úÀ» ³»¸±¼öµµ ÀÖÀ¸´Ï Á¶½ÉÇϼ¼¿ä, +다ì�Œì�€ 금지ë�˜ì§€ëŠ” 않지만 타ì�¸ê³¼ì�˜ 관계ì—� 있어서 불편ì�„ 초래하니 +ìž�제해야할 í–‰ë�™ë“¤ìž…니다. +ì‹ ì�´ 벌ì�„ 내릴수ë�„ 있으니 조심하세요, -1. ŸÀÎÀÌ °ø°ÝÇÏ´ø ±«¹°À» Á×ÀÌÁö ¸¶¼¼¿ä. +1. 타ì�¸ì�´ 공격하ë�˜ 괴물ì�„ 죽ì�´ì§€ 마세요. -2. ¸ðµÎ ÁÝÁö¸¶¼¼¿ä. - ÇÔ²² ÇÏ´Â »ç¶÷À» À§ÇØ ÇÊ¿ä¾ø´Â °ÍÀº ³²°ÜÁÖ¼¼¿ä. +2. 모ë‘� ì¤�지마세요. + 함께 하는 사람ì�„ 위해 필요없는 것ì�€ 남겨주세요. -3. »ç³ª¿î ±«¹°¿¡°Ô Ãʺ¸ÀÚµéÀ» ¼ÒȯÇÏÁö ¸¶¼¼¿ä. - ¹«½¼ÀÏÀÌ ÀϾÁö´Â ¾Ë°ÚÁÒ? +3. 사나운 괴물ì—�게 초보ìž�들ì�„ 소환하지 마세요. + 무슨ì�¼ì�´ ì�¼ì–´ë‚ ì§€ëŠ” 알겠죠? -4. ´õ·¯¿î ÇൿÀ̳ª ¾ð¾î¸¦ ¾²Áö ¸¶¼¼¿ä - »ó´ë¹æµµ ÀڽŰú µ¿ÀÏÇÑ »ç¶÷ÀÔ´Ï´Ù. ¿¹ÀǸ¦ ÁöÄѼ­ ÇൿÇϼ¼¿ä - ¸¸¾à ´©±º°¡°¡ °è¼ÓÀûÀÌ°í °íÀÇÀûÀ¸·Î ´õ·¯¿î ÇൿÀ̳ª ¾ð¾î¸¦ - »ç¿ëÇÑ´Ù¸é ¿î¿µÁø¿¡°Ô ¡°è¸¦ ¹Þ°Ô µË´Ï´Ù. +4. ë�”러운 í–‰ë�™ì�´ë‚˜ 언어를 ì“°ì§€ 마세요 + ìƒ�대방ë�„ ìž�ì‹ ê³¼ ë�™ì�¼í•œ 사람입니다. 예ì�˜ë¥¼ 지켜서 í–‰ë�™í•˜ì„¸ìš” + 만약 누군가가 계ì†�ì �ì�´ê³  ê³ ì�˜ì �으로 ë�”러운 í–‰ë�™ì�´ë‚˜ 언어를 + 사용한다면 ìš´ì˜�ì§„ì—�게 징계를 받게 ë�©ë‹ˆë‹¤. -ÀüÀïÀÇ ±ÔÄ¢ +ì „ìŸ�ì�˜ 규칙 -ÀüÀïÀÌ ¹ß¹ßÇÏ¸é ¿Õ±¹¿¡ ¼Ò¼ÓµÈ »ç¶÷µéÀº ¼­·Î¸¦ °ø°ÝÇÒ¼ö ÀÖ°Ô µË´Ï´Ù. -¼­·Î¸¦ Á×Àϼö Àֱ⿡ Á¶½É½º·´°Ô Çàµ¿ÇØ¾ß ÇÕ´Ï´Ù. +ì „ìŸ�ì�´ 발발하면 왕국ì—� 소ì†�ë�œ 사람들ì�€ 서로를 공격할수 있게 ë�©ë‹ˆë‹¤. +서로를 죽ì�¼ìˆ˜ 있기ì—� 조심스럽게 í–‰ë�™í•´ì•¼ 합니다. -1. ¹Ýµå½Ã ¼­·ÎÀÇ ÇÕÀǸ¦ °ÅÃļ­ ÀüÀïÀ» ÇØ¾ß ÇÕ´Ï´Ù. +1. 반드시 서로ì�˜ í•©ì�˜ë¥¼ ê±°ì³�서 ì „ìŸ�ì�„ 해야 합니다. -2. ¼­·Î ¾Ë¸ÂÀº ·¹º§³¢¸® ½Î¿ì¼Å¾ß ÇÕ´Ï´Ù. Àú·¹º§Àº Á×À̱⠽±´Ù°í - ã¾Æ°¡¼­ Á×ÀÌ¸é ¾ÊµË´Ï´Ù. +2. 서로 알맞ì�€ 레벨ë�¼ë¦¬ 싸우셔야 합니다. 저레벨ì�€ 죽ì�´ê¸° 쉽다고 + 찾아가서 죽ì�´ë©´ 않ë�©ë‹ˆë‹¤. -3. ¸¸ÀÏ ÀüÀï ¶§¹®¿¡ ÇÇÇØ¸¦ º¸´Â°Í °°À¸¸é Å»Å𸦠Çϼ¼¿ä. - ¿Õ±¹¿¡ ¼Ò¼ÓµÈ »ç¿ëÀÚÀÇ ÇÇÇØ´Â ¾Æ¹«µµ Ã¥ÀÓÁöÁö ¾Ê½À´Ï´Ù. +3. ë§Œì�¼ ì „ìŸ� 때문ì—� 피해를 보는것 같으면 탈퇴를 하세요. + 왕국ì—� 소ì†�ë�œ 사용ìž�ì�˜ 피해는 아무ë�„ 책임지지 않습니다. diff --git a/help/spell.0 b/help/spell.0 index 9c7b8977..0f72c3ea 100644 --- a/help/spell.0 +++ b/help/spell.0 @@ -1,7 +1,7 @@ -<< ȸº¹ >> -°¡Àå °£´ÜÇÑ Ä¡·áÁÖ¼úÀÔ´Ï´Ù. +<< 회복 >> +가장 간단한 치료주술입니다. -µµ·ÂÄ¡ : 2 +ë�„력치 : 2 -[ ¿¹ Á¦ ] -ȸº¹ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +회복 <대ìƒ�> 주문 diff --git a/help/spell.1 b/help/spell.1 index f9330ec7..96fdcaf1 100644 --- a/help/spell.1 +++ b/help/spell.1 @@ -1,8 +1,8 @@ -<< »èdz >> -dz°è¿­ÀÇ ÁÖ¼úÀÔ´Ï´Ù. -»ìÀ» ¿¡ÀÌ´Â ¸Å¼­¿î ¹Ù¶÷À» ºÒ·¯¿É´Ï´Ù. +<< ì‚­í’� >> +í’�계열ì�˜ 주술입니다. +ì‚´ì�„ ì—�ì�´ëŠ” 매서운 바람ì�„ 불러옵니다. -µµ·ÂÄ¡ : 3 +ë�„력치 : 3 -[ ¿¹ Á¦ ] -»èdz <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ì‚­í’� <대ìƒ�> 주문 diff --git a/help/spell.10 b/help/spell.10 index c6cce9c0..a3494460 100644 --- a/help/spell.10 +++ b/help/spell.10 @@ -1,7 +1,7 @@ -<< ÁÖ¹®°¨Áö >> -´ë»óÀÇ ÁÖ¹®À» °¨ÁöÇØ³À´Ï´Ù. +<< 주문ê°�ì§€ >> +대ìƒ�ì�˜ 주문ì�„ ê°�지해냅니다. -¸¶¹ýÄ¡ : 10 +마법치 : 10 -[ ¿¹ Á¦ ] -ÁÖ¹®°¨Áö <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +주문ê°�ì§€ <대ìƒ�> 주문 diff --git a/help/spell.11 b/help/spell.11 index f5246502..475d8081 100644 --- a/help/spell.11 +++ b/help/spell.11 @@ -1,9 +1,9 @@ -[ ÃàÁö¹ý ] -ºü¸¥ ½Ã°£¿¡ ´Ù¸¥ Àå¼Ò·Î °¥¼ö ÀÖ½À´Ï´Ù. -* ÁÖÀÇ * ÀÌ ¼ú¹ýÀº ¾ÆÁ÷ ¹Ì°³¹ßÀ̾ ¾îµð¿¡ °¥Áö ¸ð¸¨´Ï´Ù. - Áö±Ý ÇÐÀÚµéÀÌ ¿©±â¿¡ ´ëÇØ ¿¬±¸¸¦ Çϰí ÀÖ½À´Ï´Ù. +[ 축지법 ] +빠른 시간ì—� 다른 장소로 갈수 있습니다. +* 주ì�˜ * ì�´ 술법ì�€ ì•„ì§� 미개발ì�´ì–´ì„œ ì–´ë””ì—� 갈지 모릅니다. + 지금 í•™ìž�들ì�´ 여기ì—� 대해 연구를 하고 있습니다. -µµ·ÂÄ¡ : 20 +ë�„력치 : 20 -[ ¿¹ Á¦ ] -ÃàÁö¹ý <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +축지법 <대ìƒ�> 주문 diff --git a/help/spell.12 b/help/spell.12 index 2568cdb3..72969b1c 100644 --- a/help/spell.12 +++ b/help/spell.12 @@ -1,7 +1,7 @@ -<< È¥µ¿¼ú >> -»ó´ëÀÇ Á¤½ÅÀ» ¼ú¹ýÀ» ÅëÇØ Àá½Ã È¥µ¿½ÃÄÑ °ø°ÝÀ» ¸øÇÏ°Ô ÇÕ´Ï´Ù. +<< 혼ë�™ìˆ  >> +ìƒ�대ì�˜ ì •ì‹ ì�„ 술법ì�„ 통해 잠시 혼ë�™ì‹œì¼œ 공격ì�„ 못하게 합니다. -µµ·ÂÄ¡: 10 +ë�„력치: 10 -[ ¿¹ Á¦ ] -È¥µ¿¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +혼ë�™ìˆ  <대ìƒ�> 주문 diff --git a/help/spell.13 b/help/spell.13 index 9ae4f543..511d3b86 100644 --- a/help/spell.13 +++ b/help/spell.13 @@ -1,7 +1,7 @@ -<< ³úÀü(Òâï³) >> -dz(ù¦)°è¿­ 2¹øÂ° ¼­¿­ÀÇ °ø°Ý ÁÖ¼ú·Î½á ¹ø°³·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< 뇌전(雷電) >> +í’�(風)계열 2번째 서열ì�˜ 공격 주술로ì�¨ 번개로 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 15 +ë�„력치 : 15 -[ ¿¹ Á¦ ] -³úÀü <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +뇌전 <대ìƒ�> 주문 diff --git a/help/spell.14 b/help/spell.14 index 0571cedd..492f4b63 100644 --- a/help/spell.14 +++ b/help/spell.14 @@ -1,8 +1,8 @@ -<< µ¿¼³ÁÖ >> -¼ö °è¿­ÀÇ ÁÖ¼úÀÔ´Ï´Ù. -Á×À½ÀÇ ´«º¸¶ó¸¦ ÀÏÀ¸ÄÑ »ó´ë¹æ °ø°ÝÇÕ´Ï´Ù. +<< ë�™ì„¤ì£¼ >> +수 계열ì�˜ 주술입니다. +죽ì�Œì�˜ 눈보ë�¼ë¥¼ ì�¼ìœ¼ì¼œ ìƒ�대방 공격합니다. -µµ·ÂÄ¡ : 25 +ë�„력치 : 25 -[ ¿¹ Á¦ ] -µ¿¼³ÁÖ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ë�™ì„¤ì£¼ <대ìƒ�> 주문 diff --git a/help/spell.15 b/help/spell.15 index e01aa83b..629c49bb 100644 --- a/help/spell.15 +++ b/help/spell.15 @@ -1,8 +1,8 @@ -<< ºùÀÇ >> -¾î¶² ƯÁ¤ÇÑ ¹°°Ç¿¡ ÁÖ¼úÀ» °Ì´Ï´Ù. -µµ¼ú»ç¸¸ÀÌ °¡´ÉÇÏ°í ´É·Â¿¡ µû¶ó ´Ù¸¨´Ï´Ù. +<< ë¹™ì�˜ >> +ì–´ë–¤ 특정한 물건ì—� 주술ì�„ ê²�니다. +ë�„술사만ì�´ 가능하고 능력ì—� ë”°ë�¼ 다릅니다. -µµ·ÂÄ¡ : 25 +ë�„력치 : 25 -[ ¿¹ Á¦ ] -ºùÀÇ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ë¹™ì�˜ <대ìƒ�> 주문 diff --git a/help/spell.16 b/help/spell.16 index 2b1b6ea2..b8836e74 100644 --- a/help/spell.16 +++ b/help/spell.16 @@ -1,8 +1,8 @@ -<< ±Íȯ >> -´ç½ÅÀ» ¾ÈÀüÇÑ Áö¿ªÀ¸·Î À̵¿½Ãŵ´Ï´Ù. -ºÒÁ¦ÀÚ¸¸ÀÌ °¡´ÉÇÕ´Ï´Ù. +<< 귀환 >> +당신ì�„ 안전한 지역으로 ì�´ë�™ì‹œí‚µë‹ˆë‹¤. +불제ìž�ë§Œì�´ 가능합니다. -µµ·ÂÄ¡ : 25 +ë�„력치 : 25 -[¿¹Á¦] -±Íȯ <´ë»ó> ÁÖ¹® +[예제] +귀환 <대ìƒ�> 주문 diff --git a/help/spell.17 b/help/spell.17 index 51247a9a..c5c44f54 100644 --- a/help/spell.17 +++ b/help/spell.17 @@ -1,7 +1,7 @@ -<< ¼Òȯ >> -ƯÁ¤ÇÑ »ó´ë¹æÀ» ÀÚ½ÅÀÇ À§Ä¡·Î ºÒ·¯¿É´Ï´Ù. +<< 소환 >> +특정한 ìƒ�대방ì�„ ìž�ì‹ ì�˜ 위치로 불러옵니다. -µµ·ÂÄ¡ : 30 +ë�„력치 : 30 -[ ¿¹ Á¦ ] -¼Òȯ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +소환 <대ìƒ�> 주문 diff --git a/help/spell.18 b/help/spell.18 index 8a40ee31..84fbcb9b 100644 --- a/help/spell.18 +++ b/help/spell.18 @@ -1,7 +1,7 @@ -<< ¿ø±âȸº¹ >> -°­·ÂÇÑ Ã¼·Âȸº¹¼úÀÔ´Ï´Ù. +<< ì›�기회복 >> +강력한 체력회복술입니다. -µµ·ÂÄ¡ : 4 +ë�„력치 : 4 -[ ¿¹ Á¦ ] -¿ø±âȸº¹ <´ë»ó> +[ 예 ì œ ] +ì›�기회복 <대ìƒ�> diff --git a/help/spell.19 b/help/spell.19 index 10baed79..d852321e 100644 --- a/help/spell.19 +++ b/help/spell.19 @@ -1,9 +1,9 @@ -<< ¿ÏÄ¡ >> -¿Ïº®ÇÏ°Ô Ã¼·ÂÀ» ȸº¹ÇÕ´Ï´Ù. -ºÒÁ¦ÀÚ¿Í ¹«»çÀÇ ÁÖ¹®ÀÔ´Ï´Ù. -±×·¯³ª ÇÏ·ç¿¡ ¾µ¼öÀÖ´Â Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù. +<< 완치 >> +완벽하게 ì²´ë ¥ì�„ 회복합니다. +불제ìž�와 무사ì�˜ 주문입니다. +그러나 하루ì—� 쓸수있는 제한ì�´ 있습니다. -µµ·ÂÄ¡: 20 +ë�„력치: 20 -¿ÏÄ¡ <´ë»ó> ÁÖ¹® +완치 <대ìƒ�> 주문 diff --git a/help/spell.2 b/help/spell.2 index 33add80e..c0c81832 100644 --- a/help/spell.2 +++ b/help/spell.2 @@ -1,7 +1,7 @@ -<< ¹ß±¤ >> -¹àÀº ºûÀ» ³»°Ô ÇÏ¿© ÁÖÀ§¸¦ ¹àÇôÁÝ´Ï´Ù. +<< 발광 >> +ë°�ì�€ ë¹›ì�„ 내게 하여 주위를 ë°�혀ì¤�니다. -µµ·ÂÄ¡ : 5 +ë�„력치 : 5 -[ ¿¹ Á¦ ] -¹ß±¤ ÁÖ¹® +[ 예 ì œ ] +발광 주문 diff --git a/help/spell.21 b/help/spell.21 index 0becf33b..a6c24bd3 100644 --- a/help/spell.21 +++ b/help/spell.21 @@ -1,8 +1,8 @@ -<< ºÎ¾ç¼ú >> -ÀÚ½ÅÀÇ ±â·Î Áö¸é¿¡¼­ ¸öÀÌ ¾à°£ ¶°¿Ã¶ó ÇÔÁ¤À» ÇÇÇϰųª -¿À¸£³»¸±¶§ »ç¿ëµË´Ï´Ù. +<< 부양술 >> +ìž�ì‹ ì�˜ 기로 지면ì—�서 몸ì�´ 약간 떠올ë�¼ 함정ì�„ 피하거나 +오르내릴때 사용ë�©ë‹ˆë‹¤. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -ºÎ¾ç¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +부양술 <대ìƒ�> 주문 diff --git a/help/spell.22 b/help/spell.22 index b05e85ed..3eaa593d 100644 --- a/help/spell.22 +++ b/help/spell.22 @@ -1,7 +1,7 @@ -<< ¹æ¿­Áø >> -È­ÀÇ ±â¿îÀ¸·ÎºÎÅÍ ´ë»óÀ» º¸È£ÇØ ÁÝ´Ï´Ù. +<< ë°©ì—´ì§„ >> +í™”ì�˜ 기운으로부터 대ìƒ�ì�„ 보호해 ì¤�니다. -µµ·ÂÄ¡ : 12 +ë�„력치 : 12 -[ ¿¹ Á¦ ] -¹æ¿­Áø <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ë°©ì—´ì§„ <대ìƒ�> 주문 diff --git a/help/spell.23 b/help/spell.23 index 063892cb..8d719289 100644 --- a/help/spell.23 +++ b/help/spell.23 @@ -1,7 +1,7 @@ -<< ºñ»ó¼ú >> -¸öÀ» °øÁßÀ» ³¯°Ô ÇÕ´Ï´Ù. +<< 비ìƒ�술 >> +몸ì�„ 공중ì�„ 날게 합니다. -µµ·ÂÄ¡ : 15 +ë�„력치 : 15 -[ ¿¹ Á¦ ] -ºñ»ó¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +비ìƒ�술 <대ìƒ�> 주문 diff --git a/help/spell.24 b/help/spell.24 index 3d27551e..648cffda 100644 --- a/help/spell.24 +++ b/help/spell.24 @@ -1,7 +1,7 @@ -<< º¸¸¶Áø >> -ÁÖ¼ú °ø°Ý¿¡¼­ º¸È£ÇÕ´Ï´Ù. +<< 보마진 >> +주술 공격ì—�서 보호합니다. -µµ·ÂÄ¡: 12 +ë�„력치: 12 -[ ¿¹ Á¦ ] -º¸¸¶Áø <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +보마진 <대ìƒ�> 주문 diff --git a/help/spell.25 b/help/spell.25 index 954ff2c2..2bc89e9a 100644 --- a/help/spell.25 +++ b/help/spell.25 @@ -1,8 +1,8 @@ -<< ±Çdz¼ú >> -dz °è¿­ÀÇ ÁÖ¼úÀÔ´Ï´Ù. -±Ç¿¡ °­ÇÑ Ç³À» ¸¸µé¾î Àû¿¡°Ô Á÷°ÝŸ¸¦ ¸ÔÀÔ´Ï´Ù. +<< ê¶Œí’�술 >> +í’� 계열ì�˜ 주술입니다. +ê¶Œì—� 강한 í’�ì�„ 만들어 ì �ì—�게 ì§�격타를 먹입니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -±Çdz¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ê¶Œí’�술 <대ìƒ�> 주문 diff --git a/help/spell.26 b/help/spell.26 index b3f3ee66..0831e0d2 100644 --- a/help/spell.26 +++ b/help/spell.26 @@ -1,8 +1,8 @@ -<< Áöµ¿¼ú >> -Áö °è¿­ÀÇ ÁÖ¼úÀÔ´Ï´Ù. -¶¥¿¡ ¼ÓÇØ ÀÖ´Â ¹°ÁúµéÀÌ ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< ì§€ë�™ìˆ  >> +ì§€ 계열ì�˜ 주술입니다. +ë•…ì—� ì†�í•´ 있는 물질들ì�´ ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 3 +ë�„력치 : 3 -[ ¿¹ Á¦ ] -Áöµ¿¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ì§€ë�™ìˆ  <대ìƒ�> 주문 diff --git a/help/spell.27 b/help/spell.27 index 041b8d73..2c9c52cf 100644 --- a/help/spell.27 +++ b/help/spell.27 @@ -1,7 +1,7 @@ -<< È­¼±µµ >> -È­ °è¿­ÀÇ ÁÖ¼úÀÔ´Ï´Ù. -¸ö¿¡ ¼û¾î ÀÖ´Â ±ê¹ßµéÀÌ Àû¿¡°Ô ÆîÃÄÁý´Ï´Ù. +<< 화선ë�„ >> +í™” 계열ì�˜ 주술입니다. +몸ì—� 숨어 있는 깃발들ì�´ ì �ì—�게 펼ì³�집니다. -µµ·ÂÄ¡ : 3 -[ ¿¹ Á¦ ] -È­¼±µµ <´ë»ó> ÁÖ¹® +ë�„력치 : 3 +[ 예 ì œ ] +화선ë�„ <대ìƒ�> 주문 diff --git a/help/spell.28 b/help/spell.28 index acd9e023..95544c66 100644 --- a/help/spell.28 +++ b/help/spell.28 @@ -1,7 +1,7 @@ -<< ź¼ö°ø >> -¼ö °è¿­ÀÇ ÁÖ¼ú ÀÔ´Ï´Ù. -°ø±âÁß¿¡ ¶° ´Ù´Ï´Â ¼öÀÇ ±â¿îµéÀ» ¸ð¾Æ Àû¿¡°Ô °ø°ÝÇÕ´Ï´Ù. +<< 탄수공 >> +수 계열ì�˜ 주술 입니다. +공기중ì—� ë–  다니는 수ì�˜ 기운들ì�„ 모아 ì �ì—�게 공격합니다. -µµ·ÂÄ¡ : 3 -[ ¿¹ Á¦ ] -ź¼ö°ø <´ë»ó> ÁÖ¹® +ë�„력치 : 3 +[ 예 ì œ ] +탄수공 <대ìƒ�> 주문 diff --git a/help/spell.29 b/help/spell.29 index d02e80dc..b20a2b49 100644 --- a/help/spell.29 +++ b/help/spell.29 @@ -1,8 +1,8 @@ -<< dz¸¶Çö >> -dz °è¿­ÀÇ °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -°ËÀº ¸¶°¡ ±êµéÀº ¹Ù¶÷À¸·Î °ø°ÝÀ» ÇÕ´Ï´Ù. +<< í’�마현 >> +í’� 계열ì�˜ 강력한 공격주술입니다. +ê²€ì�€ 마가 깃들ì�€ 바람으로 공격ì�„ 합니다. -µµ·ÂÄ¡ : 7 +ë�„력치 : 7 -[ ¿¹ Á¦ ] -dz¸¶Çö <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +í’�마현 <대ìƒ�> 주문 diff --git a/help/spell.3 b/help/spell.3 index 2a09d52f..57e40a01 100644 --- a/help/spell.3 +++ b/help/spell.3 @@ -1,7 +1,7 @@ -<< ÇØµ¶ >> -µ¶À» Ä¡·áÇÒ ¼ö ÀÖ´Â ÁÖ¹®ÀÔ´Ï´Ù. +<< í•´ë�… >> +ë�…ì�„ 치료할 수 있는 주문입니다. -µµ·ÂÄ¡ : 6 +ë�„력치 : 6 -[ ¿¹ Á¦ ] -ÇØµ¶ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +í•´ë�… <대ìƒ�> 주문 diff --git a/help/spell.30 b/help/spell.30 index 0beab9ba..415b83f2 100644 --- a/help/spell.30 +++ b/help/spell.30 @@ -1,8 +1,8 @@ -<< ÆÄÃÊ½Ä >> -¼ö °è¿­ÀÇ °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -Ç®ÀÙ¸ð¾çÀÇ ¹°°áÀÌ ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< 파초ì‹� >> +수 계열ì�˜ 강력한 공격주술입니다. +풀잎모양ì�˜ 물결ì�´ ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 7 +ë�„력치 : 7 -[ ¿¹ Á¦ } -ÆÄÃÊ½Ä <´ë»ó> ÁÖ¹® +[ 예 ì œ } +파초ì‹� <대ìƒ�> 주문 diff --git a/help/spell.31 b/help/spell.31 index 878cabd4..3d0779f8 100644 --- a/help/spell.31 +++ b/help/spell.31 @@ -1,8 +1,8 @@ -<< ÆøÁø >> -Áö °è¿­ÀÇ °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -³­ÆøÇÑ Áö·æÀ» ºÒ·¯µé¿© ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< í�­ì§„ >> +ì§€ 계열ì�˜ 강력한 공격주술입니다. +난í�­í•œ 지룡ì�„ 불러들여 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 7 +ë�„력치 : 7 -[ ¿¹ Á¦ ] -ÆøÁø <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +í�­ì§„ <대ìƒ�> 주문 diff --git a/help/spell.32 b/help/spell.32 index 3e70cf63..0945a967 100644 --- a/help/spell.32 +++ b/help/spell.32 @@ -1,8 +1,8 @@ -<< ³«¼® >> -Áö °è¿­ÀÇ ¾ÆÁÖ °­·ÂÇÑ ÁÖ¹®ÀÔ´Ï´Ù. -¿°·ÂÀ¸·Î ¹ÙÀ§¸¦ µé¾î ¿Ã·Á ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< ë‚™ì„� >> +ì§€ 계열ì�˜ 아주 강력한 주문입니다. +염력으로 바위를 들어 올려 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -³«¼® <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ë‚™ì„� <대ìƒ�> 주문 diff --git a/help/spell.33 b/help/spell.33 index be4d88b8..95a993ba 100644 --- a/help/spell.33 +++ b/help/spell.33 @@ -1,8 +1,8 @@ -<< ȭdz¼ú >> -È­ °è¿­ÀÇ ¾ÆÁÖ °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -ºÒ¹Ù¶÷À» ÀÏÀ¸ÄÑ ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< í™”í’�술 >> +í™” 계열ì�˜ 아주 강력한 공격주술입니다. +불바람ì�„ ì�¼ìœ¼ì¼œ ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -ȭdz¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +í™”í’�술 <대ìƒ�> 주문 diff --git a/help/spell.34 b/help/spell.34 index 7b1e392c..d6ee46ef 100644 --- a/help/spell.34 +++ b/help/spell.34 @@ -1,8 +1,8 @@ -<< È­·æ´ëõ >> -È­°è¿­ÀÇ ¾ÆÁÖ °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -È­»êÀ» ¼öÈ£ÇÏ´Â È­·æÀ» ºÒ·¯µé¿© ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< 화룡대천 >> +화계열ì�˜ 아주 강력한 공격주술입니다. +화산ì�„ 수호하는 화룡ì�„ 불러들여 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -È­·æ´ëõ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +화룡대천 <대ìƒ�> 주문 diff --git a/help/spell.35 b/help/spell.35 index c19fb667..f9551524 100644 --- a/help/spell.35 +++ b/help/spell.35 @@ -1,8 +1,8 @@ -<< ÅäÇÕ¼ú >> -Áö(ò¢)°è¿­ÀÇ °¡Àå °­·ÂÇÑ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -¶¥¿¡ ÁöÁøÀ» ÀÏÀ¸ÄÑ ÀûÀ» »ïÄÑ ¹ö¸³´Ï´Ù. +<< 토합술 >> +ì§€(地)계열ì�˜ 가장 강력한 공격주술입니다. +ë•…ì—� 지진ì�„ ì�¼ìœ¼ì¼œ ì �ì�„ 삼켜 버립니다. -µµ·ÂÄ¡: 15 +ë�„력치: 15 -[ ¿¹ Á¦ ] -ÅäÇÕ¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +토합술 <대ìƒ�> 주문 diff --git a/help/spell.36 b/help/spell.36 index 64054540..3d87f636 100644 --- a/help/spell.36 +++ b/help/spell.36 @@ -1,8 +1,8 @@ -<< ÁÖÀÛÇö >> -È­ °è¿­ ÃÖ°í¼öÁØÀÇ °ø°Ý ÁÖ¼úÀÔ´Ï´Ù. -È­ÀÇ ÁÖÀÛÀ» ºÒ·¯µé¿© ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< 주작현 >> +í™” 계열 최고수준ì�˜ 공격 주술입니다. +í™”ì�˜ 주작ì�„ 불러들여 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 15 +ë�„력치 : 15 -[ ¿¹ Á¦ ] -ÁÖÀÛÇö <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +주작현 <대ìƒ�> 주문 diff --git a/help/spell.37 b/help/spell.37 index 9f9938f9..5472a12e 100644 --- a/help/spell.37 +++ b/help/spell.37 @@ -1,8 +1,8 @@ -<< ¿­»çõ >> -¼ö °è¿­ ÃÖ°í ¼öÁØÀÇ °ø°Ý ÁÖ¼úÀÔ´Ï´Ù. -¶ß°Å¿î ¿ë¾ÏÀ¸·Î Àû¿¡°Ô Ãâ¼ö¸¦ ÇÕ´Ï´Ù. +<< 열사천 >> +수 계열 최고 수준ì�˜ 공격 주술입니다. +뜨거운 용암으로 ì �ì—�게 출수를 합니다. -¸¶¹ýÄ¡ : 15 +마법치 : 15 -[ ¿¹ Á¦ ] -¿­»çõ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +열사천 <대ìƒ�> 주문 diff --git a/help/spell.38 b/help/spell.38 index 1b211c26..b1958e83 100644 --- a/help/spell.38 +++ b/help/spell.38 @@ -1,8 +1,8 @@ -<< ÆÄõdz >> -dz °è¿­ ÃÖ°í °æÁöÀÇ ¼öÁØÀ» ³Ñ¾î¼± °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -õÁö¸¦ ¼Ò¸ê ½Ãų ¼ö ÀÖ´Â ÈûÀ» ºÒ·¯µé¿© ÀûÀ» °ø°ÝÇÕ´Ï´Ù. +<< 파천í’� >> +í’� 계열 최고 경지ì�˜ 수준ì�„ 넘어선 공격주술입니다. +천지를 소멸 시킬 수 있는 힘ì�„ 불러들여 ì �ì�„ 공격합니다. -µµ·ÂÄ¡ : 25 +ë�„력치 : 25 -[ ¿¹ Á¦ ] -ÆÄõdz <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +파천í’� <대ìƒ�> 주문 diff --git a/help/spell.39 b/help/spell.39 index d66f11a2..2be909bd 100644 --- a/help/spell.39 +++ b/help/spell.39 @@ -1,8 +1,8 @@ -<< Áö¿ÁÆÐ >> -Áö(ò¢)°è¿­ ÃÖ°íÀÇ °æÁö¸¦ ³Ñ¾î¼± °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -Áö¿ÁÀÇ 33ÀÇ »çÀÚ¸¦ ºÒ·¯µé¿© ÀûÀ» ¹«ÂüÈ÷ µµ·úÇØ ¹ö¸³´Ï´Ù. +<< 지옥패 >> +ì§€(地)계열 최고ì�˜ 경지를 넘어선 공격주술입니다. +지옥ì�˜ 33ì�˜ 사ìž�를 불러들여 ì �ì�„ 무참히 ë�„륙해 버립니다. -µµ·ÂÄ¡ : 25 +ë�„력치 : 25 -[ ¿¹ Á¦ ] -Áö¿ÁÆÐ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +지옥패 <대ìƒ�> 주문 diff --git a/help/spell.4 b/help/spell.4 index b029bab2..5d8db9fc 100644 --- a/help/spell.4 +++ b/help/spell.4 @@ -1,7 +1,7 @@ -<< ¼ºÇö >> -¼º½º·¯¿î ÈûÀ¸·Î ´ç½ÅÀÇ ´É·ÂÀ» ¿Ã·ÁÁÝ´Ï´Ù. +<< 성현 >> +성스러운 힘으로 당신ì�˜ 능력ì�„ 올려ì¤�니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -¼ºÇö <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +성현 <대ìƒ�> 주문 diff --git a/help/spell.40 b/help/spell.40 index 11cd5e46..3bed84a6 100644 --- a/help/spell.40 +++ b/help/spell.40 @@ -1,8 +1,8 @@ -<< žç¾È >> -ºÒ°è¿­ÀÇ ÃÖ°íÀÇ °æÁö¸¦ ³Ñ¾î¼± °ø°ÝÁÖ¼úÀÔ´Ï´Ù. -¾ç¹Ì°£¿¡ žç¾ÈÀ̶ó´Â »ïÁö¾ÈÀ» ¸¸µé¾î ÀûÀ» Å¿ö¹ö¸³´Ï´Ù. +<< 태양안 >> +불계열ì�˜ 최고ì�˜ 경지를 넘어선 공격주술입니다. +양미간ì—� 태양안ì�´ë�¼ëŠ” 삼지안ì�„ 만들어 ì �ì�„ 태워버립니다. -µµ·ÂÄ¡: 25 +ë�„력치: 25 -[ ¿¹ Á¦ ] -žç¾È <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +태양안 <대ìƒ�> 주문 diff --git a/help/spell.41 b/help/spell.41 index 15b9ce0a..d4bae901 100644 --- a/help/spell.41 +++ b/help/spell.41 @@ -1,6 +1,6 @@ -<< ¼±¾Ç°¨Áö >> -´ë»óÀÇ ¼±¾ÇÀ» °¨ÁöÇÕ´Ï´Ù. +<< ì„ ì•…ê°�ì§€ >> +대ìƒ�ì�˜ ì„ ì•…ì�„ ê°�지합니다. -µµ·ÂÄ¡: 6 -[ ¿¹ Á¦ ] -¼±¾Ç°¨Áö <´ë»ó> ÁÖ¹® +ë�„력치: 6 +[ 예 ì œ ] +ì„ ì•…ê°�ì§€ <대ìƒ�> 주문 diff --git a/help/spell.42 b/help/spell.42 index 18237d37..396a4fb8 100644 --- a/help/spell.42 +++ b/help/spell.42 @@ -1,7 +1,7 @@ -<< ÀúÁÖÇØ¼Ò >> -´ë»óÀÇ ÀúÁÖ¸¦ Ç®¾îÁÝ´Ï´Ù. +<< 저주해소 >> +대ìƒ�ì�˜ 저주를 풀어ì¤�니다. -µµ·ÂÄ¡: 18 +ë�„력치: 18 -[ ¿¹ Á¦ ] -ÀúÁÖÇØ¼Ò <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +저주해소 <대ìƒ�> 주문 diff --git a/help/spell.43 b/help/spell.43 index b4d5c223..3e1a5205 100644 --- a/help/spell.43 +++ b/help/spell.43 @@ -1,7 +1,7 @@ -<< ÃßÀ§º¸È£ >> -°­·ÂÇÑ ÃßÀ§·ÎºÎÅÍ ¸öÀ» º¸È£ÇÕ´Ï´Ù. +<< 추위보호 >> +강력한 추위로부터 몸ì�„ 보호합니다. -µµ·ÂÄ¡: 12 +ë�„력치: 12 -[ ¿¹ Á¦ ] -ÃßÀ§º¸È£ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +추위보호 <대ìƒ�> 주문 diff --git a/help/spell.44 b/help/spell.44 index 84a8b3fb..a78364b6 100644 --- a/help/spell.44 +++ b/help/spell.44 @@ -1,7 +1,7 @@ -<< ¼ö»ý¼ú >> -¹°¿¡¼­µµ ¼ûÀ» ½¯¼ö ÀÖ°Ô ÇÕ´Ï´Ù. +<< 수ìƒ�술 >> +물ì—�서ë�„ 숨ì�„ 쉴수 있게 합니다. -µµ·ÂÄ¡ : 12 +ë�„력치 : 12 -[ ¿¹ Á¦ ] -¼ö»ý¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +수ìƒ�술 <대ìƒ�> 주문 diff --git a/help/spell.45 b/help/spell.45 index 83709fb8..9e54aff1 100644 --- a/help/spell.45 +++ b/help/spell.45 @@ -1,7 +1,7 @@ -<< Áö¹æÈ£ >> -¶¥ÀÇ ±â¿îÀ¸·Î ¹æÆÐ¸¦ ¸¸µé¾î ÁÖÀ§¸¦ °¨½Ô´Ï´Ù. +<< 지방호 >> +ë•…ì�˜ 기운으로 방패를 만들어 주위를 ê°�쌉니다. -µµ·ÂÄ¡ : 12 +ë�„력치 : 12 -[ ¿¹ Á¦ ] -Áö¹æÈ£ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +지방호 <대ìƒ�> 주문 diff --git a/help/spell.46 b/help/spell.46 index 62618e9b..046ea742 100644 --- a/help/spell.46 +++ b/help/spell.46 @@ -1,8 +1,8 @@ -<< õ¸®¾È >> -´ë»óÀÌ ¾î´À°÷¿¡ ÀÖ´ÂÁö ¾Ë ¼ö ÀÖ½À´Ï´Ù. -** Ç×»ó ¼º°øÇÏÁö´Â ¾Ê½À´Ï´Ù. ** +<< 천리안 >> +대ìƒ�ì�´ ì–´ëŠ�ê³³ì—� 있는지 알 수 있습니다. +** í•­ìƒ� 성공하지는 않습니다. ** -µµ·ÂÄ¡ : 15 +ë�„력치 : 15 -[ ¿¹ Á¦ ] -õ¸®¾È <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +천리안 <대ìƒ�> 주문 diff --git a/help/spell.48 b/help/spell.48 index 98f8dd3e..10bf1bfb 100644 --- a/help/spell.48 +++ b/help/spell.48 @@ -1,7 +1,7 @@ -<< Ä¡·á >> -º´ÀÌ °É¸° ¸öÀ» Ä¡·áÇÕ´Ï´Ù. +<< 치료 >> +병ì�´ 걸린 몸ì�„ 치료합니다. -µµ·ÂÄ¡: 12 +ë�„력치: 12 -[ ¿¹ Á¦ ] -Ä¡·á <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +치료 <대ìƒ�> 주문 diff --git a/help/spell.49 b/help/spell.49 index 041942bc..83c69d5c 100644 --- a/help/spell.49 +++ b/help/spell.49 @@ -1,7 +1,7 @@ -<< °³¾È¼ú >> -´«ÀÇ »óó¸¦ Ä¡·áÇÕ´Ï´Ù. +<< 개안술 >> +눈ì�˜ ìƒ�처를 치료합니다. -µµ·ÂÄ¡: 12 +ë�„력치: 12 -[ ¿¹ Á¦ ] -°³¾È¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +개안술 <대ìƒ�> 주문 diff --git a/help/spell.5 b/help/spell.5 index 2db57c29..e0d1039c 100644 --- a/help/spell.5 +++ b/help/spell.5 @@ -1,7 +1,7 @@ -<< ¼öÈ£Áø >> -ºûÀÇ ¼öÈ£·ÉÀ» ºÒ·¯ µé¿© ¹æ¾î·ÂÀ» ³ôÀÔ´Ï´Ù. +<< 수호진 >> +ë¹›ì�˜ 수호령ì�„ 불러 들여 ë°©ì–´ë ¥ì�„ 높입니다. -µµ·ÂÄ¡ : 10 +ë�„력치 : 10 -[ ¿¹ Á¦ ] -¼öÈ£Áø <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +수호진 <대ìƒ�> 주문 diff --git a/help/spell.50 b/help/spell.50 index 8a9fa383..2f37e53b 100644 --- a/help/spell.50 +++ b/help/spell.50 @@ -1,8 +1,8 @@ -<< °øÆ÷ >> -ÀûÀ» °øÆ÷¿¡ ¶³°ÔÇÕ´Ï´Ù. -ÀüÅõ¿¡¼­ »ç±â¸¦ ¶³¾î¶ß·Á ´É·ÂÀ» °¨¼Ò½Ãŵ´Ï´Ù. +<< ê³µí�¬ >> +ì �ì�„ ê³µí�¬ì—� 떨게합니다. +전투ì—�서 사기를 떨어뜨려 능력ì�„ ê°�소시킵니다. -µµ·ÂÄ¡: 15 +ë�„력치: 15 -[ ¿¹ Á¦ ] -°øÆ÷ <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ê³µí�¬ <대ìƒ�> 주문 diff --git a/help/spell.51 b/help/spell.51 index 8e37b22d..6e348876 100644 --- a/help/spell.51 +++ b/help/spell.51 @@ -1,7 +1,7 @@ -<< Àüȸº¹ >> -¹æ¾È¿¡ ¸ðµç »ç¶÷¿¡°Ô ȸº¹ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù. +<< 전회복 >> +방안ì—� 모든 사람ì—�게 회복 주문ì�„ 외ì›�니다. -µµ·ÂÄ¡: 12 +ë�„력치: 12 -[ ¿¹ Á¦ ] -Àüȸº¹ ÁÖ¹® +[ 예 ì œ ] +전회복 주문 diff --git a/help/spell.52 b/help/spell.52 index 607d9d3d..3286751e 100644 --- a/help/spell.52 +++ b/help/spell.52 @@ -1,8 +1,8 @@ -<< Àü¼Û >> -µµ¼ú»çÀÇ ÁÖ¹®À¸·Î ÀÚ½ÅÀÇ ¹°°ÇÀ» ŸÀο¡°Ô Àü¼ÛÇÒ¶§ -¾²ÀÌ´Â ÁÖ¹®ÀÌ´Ù. +<< 전송 >> +ë�„술사ì�˜ 주문으로 ìž�ì‹ ì�˜ 물건ì�„ 타ì�¸ì—�게 전송할때 +ì“°ì�´ëŠ” 주문ì�´ë‹¤. -µµ·ÂÄ¡: 9 +ë�„력치: 9 -[ ¿¹ Á¦ ] -Àü¼Û ´Ü°Ë ŸÀÌ ÁÖ¹® +[ 예 ì œ ] +전송 단검 타ì�´ 주문 diff --git a/help/spell.53 b/help/spell.53 index d8f3e762..7bd632b1 100644 --- a/help/spell.53 +++ b/help/spell.53 @@ -1,7 +1,7 @@ -<< ½Ç ¸í >> +<< 실 명 >> -»ó´ëÀÇ ´«À» ¸Ö°ÔÇÏ¿© ÀûÀ» ±ÃÁö¿¡ ¸ô¾Æ³Ö½À´Ï´Ù. +ìƒ�대ì�˜ 눈ì�„ 멀게하여 ì �ì�„ ê¶�ì§€ì—� 몰아넣습니다. -[¿¹ Á¦] -:»ýÁ㠽Ǹí ÁÖ¹® -»ýÁãÀÇ ´«ÀÌ ¸Ö¾ú½À´Ï´Ù. +[예 ì œ] +:ìƒ�ì¥� 실명 주문 +ìƒ�ì¥�ì�˜ 눈ì�´ 멀었습니다. diff --git a/help/spell.55 b/help/spell.55 index 1a6f6494..208b88f1 100644 --- a/help/spell.55 +++ b/help/spell.55 @@ -1,9 +1,9 @@ -<< ÀÌÈ¥´ë¹ý >> -´ë»óÀÇ È¥À» »ç·ÎÀâ¾Æ ´ç½ÅÀÇ Æ÷·Î·Î ¸¸µì´Ï´Ù. -ÁÖ¹®¿¡ °É¸° ´ë»óÀº °ø°ÝÀûÀÎ ÇൿÀ» ÇÏÁö ¸øÇÕ´Ï´Ù. +<< ì�´í˜¼ëŒ€ë²• >> +대ìƒ�ì�˜ 혼ì�„ 사로잡아 당신ì�˜ í�¬ë¡œë¡œ 만듭니다. +주문ì—� 걸린 대ìƒ�ì�€ 공격ì �ì�¸ í–‰ë�™ì�„ 하지 못합니다. -µµ·ÂÄ¡: 15 +ë�„력치: 15 -[¿¹ Á¦ ] -ÀÌÈ¥´ë¹ý <´ë»ó> ÁÖ¹® +[예 ì œ ] +ì�´í˜¼ëŒ€ë²• <대ìƒ�> 주문 diff --git a/help/spell.6 b/help/spell.6 index 9826cfee..a9008c24 100644 --- a/help/spell.6 +++ b/help/spell.6 @@ -1,7 +1,7 @@ -<< È­±Ã >> -È­ °è¿­ÀÇ °ø°ÝÁÖ¼úÀÔ´Ï´Ù. +<< í™”ê¶� >> +í™” 계열ì�˜ 공격주술입니다. -µµ·ÂÄ¡ : 7 +ë�„력치 : 7 -[ ¿¹ Á¦ ] -È­±Ã <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +í™”ê¶� <대ìƒ�> 주문 diff --git a/help/spell.7 b/help/spell.7 index 69245d4d..e713a556 100644 --- a/help/spell.7 +++ b/help/spell.7 @@ -1,7 +1,7 @@ -<< ÀºµÐ¼ú >>> -ÀûÀÇ ´«±æÀ» ÇÇÇѼö ÀÖ´Â ÁÖ¼úÀÔ´Ï´Ù. +<< ì�€ë‘”술 >>> +ì �ì�˜ 눈길ì�„ 피한수 있는 주술입니다. -µµ·ÂÄ¡ : 15 +ë�„력치 : 15 -[ ¿¹ Á¦ ] -ÀºµÐ¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ì�€ë‘”술 <대ìƒ�> 주문 diff --git a/help/spell.8 b/help/spell.8 index 69a3f429..5a490848 100644 --- a/help/spell.8 +++ b/help/spell.8 @@ -1,2 +1,2 @@ -µµ¿ò¸»: - ȸº¹ +ë�„움ë§�: + 회복 diff --git a/help/spell.9 b/help/spell.9 index 4b9cb11c..909024b6 100644 --- a/help/spell.9 +++ b/help/spell.9 @@ -1,7 +1,7 @@ -<< ÀºµÐ°¨Áö¼ú >> -ÀºµÐ¼úÀ» »ç¿ëÇØ ¼û¾îÀÖ´Â »ó´ë¹æÀ» º¼¼ö ÀÖ½À´Ï´Ù. +<< ì�€ë‘”ê°�지술 >> +ì�€ë‘”술ì�„ 사용해 숨어있는 ìƒ�대방ì�„ 볼수 있습니다. -µµ·ÂÄ¡: 10 +ë�„력치: 10 -[ ¿¹ Á¦ ] -ÀºµÐ°¨Áö¼ú <´ë»ó> ÁÖ¹® +[ 예 ì œ ] +ì�€ë‘”ê°�지술 <대ìƒ�> 주문 diff --git a/help/spellfile b/help/spellfile index cabc1a6f..8b91566e 100644 --- a/help/spellfile +++ b/help/spellfile @@ -1,34 +1,34 @@ - º¸È£ ÁÖ¹® °ø°ÝÁÖ¹® + 보호 주문 공격주문 ------------------------ --------------------------- - ¼ºÇöÁø Áö¹æÈ£ - ¹æ¿­Áø º¸¸¶Áø ¶¥°è¿­ ¹Ù¶÷°è¿­ - ¼öÈ£Áø ¹æÇÑÁø ----------- ------------ - Áöµ¿¼ú »èdz - Ä¡·á ÁÖ¹® ȸº¹ ÁÖ¹® ÆøÁø dz¸¶Çö ------------------------ ³«¼® ±Çdz¼ú - ÅäÇÕ¼ú ³úÀü - ÇØµ¶ ȸº¹ Áö¿ÁÆÐ ÆÄõdz - Ä¡·á ¿ø±âȸº¹ - °³¾È¼ú ¿ÏÄ¡ - Àüȸº¹ ºÒ°è¿­ ¹°°è¿­ -ÀúÁÖÇØ¼Ò ----------- ------------ - °¨Áö ÁÖ¹® È­¼±µµ ź¼ö°ø ------------------------ È­±Ã ÆÄÃÊ½Ä - ȭdz¼ú È­·æ´ëõ - ¼±¾Ç°¨Áö ÁÖ¹®°¨Áö¼ú ÁÖÀÛÇö ¿­»çõ -ÀºµÐ°¨Áö¼ú õ¸®¾È žç¾È µ¿¼³ÁÖ + 성현진 지방호 + ë°©ì—´ì§„ 보마진 땅계열 바람계열 + 수호진 방한진 ----------- ------------ + ì§€ë�™ìˆ  ì‚­í’� + 치료 주문 회복 주문 í�­ì§„ í’�마현 +----------------------- ë‚™ì„� ê¶Œí’�술 + 토합술 뇌전 + í•´ë�… 회복 지옥패 파천í’� + 치료 ì›�기회복 + 개안술 완치 + 전회복 불계열 물계열 +저주해소 ----------- ------------ + ê°�ì§€ 주문 화선ë�„ 탄수공 +----------------------- í™”ê¶� 파초ì‹� + í™”í’�술 화룡대천 + ì„ ì•…ê°�ì§€ 주문ê°�지술 주작현 열사천 +ì�€ë‘”ê°�지술 천리안 태양안 ë�™ì„¤ì£¼ - ±âŸ °ø°Ý ÁÖ¹® - ±âŸ ÁÖ¹® --------------------------- ----------------------- ½Ç¸í °øÆ÷ - ºùÀÇ ºÎ¾ç¼ú È¥µ¿ ÀÌÈ¥´ë¹ý - ¼Òȯ ºñ»ó¼ú - ±Íȯ ÀºµÐ¹ý - ¹ß±¤ ÃàÁö¹ý -¼ö»ý¼ú ÃßÀû + 기타 공격 주문 + 기타 주문 --------------------------- +---------------------- 실명 ê³µí�¬ + ë¹™ì�˜ 부양술 혼ë�™ ì�´í˜¼ëŒ€ë²• + 소환 비ìƒ�술 + 귀환 ì�€ë‘”법 + 발광 축지법 +수ìƒ�술 ì¶”ì � -"<ÁÖ¼ú> µµ¿ò"À» ÀÔ·ÂÇϽøé ÀÚ¼¼ÇÑ ³»¿ëÀÌ ³ªÅ¸³³´Ï´Ù. -/// À§ ÁÖ¹®À̸§À» ´Ù Ä¥ ÇÊ¿ä¾øÀÌ ¾àÀÚ¸¸ Ãĵµ µË´Ï´Ù. ´Ù¸¥°Íµéµµ¿ä... /// -[ ¿¹ Á¦ ] -ÀÌÈ¥´ë¹ý ÁÖ¹® ==> ÀÌÈ¥ ÁÖ¹® (o.k) +"<주술> ë�„움"ì�„ 입력하시면 ìž�세한 ë‚´ìš©ì�´ 나타납니다. +/// 위 주문ì�´ë¦„ì�„ 다 ì¹  필요없ì�´ 약ìž�ë§Œ ì³�ë�„ ë�©ë‹ˆë‹¤. 다른것들ë�„ìš”... /// +[ 예 ì œ ] +ì�´í˜¼ëŒ€ë²• 주문 ==> ì�´í˜¼ 주문 (o.k) diff --git a/help/welcome b/help/welcome index 6ce434c4..30fb3d26 100644 --- a/help/welcome +++ b/help/welcome @@ -1,121 +1,121 @@ -¹«ÇÑ´ëÀü +무한대전 -½Ã³ª¸®¿À Á¦ÀÛÀÚ: À̼ö³², ±ÇÇѽÄ, ÀÌÁ¤±Õ +시나리오 제작ìž�: ì�´ìˆ˜ë‚¨, 권한ì‹�, ì�´ì •ê·  **************************************************************************** - ¾Ë¸²: Ãʺ¸ÀÚµéÀº ¹Ýµå½Ã ÀÚ¼¼È÷ ÀÐÀ¸¼¼¿ä. + 알림: 초보ìž�들ì�€ 반드시 ìž�세히 ì�½ìœ¼ì„¸ìš”. **************************************************************************** -¼Ò°³ - ¹«ÇÑ´ëÀüÀº MUD(Multi-User Dungeon)°ÔÀÓÀÔ´Ï´Ù. - À̰ÍÀº ½Ç½Ã°£À¸·Î ´Ù¸¥ »ç¿ëÀÚµé°ú Çù·ÂÇÏ°í °æÀïÇϸ鼭 Áñ±â´Â °ÔÀÓÀÔ´Ï´Ù - ¿©±â °£´ÜÇÑ ¸í·É°ú °ÔÀÓÀ» ÁøÇàÇϱâÀ§ÇÑ ¸î¸î Á¤º¸µéÀ» ¿©·¯ºÐ²² - ¼Ò°³ÇØ µå¸®°Ú½À´Ï´Ù. - -¸í·É ÀÔ·Â - ÀԷºκÐÀº µµ½ºÀÇ ÇÁ·ÒÇÁÆ® °°ÀÌ ³ªÅ¸³³´Ï´Ù. - ¸í·É ÇØ¼®±â´Â ¶È¶ÈÇØ¼­ ¸î¸î°æ¿ì¸¦ Á¦¿ÜÇϰí´Â ÁÙÀÓ¸»µéÀ» ÀνÄÇÒ°ÍÀÔ´Ï´Ù - (¿ä ºÎºÐ¿¡¼­ ¹«Ã´ ¾Ö¸Ô¾úÀ½) - À̺κп¡´Ù ¸í·ÉÀ̳ª ¸»À» ÀÔ·ÂÇÔÀ¸·Î °ÔÀÓÀ» ÁøÇàÇÏ°Ô µÇ´Â°ÍÀÔ´Ï´Ù. - -µµ¿ò - µµ¿òÀ̶ó°í ÀÔ·ÂÀ» ÇÏ½Ã¸é µµ¿ò¸»À» º¸½Ç¼ö ÀÖ½À´Ï´Ù. - <Ç׸ñ> µµ¿òÀ̶ó Ä¡½Ã¸é ±× Ç׸ñÀÇ µµ¿ò¸»ÀÌ Ãâ·ÂµË´Ï´Ù. - ¹Ýµå½Ã µµ¿ò¸»À» ¼÷ÁöÇÏ½Ã°í °ÔÀÓ¿¡ ÀÓÇÏ¼Å¾ß »ì¾Æ³²À»¼ö ÀÖ½À´Ï´Ù. - -Åë½Å - ¿©·¯ »ç¿ëÀÚµéÀÌ Á¸ÀçÇϱ⶧¹®¿¡ ´Ù¸¥ »ç¿ëÀÚµé°ú À̾߱âÇÏ´Â ¹æ¹ýÀÌ - ¸î°¡Áö ÀÖ½À´Ï´Ù. - <¹®Àå> ¸», <¹®Àå> ', <¹®Àå> " À̰ÍÀº °°Àº ¹æ¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô - ÀÚ½ÅÀÇ Àǻ縦 ÀüÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. - <¹®Àå> ¿ÜÃÄ À̰ÍÀº ±Ùó¿¡ ÀÖ´Â »ç¶÷µéµµ µéÀ»¼ö ÀÖ½À´Ï´Ù. - <ŸÀÎ> <¹®Àå> À̾߱â À̰ÍÀº ƯÁ¤ÇÑ »ç¿ëÀÚ¿¡°Ô ÀÚ½ÅÀÇ Àǻ縦 - Àü´ÞÇÒ¶§ »ç¿ëÇÕ´Ï´Ù. - <¹®Àå> Àâ´ã À̰ÍÀº ¸ðµç »ç¿ëÀڵ鿡°Ô ÀÚ½ÅÀÇ Àǻ縦 Àü´ÞÇÕ´Ï´Ù - À̰ÍÀº Á¦ÇÑÀÌ ÀÖÀ¾´Ï´Ù. - -À̵¿ - ÇÑ Àå¼Ò¿¡¼­ ´Ù¸¥ Àå¼Ò·Î À̵¿ÇÒ¶§´Â <Àå¼Ò> °¡¸¦ »ç¿ëÇÕ´Ï´Ù. - µ¿,¼­,³²,ºÏ°°Àº ¹æÇâÀº ±×³É ¹æÇ⸸ ³ÖÀ¸½Ã¸é µË´Ï´Ù. - -¹°°Çµé - °¢±â »ç¿ëÀÚ¸¶´Ù µé°í´Ù´Ò¼ö ÀÖ´Â ¹°°ÇÀÇ ¾ç¿¡´Â Á¦ÇÑÀÌ ÀÖ½À´Ï´Ù. - À̰ÍÀº ¹«±â³ª ¾àº´ÀÌ µÉ¼öµµ Àִµ¥ °¢±â ¹«°Ô°¡ ÀÖ½À´Ï´Ù. - ÀÚ½ÅÀÇ ¼ÒÁöǰÀ» º¼·Á¸é ¼ÒÁöǰÀ̶ó°í ÀÔ·ÂÇϽʽÿä. - Âø¿ëÇϰųª ¹«ÀåÇÑ ¹°°ÇÀ» º¼·Á¸é Àåºñ¶ó°í ÀÔ·ÂÇÏ½Ã¸é µË´Ï´Ù. - <¹°°Ç2> # <¹°°Ç1> # °¡Á®´Â ¹°°Ç2¿¡¼­ ¹°°Ç1À» ²¨³»°¡Áö´Â ¸í·ÉÀÔ´Ï´Ù. - ¿¹·Î º¸µû¸® Àå°© °¡Á®´Â º¸µû¸®¾È¿¡¼­ Àå°©À» ²¨³»°¡Áö´Â ¸í·ÉÀÔ´Ï´Ù. - #´Â ¹øÈ£¸¦ ÁöÁ¤ÇÏ´Â °ÍÀ¸·Î °°Àº ¹°°ÇÀÌ ¿©·¯°³ ÀÖÀ»¶§ ÁöÁ¤ÇÕ´Ï´Ù. - <¹°°Ç> °¡Á®´Â ¹Ù´ÚÀ̳ª ¹æ¿¡ ÀÖ´Â ¹°°ÇÀ» ÁÖ¿ö°¡Áö´Â ¸í·ÉÀÔ´Ï´Ù. - <¹°°Ç> ¹ö·Á´Â ÀÚ½ÅÀÌ °¡Áö°í ÀÖ´Â ¹°°ÇÀ» ¹Ù´Ú¿¡ ¹ö¸®´Â ¸í·ÉÀÔ´Ï´Ù. - ¹æ¾î±¸´Â Âø¿ëÇØ¾ß »ç¿ëÀÌ µË´Ï´Ù. - <¹°°Ç> ÀÔ¾î·Î ¿¹¸¦ µé¸é °¡Á× °©¿Ê ÀÔ¾î¶ó´Â Çü½ÄÀ¸·Î »ç¿ëµË´Ï´Ù. - ¶ÇÇÑ ¹°°ÇÀº ¼Õ»óµÉ¼öµµ ÀÖÀ¸¸ç ±×·±°æ¿ì ¼ö¸®¸¦ ÇØ¾ß ÇÕ´Ï´Ù. - -*** Ãʺ¸ÀÚµéÀ» À§ÇÑ ÈùÆ® - ÃßõÇÏ´Â ¸î¸î ÁÖÀÇ»çÇ×ÀÔ´Ï´Ù. - - 1. ´ç½ÅÀÇ Àι°À» Ç×»ó ¼±ÇÏ°Ô ¸¸µå½Ê½Ã¿ä. -Çè³­ÇÏ°í ¾î·Á¿î °ÔÀÓÀ» ¿øÇÑ´Ù¸é »ç¾ÇÇÑ Àι°·Î ¸¸µå½Ê½Ã¿ä. -»ç¾ÇÇÑ Àι°Àº ¿©·¯ ºÒ¸®ÇÑ Á¡ÀÌ ÀÖ½À´Ï´Ù. ¹°·Ð ¾à°£ÀÇ ÀåÁ¡µµ ÀÖ½À´Ï´Ù. -¾ÇÇÑ µµµÏÀº Àç¹Ìµµ ÀÖ½À´Ï´Ù. »ç¿ëÀڵ鿡°Ô¼­ ¹°°Çµµ ÈÉÄ¥¼ö Àִµî -¾ÇÇÑ »ç¿ëÀڵ鵵 °í³­À̵µ¿¡ ÀÚ½ÅÀÌ ÀÖ´Ù¸é µµÀüÇÒ¸¸ ÇÕ´Ï´Ù. - - 2. ¼³Á¤À̶õ ¸í·ÉÀ¸·Î ÀÚ½ÅÀÇ È¯°æÀ» Á¶Á¤ÇϽʽÿä. -¼³Á¤ µµ¿òÀ̶õ ¸í·ÉÀ¸·Î ¸ñ·ÏÀ» º¸½Ã°í ÀڽŸ¸ÀÇ °ÔÀÓȯ°æÀ» Á¶Á¤ÇϽʽÿä. - - 3. óÀ½ º¸´Â ±«¹°À» ¸¸³ª¸é Ç×»ó ºÁ¶õ ¸í·ÉÀ¸·Î »ìÆìº¸½Ê½Ã¿ä. -±«¹°¿¡ ´ëÇÑ Á¤º¸°¡ ³ª¿À´Ï Àß ÆÇ´ÜÇØ¼­ ÀüÅõ¸¦ °áÁ¤ÇϽʽÿä. -¸î¸î ±«¹°µéÀº °ÔÀÓÀÇ Áß¿ä Á¤º¸¸¦ ¾Ë°í ÀÖ½À´Ï´Ù. ´ëÈ­·Î Á¤º¸¸¦ ¾òµµ·Ï -³ë·ÂÀ» ÇϽʽÿä. - - 4. ´ëÈ­´Â ÀÌ ¸ÓµåÀÇ °¡Àå Áß¿äÇÑ ¿ä¼ÒÀÇ ÇϳªÀÔ´Ï´Ù. »õ·Î¿î Àι°À» -¸¸³ª¸é Ç×»ó ´ëÈ­¸¦ ÇÏ¿© »õ·Î¿î Á¤º¸¸¦ ¾ò¾î¾ß ÀÓ¹«¸¦ ¹ÞÀ»¼ö ÀÖ°í, ¸¹Àº -°æÇèÄ¡¸¦ ½±°Ô ¹ÞÀ»¼ö ÀÖ½À´Ï´Ù. '´ëÈ­ µµ¿ò'À¸·Î ´ëÈ­ÇÏ´Â ¹ýÀ» ÀÍÈ÷°í, -¹«½¼ ´Ü¾î¸¦ ´ëÈ­ÇØ¾ß ÇÒÁö »ý°¢Çϼ¼¿ä. ¸î¸î ¹°°Ç°ú ´ëÈ­ ³»¿ë¾È¿¡ ´Ü¼­°¡ -¼û°ÜÁ® ÀÖ½À´Ï´Ù. - - 5. ¸î¸î Áß¿ä ÀÓ¹« ¹°°ÇµéÀº ƯÁ¤ÇÑ ¼ÒÀ¯ÀÚ¿¡°Ô µ¹·ÁÁà¾ß ÇÕ´Ï´Ù. -±×·¯¸é ¼ÒÀ¯ÀÚ´Â ¹Ýµå½Ã ´ñ°¡¸¦ Ä¡·ê°ÍÀÔ´Ï´Ù. À̶§´Â '±³È¯'À̶õ ¸í·É¾î¸¦ -»ç¿ëÇϼ¼¿ä. ÁÖÀÇÇÒ°ÍÀº ÀÓ¹«¿¡ °ü·ÃµÈ°ÍµéÀº Çѹø¸¸ ¼ÒÀ¯ÇÒ¼ö ÀÖ½À´Ï´Ù. -¹ö¸®°Å³ª ÆÈ¸éÀº ´ÙÀ½ ÀÓ¹«¸¦ ÁøÇàÇÏÁö ¸øÇÒ¼öµµ ÀÖ½À´Ï´Ù. - -*** 2·¹º§·Î ÀüÁø *** -¾Ë¸²: ´ç½ÅÀÇ Àι°Àº 2·¹º§ÀÌ µÇ¾î¾ß ¿µ¿øÈ÷ ÀúÀåµÉ¼ö ÀÖ½À´Ï´Ù. - -·¹º§1ÀÇ »ç¿ëÀÚµéÀº ¹«¸®¸¦ ÀÌ·ç°Å³ª ·¹º§2°¡ µÉ¶§±îÁö ¸Ö¸® µ¹¾Æ´Ù´ÏÁö -¸¶½Ã±æ ¹Ù¶ø´Ï´Ù. ¼Õ½¬¿î ±«¹°µé°ú ÀüÅõ¸¦ ÅëÇØ °æÇèÄ¡¸¦ ¾ò°í µ·À» -±¸ÇϽʽÿä. ±«¹°µé°ú ÀüÅõÁß µµ¸ÁÄ¡¸é ÁÖÀÇÇϽʽÿä. ±«¹°µéÀº ´ç½ÅÀÇ -¾ó±¼À» ±â¾ïÇϰí ÀÖ½À´Ï´Ù. ÀϹÝÀûÀÎ ¿øÄ¢Àº ÀüÅõÀü¿¡ »ìÆìº¸°í ¸»À» -°É¾î º¸´Â°ÍÀÔ´Ï´Ù. ¹«¾ùº¸´Ùµµ Ç×»ó ÁÖÀÇÇϽʽÿä. - -·¹º§ 5°¡ ³ÑÀ¸¸é ¸¹Àº Á¦¾àÀÌ µû¸¨´Ï´Ù. Ãʺ¸µéÀº Á×¾úÀ»°æ¿ì °æÇèÄ¡°¡ -¾ó¸¶ ³»·Á°¡Áö ¾ÊÁö¸¸ °í·¹º§Àº ¸¹Àº °æÇèÄ¡°¡ ³¯¾Æ°¥°ÍÀÔ´Ï´Ù. -¶ÇÇÑ ¾Æ¹ÌŸºÒ¿¡°Ô °øÂ¥Ä¡·áµµ ¹ÞÀ»¼ö ¾ø½À´Ï´Ù. ±Íȯµµ Á¦¾àÀÌ À־ -À§±ÞÇÑ °æ¿ì¿¡¸¸ »ç¿ëÇÏ¼Å¾ß µË´Ï´Ù. ÀüÅõ½Ã ºñ°ÌÇÏ°Ô µµ¸ÁÀ» Ãĵµ -ºÒÀÌÀÍÀ» ´çÇÏ°Ô µË´Ï´Ù. - -¶ÇÇÑ ÀÚ½ÅÀÇ Æ¯¼ö ±â¼úÀ» Àß ¿¬±¸Çؼ­ »ç¿ëÇϼ¼¿ä °ÔÀÓ ÁøÇà¿¡ ²À -ÇʼöÀûÀÔ´Ï´Ù. ÀÓ¹«´Â ¸¹Àº °æÇèÄ¡¸¦ ¾ò´Â Áö¸§±æÀÔ´Ï´Ù. ±×·¯³ª -´ëºÎºÐÀÇ ÀÓ¹«´Â È¥ÀÚ¼­ ÇØ°áÇÒ¼ö ¾ø½À´Ï´Ù. -´Ù¸¥ Á÷¾÷°ú ±×·ìÀ» ¸¸µé¾î°¡¼­ ÀÓ¹«¸¦ ¿Ï¼öÇϽʽÿä. - -´ÙÃÆÀ¸¸é Ä¡·á¼Ò·Î °¡¼­ '¾Æ¹ÌŸºÒ Ä¡·á ´ëÈ­'¶ó°í ÀÔ·ÂÇϽʽÿä. -ÀÚºñ·Î¿î ¾Æ¹ÌŸºÒÀº Ãʺ¸ ¿©·¯ºÐÀ» ±â²¨È÷ µµ¿Íµå¸±°ÍÀÔ´Ï´Ù. - -ÀÌ ¸Óµå´Â »ó´çÇÑ ³­À̵µ·Î Á¦À۵Ǿú½À´Ï´Ù. -°ÔÀÓÀ» ÁøÇàÇÒ¶§ ÀڽŸ¸ÀÇ Á¾Á·°ú Á÷¾÷ ±×¸®°í ´É·ÂÀ¸·Î °ÔÀÓÀ» ÇÏ¼Å¾ß -ÇÕ´Ï´Ù. ³²µéÀÇ ¹æ¹ýÀÌ Àڽſ¡°Ô °áÄÚ ¸ÂÀ»¼ö ¾ø´Ù´Â°É ¾Æ½Ê½Ã¿ä. - -¸¸ÀÏ Áú¹®À̳ª ¹®Á¦°¡ ÀÖÀ¸¸é ¿î¿µÀÚ¿¡°Ô ¹°¾îº¸½Ê½Ã¿ä. ¸¸ÀÏ ÀÚ¸®¿¡ -¾øÀ¸¸é ÆíÁö¸¦ º¸³»½Ã±â ¹Ù¶ø´Ï´Ù. - - -¸î°¡Áö ±ÔÄ¢¿¡ ´ëÇØ¼­´Â 'Á¤Ã¥ µµ¿ò'Ä¡¼¼¿ä. +소개 + 무한대전ì�€ MUD(Multi-User Dungeon)게임입니다. + ì�´ê²ƒì�€ 실시간으로 다른 사용ìž�들과 협력하고 ê²½ìŸ�하면서 ì¦�기는 게임입니다 + 여기 간단한 명령과 게임ì�„ 진행하기위한 몇몇 정보들ì�„ 여러분께 + 소개해 드리겠습니다. + +명령 ìž…ë ¥ + 입력부분ì�€ ë�„스ì�˜ 프롬프트 ê°™ì�´ 나타납니다. + 명령 í•´ì„�기는 똑똑해서 몇몇경우를 제외하고는 줄임ë§�들ì�„ ì�¸ì‹�할것입니다 + (ìš” 부분ì—�서 무척 애먹었ì�Œ) + ì�´ë¶€ë¶„ì—�다 명령ì�´ë‚˜ ë§�ì�„ 입력함으로 게임ì�„ 진행하게 ë�˜ëŠ”ê²ƒìž…ë‹ˆë‹¤. + +ë�„움 + ë�„움ì�´ë�¼ê³  ìž…ë ¥ì�„ 하시면 ë�„움ë§�ì�„ 보실수 있습니다. + <항목> ë�„움ì�´ë�¼ 치시면 ê·¸ 항목ì�˜ ë�„움ë§�ì�´ 출력ë�©ë‹ˆë‹¤. + 반드시 ë�„움ë§�ì�„ 숙지하시고 게임ì—� 임하셔야 살아남ì�„수 있습니다. + +통신 + 여러 사용ìž�들ì�´ 존재하기때문ì—� 다른 사용ìž�들과 ì�´ì•¼ê¸°í•˜ëŠ” 방법ì�´ + 몇가지 있습니다. + <문장> ë§�, <문장> ', <문장> " ì�´ê²ƒì�€ ê°™ì�€ ë°©ì—� 있는 사람들ì—�게 + ìž�ì‹ ì�˜ ì�˜ì‚¬ë¥¼ 전할때 사용합니다. + <문장> 외ì³� ì�´ê²ƒì�€ 근처ì—� 있는 사람들ë�„ 들ì�„수 있습니다. + <타ì�¸> <문장> ì�´ì•¼ê¸° ì�´ê²ƒì�€ 특정한 사용ìž�ì—�게 ìž�ì‹ ì�˜ ì�˜ì‚¬ë¥¼ + 전달할때 사용합니다. + <문장> 잡담 ì�´ê²ƒì�€ 모든 사용ìž�들ì—�게 ìž�ì‹ ì�˜ ì�˜ì‚¬ë¥¼ 전달합니다 + ì�´ê²ƒì�€ 제한ì�´ 있ì��니다. + +ì�´ë�™ + 한 장소ì—�서 다른 장소로 ì�´ë�™í• ë•ŒëŠ” <장소> 가를 사용합니다. + ë�™,서,남,ë¶�ê°™ì�€ ë°©í–¥ì�€ 그냥 방향만 넣으시면 ë�©ë‹ˆë‹¤. + +물건들 + ê°�기 사용ìž�마다 들고다ë‹�수 있는 물건ì�˜ ì–‘ì—�는 제한ì�´ 있습니다. + ì�´ê²ƒì�€ 무기나 약병ì�´ ë� ìˆ˜ë�„ 있는ë�° ê°�기 무게가 있습니다. + ìž�ì‹ ì�˜ 소지품ì�„ 볼려면 소지품ì�´ë�¼ê³  입력하십시요. + 착용하거나 무장한 물건ì�„ 볼려면 장비ë�¼ê³  입력하시면 ë�©ë‹ˆë‹¤. + <물건2> # <물건1> # 가져는 물건2ì—�서 물건1ì�„ 꺼내가지는 명령입니다. + 예로 보따리 장갑 가져는 보따리안ì—�서 장갑ì�„ 꺼내가지는 명령입니다. + #는 번호를 지정하는 것으로 ê°™ì�€ 물건ì�´ 여러개 있ì�„때 지정합니다. + <물건> 가져는 바닥ì�´ë‚˜ ë°©ì—� 있는 물건ì�„ 주워가지는 명령입니다. + <물건> 버려는 ìž�ì‹ ì�´ 가지고 있는 물건ì�„ 바닥ì—� 버리는 명령입니다. + 방어구는 착용해야 사용ì�´ ë�©ë‹ˆë‹¤. + <물건> 입어로 예를 들면 가죽 갑옷 ìž…ì–´ë�¼ëŠ” 형ì‹�으로 사용ë�©ë‹ˆë‹¤. + ë˜�한 물건ì�€ ì†�ìƒ�ë� ìˆ˜ë�„ 있으며 그런경우 수리를 해야 합니다. + +*** 초보ìž�들ì�„ 위한 힌트 + 추천하는 몇몇 주ì�˜ì‚¬í•­ìž…니다. + + 1. 당신ì�˜ ì�¸ë¬¼ì�„ í•­ìƒ� 선하게 만드십시요. +험난하고 어려운 게임ì�„ ì›�한다면 사악한 ì�¸ë¬¼ë¡œ 만드십시요. +사악한 ì�¸ë¬¼ì�€ 여러 불리한 ì �ì�´ 있습니다. 물론 약간ì�˜ 장ì �ë�„ 있습니다. +악한 ë�„ë‘‘ì�€ 재미ë�„ 있습니다. 사용ìž�들ì—�게서 물건ë�„ 훔칠수 있는등 +악한 사용ìž�들ë�„ 고난ì�´ë�„ì—� ìž�ì‹ ì�´ 있다면 ë�„ì „í• ë§Œ 합니다. + + 2. 설정ì�´ëž€ 명령으로 ìž�ì‹ ì�˜ 환경ì�„ 조정하십시요. +설정 ë�„움ì�´ëž€ 명령으로 목ë¡�ì�„ 보시고 ìž�ì‹ ë§Œì�˜ 게임환경ì�„ 조정하십시요. + + 3. 처ì�Œ 보는 괴물ì�„ 만나면 í•­ìƒ� ë´�란 명령으로 살펴보십시요. +괴물ì—� 대한 ì •ë³´ê°€ 나오니 잘 íŒ�단해서 전투를 결정하십시요. +몇몇 괴물들ì�€ 게임ì�˜ 중요 정보를 알고 있습니다. 대화로 정보를 ì–»ë�„ë¡� +노력ì�„ 하십시요. + + 4. 대화는 ì�´ 머드ì�˜ 가장 중요한 요소ì�˜ 하나입니다. 새로운 ì�¸ë¬¼ì�„ +만나면 í•­ìƒ� 대화를 하여 새로운 정보를 얻어야 임무를 ë°›ì�„수 있고, ë§Žì�€ +경험치를 쉽게 ë°›ì�„수 있습니다. '대화 ë�„움'으로 대화하는 법ì�„ ì�µížˆê³ , +무슨 단어를 대화해야 í• ì§€ ìƒ�ê°�하세요. 몇몇 물건과 대화 내용안ì—� 단서가 +숨겨져 있습니다. + + 5. 몇몇 중요 임무 물건들ì�€ 특정한 소유ìž�ì—�게 ë�Œë ¤ì¤˜ì•¼ 합니다. +그러면 소유ìž�는 반드시 댓가를 치룰것입니다. ì�´ë•ŒëŠ” 'êµ�환'ì�´ëž€ 명령어를 +사용하세요. 주ì�˜í• ê²ƒì�€ 임무ì—� 관련ë�œê²ƒë“¤ì�€ 한번만 소유할수 있습니다. +버리거나 팔면ì�€ 다ì�Œ 임무를 진행하지 못할수ë�„ 있습니다. + +*** 2레벨로 ì „ì§„ *** +알림: 당신ì�˜ ì�¸ë¬¼ì�€ 2레벨ì�´ ë�˜ì–´ì•¼ ì˜�ì›�히 저장ë� ìˆ˜ 있습니다. + +레벨1ì�˜ 사용ìž�들ì�€ 무리를 ì�´ë£¨ê±°ë‚˜ 레벨2ê°€ ë� ë•Œê¹Œì§€ 멀리 ë�Œì•„다니지 +마시길 ë°”ëž�니다. ì†�쉬운 괴물들과 전투를 통해 경험치를 얻고 ë�ˆì�„ +구하십시요. 괴물들과 전투중 ë�„ë§�치면 주ì�˜í•˜ì‹­ì‹œìš”. 괴물들ì�€ 당신ì�˜ +얼굴ì�„ 기억하고 있습니다. ì�¼ë°˜ì �ì�¸ ì›�ì¹™ì�€ 전투전ì—� 살펴보고 ë§�ì�„ +걸어 보는것입니다. 무엇보다ë�„ í•­ìƒ� 주ì�˜í•˜ì‹­ì‹œìš”. + +레벨 5ê°€ 넘으면 ë§Žì�€ 제약ì�´ 따릅니다. 초보들ì�€ 죽었ì�„경우 경험치가 +얼마 내려가지 않지만 고레벨ì�€ ë§Žì�€ 경험치가 날아갈것입니다. +ë˜�한 아미타불ì—�게 공짜치료ë�„ ë°›ì�„수 없습니다. 귀환ë�„ 제약ì�´ 있어서 +위급한 경우ì—�ë§Œ 사용하셔야 ë�©ë‹ˆë‹¤. 전투시 비ê²�하게 ë�„ë§�ì�„ ì³�ë�„ +불ì�´ì�µì�„ 당하게 ë�©ë‹ˆë‹¤. + +ë˜�한 ìž�ì‹ ì�˜ 특수 기술ì�„ 잘 연구해서 사용하세요 게임 ì§„í–‰ì—� ê¼­ +필수ì �입니다. 임무는 ë§Žì�€ 경험치를 얻는 지름길입니다. 그러나 +대부분ì�˜ 임무는 혼ìž�서 해결할수 없습니다. +다른 ì§�ì—…ê³¼ 그룹ì�„ 만들어가서 임무를 완수하십시요. + +다쳤으면 치료소로 가서 '아미타불 치료 대화'ë�¼ê³  입력하십시요. +ìž�비로운 아미타불ì�€ 초보 여러분ì�„ 기꺼히 ë�„와드릴것입니다. + +ì�´ 머드는 ìƒ�당한 난ì�´ë�„로 제작ë�˜ì—ˆìŠµë‹ˆë‹¤. +게임ì�„ 진행할때 ìž�ì‹ ë§Œì�˜ 종족과 ì§�ì—… 그리고 능력으로 게임ì�„ 하셔야 +합니다. 남들ì�˜ 방법ì�´ ìž�ì‹ ì—�게 ê²°ì½” ë§žì�„수 없다는걸 아십시요. + +ë§Œì�¼ 질문ì�´ë‚˜ 문제가 있으면 ìš´ì˜�ìž�ì—�게 물어보십시요. ë§Œì�¼ ìž�리ì—� +없으면 편지를 보내시기 ë°”ëž�니다. + + +몇가지 규칙ì—� 대해서는 'ì •ì±… ë�„움'치세요. ----------------------------------------------------------------------------- -À̰ÔÀÓÀº ¾ÆÁ÷µµ Á¦ÀÛÁßÀÔ´Ï´Ù. -¹ö±×³ª À߸øµÈ Á¡À» ¹ß°ß½Ã ²À ¾Ë·ÁÁÖ¼¼¿ä. ¾Æ´Ï¸é À߸øµÈ ¼³¸íÀ̳ª -µµ¿ò¸», Ç¥Çöµîµîµµ ¾Ë·ÁÁÖ¼¼¿ä. +ì�´ê²Œìž„ì�€ ì•„ì§�ë�„ 제작중입니다. +버그나 잘못ë�œ ì �ì�„ 발견시 ê¼­ 알려주세요. 아니면 잘못ë�œ 설명ì�´ë‚˜ +ë�„움ë§�, 표현등등ë�„ 알려주세요. diff --git "a/objmon/ddesc/\270\266\277\325_99" "b/objmon/ddesc/\270\266\277\325_99" deleted file mode 100644 index 82aefff3..00000000 --- "a/objmon/ddesc/\270\266\277\325_99" +++ /dev/null @@ -1,9 +0,0 @@ -¸¶¿ÕÀÌ ¾²·¯ÁöÀÚ ±×ÀÇ ÁÖÀ§¿¡¼± °ËÀº ¿¬±â°¡ ¼Ú±â ½ÃÀÛÇß½À´Ï´Ù. -±×·¯´õ´Ï ºÓÀº ºÒ±æÀÌ ±×ÀÇ ¸öÀ» È۽θ鼭 Ÿ¿À¸£±â ½ÃÀÛÇÕ´Ï´Ù. - -°©Àڱ⠶¥¹Ø¿¡¼­ ¸¶¿ÕÀÇ ¸ñ¼Ò¸®°¡ µé¸³´Ï´Ù. -"³» Áö±Ý Àΰ£µéÀÇ ¿µ¿ª¿¡¼­ ºñ·Ï ÈûÀ» ÀÒ¾úÁö¸¸.... -³ªÀÇ ¿Õ±¹¿¡¼­ ´Ù½Ã ¸¸³¯¶§´Â ¹Ýµå½Ã ³Ê¸¦ ó´ÜÇϸ®¶ó". - -¸¶¿ÕÀ» óġÇÏÀÚ Èæ°Ë¼ºÀÇ ÇØ¹æÀ» ȯȣÇÏ´Â ¸ñ¼Ò¸®°¡ -¿©±âÀú±â¼­ µé·Á¿É´Ï´Ù. diff --git "a/objmon/ddesc/\272\257\275\305\261\315_40" "b/objmon/ddesc/\272\257\275\305\261\315_40" deleted file mode 100644 index df6c5876..00000000 --- "a/objmon/ddesc/\272\257\275\305\261\315_40" +++ /dev/null @@ -1,7 +0,0 @@ -ÀúÁÖ¹ÞÀº â°íÀÇ µÎ¸ñÀÎ º¯½Å±Í°¡ ¾²·¯ÁöÀÚ µåµð¾î ±×ÀÇ -º»·¡ÀÇ ÈÞÄ¢ÇÑ ¸ð½ÀÀÌ µå·¯³µ½À´Ï´Ù. - -ÀÌÁ¦ »¡¸® ´ç½ÅÀÇ ÀÓ¹«¸¦ ¼öÇàÇÏ°í ¶°³ª´Â °ÍÀÌ ÁÁÀ»°Í -°°½À´Ï´Ù. - -¾ÆÁ÷ ¹Û¿¡´Â ¼ö¸¹Àº ºÎÇϵéÀÌ µæ½Ç°Å¸®°í ÀÖÀ¸´Ï±î¿ä. diff --git "a/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\32599" "b/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\32599" deleted file mode 100644 index f3d84b20..00000000 --- "a/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\32599" +++ /dev/null @@ -1,10 +0,0 @@ - -´ç½ÅÀº ¾ÇÀÇ Á¦¿ÕÀ» ¾²·¯¶ß¸®°í´Â À绡¸® »èdzÀÇ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù. - -±×·¯ÀÚ ±¤Ç³ÀÌ ºÒ¾î¿Í¼­ ¾îµÎ¿î ±â¿îÀ» ¸ðµÎ ÈÛ¾µ°í Áö³ª°¡°í, -¸»¶ó ºñƲ¾îÁø ½Ãü»ÓÀÌ ³²Áö ¾Ê¾Ò½À´Ï´Ù. - -¾îµð¼±°¡ À̸§ ¸ð¸¦ ºÒÁ¦ÀÚ°¡ ³ªÅ¸³ª´õ´Ï ½Ãü¿¡ ¹æÈ¥¼úÀ» ¿Ü¿ìÀÚ -±Í°¡ Âõ¾îÁö´Â µíÇÑ ºñ¸í¼Ò¸®°¡ µé¸®´õ´Ï Àç·Î º¯Çعö·È½À´Ï´Ù. - -ÃàÇÏÇÕ´Ï´Ù ´ç½ÅÀº °¡Àå °­·ÂÇÑ ÀûÀÇ ÇѸíÀ» ¾²·¯¶ß·È½À´Ï´Ù. diff --git "a/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\325_99" "b/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\325_99" deleted file mode 100644 index bba21f7c..00000000 --- "a/objmon/ddesc/\272\316\310\260\307\321_\276\307\300\307_\301\246\277\325_99" +++ /dev/null @@ -1,11 +0,0 @@ - -´ç½ÅÀº ¾ÇÀÇ Á¦¿ÕÀ» ¾²·¯¶ß¸®°í´Â À绡¸® »èdzÀÇ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù. - -±×·¯ÀÚ ±¤Ç³ÀÌ ºÒ¾î¿Í¼­ ¾îµÎ¿î ±â¿îÀ» ¸ðµÎ ÈÛ¾µ°í Áö³ª°¡°í, -¸»¶ó ºñƲ¾îÁø ½Ãü»ÓÀÌ ³²Áö ¾Ê¾Ò½À´Ï´Ù. - -¾îµð¼±°¡ ±Í°¡ Âõ¾îÁö´Â µíÇÑ ºñ¸í¼Ò¸®°¡ µé¸®´õ´Ï ±×ÀÇ ÁøÂ¥ -¸ð½ÀÀÌ µå·¯ ³µ½À´Ï´Ù. - -±×´Â ´Ù¸§¾Æ´Ñ ¸¶¿ÕÀ̾ú½À´Ï´Ù. - diff --git "a/objmon/ddesc/\273\347\264\347\261\315\275\305_60" "b/objmon/ddesc/\273\347\264\347\261\315\275\305_60" deleted file mode 100644 index d6cc8fd8..00000000 --- "a/objmon/ddesc/\273\347\264\347\261\315\275\305_60" +++ /dev/null @@ -1,7 +0,0 @@ -»ç´ç±Í½ÅÀÇ ÁÖ¹®À» ±ú¸é¼­ ´ç½ÅÀº ±×¿¡°ÔÇ ¸¶Áö¸· °ø°ÝÀ» -°¡ÇØ ¾²·¯¶ß·È½À´Ï´Ù. - -±×´Â Àú½ÂÀ¸·Î ¶°³ª ¹ö·È°í ÀÌÁ¦ ³²Àº °ÍÀº ¹Ù´Ú¿¡ ¸î¸î -Á¾ÀÌ Á¶°¢»ÓÀÌ ¾ø½À´Ï´Ù. -ÀÌÁ¦ ÁÖ¹®¼­¸¦ ã¾Æº¸´Â°ÍÀÌ ÁÁ°Ú±º¿ä. - diff --git "a/objmon/ddesc/\275\304\300\316\261\315_48" "b/objmon/ddesc/\275\304\300\316\261\315_48" deleted file mode 100644 index df1fd955..00000000 --- "a/objmon/ddesc/\275\304\300\316\261\315_48" +++ /dev/null @@ -1,6 +0,0 @@ -½ÄÀαÍÀÇ ¿Ü¸¶µð ºñ¸íÀÌ ¾îµÎ¿î µ¿±¼¼Ó¿¡ ¸Þ¾Æ¸®ÃƽÀ´Ï´Ù. - -ÀÌÁ¦ ´õÀÌ»ó ±æÀ» Áö³ª´Â »ç¶÷µéÀ» ±«·ÓÈ÷´Â ÀÏÀ» ¾øÀ»°ÍÀÔ´Ï´Ù. - -¿·¿¡ ÇҾƹü¿¡°Ô °®´Ù ÁÙ¸¸ÇÑ ¸ùµÕÀ̰¡ º¸ÀÌ´Â ±º¿ä. - diff --git "a/objmon/ddesc/\276\307\300\307_\301\246\277\325_98" "b/objmon/ddesc/\276\307\300\307_\301\246\277\325_98" deleted file mode 100644 index 0ecf603f..00000000 --- "a/objmon/ddesc/\276\307\300\307_\301\246\277\325_98" +++ /dev/null @@ -1,11 +0,0 @@ - -¾ÇÀÇ Á¦¿ÕÀÌ ¾²·¯ÁöÀÚ °ËÀº ¿¬±â°¡ ±×¸¦ È۽α⠽ÃÀÛÇÕ´Ï´Ù. - -±×·¯´õ´Ï ¸ðµçÀÌÀÇ ´«À» ¸Ö°ÔÇÏ´Â ´«ºÎ½Å ºûÀÌ ±×¼Ó¿¡¼­ ½ñ¾ÆÁ® -¹Ù¶óº¼¼ö°¡ ¾ø½À´Ï´Ù. - -°©Àڱ⠹ÌÄ£µíÇÑ ¿ôÀ½ÀÌ µé¸®´õ´Ï °ËÀº ¿¬±â¼Ó¿¡¼­ °É¾î³ª¿À´Â -¾ÇÀÇ Á¦¿ÕÀÌ »ì¾Æ¼­ °É¾î ³ª¿É´Ï´Ù. - -"³ª´Â Á×À½ÀÇ ¿Õ±¹ÀÇ ÅëÄ¡ÀÚ´Ù °áÄÚ ³ª¸¦ Á×Àϼö´Â ¾øÀ»°ÍÀÌ´Ù" -¶ó°í ¿ÜÄ¡´õ´Ï ´Ù½Ã Ä®À» µé°í ´ç½Å¿¡°Ô ´Þ·Áµì´Ï´Ù. diff --git "a/objmon/ddesc/\277\251\306\367_120" "b/objmon/ddesc/\277\251\306\367_120" deleted file mode 100644 index d5c8308c..00000000 --- "a/objmon/ddesc/\277\251\306\367_120" +++ /dev/null @@ -1,8 +0,0 @@ -¿©Æ÷°¡ ¾²·¯Áö¸é¼­ ¿ÜĨ´Ï´Ù. - -¾Æ´Ï ÀÌ·²¼ö°¡ -õÇϸ¦ ¾òÀ»¼ö Àִµ¥ ÀÌ·¸°Ô ³¡³ª´Ù´Ï.... - -¾²·¯Áö¸é¼­ ÀÚ½ÅÀÇ ¿ÂÈûÀ» ´ÙÇØ ´Ü°ËÀ» ´ç½Å¿¡°Ô ´øÁöÁö¸¸ -±×¸¸ ºø³ª°¡°í ±âµÕ¿¡ ²ÈÀÌ°í ¸¿´Ï´Ù. - diff --git "a/objmon/ddesc/\277\354\271\260\277\344\261\253_48" "b/objmon/ddesc/\277\354\271\260\277\344\261\253_48" deleted file mode 100644 index 37f3704d..00000000 --- "a/objmon/ddesc/\277\354\271\260\277\344\261\253_48" +++ /dev/null @@ -1,6 +0,0 @@ -¿ì¹° ¿ä±«°¡ ¾²·¯Áö¸é¼­ ¿Ü¸¶µð ºñ¸íÀ» Áú·¶½À´Ï´Ù. - -"³­ ÀÌ·¸°Ô »ç¶óÁú¼ö´Â ¾ø¾î... À¸¾Ç!" - -¸¶Áö¸· º¯¸í°ú ÇÔ²² °ÅǰÀ¸·Î »ç¶óÁö°í ¸»¾Ò½À´Ï´Ù. - diff --git "a/objmon/ddesc/\301\246\277\354\275\272_127" "b/objmon/ddesc/\301\246\277\354\275\272_127" deleted file mode 100644 index d3a8fbbc..00000000 --- "a/objmon/ddesc/\301\246\277\354\275\272_127" +++ /dev/null @@ -1,17 +0,0 @@ - -"±×´ë´Â Á¤¸» ´ë´ÜÇϱº.... ³ª¸¦ À̱æÁ¤µµ¶ó´Ï..." - -"±×Á¤µµ¸é Çý¼º´ÔÀÇ ¼öÁØÀº µÇ°Ú±º...." - -"¿­½ÉÈ÷ ÇØ¼­ Çý¼º´ÔÀÇ °æÁö¿¡ ¿À¸£°Ô³ª..." - -"¼ö°í Çß³×..." - - -õÁö°£ÀÇ ¸ðµç ½ÅµéÀÌ ´ç½ÅÀÇ ´É·Â¿¡ ¸öÀ» ¼û±â°í ÀÖ½À´Ï´Ù. -´ç½ÅÀº ÀÌÁ¦ ¿µ¿õÀÔ´Ï´Ù. - -´ç½ÅÀ» ÃàÇÏÇÏ´Â ¼Ò¸®°¡ ¿©±âÀú±â¼­ µé¸³´Ï´Ù. - -"¼ö°í Çß¾î¿ä!~ ºÎµð Çý¼º´ÔÀÇ °æÁö¿¡ µµ´ÞÇϼ¼¿ä!~ " - diff --git "a/objmon/ddesc/\301\266\277\356_\300\332\267\346_120" "b/objmon/ddesc/\301\266\277\356_\300\332\267\346_120" deleted file mode 100644 index 1a432096..00000000 --- "a/objmon/ddesc/\301\266\277\356_\300\332\267\346_120" +++ /dev/null @@ -1,8 +0,0 @@ -Á¶¿îÀÌ ¾²·¯Áö¸é¼­ ¿ÜĨ´Ï´Ù. - -À¹~ ½Â¸®°¡ ¸ÖÁö ¾Ê¾Ò´Âµ¥...... - ¾Ï»ìÀÚÀÇ ¼Õ¿¡ Á×´Ù´Ï... - -¾²·¯Áö¸é¼­ Á¶¿îÀÇ Åõ±¸°¡ ¹ß¹ØÀ¸·Î ±¼·¯¶³¾îÁý´Ï´Ù. - - diff --git "a/objmon/ddesc/\301\366\267\346_\266\363\300\333_127" "b/objmon/ddesc/\301\366\267\346_\266\363\300\333_127" deleted file mode 100644 index 5890cc19..00000000 --- "a/objmon/ddesc/\301\366\267\346_\266\363\300\333_127" +++ /dev/null @@ -1,19 +0,0 @@ - - ±×´ë´Â ÁøÁ¤ÇÑ ¿ë»çÀ̴϶ó. - - ³ª ºñ·Ï ³Ê¿¡°Ô Á³¾î ´Ù½Ã ¶¥ ¼ÓÀ¸·Î µé¾î°¡Áö¸¸, - - ¾ðÁ¨°¡ ´Ù½Ã ³Ê¿¡°Ô º¹¼ö¸¦ ÇÒ °ÍÀÌ´Ù. - - ±×¶§±îÁö »ì¾Æ Àֱ⸦ ºó´Ù. - - - - -±¹¿Õ´ÔÀÌ ´ç½Å¿¡°Ô "±×´ë´Â ÁøÁ¤ÇÑ ¿ë»çÀ̳×~~"¶ó°í À̾߱âÇÕ´Ï´Ù. - -±¹¿Õ´ÔÀÌ ´ç½Å¿¡°Ô "Áö·æ ¶óÀÛÀ» Á׿© ÁÖ¾ú¾î °í¸¿³×~~ "¶ó°í À̾߱âÇÕ´Ï´Ù. - -±¹¿Õ´ÔÀÌ ´ç½Å¿¡°Ô "Á¤¸» °í¸¿³×~~~~"¶ó°í À̾߱âÇÕ´Ï´Ù. - -µå·¹´Ï¾Æ ¹é¼ºµéÀÌ "Á¤¸» °í¸¶¿ö¿ä~~ ÀÌÁ¦ ¸¶À½ ÆíÇÏ°Ô ÀáÀ» Àß ¼ö Àֳ׿ä~~"¶ó°í ȯȣ¸¦ ÇÕ´Ï´Ù. diff --git "a/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\323\270\256_80" "b/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\323\270\256_80" deleted file mode 100644 index 364b5efc..00000000 --- "a/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\323\270\256_80" +++ /dev/null @@ -1,9 +0,0 @@ - -Ǫ¸¥ ºÒ±æ¿¡ ÈÛ½ÎÀΠŸŸ¸£ÀÇ ¸Ó¸®°¡ ¿ØÁö ±âºÐ³ª»Û ¹Ì¼Ò¸¦ ÁöÀ¸¸é¼­ -´ç½ÅÀ» ³ë·Áº¾´Ï´Ù. - -"ÈÄÈÄÈÄ.. ³»°¡ Á×¾ú´Ù°í ±â»µÇÒ ÇÊ¿ä´Â ¾ø´Ù." -"¸Ó¸® Çϳª°¡ Á×¾ú´Ù°í ÇØµµ À§´ëÇÑ Áö¿ÁÀÇ ÈÄ¿¹ÀÎ - ³ª ŸŸ¸£°¡ Á×À»°ÍÀ̶ó°í »ý°¢ÇÏ´À³Ä? ÈÄÈÄÈÄ." - -Ǫ¸¥ ºÒ±æ¿¡ ÈÛ½ÎÀΠŸŸ¸£ÀÇ ¸Ó¸® µÚ·Î ¹«¾ùÀΰ¡ ȯ¿µÀ̳ªÅ¸³³´Ï´Ù. diff --git "a/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\366_99" "b/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\366_99" deleted file mode 100644 index ecfd15d4..00000000 --- "a/objmon/ddesc/\305\270\305\270\270\243\300\307_\270\366_99" +++ /dev/null @@ -1,11 +0,0 @@ - -°©Àڱ⠶¥ÀÌ °¥¶óÁö¸é¼­ ºÒ±æ¿¡ ÈÛ½ÎÀΠŸŸ¸£ÀÇ ¸öÀ» »ï°Ü¹ö¸³´Ï´Ù. -¶¥¼Ó ±íÀº °÷¿¡¼­ ³ª¿À´Â °øÆ÷½º·¯¿î ¸ñ¼Ò¸®°¡ ´ç½ÅÀÇ ±Í¿¡ µé·Á¿É´Ï´Ù. - -"³ª´Â ºñ·Ï ½ÇÆÐ ÇßÁö¸¸, °áÄÚ ³ª´Â Á×´Â °ÍÀÌ ¾Æ´Ï´Ù." -"Áö¿Á¿¡ ÀÖ´Â ³ªÀÇ ½ÉÀåÀÌ Á×Áö ¾Ê´ÂÇÑ ³ª´Â ´Ù½Ã »ì¾Æ³¯°ÍÀÌ´Ù." -"ÈåÈåÈå. ³ª¸¦ À̰å´Ù°í °áÄÚ ±â»µÇÏÁö ¸¶¶ó." -"³»°¡ »ç´Â Áö¿Á¿¡´Â ³ªº¸´Ù ´õ ¹«¼­¿î ÀÚµéÀÌ ÀÖÀ¸´Ï.. ¿ìÇÏÇÏÇÏ." - -°¥¶óÁ³´ø ¶¥ÀÌ ´Ù½Ã ´ÝÈ÷¸é¼­ Æ´»õ·Î °ËÀº ¿¬±â°¡ ¼Ú¾Æ³ª¿À°í ÀÖ½À´Ï´Ù. - diff --git "a/objmon/ddesc/\307\330\300\373_\274\261\300\345_99" "b/objmon/ddesc/\307\330\300\373_\274\261\300\345_99" deleted file mode 100644 index 492c9da6..00000000 --- "a/objmon/ddesc/\307\330\300\373_\274\261\300\345_99" +++ /dev/null @@ -1,7 +0,0 @@ - -ºÒ±æ¿¡ ÈÛ½ÎÀÎ ÇØÀû¼±ÀåÀÌ °íÅ뽺·¯¿î Ç¥Á¤À¸·Î - -" À¸À¹.. ÀÌ·²¼ö°¡.. º¸¹°ÀÌ ¹Ù·Î ´«¾Õ¿¡ Àִµ¥.. - ÀÌ·¸°Ô Ç㹫ÇÏ°Ô Á×¾î¾ß ÇÏ´Ù´Ï.. ºÐÇÏ´Ù. " - -¶ó´Â ¸»°ú ÇÔ²² Àç°¡ µÇ¾î »ç¶óÁý´Ï´Ù. diff --git "a/objmon/rndtalk/\260\307\264\336" "b/objmon/rndtalk/\260\307\264\336" deleted file mode 100644 index 078a3b05..00000000 --- "a/objmon/rndtalk/\260\307\264\336" +++ /dev/null @@ -1 +0,0 @@ -º¸½º¸¦ ã¾ÆÁÖ¼¼¿ä~~ ¾ó±¼»ý±è»õ´Â ±ú°í¸®Ã³·³ »ý°å±¸¿ä ¸Å¿ì »ç¾ÇÇØ¿ä~~ diff --git "a/objmon/rndtalk/\260\350\274\256\304\241\271\253" "b/objmon/rndtalk/\260\350\274\256\304\241\271\253" deleted file mode 100644 index 62a49744..00000000 --- "a/objmon/rndtalk/\260\350\274\256\304\241\271\253" +++ /dev/null @@ -1,8 +0,0 @@ -Á¤º¸¸¦ ¾Ë°í½ÍÀ¸¸é ¿©±â¿¡ ¾É¾Æ ³» ¾ê±â¸¦ µé¾îº¸°Ô³ª. -Àâ´ãÀ» ³Ê¹« ¸¹ÀÌÇÏ¸é ¸ö¿¡ ¾ÊÁÁ´Ù³×. -Ãʺ¸ÀÚµéÀº Ç¥ÁöÆÇÀ» º¸°í ¼ö·ÃÀåÀ¸·Î ã¾Æ°¡°Ô³ª. -¸ÛûÇÑ ¹è´ÞºÎ°¡ ³» Ÿ¹ö¸° µÎ·ç¸¶±â¸¦ Àоî¹ö·È´Ù³×. ÀÌ ÀÓ¹«¸¦ ¸Ã°í½ÍÀ¸¸é ³ª¿Í ´ëÈ­¸¦ ÇØº¸°Ô³ª. -'³ª°¡´Â ±æ'·Î ³ª°¡¸é ¿Â°® ±«¹°°ú ¾Ç´çµéÀÌ ¿ì±Û°Å¸°´Ù³×. Á¶½ÉÇϰԳª. -ÀÚ³×, ¾îµð ¾ÆÇ°¡? Ä¡·á¼Ò¿¡ °¡¼­ ¾Æ¹ÌŸºÒ¿¡°Ô Ä¡·á¸¦ ¹Þ°Ô³ª. -¸í·É¾î¸¦ Àß ¸ð¸£¸é 'µµ¿ò¸»'À» ¸¹ÀÌ ÀÌ¿ëÇϰԳª. -¾ÆÀÌÅÛ º¹»ç¸¦ Çϸé õ¹úÀ» ¹Þ´Â´Ù³×. diff --git "a/objmon/rndtalk/\276\306\271\314\305\270\272\322" "b/objmon/rndtalk/\276\306\271\314\305\270\272\322" deleted file mode 100644 index c7d8d55f..00000000 --- "a/objmon/rndtalk/\276\306\271\314\305\270\272\322" +++ /dev/null @@ -1,3 +0,0 @@ -µ¶Ä¡·á Ä¡·á Áúº´Ä¡·á ½Ç¸íÄ¡·á ¹¹µç ¸»¸¸ ÇϰԳª.. -ÀÚ³× ¾îµð ¾ÆÇ°¡? ³ª¿¡°Ô ´ëÈ­¸¦ ÇØ º¸°Ô³ª.. -ÀÚ³Ù °è¼®Ä¡¹«°¡ ³ª¿¡ ´ëÇØ ¾ê±âÇÏ´Â °ÍÀ» µè°í ã¾Æ¿Ô´Â°¡? diff --git "a/objmon/talk/\260\350\274\256\304\241\271\253-25" "b/objmon/talk/\260\350\274\256\304\241\271\253-25" deleted file mode 100644 index 3d4ab6cd..00000000 --- "a/objmon/talk/\260\350\274\256\304\241\271\253-25" +++ /dev/null @@ -1,34 +0,0 @@ -ÀÓ¹« -¾î´À ¸ÛûÇÑ ¹è´ÞºÎ°¡ ³» Ÿ¹ö¸° µÎ·ç¸¶±â¸¦ ¼ö·ÃÀå¿¡¼­ ÀÒ¾î¹ö·È³× µ¹·ÁÁÖ¸é »óÀ» ÁÖÁö. ¸ðÇèÁß¿¡ ´ÙÄ¡¸é ¾ðÁ¦µçÁö ¾Æ¹ÌŸºÒ¿¡°Ô 'Ä¡·á'¶ó°í ¸»ÇϰԳª. -¾È³ç -¾î´À ¸ÛûÇÑ Ãʺ¸°¡ ³» Ÿ¹ö¸° µÎ·ç¸¶±â¸¦ ÀÒ¾î¹ö·È³× µ¹·ÁÁÖ¸é »óÀ» ÁÖÁö -¸ÛûÀÌ -ÀÚ³×°°Àº '¸ðÇè°¡'µé ¸»À̳×....¸¹Àº »ç¶÷µéÀÌ ¸ðÇèÁß ´ÙÃļ­ 'Ä¡·á'¹Þ°í ÀÖÁö.. -¸ðÇè°¡ -±×·¡ À̼¼°è¿¡´Â ¸¹Àº À§ÇèÀÌ ÀÖ´Ù³×... ±×°É ±Øº¹ÇÏ´Â°Ô ÀÚ³× 'ÀÓ¹«'Áö -Ä¡·á -¾Æ¹ÌŸºÒ¿¡°Ô 'Ä¡·á'¶ó°í ¸»ÇϰԳª...µ¶ÀÌµç ¹¹µç ´Ù ÇØ°áÇØ ÁÙ°ÍÀ̳×.. -½£ -±Í½Å³ª¹« ½£ÀÇ ¹éÇеµÀÎÀ» ã¾Æ°¡¼­ ³»°¡ º¸³Â´Ù°í ¸»ÇϰÔ. -¿ª»ç -À̰÷Àº µÚƲ¸° °ø°£°ú '½Ã°£'¼ÓÀ¸·Î ºüÁ®¹ö¸° °÷ÀÌ³× ¾ðÁ¦ ºØ±«µÇ¾î¹ö¸±Áöµµ ¸ð¸£´Â ¿î¸íÀ̳×. -½Ã°£ -¿¹·Î ¾ó¸¶Àü¿¡ µÎ '¿Õ±¹'ÀÌ À̰÷À¸·Î ºüÁ®µé°Ô µÇ¾ú´Ù³×... -¿Õ±¹ -±×µéÀº ¾Æ¸¶ 'ÃÊ'¿Í 'ÇÑ'À̶ó ºÎ¸¥´ÙÁö? ±×µé¿¡°Ô '°¡ÀÔ'ÇÏ´Â°Ç ¹«Ã´ À§ÇèÇÑ ÀÏÀÌ³× -°¡ÀÔ -±×µéÀº Ç×»ó ¼­·Î¸¦ ÆÄ¸ê½ÃŰ·Á Çϰí ÀÖ³× ÀÚ³×°¡ ±×µé°ú '¼Õ'À» ÀâÀ¸¸é ¹þ¾î³ªÁú ¸øÇҰɼ¼. -¼Õ -±×µéÀº Àڳ׸¦ 'Àå¼ö'·Î °í¿ëÇØ¼­ ´Ù¸¥ ¸ðÇè°¡µé°ú ½Î¿ì°Ô ÇÒ°ÍÀ̳×... -Àå¼ö -¸¸ÀÏ ½Â¸®ÇÏ¸é »óÀ» ¹Þ°ÚÁö¸¸ Áװųª ÆÐ¹èÇÏ¸é ±×¸¸ÇÑ ´ñ°¡¸¦ Ä¡·ç¾î¾ß µÉ°ÍÀ̳×.. -ÃÊ -½ÅÁßÈ÷ °í·ÁÇØ¼­ ÃÊ¿ÕÀÇ ¼º¿¡ °¡¼­ °¡ÀÔÇÑ´Ù°í ÇϰԳª...¿ëº´ÀÇ »ýȰÀº Ãʺ¸Àڵ鿡°Ô´Â Çè³­ÇÏ´Ù³×.. -ÇÑ -Çѿյµ ¼º¿¡¼­ ¿ëº´µéÀ» ¸ðÁýÇϳ×...Á¤ ¿øÇÏ´Ù¸é ¼º¿¡ ã¾Æ°¡ °¡ÀÔÇϰԳª.. -¹Ùº¸ -³­ ¹Ùº¸°¡ ¾Æ´Ï¾ß. ´ç½ÅÀÌ ¹Ùº¸Áö. -»Ç»Ç -ÇÏÇÏ. ³ª¸¦ ¾Ë¾Æ º¸´Â ±¸¸Õ.. ÀÚ³× ÀÌ °É ¾Æ´Â°¡.. ³»°¡ ¹Ù·Î ÆÄÀ̾î => ¶Ç±× => »Ç»Ç ¶õ°É..À̰÷ÀÇ ½ÅÂü °ü¸®´Ï ¸¹ÀÌ µµ¿Í ÁÖ°Ô. -³ª°¡´Â±æ -'³ª°¡´Â±æ'·Î ³ª°¡¸é ¿Â°® ¾Ç´çµé°ú ±«¹°µéÀÌ ¿ì±Û°Å¸°´Ù³×. Á¶½ÉÇϰԳª. diff --git "a/objmon/talk/\261\271\277\325-10" "b/objmon/talk/\261\271\277\325-10" deleted file mode 100644 index da3b1839..00000000 --- "a/objmon/talk/\261\271\277\325-10" +++ /dev/null @@ -1,10 +0,0 @@ -À§±â -Áö±Ý ¿©±â µå·¹´Ï¾Æ´Â Å« À§±â¿¡ Ã³ÇØÀÖ´Ù³×, ³ª¸¦ µµ¿ÍÁØ´Ù¸é ´ë ¸¶¹ý»ç '·¹ÀÎ'¿¡°Ô °¥¼ö ÀÖ°Ô ÇØ ÁÖ°Ú³×. ÀÚ³×°¡ ÁøÁ¤ÇÑ '¿ë»ç'¶ó¸é ÀÌ ³ª¶ó¸¦ ÁöÄÑÁÖ°Ô. -·¹ÀÎ -·¹ÀÎÀº ÀÌ ³ª¶óÀÇ ´ë ¸¶¹ý»ç¿´´Ù³×. ±×¿¡°Ô °¡¸é ±â»çȯÀÇ °Åó¸¦ ¾Ë·Á ÁÙ²¬¼¼, Âü°í·Î ±×´Â È£¼ý°¡ ž¿¡ Àº°ÅÇß´Ù³×. -¿ë»ç -¿À ±×·¸´Ù¸é '¿ë»çÀÇ ÁõÇ¥'¸¦ º¸¿©ÁÖ°Ô -¿ë»çÀÇ -±×°ÍÀ» ³ª¿¡°Ô ÁÖ°Ô. ±×·³ ·¹ÀÎÀÇ Å¾¿¡ °¥¼ö ÀÖ´Â žÀÇ ¿­¼è¸¦ ÁÖ°Ú³× -ÁõÇ¥ -±×°ÍÀ» ³ª¿¡°Ô ÁÖ°Ô. ±×·³ ·¹ÀÎÀÇ Å¾¿¡ °¥¼ö ÀÖ´Â žÀÇ ¿­¼è¸¦ ÁÖ°Ú³× diff --git "a/objmon/talk/\261\315\261\335\274\323\301\241_\301\326\300\316-36" "b/objmon/talk/\261\315\261\335\274\323\301\241_\301\326\300\316-36" deleted file mode 100644 index 4433c4f0..00000000 --- "a/objmon/talk/\261\315\261\335\274\323\301\241_\301\326\300\316-36" +++ /dev/null @@ -1,14 +0,0 @@ -¾È³ç ACTION ¿ï¾î -À¸ÈåÈæ~~ ³» [¿©ÀÇÁÖ].. ³» ¿©ÀÇÁÖ... -¿©ÀÇÁÖ ACTION º¸¾Æ -¾û? ÀÚ³× ³» ¿©ÀÇÁÖÀÇ Çà¹æ¿¡ ´ëÇØ ¾Æ³ª? ¸¸¾à ¾Ë°í ÀÖ´Ù¸é ±×°É ³ª¿¡°Ô ã¾Æ ÁÖ°Ô³ª ±×·¯¸é ³» º¸»óÀ» µÎµÏÈ÷ ÇØÁܼ¼. ÀÀ? ºÎŹÇϳ×..[º¸»óÀ»] -º¸»óÀ» -±×·¡.. ³»°¡ ³»°¡ ¼·¼·Ä¡ ¾Ê°Ô ÇØÁÖ°Ú³×.. ±× ¿©ÀÇÁÖ´Â Áö±Ý ¾È°³ µµ½Ã¿¡¼­ ¸¶Áö¸·À¸·Î ³²Àº°ÍÀϼ¼.. ±×·¡¼­ ´õ¿í ±ÍÁßÇϴٴ°žß.. [¸¶Áö¸·À̶ó´¢] -¸¶Áö¸·ÀÌ¶ó´¢ -ÀüºÎÅÍ È­¹«°áÀ̶ó´Â ¹«»ç°¡ ±×°É ³»°Ô °¡Áö°í ¿Í ÆÈ°í´Â Çߴµ¥, ¿äÁò ±×ÀÚ°¡ ³ªÅ¸³ªÁö ¾Ê¾Æ ¿©ÀÇÁÖ°¡ ´õ¿í ±ÍÇØÁ³¾î... [È­¹«°áÀº] -È­¹«°áÀº -¿©ÀÇÁÖ¸¦ ´õ ±¸Çϱâ À§ÇØ »ç»ý½ÊÀ̰ü¹®¿¡ µé¾î °¬´Âµ¥ ¾î¶»°Ô µÆ´ÂÁö ¸ð¸£°Ú¾î.. »¡¸® ±×°É ±¸ÇØ¿Í¾ß ÇÒÅÙµ¥... Ȥ½Ã Áö±Ý±îÁö ¿îÀÌ ÁÁ¾Æ »ì¾Æ µ¹¾Æ¿ÔÁö¸¸ °ü¹®À» ÁöŰ´Â ±«¹°µé¿¡°Ô ´çÇѰÍÀÌ ¾Æ´Ò±î..? [±«¹°À̶ó´Ï] -±«¹°À̶ó´Ï -»ç»ý½ÊÀ̰ü¹®ÀÇ ¾È¿¡´Â °ü¹®À» ÁöŰ´Â ±«¹°µéÀÌ µæ½Ç°Å¸®Áö.. ±× ¹®¾ÕÀ» ÁöŰ´Â ÆÄ¼ö²ÛÀÌ ±×·¯´Âµ¥ ¿äÁò ½ÊÀ̰ü¹®ÀÇ ¾È¿¡¼­ Àü¿¡ ´À³¢Áö ¸øÇß´ø »ç¾ÇÇÑ ±â¿îÀÌ Èê·¯³ª¿Â´Ù´Â°Å¾ß.. ¸Â¾Æ! È­¹«°áÀº ºÐ¸íÈ÷ Á×¾úÀ»°Å¾ß... ±×·¯¸é ¾î¶»°Ô ÇÏÁö.. µµµÏ¸ÂÀº ¿©ÀÇÁÖ°¡ ÁøÂ¥·Î ¸¶Áö¸·ÀÌ µÉÅÙµ¥ ÀÌÁ¦ ´©°¡ ±× ¾È¿¡ µé¾î°¡ ¿©ÀÇÁÖ¸¦ ±¸Çؿ´ÙÁö? [³»°¡] -³»°¡ -ÀÚ³×°¡? ÀÚ³×ÀÇ ½Ç·ÂÀ¸·Î µÉ±î..? À½.. ÇÏ±ä ³ª¿¡°Ô ¼ÕÇØµÉ°Ç ¾øÁö... ÁÁ³×! ÀÚ³×°¡ ±×°É ±¸ÇØ´Ù ÁÖ¸é ³» °¡°ÝÀ» ÈÄÇÏ°Ô ÃÄ Áܼ¼.. ±×¸®°í µµµÏ¸ÂÀº ¿©ÀÇÁÖµµ ã¾ÆÁÖ¸é ÀûÀýÇÑ º¸»óÀ» ÇØÁÖ°Ú³×... diff --git "a/objmon/talk/\261\342\273\347_\310\257\300\307_\271\314\300\314\266\363-10" "b/objmon/talk/\261\342\273\347_\310\257\300\307_\271\314\300\314\266\363-10" deleted file mode 100644 index 5c2a7815..00000000 --- "a/objmon/talk/\261\342\273\347_\310\257\300\307_\271\314\300\314\266\363-10" +++ /dev/null @@ -1,4 +0,0 @@ -·¹ÀÎ -·¹ÀÎÀº ³ªÀÇ ÇüÀ̾úÁö, Âü ÀÚ³Ù '¶óÀÛ'¿¡°Ô °¡·Á°í Çϴ°¡? -¶óÀÛ GIVE 867 -³» Àڳ׸¦ ¹Ï°í Áö·æ ¶óÀÛ¿¡°Ô °¥¼ö ÀÖ´Â µ¿±¼ ¿­¼è¸¦ ÁÖ°Ú³×. diff --git "a/objmon/talk/\263\252\271\253\262\333-1" "b/objmon/talk/\263\252\271\253\262\333-1" deleted file mode 100644 index 19eb6e71..00000000 --- "a/objmon/talk/\263\252\271\253\262\333-1" +++ /dev/null @@ -1,9 +0,0 @@ -ÆíÁö -±ÛÀ» ¾µÁÙ ¸ô¶ó¼­ ÆíÁö¸¦ ¸øº¸³»´Ï 'ÁõÇ¥'¶óµµ ÀüÇØÁà¿ä. -¾ÈºÎ -¼±³àÀÇ ¾ÈºÎ°¡ °ÆÁ¤µÇ´Âµ¥ 'ÆíÁö'µµ ¸øº¸³»¿ä. -ÁõÇ¥ GIVE 312 -ÀÌ°É ¼±³à¿¡°Ô °®´Ù Áֽÿä. -¼±³à -¾ó¸¶Àü¿¡ ¿¬¸øÀÇ ±«¹°µé¿¡°Ô ÀâÇô°¬¾î¿ä '¾ÈºÎ'°¡ °ÆÁ¤µÇ¿ä. - diff --git "a/objmon/talk/\264\304\300\272_\272\270\303\312-36" "b/objmon/talk/\264\304\300\272_\272\270\303\312-36" deleted file mode 100644 index ada229f4..00000000 --- "a/objmon/talk/\264\304\300\272_\272\270\303\312-36" +++ /dev/null @@ -1,8 +0,0 @@ -¾È³ç -Äð·°Äð·°.. ´µ½Ã¿ä.. ¾ÆÀ̰í Èûµé¾î.. À̺¸°Ô ÀÚ³×µµ À̰÷¿¡ µé¾î °¥·Á°í Çϴ°¡? [¿¹] -¿¹ -¾Æ¼­¶ó.. À̰÷ÀÌ ¾î¶²°÷ÀÎÁö ¾Ë¾Æ..? µ¹¾Æ°¡°Ô. Àϼø°£ÀÇ °´±â·Î ±ÍÁßÇÑ »ý¸íÀ» ÀÒÀ» ¼ö°¡ ÀÖ³×. [±×·¡µµ] -±×·¡µµ -ÇæÇæÇæ.... ±×·¸°Ôµµ µé¾î°¡°í ½Í³ª? ±×·¯¸é Æ÷µµÃ»¿¡ °¡¼­ Çö°¨´Ô¿¡°Ô Çã¶ôÀ» ¸Ã¾Æ ¿À°Ô ±×·¯¸é ³»°¡ ¾ÈÀ¸·Î µé¿© º¸³» ÁÖ°Ú³×. Çö°¨´Ô¿¡°Ô °¡¼­ '»ç»ý½ÊÀ̰ü¹®'¿¡ ´ëÇØ ¹°¾îº¸°Ô. -ÃâÀÔÇã°¡ GIVE 808 -Çö°¨¿¡°Ô Çã¶ôÀ» ¸º¾Æ ¿Ô±¸¸¸.... ÀÚ! ½ÊÀ̰ü¹®ÀÇ ¿­¼è¸¦ ÁÖ°Ú³×. ÀÌ ¿­¼è¸¦ °¡Áö°í µé¾î°¡°Ô. ÇÏÁö¸¸ Á¶½ÉÇÏ°Ô . ¾È¿¡´Â ¿Â°® À§ÇèÀÌ ±â´Ù¸®°í ÀÖ´Ù³×. diff --git "a/objmon/talk/\264\304\300\272_\276\310\263\273\277\370-1" "b/objmon/talk/\264\304\300\272_\276\310\263\273\277\370-1" deleted file mode 100644 index 0d64d497..00000000 --- "a/objmon/talk/\264\304\300\272_\276\310\263\273\277\370-1" +++ /dev/null @@ -1,12 +0,0 @@ -È¥µ¿ -È¥µ¿ÀÇ ¶¥Àº Áß°£°è°¡ »ý°Ü³¯¶§ ¿ì¿¬È÷ »ý°Ü³­ [±×¸²ÀÚ]¿Íµµ °°Àº °÷ÀÌÁö. -±×¸²ÀÚ -´Ù½Ã ¸»Çؼ­ À̰÷¿¡ ÀÖ´Â ¶¥Àº Áß°£°è¿¡µµ ÀÖ´Ù´Â °ÍÀ̳×. ¹°·Ð [±«¹°]µéµµ ¸¶Âù°¡ÁöÁö. -±«¹° -ÇÏÁö¸¸, À̰÷ÀÇ ±«¹°Àº Áß°£°èÇϰí´Â ÀüÇô Ʋ¸®´Ù¿À. ¿©±â [ÈÆ·ÃÀå]À» µÑ·¯º¸¸é ¾Ë²¨¶ó¿ä. -ÈÆ·ÃÀå -ÈÆ·ÃÀåÀ» Çѹø µÑ·¯º¸°í ÈûÀ» Ű¿ì´Â°Ô ÁÁÀ»²¨³×. ±× ´ÙÀ½¿¡´Â ¿©±â ºÏÂÊÀÇ [±¤Àå]À¸·Î °¡º¸°Ô³ª. -±¤Àå -¹°·Ð Áß°£°èÀÇ ±¤Àå°úµµ ºñ½ÁÇÑ °÷ÀÌÁö. [°è¼®Ä¡¹«]µµ »ì°í ÀÖ°í. -°è¼®Ä¡¹« -ÇÏÁö¸¸ ±× °è¼®Ä¡¹«´Â À§ÇèÇÑ Àι°À̳×. Á¤º¸¸¦ Áֱ⵵ ÇÏÁö¸¸ Á¶½ÉÇØ¾ß ÇÒ²¨³×. diff --git "a/objmon/talk/\264\353\300\345\300\345\300\314-48" "b/objmon/talk/\264\353\300\345\300\345\300\314-48" deleted file mode 100644 index de0c530a..00000000 --- "a/objmon/talk/\264\353\300\345\300\345\300\314-48" +++ /dev/null @@ -1,12 +0,0 @@ -¾È³ç -¾î¼­¿À½Ê½Ã¿ä. ¼Õ´Ô.. ¹«½¼ ÀÏ·Î ¿À¼Ì½À´Ï±î? [¹«±â]¸¦ ¸¸µé·¯ ¿À¼Ì³ª¿ä? -¹«±â -¾Æ~~ Á˼ÛÇÕ´Ï´Ù. ¼Õ´Ô! À̰÷¿¡¼­´Â ¸¸³âÇÑö·Î¸¸ ¹«±â¸¦ ¸¸µå´Âµ¥, Áö±Ý ±× öÀÌ ´Ù ¶³¾îÁö°í ¾ø½À´Ï´Ù. Áö±Ý ¸¸µé¾î ³õÀº ¹«±â°¡ Çϳª ÀÖ±äÇѵ¥, ´Ù¸¥ºÐÀÌ ¸ÕÀú ºÎŹÀ» ÇØ³ö¼­ µå¸±¼ö°¡ ¾ø´Âµ¥¿ä. [´©°¡?][¸¸³âÇÑö?] -´©°¡? -À½.. ±×ºÐÀº È­¹«°áÀ̶ó´Â ºÐÀε¥, ±×·±µ¥, È­¹«°á´ÔÀÌ Àú¹ø¿¡ ÀÇ·Ú¸¦ ÇÑÈÄ ¿À½ÃÁú ¾Ê¾Æ Áö±Ý ¹«±â¸¦ ¸¸µéÁö ¸øÇϰí ÀÖ¾î¿ä. [¿Ö?] -¿Ö? -±×ºÐÀÌ ¸¸³âÇÑöÀ» °¡Á®´ÙÁÖ¸é Á¦°¡ ¹«±â¸¦ ¸¸µé¾îÁÖ°í ±× ³²´Â ¿©ºÐÀ¸·Î ¹«±â¸¦ ¸¸µé¾î ÆÈ°í ÀÖÁÒ. ±×ºÐÀÌ ¸¸³âÇÑöÀ» °¡Á®´Ù ÁÖÁö ¾ÊÀ¸¸é ÀÌ Àå»çµµ ±×¸¸µÎ¾î¾ß Çϴµ¥ ¾î¶»Çϸé ÁÁÁÒ...? ¸¸¾à ´Ù¸¥ »ç¶÷ÀÌ¶óµµ ¸¸³âÇÑöÀ» °¡Á®´Ù ÁÖ¸é ¹«±â¸¦ ¸¸µé¼ö ÀÖÀ»ÅÙ³×.. ¾Æ! ±×·¸±º.. ¼Õ´Ô²²¼­ ¸¸³âÇÑöÀ» °¡Á®´Ù ÁÖ½ÃÁö ¾Ê°Ú½À´Ï±î? ¸¸¾à ±× öÀ» °¡Á®´Ù Áֽøé ÁÁÀº ¹«±â¸¦ ¸¸µé¾î µå¸®°Ú½À´Ï´Ù. ±×·²·Á¸é ¿ì¼± »ç»ý ½ÊÀ̰ü¹®ÀÇ ¾È¿¡ µé¾î°¡¾ß ÇÒÅÙµ¥ Á¤È®ÀÌ ±× öÀÌ ¾îµð¿¡ ÀÖ´ÂÁö´Â Àúµµ ¸ð¸¨´Ï´Ù. È­¹«°á´Ô¸¸ÀÌ ¾Ë°í Àִµ¥ ¸¸¾à È­¹«°á´ÔÀ» ¸¸³ª°Åµç {¸¸³âÇÑö}¿¡ ´ëÇØ¼­ ¹°¾îº¸½Ê½Ã¿ä. [¾î¶²¹«±â?] -¸¸³âÇÑö -¸¸³âÇÑö ¸»ÀԴϱî? ±× öÀº »ç»ý½ÊÀ̰ü¹®ÀÇ ¾È¿¡¼­¸¸ »ý±â´Â Ư¼öÇÑ Ã¶ÀÌÁö¿ä. ¹°·Ð ±× ¾È¿¡¼­´Â öÀÌ »ý»êµÇÁö ¾ÊÁö¸¸ ÀÏ¹Ý Ã¶À» ±× ¾È¿¡´Ù µÎ¸é ±×°÷ÀÇ Çѱ⸦ ¹Þ¾Æ ¸¸³âÇÑö·Î ¼ºÁúÀÌ ¹Ù²î¾î ¹ö¸®Áö¿ä. Àü¿¡ È­¹«°á´ÔÀÌ Ã¶À» ±×¾È¿¡´Ù ÀÜ¶à °¡Á®´Ù ³õ°í ÇÊ¿äÇÒ¶§¸¶´Ù ¾à°£¾¿ ²¨³»¿Ô½ÀÁÒ. -¾î¶²¹«±â? -¾È°³ ºñõ°ËÀ̶ó°í ÇÏ´Â ¹«±âÀî.. ¼³¸íÀº ÇÊ¿ä¾ø°í ÀÏ´Ü »ç¿ëÇØ º¸½Ã¸é ±× À§·ÂÀ» ½Ç°¨ÇϽǰ̴ϴÙ. ±×·±µ¥, â°í¾È¿¡ ÀÖ´Â ÀÚ¿¡°Ô °¡Áö ¸¶½Ê½Ã¿ä. ±×´Â ³ª¿Í ¹è´Ù¸¥ ÇüÁ¦Àε¥ ±×´Â »ç¾ÇÇÑ ¹°°Ç¸¸ ¸¸µéÁö¿ä. ±×°¡ ¸¸µå´Â ¹°°ÇÀº ¾ÇÇÑ ½É¼º¸¸À» °¡Áö°í ÀÖ´Â »ç¶÷ÀÌ »ç¿ëÇÒ ¼ö ÀÖ´ä´Ï´Ù. ÇÏÁö¸¸ Á¦°¡ ¸¸µå´Â ¹°°ÇÀº ¼±ÇÑ »ç¶÷¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖÁÒ.. ÇìÇìÇì.. ´ç½ÅÀº ³»°¡ º¸±â¿¡ ¼±ÇØ º¸À̴µ¥ ¸¸³âÇÑöÀ» ±×¿¡°Ô °¡Á® °¡Áö ¸»°í, Àú¿¡°Ô °®´Ù ÁÖ¼¼¿ä. diff --git "a/objmon/talk/\265\277\305\271-72" "b/objmon/talk/\265\277\305\271-72" deleted file mode 100644 index 8cab071f..00000000 --- "a/objmon/talk/\265\277\305\271-72" +++ /dev/null @@ -1,6 +0,0 @@ -¸í·É -¾ÆÁÖ Àç¹ÌÀÖ´Â »ç¶÷À̱º. '»ó'¿¡ °ü½ÉÀÌ ¸¹Àº°¡? -»ó -±×·³ ÀÓ¹«¸¦ Çϳª ¸Ã±âÁö. °¡¼­ ÀûÀÇ ´ëÀ屺ÀÎ 'Á¶¿î'À» ¾ø¾Ö¶ó. -Á¶¿î -Á¶¿îÀ» ¾ø¾Ö¸é ³ª¸ÓÁö´Â Çã¼ö¾Æºñµé »ÓÀ̾ß. Áõ°Å¸¦ °¡Á®¿À¸é Å« »óÀ» ÁÖ°Ú´Ù. diff --git "a/objmon/talk/\266\245\300\307_\260\370\301\326-1" "b/objmon/talk/\266\245\300\307_\260\370\301\326-1" deleted file mode 100644 index eb701863..00000000 --- "a/objmon/talk/\266\245\300\307_\260\370\301\326-1" +++ /dev/null @@ -1,2 +0,0 @@ -¿ë»ç GIVE 107 -ÀÌ ¿­¼è·Î °¨¿Á¿¡ ÀÖ´Â ¾Æ¹öÁö¸¦ ±¸ÇØÁÖ¼¼¿ä. diff --git "a/objmon/talk/\266\260\265\271\300\314_\260\313\260\264-60" "b/objmon/talk/\266\260\265\271\300\314_\260\313\260\264-60" deleted file mode 100644 index b36549b2..00000000 --- "a/objmon/talk/\266\260\265\271\300\314_\260\313\260\264-60" +++ /dev/null @@ -1,32 +0,0 @@ -¾È³ç -À̺Á! ÀÚ³×.. Áö±Ý ÀÚ³×°¡ ³» º¿ÁüÀ» ¹â°í ÀÖ¾î. [¹Ì¾È][¹Ùº¸°°Àº³ð] -¹Ì¾È CAST ±Çdz¼ú -¹Ì¾ÈÇÏ¸é ³ªµµ º¸´äÀ» ÇØ¾ßÁö? À̰ųª ÇÑ¹æ ¸Ô°Ô. -¹Ùº¸°°Àº³ð -¹¹¾ß? À߸øÀº ³×°¡ ÇØ³õ°í ¿åÀ» ÇÏ´Ù´Ï.. Á×°í½Í¾î ȯÀå Çß±¸³ª.. [½Î¿ìÀÚ][±×¸¸µÎÀÚ] -½Î¿ìÀÚ ATTACK -À̳༮! ÀáÀڴ ȣ¶ûÀÌÀÇ ÄÚÅÐÀ» °Çµå¸®´Ù´Ï.. Á×¾î¶ó~~~ -±×¸¸µÎÀÚ -ÈåÈå~~ Á×°í ½ÍÁö´Â ¾ÊÀº ¸ð¾çÀÌÁö? ÁÁ¾Æ. ¿ë±â°¡ °¡¼§ÇØ À̹ø¸¸Àº ºÁÁÖÁö.. ¾î¼­ ³» ´«¾Õ¿¡¼­ »ç¶óÁ®! [Áú¹®][À̳ð] -Áú¹® -±ÍÂú¾Æ Á×°Ú³×.. ¹» ¹°¾îº¼°Ô ÀÖÁö..? ³ª´Â ¾È´Ù³à º»°÷ÀÌ ¾ø¾î.. ÀÌ¿ô Áß°£°è.. Á×À½ÀÇ »ç¸·.. »ç»ý½ÊÀ̰ü¹® [»ç»ý½ÊÀ̰ü¹®] -À̳ð CAST ³úÀü -¾Æ´Ï.. À̳༮ÀÌ ºÁÁִϱî.. ´Ù½Ã´Â ³» ¾Õ¿¡ ¾óÂİŸ®Áö ¸øÇϵµ·Ï ÇØÁÖ¸¶. -»ç»ý½ÊÀ̰ü¹® -±× Áö¿Á °°Àº°÷Àº ¿Ö ¹°¾îº¸´Â°Å¾ß? ³×°¡ ±× °÷¿¡ °¡±â¶óµµ Çϰڴٴ°žß? [±×·¸´Ù][¾Æ´Ï] -±×·¸´Ù -ÇÏÇÏÇÏ~~~ ÁøÂ¥ Á×°í ½ÍÀº ¸ð¾çÀ̱º.. ¾Æ¼­¶ó. ³Ê°°Àº ³ðÀº ±×°÷¿¡ ¹ßµé¿© ³õÀÚ¸¶ÀÚ ¸ñÀÌ ¾îµð·Î °°´ÂÁö ¾Ë¼öµµ ¾øÀ»°Å´Ù. [¾Ë·Á´Þ¶ó] -¾Ë·Á´Þ¶ó -¿¡ÀÕ! ±ÍÂú¾Æ Á×°Ú±º.. ¿À³Ä! Á¤ ±×·¸°Ô Á×°í ½Í´Ù¸é ³»°¡ °¡¸£ÃÄ ÁÖÁö. ±×°÷Àº ÃÑ ½ÊÀ̰ü¹®À¸·Î ÀÌ·ç¾î Á³´Âµ¥, ÀÌ·¸°Ô °­ÇÑ ³ªµµ 1°ü¹® ¹Û¿¡ Åë°úÇÏÁö ¸øÇϰí, 2°ü¹®¿¡¼­ °É¸®°í ¸»¾ÒÁö. Á¨Àå!! [1°ü¹®][2°ü¹®] -1°ü¹® -1°ü¹®Àº ¿ë±âÀÇ ¹®ÀÌÁö.. ±×°÷ÀÇ ¹Ì·Î¸¦ µ¹¾Æ´Ù´Ï¸ç Á¦2°ü¹®À» ã¾Æ³»¾ß Çϴµ¥, ±× ¾ÈÀ» Áö۰í ÀÖ´Â ³à¼®µéÀÌ Áý¿äÇÏ°Ô µû¶óºÙ¾î ³ªµµ Á» ¾Ö¸¦ ¸Ô¾ú¾î. ±× ³à¼®µéÀº µµ¸ÁÀ» Ä¡¸é ³¡±îÁö µû¶ó ¿À´õ±º. ÀÌÁ¦ Áú¹®ÀÌ ³¡³µÀ¸¸é °¡ºÁ! ±ÍÂú°Ô ±¼Áö ¸»°í.. -2°ü¹® -ºô¾î¸ÔÀ».. ³ª´Â ±× °ü¹®¸¸ »ý°¢Çϸé À̰¡ °¥¸°´Ù´Ï±î..¾¿¾¿~~~~ Á¦ 2°ü¹®Àº ÁöÇýÀÇ ¹®À̶ó°í º®¿¡ ÀûÇô ÀÖ´Â ¹®Á¦ÀÇ ´äÀ» ã¾Æ ´ä¿¡ ÇØ´çÇÏ´Â ¹®À» ¿­¾î Åë°ú¸¦ ÇØ¾ßÇϴµ¥ ³ª °°Àº ¹«½ÄÀïÀÌ Ä®ÀâÀ̰¡ ¹» ¾Ë¾Æ¾ßÁö.. ¹®Á¦¸¶´Ù Ʋ·¯ °ÅÀÇ Á×À»»·Çß´Ù°¡ Æ÷±âÇÏ°í ³ª¿Ô¾î. ÀÌÁ¦ Áú¹®ÀÌ ³¡³µÀ¸¸é °¡ºÁ! ±ÍÂú°Ô ±¼Áö ¸»°í.. [Á×À»»·ÇÏ´Ù´Ï] -Á×À»»·ÇÏ´Ù´Ï -¹®Á¦¸¦ À߸ø Ç®¾î ¾û¶×ÇÑ ¹æÀ¸·Î °¡¸é ±×¿¡ ÀÀ´çÇÑ ¹úµéÀÌ ±×°÷¿¡¼­ ±â´Ù¸®°í ÀÖ¾î. [¹ú] -¹ú -±×·¸°Ô ±Ã±ÝÇÏ¸é ³ªÇÑÅ× ¹¯Áö ¸»°íÁ÷Á¢ °¡¼­ °Þ¾îº¸¸é µÇÀݾÆ.. [ÀßÀÖ¾î] -ÀßÀÖ¾î ACTION ¹ÙÀÌ -¹ÌÄ£³ð.. Áö¿ÁÀ¸·Î ã¾Æ°¡´Ù´Ï.. ±×·¡ Àß°¡¶ó.. Çà¿îÀ» ºô¾îÁÖ¸¶.. Âü! ±×¸®°í ³»°¡ °¬À»¶§ È­¹«°áÀ̶ó´Â ÀÚ¿Í °°ÀÌ °¬´Âµ¥ ¾î¶»°Ô µÆ´ÂÁö ¸ð¸£°Ú±º.. ¸¸¾à ±×ÀÇ ½Ãü¶óµµ ¸¸³ª°Åµç ¾ÈºÎ³ª ÀüÇØ¶ó.. ÇÏÇÏÇÏ~~~ -[¾Æ´Ï] -±×·¯¸é ¾Æ¼­¶ó. ¾Ë¾ÆºÁ¾ß ÁÁÀ»°Å Çϳªµµ ¾ø´Ù. diff --git "a/objmon/talk/\267\271\272\245-1" "b/objmon/talk/\267\271\272\245-1" deleted file mode 100644 index 6d04d322..00000000 --- "a/objmon/talk/\267\271\272\245-1" +++ /dev/null @@ -1,6 +0,0 @@ -¼¼°è -ÀÒ¾î¹ö¸° ¼¼°è¿¡¼­ °øÆ÷¿¡ Áú·ÁÀÖ´Â 'ÄÌ·¯'¿Í '¾Æºñ'¸¦ ±¸ÇØÁÖ¼¼¿ä. -ÄÌ·¯ GIVE 581 -ÄÌ·¯ ¶Ç´Â ¾Æºñ¿¡°Ô ÀÌ ¹«Àü±â¸¦ ÀüÇØÁÖ¼¼¿ä. -¾Æºñ GIVE 581 -ÄÌ·¯ ¶Ç´Â ¾Æºñ¿¡°Ô ÀÌ ¹«Àü±â¸¦ ÀüÇØÁÖ¼¼¿ä. diff --git "a/objmon/talk/\267\271\300\316\300\307_\271\314\300\314\266\363-127" "b/objmon/talk/\267\271\300\316\300\307_\271\314\300\314\266\363-127" deleted file mode 100644 index da63088c..00000000 --- "a/objmon/talk/\267\271\300\316\300\307_\271\314\300\314\266\363-127" +++ /dev/null @@ -1,10 +0,0 @@ -±¹¿Õ -³ª´Â ÇѶ§ µå·¹´Ï¾Æ ¿Õ±¹ÀÇ ´ë ¸¶¹ý»ç¿´´ø '·¹ÀÎ'ÀϽê.. -·¹ÀÎ -³ª´Â ÇѶ§ ³ª¶ó¸¦ ÁöÄ×À¸³ª Áö±ÝÀº Á×Àº ¸öÀ̶ó³×. ³ª´Â ÀÌ 'À§±â'¸¦ ¸·À»¼ö ¾ø´Ù³×. -À§±â -ÀÌ À§±â¸¦ ±Øº¹Çϱâ À§Çؼ­´Â ÁøÁ¤ÇÑ '¿ë»ç'°¡ ÇÊ¿äÇÏÁö... -¿ë»ç -ÀÚ³×°¡ ÀÌ À§±â¸¦ '±Øº¹'ÇØÁÙ¼ö ¾ø°Ú³ª? -±Øº¹ GIVE 865 -±×·¸´Ù¸é ÁøÂ¥ ¿ë»çÀÎ ±â»ç ȯÀ» ºË°Ô ¹«´ý ¿­¼è¸¦ ÁÖÁö diff --git "a/objmon/talk/\270\266\265\265\275\302-80" "b/objmon/talk/\270\266\265\265\275\302-80" deleted file mode 100644 index f18f8bb4..00000000 --- "a/objmon/talk/\270\266\265\265\275\302-80" +++ /dev/null @@ -1,6 +0,0 @@ -¾È³ç -ŬŬŬ... ³×°¡ ¿ÃÁÙ ÀÌ¹Ì ¿¹°¨Çϰí ÀÖ¾ú´Ù. [¾î¶»°Ô] -¾î¶»°Ô -»çÇü¸¸ °è½Ã¸¦ ¹ÞÀºÁÙ ¾Æ´À³Ä? ³ªµµ ³ªÀÇ ½Å¿¡°Ô¼­ °­·ÂÇÑ ÀûÀÌ ¿Ã°ÍÀ̶ó°í ³ª¿¡°Ô °è½Ã¸¦ ³»·Á ÁáÁö. ÈåÈåÈå~~~ ÇÏÁö¸¸ ³ÊÀÇ ²ÃÀ» º¸´Ï ³ªÀÇ Àû¼ö°¡ ¸øµÉ°Í °°±¸³ª. [¾î¶²½Å] -¾î¶²½Å ATTACK -³Ê °°Àº°Ç ¾Ë ÇÊ¿ä¾ø´Ù. ¸ðµç ¾ÇÀ» °ü¸®ÇÏ´Â ½ÅÀ̽ÿ©. ³ª¿¡°Ô ÈûÀ» ÁÖ¼Ò¼­... diff --git "a/objmon/talk/\270\266\300\273_\300\345\267\316-10" "b/objmon/talk/\270\266\300\273_\300\345\267\316-10" deleted file mode 100644 index 807699d4..00000000 --- "a/objmon/talk/\270\266\300\273_\300\345\267\316-10" +++ /dev/null @@ -1,14 +0,0 @@ -¿ë»ç -¿À À߿Գ×. ¿ì¸®´Â ¸¶À» ºÏ¼­ÂÊ¿¡ ÀÖ´Â Á¦´Ï»êÀÇ 'Áö·æ' 'µµ´Ï'°¡ ¿ì¸®¸¦ ¸ø »ì°Ô Çϰí ÀÖ³×. -Áö·æ -Áö·æÀ̶ó´Â °ÍÀº Áö´ÉÀÌ ¾ø´Â ¿ëÀÌ ¿Àõ³â ÀÌ»ó Áö³ª¸é Áö½ÄÀ» ¾ò°Ô µÇ´Âµ¥ ÀÌ·± ¿ëÀ» Áö·æÀ̶ó°í ÇÑ´Ù³× -µµ´Ï -µµ´Ï´Â µµ´ÏÀÇ 'µ¿±¼'¿¡ ¼û¾î »ê´Ù°í Çϳ×. ²À Á׿©¼­ µµ´ÏÀÇ 'ÀÌ»¡'À» °¡Á®¿À°Ô -µ¿±¼ -µ¿±¼Àº Á¦´Ï»ê Á¤»ó¿¡ ÀÖÁö¸¸ ¸ÕÀú '¿­¼è'¸¦ ±¸ÇØ¾ß ÇÏ³× -¿­¼è -¿­¼è´Â Á¦´Ï»ê ÁßÅο¡ »ç´Â ¾îµÒÀÇ '³ª¹«'°¡ °¡Áö°í ÀÖ´Ù°í ÇÏ³× -³ª¹« -¾îµÒÀÇ ³ª¹«´Â Áúº´À» ÆÛÆ®¸®¸é¼­ ¸ðµç °ÍÀ» ³ì½½°Ô Çϳ×. Á¶½ÉÇÏ°Ô -ÀÌ»¡ -ÀÌ»¡À» °¡Á®¿À¸é ¼öµµ¿¡ °è½Å ±¹¿Õ ÆóÇϸ¦ ºÉ ¼ö ÀÖ´Â ÁõÇ¥¸¦ ÁÖ°Ú³×. diff --git "a/objmon/talk/\270\266\301\267_\264\353\300\345\300\345\300\314-48" "b/objmon/talk/\270\266\301\267_\264\353\300\345\300\345\300\314-48" deleted file mode 100644 index ec7455c6..00000000 --- "a/objmon/talk/\270\266\301\267_\264\353\300\345\300\345\300\314-48" +++ /dev/null @@ -1,15 +0,0 @@ -¾È³ç -ÈåÈåÈå~~ ÀÚ³×µµ Á×À½ÀÇ °ËÀÌ ÇÊ¿äÇØ ¿Ô³ª...?[±×·¸¼Ò] -±×·¸¼Ò -ÀÚ³×´Â ¾ÇÀ» Áõ¿ÀÇϴ°¡? ¾Æ´Ï¸é ¼±À» Áõ¿ÀÇϴ°¡? [¾ÇÀ»] [¼±À»] -¾ÇÀ» -µ¹¾Æ°«...! ³Ê°°Àº ³ð¿¡°Õ À̰÷Àº ¿Ã °÷ÀÌ ¸øµÅ.. ¾î¼­ ³»´« ¾Õ¿¡¼­ »ç¶óÁ®.. -¼±À» -±×·¡...? ÈåÈåÈå~~~ ÁÁ¾Æ. ÁÁ¾Æ. ¹Û¿¡ ÀÖ´Â ³»µ¿»ý¿¡°Ô À̾߱⸦ µé¾î ºÃ°ÔÁö? [¿¹] [¾Æ´Ï¿À] -¿¹ -ÁÁ¾Æ. ÁÁ¾Æ.. ¸¸¾à ³ª¿¡°Ô ¸¸³âÇÑöÀ» °¡Á®´Ù ÁÖ¸é ±¤¸¶°ËÀ̶ó´Â ¸¶°ËÀ» ¸¸µé¾î ÁÖÁö... ÈåÈåÈå.. [±¤¸¶°Ë] -±¤¸¶°Ë -±× °ËÀº ±¤¸¶Á¦¶ó´Â ¾Ç¸¶ÀÇ »À·Î ¸¸µé¾î Áø°ÅÁö .. ±× °ËÀ» »Ì¾Æµå´Â ¼ø°£ ÀÚ³×ÀÇ ¸¶¼ºÀÌ ±ú¾î ³¯°É¼¼.. ¾î¶´ø. Çѹø »ç¿ëÇØ ±× À§·ÂÀÇ Áø°¡¸¦ ´À³¥°É¼¼.. Èå. Èå. ÇÖÇÖÇÖÇÖ~~~~ -¾Æ´Ï¿À -ũũũ... »ó°ü¾ø¾î. ³»°¡ ¸¸µå´Â ¹°°ÇÀº »ç¾ÇÇÑ ½É¼ºÀ» °¡ÁøÀÚ¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖÁö. Å©ÇÏÇÏÇÖ~~ ÀÚ³×°¡ ³ª¿¡°Ô ¸¸³âÇÑöÀ» °¡Á®´Ù ÁÖ¸é ±¤¸¶°ËÀ̶ó´Â °ËÀ» ¸¸µé¾î ÁÖ°Ú³×. [±¤¸¶°Ë] - diff --git "a/objmon/talk/\270\266\310\253-10" "b/objmon/talk/\270\266\310\253-10" deleted file mode 100644 index 4545630f..00000000 --- "a/objmon/talk/\270\266\310\253-10" +++ /dev/null @@ -1,16 +0,0 @@ -¾È³ç -À½.. ÀÌ·²¼ö°¡ û°í°¡ ÀûÀÇ ¼öÁß¿¡ ³Ñ¾î°¡´Ù´Ï.. ´©±¸¿¡°Ô ÀÌ ^ÀÓ¹«¸¦ ¸Ã±ä´Ù ¸»Àΰ¡? -ÀÓ¹« -ÀÀ? ÀÚ³×°¡ ÀÚ³×°¡..? À½ ÀÌÀÏÀº Àڳ׿¡°Ô´Â ºÒ^°¡´É ÇÒ °Í °°Àºµ¥.. -°¡´É -À½~~~ ÀÚ³×°¡ ÀÌ ^ÀÏÀ» ¸Ã°í ½Í´Ü ¸»ÀÌÁö..? -ÀÏ -ÁÁ³×..! ±×·¯¸é ¿î¸íÀÇ ^°Å¿ïÀ» °¡Áö°í °¡°Ô.. -°Å¿ï -ÀÌ °Å¿ï ¸»Àΰ¡? ÀÌ °Å¿ïÀº ¿ë½ÅÁ·ÀÇ À§´ëÇÑ ¿¹¾ðÀÚÀÎ ^Ź«ÇöÀÌ ÁÖ°í °¬´Ù³×. -Ź«Çö -±×´Â ¾îµð¿¡ ÀÖ´ÂÁö ¸ð¸¥´Ù³×.. ´Ù¸¸ ^È£¼®À̶ó´Â ¸»¸¸ ³²°ÜµÎ°í ±×³É »ç¶óÁ® ¹ö·È³×. -È£¼® -±Û½ê.. Àß ¸ð¸£Áö¸¸ ^Æä°¡ Áö¿ªÀ» ´Ù³à¿Â ¿µ´É·ÂÀÚµéÀÌ Æó°¡¿¡¼­ ±×°É º¸¾Ò´Ù´Â±º. -Æä°¡ -±×°÷Àº ºÏ¼­ÂÊ¿¡ Àִµ¥, ÀûµéÀÌ ±×°÷À» Á¡À¯Çϰí ÀÖ¾î ±²ÀåÈ÷ À§ÇèÇÏ´Ù³×... diff --git "a/objmon/talk/\271\246\272\300-71" "b/objmon/talk/\271\246\272\300-71" deleted file mode 100644 index 12b920a3..00000000 --- "a/objmon/talk/\271\246\272\300-71" +++ /dev/null @@ -1,38 +0,0 @@ -¾È³ç -À½..? ´ç½Å ³»°¡ À̰÷¿¡ ¼û¾î Àִ°ÍÀ» ¾î¶»°Ô ¾Ë¾ÒÁÒ..? ´ç½Å.. Ȥ½Ã °ü°¡ÀÇ »ç¶÷Àΰ¡¿ä...? [¿¹][¾Æ´Ï¿ä] -¿¹ CAST ÆÄõdz -¿ª½Ã.. ³ª¸¦ ÀâÀ¸·¯ ¿Ô±º.. Á×¾î¶ó.. -¾Æ´Ï¿ä -ÈÞ~~~ ±×·¸´Ù¸é ¾È½ÉÀ̱º.. À̺Á¿ä. ´ç½Å ¿©±â¿¡ ¹¹ÇÏ·¯ ¿ÔÁÒ. ÀÌ ¹æÀº ³»°¡ ¾²°í ÀÖ´Ü ¸»ÀÌ¿¹¿ä. ÁÖ¸ð¿¡°Ô µûÁ®¾ß °Ú±º... »¡¸® ³ª°¡¿ä.. [¾Ë¾Ò¾î¿ä][¸ø³ª°¡] -¾Ë¾Ò¾î¿ä -»¡¸® ³ª°¡¿ä.. ±×¸®°í ³ª°¡¸é¼­ ÁÖ¸ð¿¡°Ô ³»°¡ ºÎŹÇÑÀÏ ¾î¶»°Ô µÆ´ÂÁö ³ª¿¡°Ô ¾Ë·Á´Þ¶ó°í Çϼ¼¿ä. -¸ø³ª°¡ -ÀÌ·± ¹«·ÊÇϱº¿ä... ´çÀå ³ª°¡¿ä... ±×·¸Áö ¾ÊÀ¸¸é.. [¾î¿Å׳Ä] -¾î¿Å×³Ä CAST ȭdz¼ú -Èï.. °ú¿¬ ¸Å¿î¸ÀÀ» ºÁ¾ß°Ú±º.. -µµ³­»ç°Ç -±×°Ç ¿Ö ¹¯ÁÒ? ´ç½ÅÀº ¾Ë ÇÊ¿ä ¾ø¾î¿ä. ±×³ªÀú³ª ÁÖ¸ð´Â ¿Ö ¾È¿ÀÁÒ? ±×³à°¡ ¹¹¶ó°í ÇÏ´ø°¡¿ä? [ÃÊÇâ¿¡°Ô] -ÃÊÇâ¿¡°Ô -±×³à¿¡°Ô ¹°¾î º¸¶ó°í¿ä..? ¾î¼Áö.. ³ª´Â Áö±Ý ³ª°¥¼ö°¡ ¾ø´Âµ¥.. [¿Ö] -¿Ö -´ç½Å ¿Ö ÀÚ²Ù ±ÍÂú°Ô ±¼ÁÒ..? ´ç½ÅÀº ³²ÀÇ ÀÏ¿¡ ³¢¾î µå´Â °ÍÀÌ Á÷¾÷Àΰ¡ º¸ÁÒ? [±×·¡¿ä] -±×·¡¿ä -ÁÁ¾Æ¿ä.. ´ç½ÅÀÌ ±×·¸°Ô °ü½ÉÀÌ ÀÖ´Ù¸é ÃÊÇâ¿¡°Ô ±Í±Ý¼ÓÁýÀÇ µµ³­»ç°Ç¿¡ ´ëÇÑ Á¤º¸¸¦ ¾ò¾î ÁÖ¼¼¿ä. [´ñ°¡´Â] -´ñ°¡´Â ACTION ´çȲ -¹¹¿¹¿ä? ³²ÀÇ ÀÏ¿¡ ³¢¾îµå´Â °ÍÀÌ ÀÏÀ̶ó¸é¼­¿ä! ³ª´Â À̰÷¿¡ ÀáÀ̳ª ÀÚ°í ÀÖÀ»Å×´Ï±î ºÎÅ¹ÇØ¿ä. Âü! ³ª´Â Àá±Í°¡ ¹àÀ¸´Ï±î 'Á¤º¸'¶ó°í ¸»ÇÏ¸é ³»°¡ ±ú¾î ³¯²¨¿¹¿ä. -Á¤º¸ ACTION º¸¾Æ -À¸ÇÏÇÔ~~~~ ¿Ô¾î¿ä? ±×·¡ ±×°÷¿¡ °£ ÀÏÀº ¾î¶»°Ô µÆÁÒ? Ȥ½Ã ¿ëÀÇÀÚ¶óµµ Àâ¾Òµ¥¿ä? [±×·¸¼Ò] -±×·¸¼Ò -¿ª½Ã.. Á¢¼±Áö¿¡ ¿Ö ¾È ³ªÅ¸³ª³ª Çß´õ´Ï... °ü°¡¿¡ ÀâÇû±º.. [¿ëÀÇÀÚ¿Í] -¿ëÀÇÀÚ¿Í ACTION ºÎ²ô·¯ -±×´Â ³ªÀÇ ¾ÖÀÎÀÌ¿¹¿ä... Å«ÀÏÀε¥.. ³ªÀÇ ¾ó±¼Àº ¾Ë·ÁÁ®¼­ °ü°¡ÀÇ ±Ù󿡸¸ °¡µµ ÀâÈ÷°í ¸»ÅÙµ¥... [´ç½Åµµ] -´ç½Åµµ -±×·¡¿ä.. ³ªµµ ±× µµ³­»ç°ÇÀÇ ¹üÀÎÀÌ¿¹¿ä.. À̺Á¿ä. ºÎŹÀÌ Àִµ¥ µé¾îÁÙ¼ö ÀÖ¾î¿ä? [¹«½¼ÀÏ] -¹«½¼ÀÏ -°ü°¡·Î °¡¼­ °¨¿Á¾È¿¡ ÀâÇô ÀÖ´Â ¿ëÀÇÀÚ°¡ ´©±ºÁö ¾Ë¾ÆºÁ ÁÖ¼¼¿ä. ¸¸¾à ±×°¡ ³» ¾ÖÀÎÀ̶ó¸é ±×¿¡°Ô ¹¦ºÀÀÌ ÁÖ¸·¿¡ ¹«»çÈ÷ ÀÖ´Ù°í ¸»ÇØÁÖ°í °ð ±¸ÇØ ÁÖ°Ú´Ù°í ÀüÇØÁÖ¼¼¿ä. ºÎŹÀ» µé¾î Áֽðھî¿ä? [ÁÁ¼Ò][°ÅÀýÇÏ¿À] -ÁÁ¼Ò ACTION °¨»ç -ÁÁ¾Æ¿ä.. ±×´Â ÀǽÉÀÌ ¸¹¾Æ ¾ÏÈ£¸¦ ¹°¾î º¼°Å¿¹¿ä ±×·¯¸é 'Ç÷Á¡'À̶ó°í ¸»Çϼ¼¿ä. ±×·¯¸é ±×°¡ ¾È½ÉÇÒ°Å¿¹¿ä. ºÎŹÀ» µé¾î Áֽðھî¿ä? -°ÅÀýÇÏ¿À ATTACK -°ÅÀýÇϰڴٱ¸? ³Ê´Â ³Ê¹« ¸¹Àº ºñ¹ÐÀ» ¾Ë¾ÒÀ¸´Ï Á×¾îÁà¾ß°Ú¾î. - - diff --git "a/objmon/talk/\271\253\265\265\275\302-60" "b/objmon/talk/\271\253\265\265\275\302-60" deleted file mode 100644 index 2d738158..00000000 --- "a/objmon/talk/\271\253\265\265\275\302-60" +++ /dev/null @@ -1,5 +0,0 @@ -¾È³ç ACTION ³ë·ÁºÁ -À¸ÇáÇÕ~~~~ ÈÄ~~~ ½ÃÁÖ´Â ´©±¸±æ·¡ ³ªÀÇ ¼ö·ÃÀ» ¹æÇØÇϴ°ſä? [Áú¹®] -Áú¹® ACTION »ý°¢ -À½.. Áú¹®À̶ó.. ÇÏÇÏÇÏÇÏ~~ Áú¹®Àº ´Ù¸¥ »ç¶÷¿¡°Ô ÇÏ½Ã°Ô ³ª´Â Àϰ³ ¹«½ÂÀÏ»ÓÀÌ¿ä. ´Ù¸¥°Í¿¡´Â ½Å°æ¾²Áö¾Ê°í ´ÜÁö ¹«°ø¿¡¸¸ Àü³äÇÏ°í ½Í¼Ò. ¹Ì¾ÈÇÏ¿À.. ¹» ¹°¾î º¸°í ½Í°Åµç ½ÅÀü¿¡ µ¹¾Æ ´Ù´Ï´Â ¼öµµ½Âµé¿¡°Ô ¹°¾îº¸½Ã¿ä. - diff --git "a/objmon/talk/\271\253\265\265\275\302-64" "b/objmon/talk/\271\253\265\265\275\302-64" deleted file mode 100644 index 3fa5c463..00000000 --- "a/objmon/talk/\271\253\265\265\275\302-64" +++ /dev/null @@ -1,6 +0,0 @@ -¾È³ç -À¾..... ³ª¿¡°Ô ¸»À» °ÉÁö ¸¶½Ã¿ä. Áö±Ý Áß¿äÇÑ ³»°ø ¼ö·ÃÀ» Çϰí ÀÖ¼Ò. [Áú¹®] -Áú¹® ACTION ´çȲ -¹«½¼ Áú¹®ÀÌ ÀÖ´Ü ¸»ÀÌ¿ä.. ±×·³ Á¶±Ý¸¸ ±â´Ù¸®½Ã¿ä. [Áö±Ý] -Áö±Ý ATTACK -À¸¾Æ~~~ µµÀúÈ÷ ¸øÂü°Ú´Ù... °¨È÷ ³¯ ¹æÇØ ÇÏ´Ù´Ï.. diff --git "a/objmon/talk/\271\256\301\326-99" "b/objmon/talk/\271\256\301\326-99" deleted file mode 100644 index 7f5a5c75..00000000 --- "a/objmon/talk/\271\256\301\326-99" +++ /dev/null @@ -1,48 +0,0 @@ -°³¾È¼ú CAST °³¾È¼ú -¾å -¼ºÇöÁø CAST ¼ºÇöÁø -¾å -Áö¹æÈ£ CAST Áö¹æÈ£ -¾å -º¸¸¶Áø CAST º¸¸¶Áø -¾å -¹æ¿­Áø CAST ¹æ¿­Áø -¾å -¼öÈ£Áø CAST ¼öÈ£Áø -¾å -¹æÇÑÁø CAST ¹æÇÑÁø -¾å -ÀúÁÖÇØ¼Ò CAST ÀúÁÖÇØ¼Ò -¾å -¼±¾Ç°¨Áö CAST ¼±¾Ç°¨Áö -¾å -ÁÖ¹®°¨Áö¼ú CAST ÁÖ¹®°¨Áö¼ú -¾å -ÀºµÐ°¨Áö¼ú CAST ÀºµÐ°¨Áö¼ú -¾å -ºÎ¾ç¼ú CAST ºÎ¾ç¼ú -¾å -ºñ»ó¼ú CAST ºñ»ó¼ú -¾å -ÃàÁö¹ý CAST ÃàÁö¹ý -¾å -¼ö»ý¼ú CAST ¼ö»ý¼ú -¾å -Áöµ¿¼ú CAST Áöµ¿¼ú -¾å -½Ç¸í CAST ½Ç¸í -¾å -°øÆ÷ CAST °øÆ÷ -¾å -È¥µ¿ CAST È¥µ¿ -¾å -¹ß±¤ CAST ¹ß±¤ -¾å -ÀºµÐ¹ý CAST ÀºµÐ¹ý -¾å -µ¿¼³ÁÖ CAST µ¿¼³ÁÖ -¾å -Ä¡·á CAST ¿ø±âȸº¹ -¾î¶²°¡ Á» ÁÁ¾ÆÁ³´Â°¡? -ȸº¹ GIVE 36 -ÀÌ°É ¿¬¸¶ÇϰԳª diff --git "a/objmon/talk/\271\260\300\307_\260\370\301\326-1" "b/objmon/talk/\271\260\300\307_\260\370\301\326-1" deleted file mode 100644 index fe898123..00000000 --- "a/objmon/talk/\271\260\300\307_\260\370\301\326-1" +++ /dev/null @@ -1,2 +0,0 @@ -¿ë»ç GIVE 105 -ÀÌ ¿­¼è·Î °¨¿Á¿¡ ÀÖ´Â ¾Æ¹öÁö¸¦ ±¸ÇØÁÖ¼¼¿ä. diff --git "a/objmon/talk/\271\331\266\367\300\307_\260\370\301\326-1" "b/objmon/talk/\271\331\266\367\300\307_\260\370\301\326-1" deleted file mode 100644 index aaf36eb6..00000000 --- "a/objmon/talk/\271\331\266\367\300\307_\260\370\301\326-1" +++ /dev/null @@ -1,2 +0,0 @@ -¿ë»ç GIVE 106 -ÀÌ ¿­¼è·Î °¨¿Á¿¡ ÀÖ´Â ¾Æ¹öÁö¸¦ ±¸ÇØÁÖ¼¼¿ä. diff --git "a/objmon/talk/\271\335\307\317\265\265\300\316-90" "b/objmon/talk/\271\335\307\317\265\265\300\316-90" deleted file mode 100644 index f1666e1c..00000000 --- "a/objmon/talk/\271\335\307\317\265\265\300\316-90" +++ /dev/null @@ -1,14 +0,0 @@ -¾È³ç -À½.. ½ÃÁÖ´Â ´µ½Ã¿ä... À̰÷¿¡ ¾î¶»°Ô ¿Ã¶ó¿Ô¼Ò? À̰÷Àº ³ªÀÇ »çÁ¦ÀÎ ¸¶µµ»ç°¡ ÃijõÀº °á°è ¶§¹®¿¡ ¾Æ¹«³ª µé¾î¿Ã¼ö ¾øÀ»ÅÙµ¥... Èì.. ½ÃÁÖÀÇ °ü»óÀ» º¸´Ï º¸Åë»ç¶÷ÀÌ ¾Æ´Ñ°Í °°±¸·Á.. Äð·°Äð·°~~ ÀÌÁ¦ ³ªÀÇ ±â·Âµµ ´Ù µÈ°Í °°±º.. [¹«½¼ÀÏ] -¹«½¼ÀÏ ACTION ¹Ì¼Ò -Äð·°Äð·°... ÇãÇã.. ³Ê¹«µµ ºÎ²ô·¯¿î ÀÏÀ̶ó ½ÃÁÖ¿¡°Ô ¸»ÇÏ°í ½ÍÁö ¾Ê±¸·Á. Äð·°Äð·°.. Èì... ÇÏÁö¸¸ À̰ÍÀÌ ¾÷º¸¶ó¸é ÇÒ ¼ö ¾øÁö... »ç½Ç ¾îÁ¦ ºÎÅÍ ´ç½ÅÀÌ ¿Ã°É ¿¹°¨Çϰí ÀÖ¾ú¼ÒÀÌ´Ù. ¸í»ó¿¡ Àá°Ü Àִµ¥ ÆÈ¼ö¿Õ´ÔÀÌ ³ªÅ¸³ª ¾È°³½ÅÀüÀ» ±¸¿øÇØ ÁÙ Àι°ÀÌ À̰÷¿¡ ³ªÅ¸³­´Ù°í Çߴµ¥ ½ÃÁÖ°¡ ¹Ù·Î ±× Àι°ÀÎ °Í °°¼ÒÀÌ´Ù. [Á¦°¡] -Á¦°¡ ACTION ²ô´ö -±×·¸¼Ò.. ½ÃÁÖ°¡ ¹Ù·Î ±× Àι°ÀÌ¿ä... Äð·°Äð·°.. Èì.. ½Ã°£ÀÌ ¾ó¸¶ ³²Áö ¾Ê¾Ò¼Ò.. »çÁ¦°¡ ³ª¿¡°Ô °É¾î³õÀº ÁÖ¹®À» ³»°øÀ¸·Î Áö±Ý±îÁö ¸·¾Æ ¿ÔÁö¸¸ ÀÌÁ¨ ´õÀÌ»ó.. Äð·°Äð·°.. [¹«½¼ÁÖ¹®] -¹«½¼ÁÖ¹® -¸¶¸êÈ¥¼âÁø À̶ó´Â ÁÖ¹®ÀÌ¿ä. »ó´ë¹æÀÇ ÁÖÀ§¿¡ ÁøÀ» ¸¸µçÈÄ ±× ¾È¿¡ ÀÖ´Â ¸ðµç °ÍÀ» ¼Ò¸ê½ÃÄÑ ¹ö¸®´Â ¹«¼­¿î ¹«°øÀÌÁö¿ä. Äð·°Äð·°.. ¾÷º¸·Î´Ù. ¾÷º¸·Î´Ù. »çÁ¦°¡ ¹«¾ú¶§¹®¿¡ »ç¾ÇÇÑ ±æ·Î ºüÁ® µé¾ú´ÂÁö. Äð·°Äð·°.. Èì.. ¹Ù·Î ¸î´ÞÀüÀÇ ÀÏÀÌÁö¿ä. ¾È°³½ÅÀüÀÇ ÆÈº¯ºñ±ÞÀÎ º¯¼ö³ªÇѱÇÀ» ¼ö·ÃÇÏ´Â µµÁß¿¡ ±×¿¡°Ô¼­ ¸¶ÀÇ ±â¿îÀÌ ¹Ì¼¼ÇÏ°Ô ´À²¸Á® ¼ö»óÇÏ°Ô ¿©°åÁö¿ä.[¸¶ÀDZâ¿îÀÌ] -¸¶ÀDZâ¿îÀÌ -±×·¸¼ÒÀÌ´Ù. ³ª´Â ¹Ù·Î ±×³¯Àú³á¿¡ »çÁ¦¸¦ ºÒ·¯ ±× ÀÏ¿¡ ´ëÇØ ÈÆ°è¸¦ ÇÏ¿´¼Ò. ÇÏÁö¸¸ ±×´Â ³ªÀÇ ¸»¿¡ ¹Ý¹ßÇÏ¿´°í, ³ª¸¦ À̰÷¿¡ °¡µÐµÚ ±× °¡°øÇÒ ÁÖ¹®À» °É¾î ¹ö·È¼Ò. Äð·°Äð·°.. ±×´Â Áö±Ý ÀÌ ¼¼»ó¿¡µµ Á¸Àç ÇÏÁö ¾Ê´Â ¸¶µµ¿øÀ̶ó´Â°÷¿¡ ÀÖ¼Ò.[¸¶µµ¿ø] -¸¶µµ¿ø -±×°÷Àº ÀÎÀ§ÀûÀ¸·Î ¸¸µé¾î ³õÀº ¸¶°èÀÌÁö¿ä. ±×°÷Àº ¼¼»ó¿¡ ÀÖ´Â ¾ÇÀÇ µ¢¾î¸®·Î ÀÌ·ç¾îÁ® ÀÖ¾î ´ë´ÜÈ÷ À§ÇèÇÑ °÷À̶ø´Ï´Ù. ³ª´Â ½ÃÁÖ¸¦ ±×°÷¿¡ º¸³»°í ½ÍÁö ¾ÊÁö¸¸ ¿ö³« Áß´ë»ç¶ó ¾î¿¼ö ¾ø±º¿ä. ÀÚ.. ³»°¡ ±×°÷À¸·Î °¥ ¼ö ÀÖ´Â ³»°øÀ» ÀüÇØ ÁÖ°Ú¼Ò. ¸í½ÉÇϽÿä. ³ªÀÇ ³»°øÀº ±×°÷À¸·Î °¡´Âµ¥¸¸ ¾µ¸ð ÀÖ´Â °ÍÀÌ¿ä. [´ë»ç´Â] -´ë»ç´Â ACTION ¹Ì¼Ò -ÇãÇã~~~ ³ª´Â °ÆÁ¤¸¶½Ã¿ä. ´ç½ÅÀÌ µ¹¾Æ ¿Ã¶§±îÁö °áµô ¼ö ÀÖ¼Ò. ÀÚ.. ÀÌÁ¦ ³»°øÀ» ÀüÇØÁÖ°Ú¼ÒÀÌ´Ù. "ÇÔ¸®ÈÉÄ¡¸ÅÀüºÎº´Çö.....À¸ÇÕ~~~~" <<< ´ç½ÅÀÇ ¸ö¿¡ ¾È°³°°Àº ³»°øÀÌ °¡µæÂ÷ ¿À¸¨´Ï´Ù.>>> ÇäÇä~~~ ´ç½Å¿¡°Ô ³»°øÀ» ÀüÇØ ÁÖ¾ú¼ÒÀÌ´Ù. ÀÚ.. ½Ã°£ÀÌ ¾ø½À´Ï´Ù. »¡¸® ÁÖ¹®À» ¿Ü¿ì½Ã¿ä. ÁÖ¹®Àº [¹Ý¾ß¹Ù¶ó¹Ð]ÀÌ¿ä. ½ÃÁÖ¿¡°Ô ½ÅÀÇ °¡È£°¡ Àֱ⸦ ¹Ù¶ø´Ï´Ù. ±×¸®°í, ±×°¡ Áß¿äÇÑ ¹°°ÇÀ» ÈÉÃÄ °¬´Âµ¥ ±× ¹°°ÇÀ» ã¾Æ¿À°í, µ¹¾Æ¿À°Åµç ³ª¿¡°Ô ´Ù½Ã À̾߱⸦ °Å½Ã¿ä.. ±×·¯¸é ³»°¡ ÁÁÀº ¼±¹°À» µå¸®°Ú¼Ò. diff --git "a/objmon/talk/\271\335\307\317\265\265\300\316-91" "b/objmon/talk/\271\335\307\317\265\265\300\316-91" deleted file mode 100644 index fa3f2fa1..00000000 --- "a/objmon/talk/\271\335\307\317\265\265\300\316-91" +++ /dev/null @@ -1,9 +0,0 @@ -¾È³ç -¿À~~~ ½ÃÁÖ.. ¼º°øÇÑ ¸ð¾çÀ̱¸·Á.. ³ªÀÇ »çÁ¦´Â ¾î¶»°Ô µÇ¾ú¼Ò. [Á×¾ú½À´Ï´Ù] -Á×¾ú½À´Ï´Ù -Èì.. ¾÷º¸·Î´Ù. ¾÷º¸·Î´Ù. °á±¹Àº ±×·¸°Ô µÇ°í ¸»¾Ò±º. ±×·±µ¥ ½ÃÁÖ²²¼­ Á¦°¡ ºÎŹÇÑ ¹°°ÇÀ» °¡Á® ¿À¼Ì½À´Ï±î? [¿¹][¾Æ´Ï¿ä] -¿¹ -¿À~~ °¡Á® ¿À¼Ì¼ÒÀ̱î.. ±×·³ ³ª¿¡°Ô ÁÖÁö ¾ÊÀ¸½Ã°Ú½À´Ï±î? ±×·¯¸é Á¦°¡ ¾à¼ÒÇϳª¸¶ º¸´äÀ» ÇØµå¸®°Ú¼ÒÀÌ´Ù. -¾Æ´Ï¿ä -À½.. ±×·¯¸é ¾î¶»ÇÏÁö.. ±× ¹°°ÇÀº ¿ö³« Áß¿äÇÑ ¹°°ÇÀ̶ó ²À ã¾Æ ¿Í¾ß ÇÕ´Ï´Ù. ´Ù½Ã °¡¼­ ã¾Æ¿Í ÁÖÁö ¾ÊÀ¸½Ã°Ú½À´Ï±î? ±×·¯¸é Á¦°¡ º¸´äÀ» ÇØ µå¸®°Ú½À´Ï´Ù. - diff --git "a/objmon/talk/\271\351\307\320\265\265\300\316-1" "b/objmon/talk/\271\351\307\320\265\265\300\316-1" deleted file mode 100644 index 8e66e5cc..00000000 --- "a/objmon/talk/\271\351\307\320\265\265\300\316-1" +++ /dev/null @@ -1,12 +0,0 @@ -°è¼®Ä¡¹« -³­ °è¼®Ä¡¹«¿Í ¿À·£ 'Ä£±¸'ÀÌ³× -Ä£±¸ -±×°¡ º¸³½ 'ÀÌÀ¯'¸¦ ¾Ë°Ú±º -ÀÌÀ¯ -ÀÚ ³»°¡ 'µÎ·ç¸¶±â'¸¦ ÁÙÅ×´Ï ¹è¿ö ¿¬¸¶ÇÏ°Ô ÀÚ³×ÀÇ '¸ðÇè'¿¡ µµ¿òÀÌ µÉ°ÍÀÌ³× -µÎ·ç¸¶±â GIVE 337 -¹è¿ö¼­ ¿¬¸¶ÇϰԳª... -¸ðÇè -ÀÚ³× ¸ðÇè¿¡ ÀºµÐ¹ýÀÌ ÇÊ¿äÇÒ°ÍÀ̳×...¾ÆÂ÷ ³»°¡ 'ÇҾƹü'¿¡°Ô º¸³Â±º... -ÇҾƹü -³»°¡ ¸çÄ¥Àü¿¡ ±×ÀÇ Áý¿¡ ´Ù³à¿À¸é¼­ ³õ°í ¿Ô³×. °¡¼­ 'ÀºµÐ¹ý'À» ´Þ¶ó°í ÇϰԳª. diff --git "a/objmon/talk/\272\322\300\307_\260\370\301\326-1" "b/objmon/talk/\272\322\300\307_\260\370\301\326-1" deleted file mode 100644 index b2fb287a..00000000 --- "a/objmon/talk/\272\322\300\307_\260\370\301\326-1" +++ /dev/null @@ -1,2 +0,0 @@ -¿ë»ç GIVE 104 -ÀÌ ¿­¼è·Î °¨¿Á¿¡ ÀÖ´Â ¾Æ¹öÁö¸¦ ±¸ÇØÁÖ¼¼¿ä. diff --git "a/objmon/talk/\273\347\261\342\262\333-50" "b/objmon/talk/\273\347\261\342\262\333-50" deleted file mode 100644 index 35c6e2df..00000000 --- "a/objmon/talk/\273\347\261\342\262\333-50" +++ /dev/null @@ -1,14 +0,0 @@ -Á¦¾È -¸ÕÀú 'Á¶°Ç'ÀÌ ÀÖ³×. -Á¶°Ç -³­ ¿À·£ ¼¼¿ù µ¿¾È ÆÄ¶ó¿ÀÀÇ º¸¹°À» ã¾Æ¿ÔÁö. ¸ÕÀú ³»°Ô '´äº¯'À» ÁÖ°Ô³ª. -´äº¯ -µµ´ëü ÆÄ¶ó¿ÀÀÇ ¿­¼è¸¦ ¼û±â°í ÀÖ´Â ÀÚ°¡ ´©±¸Áö? -±Ý±î¸¶±Í -Èì... ¾Ë¾Ò³×... ´ç½ÅÀº '¼±'À» À§ÇØ ½Î¿ì°Ú³ª? '¾Ç'À» À§ÇØ ½Î¿ì°Ú³ª? -¼± -Á¦°¥ °ø¸í¿¡°Ô °¡¼­ '¸í·É'À̶ó°í À̾߱â ÇϰԳª. -¾Ç -µ¿Å¹¿¡°Ô °¡¼­ '¸í·É'À̶ó°í À̾߱â ÇϰԳª. -¸í·É -µÑÁß¿¡ Çϳª¹Û¿¡ ÀÓ¹«¸¦ ¼öÇàÇÒ¼ö¾ø´Ù³×. ¹°·Ð °Å±â¿¡ ´ëÇÑ º¸»óµµ Ʋ¸®Áö..ÇìÇìÇì. diff --git "a/objmon/talk/\274\272\271\256\301\366\261\342-48" "b/objmon/talk/\274\272\271\256\301\366\261\342-48" deleted file mode 100644 index 8b71bfba..00000000 --- "a/objmon/talk/\274\272\271\256\301\366\261\342-48" +++ /dev/null @@ -1,14 +0,0 @@ -¾È³ç -¾È³çÇϼ¼¿ä. Á¤º¸¸¦ ¿øÇϳª¿ä? [¿¹][¾Æ´Ï¿ä] -¿¹ -³»°¡ ¾Ë°í ÀÖ´Â Á¤º¸´Â À̰Űɶû¿ä.. ÀÌ Áß¿¡¼­ ¹°¾î º¸¼¼¿ä .. [¾È°³µµ½Ã][»ç¶÷µé][ÁÖÀÇ»çÇ×][¼º¹Ù±ù] -¾Æ´Ï¿ä -±×·¡¿ä? ±×·³ ¾È³çÈ÷ °¡¼¼¿ä... -¾È°³µµ½Ã -ÀÌ ¾È°³µµ½Ã´Â ¼ö¹é³âÀü¿¡ °©Àڱ⠾Ȱ³°¡ Èê·¯µé¾î¿Í Áö±Ý±îÁö °ÈÈ÷Áö ¾Ê°í ÀÖÁö¿ä. ±×·¡¼­ ÀÌ µµ½Ã¼º ¾ÈÀ¸·Î¸¸ µé¾î°¡¸é ¾ÕÀÌ Á¦´ë·Î º¸ÀÌÁö ¾Ê´Â´ä´Ï´Ù. ±×¸®°í ÀÌ ¾È°³µµ½Ã¼º¿¡¼­ ¾È°³½ÅÀü°ú ÀÌ µµ½Ã¸¦ ºñÃçÁÖ´Â µîžÀÌ À¯¸íÇÕ´Ï´Ù. -»ç¶÷µé -ÀÌ °÷ÀÇ »ç¶÷µéÀº È£ÀüÀûÀ̾ ´ëÈ­¸¦ ¾ÆÁÖ Àß ÇÑ´ä´Ï´Ù. ±×·¡¼­ ´ëÈ­¸¦ °É¸é ´ëºÎºÐ ÀÀÇØ ÁÙ°Ì´Ï´Ù. -ÁÖÀÇ»çÇ× -À̰÷ÀÇ »ç¶÷µéÀº º¹¼ö½ÉÀÌ ¾ÆÁÖ °­ÇÏÁÒ.. ±×·¡¼­ ÀÚ±âÀÇ ¿ø¼ö´Â ²À ±â¾ïÇØ µÎ¾ú´Ù°¡ º¹¼ö¸¦ ÇÑ´ä´Ï´Ù. ±×·¯´Ï ÇԺηΠ¿øÇÑÀ» ¢Áö ¸¶¼¼¿ä. Âü! ±×¸®°í, À̰÷Àº ¾È°³°¡ ÀÜ¶à ³¢¾î ÀÖ¾î ¹üÁ˰¡ ¸¹ÀÌ ÀϾ´Ï Á¶½ÉÇϼ¼¿ä. -¼º¹Ù±ù -³²ÂÊ ¼º¹® ¹Ù±ùÀ¸·Î ³ª°¡¸é Èæ¿ä¸²ÀÌ ³ª¿À´Âµ¥ ±×³Ê¸Ó·Î Áß°£°è¶ó´Â Å« µµ½Ã°¡ ÀÖ¾î¿ä. diff --git "a/objmon/talk/\274\322\263\340-1" "b/objmon/talk/\274\322\263\340-1" deleted file mode 100644 index 086c7fdf..00000000 --- "a/objmon/talk/\274\322\263\340-1" +++ /dev/null @@ -1,8 +0,0 @@ -ÀÎÇü -´ç½ÅÀº ´©±¸¼¼¿ä? 'ÇҾƹöÁö'°¡ º¸³½ »ç¶÷Àΰ¡¿ä? -ÇҾƹöÁö -³­ ÀÎÇüÀ» 'ã±â'Àü¿¡´Â ¾Êµ¹¾Æ °¥·¡¿ä. -ã±â -¸¸¾à ÀÎÇüÀ» ã¾ÆÁÖ¸é µ¹¾Æ°£´Ù´Â ¾à¼ÓÀ¸·Î '´ó±â'¸¦ µå¸±²²¿ä. -´ó±â -ÇҾƹöÁö¿¡°Ô °®´Ù µå¸®¸é ¾È½ÉÀ» ÇϽǰſ¹¿ä. diff --git "a/objmon/talk/\274\372\301\375_\301\326\300\316-40" "b/objmon/talk/\274\372\301\375_\301\326\300\316-40" deleted file mode 100644 index 46a5045f..00000000 --- "a/objmon/talk/\274\372\301\375_\301\326\300\316-40" +++ /dev/null @@ -1,6 +0,0 @@ -¾È³ç -ÇìÇì~~ ¼Õ´Ôµµ ÃÊÇâÀ» ¸¸³ª·¯ ¿À½Å ¸ð¾çÀÌÁÒ..?[¿¹][¾Æ´Ï¿À] -¿¹ -±×·²ÁÙ ¾Ë¾ÒÁÒ..ÇìÇì.. ±×³à´Â ÀÌ ¾È°³µµ½Ã¿¡¼­ Á¦ÀÏ À¯¸íÇÑ ±â»ýÀ̶ø´Ï´Ù. ¾î¼­ 2ÃþÀ¸·Î ¿Ã¶ó°¡ º¸¼¼¿ä. ±×°÷¿¡ °¡¸é ÃÊÇâÀ» º¼¼ö ÀÖÀ»°Ì´Ï´Ù. -¾Æ´Ï¿ä -¾Æ~~ ±×·¯¸é ¼úÀ» »ç·¯ ¿À½Å ¸ð¾çÀÌÁÒ? ±×·¯¸é ¸ñ·ÏÀ̶ó°í ½áÁÖ¼¼¿ä. diff --git "a/objmon/talk/\275\272\307\316\305\251\275\272-99" "b/objmon/talk/\275\272\307\316\305\251\275\272-99" deleted file mode 100644 index e9448aaf..00000000 --- "a/objmon/talk/\275\272\307\316\305\251\275\272-99" +++ /dev/null @@ -1,6 +0,0 @@ -¼ö¼ö²²³¢ -¾ÆÄ§¿£ ³×¹ß·Î, Á¡½É¶§´Â µÎ¹ß·Î, Àú³á¿¡´Â ¼¼¹ß·Î °È´Â °ÍÀÌ ¹«¾ùÀ̳Ä? -Àΰ£ ATTACK -Á¤´äÀ» ¸ÂÃß´Ù´Ï µµÀúÈ÷ ¿ë¼­ÇÒ¼ö°¡ ¾ø´Ù. -»ç¶÷ ATTACK -Á¤´äÀ» ¸ÂÃß´Ù´Ï µµÀúÈ÷ ¿ë¼­ÇÒ¼ö°¡ ¾ø´Ù. diff --git "a/objmon/talk/\275\305\261\342\267\347_\277\344\301\244-80" "b/objmon/talk/\275\305\261\342\267\347_\277\344\301\244-80" deleted file mode 100644 index 24b695d9..00000000 --- "a/objmon/talk/\275\305\261\342\267\347_\277\344\301\244-80" +++ /dev/null @@ -1,12 +0,0 @@ -õ»ó -õ»óÀ¸·Î ÅëÇÏ´Â '¹®'Àº ¾Æ¹«³ª º¼¼öÀÖÁö´Â ¾Ê¾Æ¿ä. -¹® -ÁøÁ¤ÇÑ '»ç¶û'À» ´À³¥¼ö ÀÖ´Â »ç¶÷¸¸ º¼¼ö ÀÖÁö¿ä. -»ç¶û ACTION »Ç»Ç PLAYER -´ç½ÅÀº Ä£ÀýÇÑ »ç¶÷À̱º¿ä. Á¦ 'ºÎŹ' Çϳª¸¸ µé¾îÁÖ¼¼¿ä. -ºÎŹ -¼ö·æÀÇ 'ÀÌ»¡'À» ±¸ÇØ´Ù ÁÖ¼¼¿ä. ±×°ÍÀº Áß¿äÇÑ ÁÖ¹®Àç·áÁß¿¡ Çϳª¿¹¿ä. -ÀÌ»¡ -°¡Á®´Ù Áֽøé Á¦°¡ ´ë½Å ÇØÀû¼±À¸·Î ÅëÇÏ´Â '¿­¼è'¸¦ µå¸®Áö¿ä. -¿­¼è ACTION ³î·Á PLAYER -ÀÌ»¡ Çϳª´ç ¿­¼è Çϳª¿¹¿ä. diff --git "a/objmon/talk/\276\306\260\241\276\276-1" "b/objmon/talk/\276\306\260\241\276\276-1" deleted file mode 100644 index b066d0cb..00000000 --- "a/objmon/talk/\276\306\260\241\276\276-1" +++ /dev/null @@ -1,10 +0,0 @@ -»ç¶û ACTION »Ç»Ç PLAYER -Àúµµ »ç¶ûÇØ¿ä. ^^ -¹Ùº¸ ACTION ³î·Á PLAYER -´ç½ÅÀÌ ¹Ùº¸Àݾƿä. -°³°ñ -±×´Â »ç¾ÇÇÑ »ç¶÷ÀÌÁö¸¸ Á¦°¡ »ç¶ûÇÏ´Â »ç¶÷ÀÌÁö¿ä. ^^ -Å©·ÎŰ -±×´Â »ç¾ÇÇÑ »ç¶÷ÀÌÁö¸¸ Á¦°¡ »ç¶ûÇÏ´Â »ç¶÷ÀÌÁö¿ä. ^^ -±è¼±Èñ -±×³à´Â Á¦°¡ ÁÁ¾ÆÇÏ´Â ÂøÇÏ°í ±Í¿©¿î ¾Æ°¡¾¾Áö¿ä. ^^ diff --git "a/objmon/talk/\276\306\271\314\305\270\272\322-25" "b/objmon/talk/\276\306\271\314\305\270\272\322-25" deleted file mode 100644 index 17493ab9..00000000 --- "a/objmon/talk/\276\306\271\314\305\270\272\322-25" +++ /dev/null @@ -1,9 +0,0 @@ -Ä¡·á CAST ȸº¹ -¾î¶§ ¸¹ÀÌ ÁÁ¾ÆÁ³´Â°¡? -µ¶Ä¡·á CAST ÇØµ¶ -¾î¶§ ÇØµ¶µÇ¾ú³ª? -Áúº´Ä¡·á CAST Ä¡·á -º´ÀÌ ¿ÏÄ¡µÇ¾ú³ª? -½Ç¸íÄ¡·á CAST °³¾È¼ú -ÀÌÁ¦ ¼¼»óÀÌ º¸À̴°¡? - diff --git "a/objmon/talk/\276\306\306\304\306\256_\274\366\300\247_\276\306\300\372\276\276-127" "b/objmon/talk/\276\306\306\304\306\256_\274\366\300\247_\276\306\300\372\276\276-127" deleted file mode 100644 index de6917d0..00000000 --- "a/objmon/talk/\276\306\306\304\306\256_\274\366\300\247_\276\306\300\372\276\276-127" +++ /dev/null @@ -1,18 +0,0 @@ -Àâ»óÀÎ -³ªÀÇ ÁÖ ÀÓ¹«´Â ÀÌ '¾ÆÆÄÆ®'¿¡ Àâ»óÀÌÀÌ ¸øµé¾î¿À°Ô ¸·´Â°ÍÀ̶ó³×. -¾ÆÆÄÆ® -¿©±â ¾ÆÆÄÆ®´Â ¾ÆÁÖ Àü¸ÁÀÌ ÁÁÀº°÷ÀÌÁö, '°¡°Ý'µµ ºñ½Î°í ¸»¾ß, Âü, ¿©±â ¹«¼­¿î '±«¹°'µµ »ê´Ù³×... -°¡°Ý -¾ÆÆÄÆ® °¡°ÝÀº '°ü¸®'°¡ Á¤ÇÑ´Ù³×, °¡°ÝÀºº ¼ö½Ã·Î ¹Ù²îÁö.. º¸Åë ÀϾï³ÉÀ̶ó³×.. -°ü¸® -Áö±Ý ¿©±âÀÇ °ü¸®´Â 'Å×½ºÅ佺', '²É', '»Ç»Ç'´ÔµéÀÌÁö.. ¾ÆÁÖ ¹Ù»Ú½Å ºÐµéÀ̾ß.. -²É -²ÉÀ» ¾ÆÁÖ ÁÁ¾ÆÇϽÃÁö, ¹æ¾ÈÀÌ ¿ÂÅë Á¤¿øÀ̶ó´õ±º... Ç×»ó ¿¬±¸½Ç¿¡ °è½ÃÁö.. -»Ç»Ç -»õ·Î °ü¸®°¡ µÈÈÄ Ç×»ó »ì°í °è½ÃÁö... Á¶½ÉÇÏ°Ô ÀÚ³×µµ ·Îº¿ µ¹¸®¸é º­¶ôÀϽê.. -±«¹° -²É´ÔÀÇ ¾ÆÆÄÆ®¿¡¼­ ÀÌ»óÇÑ ±«¹°ÀÇ ¼Ò¸®°¡ µé¸®°ïÇØ.. - - - - diff --git "a/objmon/talk/\277\353\300\307\300\332-70" "b/objmon/talk/\277\353\300\307\300\332-70" deleted file mode 100644 index 975fdeb4..00000000 --- "a/objmon/talk/\277\353\300\307\300\332-70" +++ /dev/null @@ -1,22 +0,0 @@ -¾È³ç ACTION ³ë·ÁºÁ -¾È³çÀº ¹«½¼ ¾È³çÀ̾ß..? ³ª´Â ¾Æ¹«°Íµµ ¸ð¸¥´Ù´Ï±î. ¿Ö ³¯ À̰÷¿¡ °¡µÖ ³õ´Â°Å¾ß? ÀÀ? ³Ê´Â °ü°¡ÀÇ »ç¶÷ÀÌ ¾Æ´Ñ°Í °°Àºµ¥... Ȥ½Ã.. [¹¦ºÀ]ÀÌ º¸³»¼­ ¿Ô³ª? -¹¦ºÀ -ÇÏÇÏ~~ ±×·²ÁÙ ¾Ë¾Ò¾î ³¯ ÀÌ·±°÷¿¡ ³öµÑ¸®°¡ ¾øÁö.. ÇÏÇÏÇÏ~~ (°©Àڱ⠿ôÀ½À» ¶Ò ±×Ä¡¸ç) ¾Æ´ÏÁö.. ½ÅÁßÀ» ±âÇØ¾ßµÅ.. ³Ê. ¾ÏÈ£¸¦ ´ëºÁ.. ¾ÏÈ£¸¦...[¸ð¸¥´Ù]{¾ÏÈ£¸¦ ¾Ë¸é ¾ÏÈ£¸¦ ´ë½Ã¿À} -¸ð¸¥´Ù -¿ª½Ã ³Ê´Â ¾ÏÈ£¸¦ ¸ð¸£±¸³ª.. ±×·¡ ³Ê´Â ¿ª½Ã °ü°¡ÀÇ ¾ÕÀâÀÌ¿´±º.. ³ª¿¡°Ô¼­ Á¤º¸¸¦ ¾ò¾î ³¾·Á¸é ³ª¿Í ½Î¿ö ÀÌ°Ü¾ß ÇÒ°Å´Ù. Àú¹ø¿¡´Â Æ÷Á¹µéÀÌ ÇѲ¨¹ø¿¡ ´ýº­ ÀâÇûÁö¸¸ Áö±Ý ³Ê ÇϳªÂëÀÌ¾ß Èï... ´ýº­! Á¤º¸¸¦ ¾ò°í ½ÍÀ¸¸é ³¯ ¾²·¯µå·ÁºÁ.[´ýº­][±×¸¸µÎÀÚ] -´ýº­ ATTACK -´ýºñ¶ó±¸..? ÈåÈå ±×·¡ ÁÁ´Ù! ³Ê¿¡°Ô À̰ųª ÇÑ¹æ ¸Ô¿© ÁÖ¸¶. -±×¸¸µÎÀÚ -°ÌÀåÀ̱¸³ª. ÇÏÇÏÇÏ~~ ±×·¯¸é ´õÀÌ»ó ¾óÂİŸ®Áö¸»°í ²¨Á®.. -Ç÷Á¡ -À½.. ¾ÏÈ£´Â ¸Â´Âµ¥ ¹¦ºÀÀ» ¾îµð¼­ ¸Â³µÁö? Á¢¼±ÁöÀÎ [ÁÖ¸·]¿¡¼­ ¸¸³µ³ª? -ÁÖ¸· -ÁÁ¾Æ!ÁÁ¾Æ! ±×·¡ À̰÷¿¡ ¹«¾ùÀ» ÇÏ·¯ ¿ÔÁö? ³¯ [±¸ÇÏ·¯] ¿Ô³ª ¾Æ´Ï¸é ¿©ÀÇÁÖ¸¦ [´©±¸]¿¡°Ô ³Ñ°å´ÂÁö ¾Ë¾Æº¸·¯ ¿Ô³ª? -´©±¸ -¹¦ºÀÀÌ ÀÚ³×´õ·¯ ±×°É ¹°¾îº¸¶ó°í ÇÏ´ø°¡? ÇÏ±ä ±×°Ç ¹¦ºÀ¿¡°Ôµµ ºñ¹Ð·Î ÇßÀ¸´Ï±î.. ±× Àå¹°¾Æºñ¿¡°Ô µ·À» ¹Þ¾Æ¾ß Çϴµ¥ ³»°¡ À̰÷¿¡ ÀâÇô ÀÖÀ¸´Ï.. ³Ê¿¡°Ô¶óµµ ¸»ÇÏ´Â ¼ö ¹Û¿¡ ¾øÁö.. ¹¦ºÀ¿¡°Ô ÀüÇØ Àå¹°À» ¾È°³½ÅÀüÀÇ [´©±º°¡]¿¡°Ô ³Ñ°å´Ù°í ÇÏÁö¸¸ Á¶½ÉÇ϶ó°í ÇØ! ±×¿¡°Ô¼­ ½É»óÄ¡ ¾ÊÀº ±â¿îÀ» ´À²¸Áö´Ï.. ±×·±µ¥ ³ª´Â ¾ðÁ¦ ±¸ÇØÁÙ²¨Áö? ÇÏ·ç ¹Û¿¡ ¾ÈµÇ¾ú´Âµ¥µµ Áö°Ü¿ö Á×°Ú¾î.. µÇµµ·ÏÀÌ¸é ³¯ »¡¸® À̰÷¿¡¼­ ±¸ÇØÁà. ¾Ë¾ÒÁö? -±¸ÇÏ·¯ -ǪÇÏÇÏ~~~ ¾àÇØºüÁø ³×°¡?... ÇÏÇÏÇÏ~~ ±×¸¸µÖ.. Áö±Ý ¹ÛÀÇ °æ°è°¡ ¾û¼ºÇÑ°Í °°Áö¸¸ Àϸ¸ »ý±â¸é ±Ý¹æÀÌ¶óµµ °í¼öµéÀÌ ¶ÙÃÄ ³ª¿Ã²¨¾ß. ±×·¯´Ï ±×¸¸ µÎ´Â°ÍÀÌ ÁÁ¾Æ.. ³ª´Â Æ÷±â ÇÏ°í ¹¦ºÀ¿¡°Ô ÀÌ [¸»]À̳ª ÀüÇØ! -¸» -¹«½¼ ¸»À̳ı¸? (¸ñ¼Ò¸®¸¦ Á×À̸ç) ¿©ÀÇÁÖ¸¦ ¾È°³½ÅÀü [´©±º°¡]¿¡°Ô ÁÖ¾ú´Ù°í ÀüÇØ. µ·Àº ¾È ¹Þ¾ÒÀ¸´Ï ±×¿¡°Ô ¹Þ¾Æ³»¶ó°í Çϰí.. ÇÏÁö¸¸ ¸öÁ¶½ÉÇ϶ó°í ÀüÇØ ±×¿¡°Ô¼­ ½É»óÄ¡ ¾ÊÀº ±â¿îÀÌ ´À²¸Áø´Ù±¸.. ¾Ë¾ÒÁö? -´©±º°¡ ACTION ¾Æ´Ï -³ªµµ ¸ô¶ó. ±×°¡ ´©±ºÁö .. ³»°¡ ¸¸³µÀ» ¶§¿¡´Â ±×°¡ ÀÌ»óÇÑ °¡¸éÀ» ¾²°í À־ ¾ó±¼À» º¸Áö ¸øÇß¾î. µ·Àº ½ÅÀüÀÇ ½Å»óÀÇ ¸Ó¸®µÚµÚ¿¡¼­ ¿©ÀÇÁÖ¶ó°í ¼Ò¸®¸¦ Ä¡¸é ±×°¡ ³ªÅ¸ ³ª°Ú´Ù°í ÇÏ´õ±º.. ÀÌÁ¦ ³»°¡ ÇÒ¸»Àº ´ÙÇßÀ¸´Ï °¡ºÁ.. diff --git "a/objmon/talk/\301\241\274\322\300\314-38" "b/objmon/talk/\301\241\274\322\300\314-38" deleted file mode 100644 index 90340372..00000000 --- "a/objmon/talk/\301\241\274\322\300\314-38" +++ /dev/null @@ -1,4 +0,0 @@ -¾È³ç -¾îÀ̱¸.. ¼Õ´Ô ±Ý¹æ Ä¡¿ö µå¸±Å×´Ï À̸®·Î ¾ÉÀ¸¼¼¿ä. [À̾߱â] -À̾߱â -¹«½¼ À̾߱â¿ä? ³ª´Â ¾Æ¹«°Íµµ ¾Æ´Â°Ô ¾ø´Âµª¼î.. ¹» ¹°¾î º¸½ÇÀÏÀÌ ÀÖÀ¸½Ã¸é 2Ãþ¿¡ ÀÖ´Â ÃÊÇ⠾ư¡¾¾¿¡°Ô ¹°¾îº¸½Ê½Ã¿ä. ±×¸®°í À½½ÄÁ¡¿¡ ÀÖ´Â ³» Ä£±¸°¡ ±×·¯´Âµ¥ ¸çÄ¥Àü ºÎÅÍ ¿Ø °Å··¹ðÀÌ °°Àº ¹«»ç°¡ ³ªÅ¸³ª ±×°÷¿¡ Á×Ä¡°í ¾É¾Æ Àִٴµ¥ ±×¿¡°Ôµµ ¹°¾î º¸´Â°Íµµ ÁÁ½ÀÁÒ. »ç¶÷µéÀÌ ±×·¯´Âµ¥ ±× »ç¶÷Àº ¾Èµ¹¾Æ ´Ù´Ï´Â °÷ÀÌ ¾ø¾î¼­ ¸ð¸£´Â °ÍÀÌ ¾ø´Ù°í ÇÏ´õ±º¿ä. diff --git "a/objmon/talk/\301\246\260\245\260\370\270\355-72" "b/objmon/talk/\301\246\260\245\260\370\270\355-72" deleted file mode 100644 index eef5c201..00000000 --- "a/objmon/talk/\301\246\260\245\260\370\270\355-72" +++ /dev/null @@ -1,6 +0,0 @@ -¸í·É -Èì... ÀÚ³Ù ¿ì¸®ÀÇ 'ÀüÀï'¿¡ °ü½ÉÀÌ ¸¹Àº°¡ º¸±º. -ÀüÀï -ÀûÀÇ ÁöÈÖ°üÀÎ '¿©Æ÷'¸¦ Á×ÀÎ´Ù¸é ¼­ÁÖÀÇ ÇÔ¶ôÀº °£´ÜÇҰɽê. -¿©Æ÷ -¿©Æ÷¸¦ Á×À̰í Áõ°Å¹°À» °¡Á®¿À°Ô ±×·³ ³»°¡ »óÀ» ³»¸®Áö. diff --git "a/objmon/talk/\301\326\270\360-40" "b/objmon/talk/\301\326\270\360-40" deleted file mode 100644 index 86277683..00000000 --- "a/objmon/talk/\301\326\270\360-40" +++ /dev/null @@ -1,38 +0,0 @@ -¾È³ç -ȣȣ~~ ¼Õ´Ô ¾î¼­¿À¼¼¿ä... ¹¬À¸½Ç°ÅÀ¯.. ¾Æ´Ï¸é ½Ä»ç¸¦ ..[¹æÀ»] [À½½ÄÀ»] -¹æÀ» -¾î¼³ª... Áö±Ý ¼Õ´ÔµéÀÌ ²ËÂ÷¼­ ¹æÀÌ ¾ø´Ù¿ì.. [ÇÕ¹æÀ̶óµµ] -ÇÕ¹æÀÌ¶óµµ -±×°Íµµ ¾ÈµÈ´Ù¿ì.. ¸»ÇßÁö ¾Ê¿ì.. Áö±Ý ¼Õ´ÔµéÀÌ ²Ë á´Ù±¸.. µü ÇѹæÀÌ ÀÖ±äÇѵ¥.. [±×°É·Î] -±×°É·Î -±× ¹æÀº °ï¶õÇѵ¥.. ¿Ö³ÄÇÏ¸é ±× ¹æÀº ¾î¶² ±Ô¼ö°¡ »ç¿ëÇϰí Àִµ¥, ±×·¡µµ »ç¿ëÇϰڼö.. ȣȣȣ~~~ ¸¸¾à »ç¿ëÇÏ°í ½ÍÀ¸¸é ±× ±Ô¼öÇÑÅ× Çã¶ôÀ» ¹ÞÀ¸½Ã¿ì. ±×·¯¸é ³» °Å±â¿¡ ¹¬°Ô ÇØ µå¸®°Ú¼ö.. [±×³à´Â] -±×³à´Â -±× ±Ô¼ö´Â ¼­ÂÊÀÇ ¸Ç ³¡¹æ¿¡ ÀÖ¾î¿ä.. ±×¸®·Î °¡ º¸½´.. Âü! ±×·±µ¥, ±×¹æ¿¡ µé¾î°¥¶§ Á¶½ÉÇØ¿ä.. ¼º±òÀÌ ¿©°£ÀÌ ¾Æ´Ï¶ó¿ì.. ºÎµð Á¶½ÉÇØ¿ä. ȣȣȣȣ~~~~ -À½½ÄÀ» -¹Ì¾ÈÇØ¼­ ¾î¼³ª.. ¿À´Ã ¼Õ´ÔÀÌ ¿ö³« ¸¹¾Æ À½½ÄÀÌ ´Ù ¶³¾îÁ³´Ù¿ì... À½½ÄÀ» ¸ÔÀ¸·Á¸é Áß¾Ó´ë·Î¿¡ ÀÖ´Â À½½ÄÁ¡¿¡ °¡ º¸½Ã¿ì.. -ºÎŹÇÑÀÏ -±× ±Ô¼ö°¡ ¹°¾î º¸¶ó°í Çß¼ö..?[¿¹][¾Æ´Ï¿ä] -¿¹ -±×·¡¿ä? ±×·³ ±× ±Ô¼öÇÑÅ× ¸»ÇϽÿì. µé¸®´Â ¼Ò¹®¿¡ ÀÇÇϸé ÃÊÇâÀÌ ±× ÀÏ¿¡ ´ëÇØ Àß ¾Ë°í ÀÖ´ÙÇÏ´Ï ±×³à¿¡°Ô ¹°¾î º¸¶ó±¸ ÇϽ´.. [¹«½¼ÀÏ][ÃÊÇâ] -¹«½¼ÀÏ -¹«½¼ÀÏÀÎÁö ±×³à°¡ ¸» ¾ÈÇØ Áݵð±î? ÀÌ»óµµÇÏÁö ±Í±Ý¼ÓÁýÀÇ µµ³­»ç°Ç¿¡ ´ëÇØ ¾Ë·Á ´Þ¶ó°í ÇÏ´þµð´Ù.. ÀÚ¼¼ÇÑ°Ç ±×³à¿¡°Ô 'µµ³­»ç°Ç'¿¡ ´ëÇØ ¹°¾îº¸½´.. -ÃÊÇâ -±×³à´Â ±â³àÁö¿ä.. ¾È°³µµ½ÃÀÇ Á¤º¸¸¦ ±×³à°¡ ´Ù Àâ°í ÀÖ´Ù°í ÇÕµð´Ù. - - - - - - - - - - - - - - - - - - diff --git "a/objmon/talk/\301\326\301\244\262\333-36" "b/objmon/talk/\301\326\301\244\262\333-36" deleted file mode 100644 index 66847cba..00000000 --- "a/objmon/talk/\301\326\301\244\262\333-36" +++ /dev/null @@ -1,5 +0,0 @@ -¾È³ç -¹¹¾ß? ³Í.. ²©~~ ¾î! ÃëÇÑ´Ù. ³»°¡ ¼úÀ» ³Ê¹« ¸¶¼Ì³ª? ¾îÀÌ.. À̺Á! ÀÚ³× ³»°¡ ¹» ºÃ´ÂÁö ¾Æ³ª? È÷È÷.. ¸ð¸¦Å×Áö ³ª ¾îÁ¦ [°­µµ]¸¦ ºÃ´Ù±¸... -°­µµ -°­µµ? ¹«½¼ °­µµ.. ÀÌ Ä£±¸°¡ ³¸¼úÀ» ¸¶¼Ì³ª? ²©~~ À½³Ä.. ¿Ö ÀÌ·¡ À̰бÍÂú°Ô ±¼Áö¸»°í Àú¸® ²¨Á®! ¹¯°í ½ÍÀº°ÍÀÌ ÀÖÀ¸¸é ÃÊÇâ¿¡°Ô ¹°¾îº¸¶ó±¸.. - diff --git "a/objmon/talk/\303\265\267\346-1" "b/objmon/talk/\303\265\267\346-1" deleted file mode 100644 index 39e1c25c..00000000 --- "a/objmon/talk/\303\265\267\346-1" +++ /dev/null @@ -1,12 +0,0 @@ -ŸŸ¸£ -±×ÀÚ´Â ÁøÁ¤ ¹«¼­¿î ÀÚ¿ä. ¸öÀº ÇϳªÁö¸¸ ¸Ó¸®°¡ ¿©·¯°³ ´Þ¸° '±«¹°'À̶ó¿À. -±«¹° -ŸŸ¸£´Â ¸Ó¸®°¡ Çϳª Á×À¸¸é ¶Ç ´Ù¸¥ ¸Ó¸®°¡ ÇѰ³ »ý°Ü³ª±â ¶§¹®¿¡ ¿ì¸®·Î¼­´Â µµÀúÈ÷ Á×Àϼö°¡ ¾ø´Ù¿À. ÀÌ·²¶§ ³ªÀÇ '»çÃÌ'ÀÌ ÀÖ¾ú´Ù¸é À̱æ¼ö°¡ ÀÖÀ»ÅÙµ¥. -»çÃÌ -´ç½ÅÀÌ ³ªÀÇ »çÃÌÀ» ¸¸³µ¼Ò? ±×·³ ´ç½ÅÀÌ ³ª¿¡°Ô 'µµ¿ò'À» ÁÖÁö ¾Ê°Ú¼Ò? -µµ¿ò -ŸŸ¸£¿¡°Ô °¡´Â ±æ¿¡´Â Àá°ÜÁø ¹®ÀÌ ÀÖÀ» °ÍÀÌ¿À. ³ªÀÇ »çÃÌÇÑÅ× ¹ÞÀº 'ÆÈÂî'¸¦ Áشٸé '¿­¼è'¸¦ µå¸®°Ú¼Ò. -ÆÈÂî -¿ëµéÀÇ ÆÈÂî´Â ¿ëÁ·ÀÇ º¸¹°ÀÌ´Ï ³ª¿¡°Ô µ¹·ÁÁֽÿÀ. -¿­¼è -ÀÌ ¿­¼è¶ó¸é ÀÌ °è°îÀÇ ¸ðµç ¹®À» ¿­¼ö ÀÖÀ» °ÍÀÌ¿À. ºÎµð ŸŸ¸£¸¦ ¹°¸®Ãļ­ ÆòÈ­¸¦ µÇã¾ÆÁֽÿÀ. diff --git "a/objmon/talk/\303\265\267\346-99" "b/objmon/talk/\303\265\267\346-99" deleted file mode 100644 index b73874df..00000000 --- "a/objmon/talk/\303\265\267\346-99" +++ /dev/null @@ -1,16 +0,0 @@ -¿ë -Áß°£°è¿¡´Â ¿ëµé¸¸ »ì°í ÀÖ´Â ¿ëµéÀÇ '°è°î'ÀÌ À־ ¿©·¯ ¿ëµéÀÌ 'ÆòÈ­'·Ó°Ô »ì°í ÀÖ¾ú¼Ò. -°è°î -±×°÷Àº »ç¸·ÀÇ ¼­ÂÊ¿¡ À§Ä¡Çϰí ÀÖ¼Ò. -ÆòÈ­ -¼±ÇÑ ¿ëµéÀÌ ¿À·§µ¿¾È ÆòÈ­·Ó°Ô »ì¾Ò´Âµ¥, ¾ó¸¶Àü¿¡ ¸¶¿Õ°ú °°ÀÌ Áö¿Á¿¡¼­ ¿Â 'ŸŸ¸£'¶ó´Â ÀÚ°¡ ±×°÷ÀÇ ÆòÈ­¸¦ ±ú¾î ¹ö·È¼Ò. -ŸŸ¸£ -±× ÀÚÀÇ '´É·Â'Àº ¹«¼­¿ü¼Ò. ¼±ÇÏ´ø ¿©·¯¸¶¸®ÀÇ ¿ëµéÀÌ °©ÀÚ±â Èä¾ÇÇÏ°Ô º¯Çϵµ·Ï ¸¸µé¾î¼­ ¿ëµéÀÇ °è°îÀ» ¾û¸ÁÀ¸·Î ¸¸µé¾ú¼Ò. -´É·Â -ŸŸ¸£ÀÇ Èû¿¡ ´ëÇØ¼­´Â ³ªº¸´Ù´Â °è°î¿¡ ÀÖ´Â ³ªÀÇ '»çÃÌ'ÀÌ ´õ¿í Àß ¾Ë°í ÀÖ¼Ò. -»çÃÌ -±×´Â ¾ÆÁ÷ Èä¾ÇÇÏ°Ô º¯ÇÏÁö ¾ÊÀº ¼±ÇÑ ¿ëµé°ú ÇÔ²² ŸŸ¸£¿¡°Ô ´ëÇ×Çϰí ÀÖÀ¸³ª ¾ÆÁ÷ 'Èû'ÀÌ ºÎÁ·ÇÏ¿À. -Èû -ÀÚ³×°¡ ±×¿¡°Ô ÈûÀÌ µÇ¾îÁÖÁö ¾Ê°Ú¼Ò? ±×·¸´Ù¸é ¿ëµéÀÇ °è°î¿¡ °¡¼­ '±×'¸¦ ¸¸³ª º¸½Ã¿À. -±× GIVE 511 -¾ÆÂü Àؾú±º. ±×¸¦ ¸¸³ª·Á¸é À̰ÍÀÌ ÇÊ¿äÇÒ °ÍÀÌ¿À. diff --git "a/objmon/talk/\303\312\307\342-50" "b/objmon/talk/\303\312\307\342-50" deleted file mode 100644 index ba08acc2..00000000 --- "a/objmon/talk/\303\312\307\342-50" +++ /dev/null @@ -1,18 +0,0 @@ -¾È³ç ACTION º¸¾Æ -À½...? ´ç½ÅÀº ´©±¸ÁÒ..? [¼ú]À» ¸¶½Ã·¯ ¿Ô³ª¿ä? ¾Æ´Ï¸é [Á¤º¸]¸¦ ¾òÀ¸·¯ ¿Ô³ª¿ä? -¼ú -±×·¯¸é Àú¸® °¡¼­ ¼úÀ̳ª ¸¶¼Å¿ä. ÀÚ²Ù ±ÍÂú°Ô ±¼Áö ¸»°í.. -Á¤º¸ -±×·¯¸é ´ç½Åµµ À̹ø ±Í±Ý¼ÓÁ¡ÀÇ µµ³­»ç°Ç¿¡ ´ëÇÑ Á¤º¸¸¦ ¾ò±â À§ÇØ ¿Ô°Ú±º¿ä. À½...³»°¡ ÀÌ µµ½Ã¿¡¼­ Á¦Àϰ¡´Â Á¤º¸ÅëÀÌÁö¸¸ ±× »ç°Ç¿¡ ´ëÇØ¼­´Â Àúµµ Àß ¸ô¶ó¿ä. ÇÏÁö¸¸, ±× »ç°ÇÀº ¿©´À µµ³­»ç°Ç°ú´Â ¹«¾ð°¡ ´Ù¸¥°É ´À³¥ ¼ö ÀÖ¾î¿ä. ±Í±Ý¼ÓÁ¡¿¡¼­ Æ÷µµÃ»¿¡¼­´Â ºñ¹Ð·Î Çϰí ÀÖÁö¸¸ ´ç½ÅÀº ¹«¾ó µµ³­´çÇß´ÂÁö ¾Ë¾Æ¿ä? ´ë´äÇÏ¸é ´õ ÀÚ¼¼ÇÑ Á¤º¸¸¦ ¾Ë·Á µå¸®ÁÒ. (µµ³­´çÇÑ ¹°°ÇÀÇ À̸§À» ¸»ÇϽÿä.) -¿©ÀÇÁÖ -¸Â¾Æ¿ä.. ¹Ù·Î ¿©ÀÇÁÖ¿¹¿ä. ±× ¿©ÀÇÁÖ´Â ÀÌ ¾È°³µµ½ÃÀÇ Àüü¸¦ ºñÃëÁÖ´Â [û¿ÁºÒ]ÀÇ Àç·áÀ̸鼭 Á×À½ÀÇ[»ç»ý½ÊÀ̰ü¹®]ÀÇ ¾È¿¡¼­¸¸ ±¸Çؿà ¼ö ÀÖ´ä´Ï´Ù. Áö±Ý±îÁö ±× ¿©ÀÇÁÖ¸¦ [È­¹«°á]À̶ó´Â ¹«»ç°¡ Àϳ⿡ Çѹø¾¿ Á×À½À» ¹«¸¨¾²°í ±¸ÇؿԾî¿ä. Âü! ±×¸®°í, ÀÌ¿ô Áß°£°è µµ½Ã¿¡ ±²ÀåÇÑ ÀÏÀÌ ¹ú¾îÁ³´Ù¸é¼­¿ä? ÀÌ µµ½Ã¿¡µµ °ËÀº ¼Õ±æÀÌ »¸È÷°í ÀÖ´Â°Í °°¾Æ¿ä. ½²~~~ ±×¸®°í ÀÌ°Ç ºñ¹ÐÀε¥ Æ÷µµÃ»¿¡¼­ À̹ø µµ³­»ç°ÇÀÇ [¿ëÀÇÀÚ]¸¦ ÇÑ¸í ºÙÀâ¾Ò´Ù ÇÏ´õ±º¿ä. -È­¹«°á ACTION ºÎ²ô·¯ -±× ºÐÀº ÀÌ ¾È°³µµ½Ã ÃÖ°íÀÇ ¹«»ç¶ø´Ï´Ù. ƯÈ÷ ±×ÀÇ ¹ý·ÂÀº õÁö¸¦ Áøµ¿½Ãų Á¤µµÀÌÁö¿ä. ±×·¯³ª ¾Æ½±°Ôµµ ±× ºÐÀº ¸çÄ¥Àü¿¡ ¿©ºÐÀÇ ¿©ÀÇÁÖ¸¦ ±¸Çϱâ À§ÇØ »ç»ý½ÊÀ̰ü¹®¿¡ ÀÔ°üÇߴµ¥ Áö±Ý±îÁö ¾Æ¹«·± ¼Ò½ÄÀÌ ¾ø¾î¿ä... Á¤¸» ¾î¶»°Ô µÈ°ÇÁö ¸ð¸£°Ú¾î¿ä. ÀÌ·¸°Ô ¿À·¡°É¸°ÀûÀÌ ¾ø¾ú´Âµ¥, ¾Æ¹«·¡µµ ¹«½¼ ÀÏÀÌ »ý±ä°ÍÀÌ ºÐ¸íÇØ¿ä. ±×·¡¼­ Àú.. ºÎŹ ÇѰ¡Áö ÇØµµ µÉ±î¿ä? ³ª´Â È­¹«°á´ÔÀ» »ç¸ðÇϰí ÀÖ´ä´Ï´Ù. ±×·¯´Ï ´ç½ÅÀÇ ½Ç·ÂÀÌ µÈ´Ù¸é ±×ºÐÀÇ ¼Ò½ÄÀ» ¾Ë·Á ÁÖ¼¼¿ä. ¾î·Á¿î ºÎŹÀÎÁÙÀº ¾ËÁö¸¸... ¸¸¾à ÀúÀÇ ºÎŹÀ» µé¾î ÁÖ½Ã¸é ³ªÁß¿¡ ±×¿¡ ÀÀ´çÇÑ º¸´äÀÌ ÀÖÀ»°Å¿¹¿ä. -¿ëÀÇÀÚ -À½.. ±× ¿ëÀÇÀÚ´Â Áö±Ý Æ÷µµÃ»ÀÇ °¨¿Á¿¡ ÀâÇô Àִµ¥, °æºñ°¡ »ï¾öÇØ ±× °÷¿¡ µé¾î°¡±â°¡ ½±Áö ¾ÊÀ»°Å¿¹¿ä. ÇÏÁö¸¸ °¨¿Á ¾ÕÀ» Áö۰í ÀÖ´Â [Æ÷Á¹]ÀÌ ¼úÀ» ¾ÆÁÖ ÁÁ¾ÆÇÏ´Ï ±× ÀÚ¿¡°Ô ¼úÀ» °¡Á®´Ù ÁÖ¸é ¿ëÀÇÀÚ¿Í ¸¸³ª°Ô ÇØÁÙÁöµµ ¸ô¶ó¿ä. -»ç»ý½ÊÀ̰ü¹® -Àúµµ Àß ¸ô¶ó¿ä. ±×°÷ÀÌ ¾ðÁ¦ ¸¸µé¾î Á³´ÂÁö ´©°¡ ¸¸µé¾ú´ÂÁöµµ.. ´Ù¸¸ È­¹«°á´ÔÀÌ Àú¿¡°Ô¸¸ »ì¦ ¾Æ¾ß±â ÇØÁÖ¾ú´Âµ¥ ±× ¼Ó¿¡ ¾öû³­ º¸¹°µéÀÌ ¼û°ÜÁ® ÀÖ´Ù°í ÇÏ´õ±º¿ä. ÇÏÁö¸¸ ±× ¾È¿¡ ¿Â°® À§ÇèÀÌ µµ»ç¸®°í ÀÖ¾î È­¹«°á´ÔÀ» Á¦¿ÜÇÏ°í »ì¾Æ µ¹¾Æ¿ÂÀÚ´Â ¾Æ¹«µµ ¾ø¾î¿ä. ±×·¯´Ï ¾Ë¾ÒÁÒ? ´ç½ÅÀÇ ¹«°øÀÌ ±×´ÙÁö °­ÇÏÁö ¾Ê´Ù¸é ±×¸®·Î °¥ »ý°¢Àº ÇÏÁö ¸¶¼¼¿ä. -Æ÷Á¹ ACTION »ý°¢ -±Û½ê¿ä... ±× Æ÷Á¹ÀÌ ¹«½¼ ¼úÀ» ÁÁ¾Æ ÇÏ´ÂÁö Àúµµ ¸ô¶ó¿ä.. ±×°Ç ±× »ç¶÷¿¡°Ô Á÷Á¢ ¹°¾î º¸¼¼¿ä. -û¿ÁºÒ -û¿ÁºÒÀº ÀÌ ¾È°³µµ½ÃÀÇ Å¾ç°ú °°Àº ±ÍÁßÇÑ °ÍÀÌ¿¹¿ä. ¸¸¾à¿¡ µîž¿¡ Àִ û¿ÁºÒÀÌ ÇÏ·ç¶óµµ ºûÀ» ³»Áö ¾ÊÀ¸¸é ÀÌ µµ½Ã´Â Áö¿ÁÀ¸·Î º¯ÇÏ°í ¸»°Å¿¹¿ä. diff --git "a/objmon/talk/\305\270\300\314-5" "b/objmon/talk/\305\270\300\314-5" deleted file mode 100644 index 81380d3e..00000000 --- "a/objmon/talk/\305\270\300\314-5" +++ /dev/null @@ -1,44 +0,0 @@ -°³¾È¼ú CAST °³¾È¼ú -¾å -¼ºÇöÁø CAST ¼ºÇöÁø -¾å -Áö¹æÈ£ CAST Áö¹æÈ£ -¾å -º¸¸¶Áø CAST º¸¸¶Áø -¾å -¹æ¿­Áø CAST ¹æ¿­Áø -¾å -¼öÈ£Áø CAST ¼öÈ£Áø -¾å -¹æÇÑÁø CAST ¹æÇÑÁø -¾å -ÀúÁÖÇØ¼Ò CAST ÀúÁÖÇØ¼Ò -¾å -¼±¾Ç°¨Áö CAST ¼±¾Ç°¨Áö -¾å -ÁÖ¹®°¨Áö¼ú CAST ÁÖ¹®°¨Áö¼ú -¾å -ÀºµÐ°¨Áö¼ú CAST ÀºµÐ°¨Áö¼ú -¾å -ºÎ¾ç¼ú CAST ºÎ¾ç¼ú -¾å -ºñ»ó¼ú CAST ºñ»ó¼ú -¾å -ÃàÁö¹ý CAST ÃàÁö¹ý -¾å -¼ö»ý¼ú CAST ¼ö»ý¼ú -¾å -Áöµ¿¼ú CAST Áöµ¿¼ú -¾å -½Ç¸í CAST ½Ç¸í -¾å -°øÆ÷ CAST °øÆ÷ -¾å -È¥µ¿ CAST È¥µ¿ -¾å -¹ß±¤ CAST ¹ß±¤ -¾å -ÀºµÐ¹ý CAST ÀºµÐ¹ý -¾å -µ¿¼³ÁÖ CAST µ¿¼³ÁÖ -¾å diff --git "a/objmon/talk/\306\304\274\366\272\264-68" "b/objmon/talk/\306\304\274\366\272\264-68" deleted file mode 100644 index c44cc638..00000000 --- "a/objmon/talk/\306\304\274\366\272\264-68" +++ /dev/null @@ -1,10 +0,0 @@ -¾È³ç -À̰÷Àº [ÃâÀÔ] ÅëÁ¦±¸¿ªÀÌ¿ä. µ¹¾Æ°¡½Ã¿ä. -ÃâÀÔ -¾îÇã~~ Áö±Ý ¾î¶² ½Ã±¹Àε¥ ÀÚ²Ù À̰÷¿¡ ¿Í¼­ ¾óÂİŸ®´Â°Å¾ß? ÀÌ µîž ¾È¿¡ ¹«¾ùÀÌ ÀÖ´ÂÁö³ª ¾Ë¾Æ? Áö±Ý ¿Â°® ±«¹°µéÀÌ À̰÷¿¡ µé¾î°¡ Àå¾ÇÀ» Çϰí ÀÖ´Ü ¸»¾ß.. À¹.. ³ªµµ ¸ð¸£°Ô À̾߱⸦.. ÇÏ¿©Æ° µ¹¾Æ°¡½Ã¿ä. ÀÌ [À̾߱â]¸¦ ´Ù¸¥µ¥ Àý´ë·Î ÆÛÆ®¸®Áö ¸»°í.. -À̾߱â -¹¹¾ß? ÀÌ À̾߱⸦ ÆÛÆ®¸®°Ú´Ù°í.. ´ç½Å Á¦Á¤½ÅÀ̾ß? ÀÌ À̾߱Ⱑ ÆÛÁö¸é ÀÌ ¾È°³µµ½Ã´Â È¥¶õ¿¡ ºüÁö°í ¸»¾Æ. µµ´ëü ÀÌ ¾Õ¿¡ ¼­¼º°Å¸®´Â ÀÌÀ¯°¡ ¹¹¾ß? ÀÌ ¾È¿¡ µé¾î°¡°í ½Í¾î? [¿¹][¾Æ´Ï¿ä] -¿¹ attack -ÁÁ¾Æ! ¸¸¾à À̰÷¿¡ µé¾î°¡°í ½ÍÀ¸¸é ³¯ ¾²·¯¶ß¸®°í µé¾î°¡. ³¯ ¾²·¯¶ß¸°´Ù¸é µé¿©º¸³»ÁÖÁö. -¾Æ´Ï¿ä -±×·¸´Ù¸é ´çÀå µ¹¾Æ°¡. ¸¸¾à ÀÌ ¾È¿¡ ÇѹßÀÚ±¹ÀÌ¶óµµ µé¾î °¥·Á°í ÇÏ¸é ´çÀå ÀûÀ¸·Î °£ÁÖÇÏ°í °ø°ÝÇÒÅ×´Ï±î ¾Ë¾Æ¼­ Ç϶ó±¸. diff --git "a/objmon/talk/\306\367\265\265\264\353\300\345-70" "b/objmon/talk/\306\367\265\265\264\353\300\345-70" deleted file mode 100644 index a837b977..00000000 --- "a/objmon/talk/\306\367\265\265\264\353\300\345-70" +++ /dev/null @@ -1,20 +0,0 @@ -¾È³ç -´ç½ÅÀº ´©±¸Áö? À̰÷¿¡ ¹¹ÇÏ·¯ ¿Ô¾î? ¹°°ÇÀ» »ç·¯ ¿Â°Å¿ä, ¾Æ´Ï¸é ´Ù¸¥ÀÏÀÌ À־ ¿Â°Å¿ä. [¹°°ÇÀ»][´Ù¸¥ÀÏ] -¹°°ÇÀ» -±×·¯¸é ±Í±Ý¼ÓÁÖÀο¡°Ô ¸»ÇϽÿÀ.. ³ª´Â ºü»Û¸öÀ̾ß.. °ø¹«ÁýÇà ¹æÇØ·Î Áý¾î³Ö±â Àü¿¡ Àú¸®·Î ºñŰ½Ã¿À. -´Ù¸¥ÀÏ -³ªÇÑÅ× ¿ë¹«°¡ Àִ°ſä? ³ª´Â »ç°Ç¼ö»ç·Î ¹Ù»Ú´Ü ¸»À̾ß.. [»ç°Ç] -»ç°Ç -¸ðµÎ ¾Ë°í ÀÖ´Â »ç½ÇÀ» ¸ð¸£´Ù´Ï. ¾Æ¸¶ ŸÁö¿¡¼­ ¿Â ¸ð¾çÀ̱º. À̰÷¿¡ ¹«½¼ ÀÏÀÌ ¹ú¾îÁ³³ÄÇÏ¸é ¹Ù·Î ¸çÄ¥Àü¿¡ 2ÀÎÁ¶ °­µµ°¡ ÀÌ ±Í±Ý¼ÓÁý¿¡ µé¾î¿Í ¿©ÀÇÁÖ¸¦ ÈÉÃݬ¼Ò. [¿©ÀÇÁÖ¸¦] -¿©ÀÇÁÖ¸¦ -±×·¸¼Ò.. ¾ÆÁÖ ±ÍÁßÇÑ º¸¼®ÀÌÁö.. ±Í±Ý¼ÓÁ¡ ÁÖÀÎÀÌ ¿©ÀÇÁÖ¸¦ »¡¸® ã¾Æ³»¶ó°í ´Ú´ÞÀ» ÇØ¼­ Â¥ÁõÀÌ ³¯ Áö°æÀÌ¿À. ¼ö»ç¸¦ ¼ÒȦÈ÷ Çϴ°͵µ ¾Æ´Ñµ¥.. Á¶±ÝÀÌ¶óµµ ´Ü¼­°¡ ÀÖ¾î¾ßÁö.. ¾È±×·¡µµ ´Ù¸¥ Áß¿äÇÑ »ç°Ç¶§¹®¿¡ °ñÄ¡°¡ ¾ÆÇµ¥... [¾î¶²»ç°Ç] -¾î¶²»ç°Ç -ÀÀ? ´ç½ÅÀ» ¾Ë°Í ¾ø¼Ò.. ±×·±µ¥, ´ç½Å ¿Ö Àڲ٠ij¹¯´Â°ÅÁö? ¼ö»óÇѵ¥.. ´ç½Å ¾îµð¼­ ¿Ô¼Ò? [Áß°£°è] -Áß°£°è -Áß°£°è..? ¾Æ´Ï! ±×°÷¿¡¼­ ¿Ô´Ü ¸»ÀÌ¿ä?.. ±×·³ ¾î¼¸é ´ç½ÅÀÌ ±× »ç°ÇÀ» ÇØ°áÇÒ ¼ö ÀÖÀ»Áöµµ ¸ð¸£°Ú±º. ¿©º¸½Ã¿ä.. ´ç½Å¿¡°Ô ÀÇ·ÚÇÒÀÏÀÌ Àִµ¥ µé¾îÁÖ°Ú¼Ò? [¿¹][°ÅÀý] -¿¹ -ÁÁ¼Ò.. ³ªÀÇ ÀÇ·Ú¸¦ ¹Þ¾Æ ÁØ´Ù´Ï ¸»ÇØ µå¸®¸®´Ù. (ÀÛÀº ¸ñ¼Ò¸®·Î) Áö±Ý ¾È°³µµ½Ã°¡ À§±â¿¡ Ã³ÇØ ÀÖ¼Ò. ¿©±ä ´Ù¸¥»ç¶÷ÀÇ À̸ñµµ ÀÖ°í ÇÏ´Ï Æ÷µµÃ»¿¡ °¡¼­ Çö°¨²² 'µîž»ç°Ç'¿¡ ´ëÇØ Áú¹®Àº ÇÏ¸é ±×ºÐÀÌ »ç°ÇÀÇ Àü¸»¿¡ ´ëÇØ ¸»¾¸ÇØ ÁֽǰÍÀÌ¿À. ´©°¡ º¸³Â³Ä Çϸé ÀÌ 'Æ÷µµ´ëÀå'ÀÌ º¸³Â´Ù°í ÀüÇϽÿÀ. -°ÅÀý -¾ÈµÈ´Ù°í..? ±×·¯¸é ³ªµµ ¸»ÇØÁÙ¼ö ¾ø¼Ò.. ´Ù½ÃÇѹø ¸»Çϰڴµ¥ ³ªÀÇ ÀÇ·Ú¸¦ ¹Þ¾ÆÁֽðڼÒ? [¿¹][¾ÈµÅ] -¾ÈµÅ CAST žç¾È -ÀÌ·¸°Ô ºÎŹÀ» Çϴµ¥µµ °ÅÀýÀ» ÇÏ´Ù´Ï.. À¸À¸~~~ ³ª È­ ³µ´Ù.... ÇÑ¹æ ¸Ô¾î¶ó. diff --git "a/objmon/talk/\306\367\267\316-1" "b/objmon/talk/\306\367\267\316-1" deleted file mode 100644 index 09127d03..00000000 --- "a/objmon/talk/\306\367\267\316-1" +++ /dev/null @@ -1,8 +0,0 @@ -º¸¹° -Àü º»·¡ 'ÆÄ¶ó¿À'¸¦ ÁöŰ´Â ¹®Áö±â ¿´´Âµ¥, ÇØÀûµéÀÌ º¸¹°À» ³ë¸®°í Àý Àâ¾Æ¿Ô´ä´Ï´Ù. -ÆÄ¶ó¿À -ÆÄ¶ó¿À´Â ½£ ³Ê¸Ó¿¡ ÀÖ´Â '½ÅÀü'¿¡ ¸¹Àº º¸¹°µé°ú ÇÔ²² Àáµé¾î ÀÖ¾î¿ä. -½ÅÀü -±×°÷¿¡´Â ÆÄ¶ó¿À¸¦ ÁöŰ´Â ¹«½Ã¹«½ÃÇÑ ¼öÈ£½ÅµéÀÌ ÆÄ¶ó¿ÀÀÇ º¸¹°À» Áö۰í ÀÖ°í, ½ÅÀü¿¡´Â '¿­¼è'°¡ ¾øÀ¸¸é ¸øµé¾î°¥²®´Ï´Ù. -¿­¼è -½ÅÀüÀÇ ¿­¼è´Â ½£¿¡ »ç´Â ½Å·É½º·¯¿î ±Ý±î¸¶±Í°¡ °¡Áö°í ÀÖÀ»²«µ¥, ±×³ÉÀº ¾ÈÁÙ²¨¿¡¿ä. diff --git "a/objmon/talk/\306\367\301\271-56" "b/objmon/talk/\306\367\301\271-56" deleted file mode 100644 index d9cbdffe..00000000 --- "a/objmon/talk/\306\367\301\271-56" +++ /dev/null @@ -1,4 +0,0 @@ -¾È³ç -´ç½ÅÀº ´©±¸¿ä? óÀ½º¸´Â ¾ó±¼Àε¥.. À̰÷¿¡ ¹»ÇÏ·¯ ¿Ô³ª? À̰÷¿¡ [Å«»ç°Ç]ÀÌ ¹ú¾îÁ³´Ü ¸»À̾ß.. -Å«»ç°Ç -ÀÚ³×°¡ ¾Ë¾Æ¼­ ¹¹ÇØ? ¾Æ´ÏÁö.. ¾à°£ÀÇ ´Ü¼­¶óµµ ã±â¸¦ À§ÇØ ¾ê±â¸¦ Çϴ°͵µ ³ª»ÚÁö ¾ÊÁö. ÁÁ³×! Àڳ׿¡°Ô ¸»ÇØÁÖÁö. ¾îÂîµÈ ÀÏÀΰ¡Çϸé ÀÌ µµ½Ã¿¡¼­ °¡Àå °ªºñ½Ñ º¸¹°À̶ó°íµµ ÇÒ¼ö ÀÖ´Â ¿©ÀÇÁÖ°¡ µµ³­À» ´çÇß³×. Áö±Ý ±Í±Ý¼ÓÁ¡ ÁÖÀÎÀº »¡¸® ¿©ÀÇÁÖ¸¦ ã¾Æ´Þ¶ó°í ³ë¹ß´ë¹ßÀ̳×.. ÁøÂ¥ °ñÄ¡¾ÆÇ »ç°ÇÀ̾ß.. Ȥ½Ã ÀÚ³× ¹¹ ¾Æ´Â°Í ¾ø³ª? Ȥ½Ã³ª ÀÌ»óÇÑ ¼Ò¹®ÀÌ¶óµµ µè°Åµç ³ªÁß¿¡ ³ª¿¡°Ô ¾ê±âÇØÁÖ°Ô.. diff --git "a/objmon/talk/\306\367\301\271-57" "b/objmon/talk/\306\367\301\271-57" deleted file mode 100644 index 1284ac1c..00000000 --- "a/objmon/talk/\306\367\301\271-57" +++ /dev/null @@ -1,14 +0,0 @@ -¾È³ç -À½.. ¿äÁò Çö°¨²²¼­ ¹«½¼ ±Ù½ÉÀÌ ÀÖ´ÂÁö ¾È»öÀÌ ¸»ÀÌ ¾Æ´Ï¾ß.. ÀÀ? À̺Á¿ä! ´ç½ÅÀº ´©±¸¿ä? ¹«½¼ »ó¼Ò ÇÒÀÏÀÌ ÀÖ¼Ò? [¿¹][¾Æ´Ï¿ä] -¿¹ -À½.. Áö±ÝÀº »ó¼Ò¸¦ ¹ÞÀ» ¼ö ¾ø¼Ò. ´Ù¸¥ »ç°ÇµéÀÌ ¸¹ÀÌ ¹Ð·Á ÀÖÀ¸´Ï ´ÙÀ½¿¡ ¿À½Ã¿ä. -¾Æ´Ï¿ä -Æ÷µµÃ»¿¡ »ó¼ÒÇÒÀÏÀÌ ¾ø´Ù¸é À̰÷¿¡ ¹«¾ùÀ» ÇÏ·¯ ¿Ô¼Ò? [Çö°¨À»][¿ëÀÇÀÚ¸¦] -Çö°¨À» -¾Æ´Ï Çö°¨³ª¸®´Â ¹¹ÇÏ·¯ ¸¸³¯·Á°í ÇÏÁö..? Áö±Ý ±× ºÐÀº ´Ù¸¥ÀÏ ¶§¹®¿¡ ¹Ù»Ú´Ï µ¹¾Æ °¡½Ã¿ä. ¾Æ´Ï.. Àá±ñ ±×·±µ¥, ´©°¡ º¸³»¼­ ¿Ô¼Ò? (´©°¡ º¸³Â´ÂÁö ¸»ÇϽÿä.) -¿ëÀÇÀÚ¸¦ -¾Æ´Ï .. ±×°¡ À̰÷¿¡ ÀÖ´Â°Ç ºñ¹ÐÀε¥ ¾î¶»°Ô ¾Ë¾Ò¼Ò? À½.. ´ç½ÅÀÌ ±× »ç½ÇÀ» ¾î¶»°Ô ¸¸³µ´ÂÁö´Â ¸ð¸£Áö¸¸ ±×ÀÚ¸¦ ¸¸³¯ ¼ö ¾ø¼Ò. ¸¸¾à ¸éȸ¸¦ ÇÏ°í ½Í´Ù¸é Çö°¨³ª¸®ÀÇ Çã¶ôÀ» ¹Þ¾Æ¾ß ÇÒ°Å¿ä. -Æ÷µµ´ëÀå -Æ÷µµ´ëÀå´ÔÀÌ..? À½... Æ÷µµ´ëÀå´ÔÀÌ ¹«½¼ ÀÏ·Î ... ÁÁ¼Ò! ¾î¶´ø ±×ºÐÀÌ º¸³Â´Ù´Ï Çö°¨³ª¸®¸¦ ¸¸³ª°Ô ÇØ ÁÖ°Ú¼Ò. 'µû¶ó'¶ó°í ÀÔ·ÂÇÏ°í ³ª¸¦ µû¶ó ¿À½Ã¿ä. -¸éȸÇã°¡ -Çö°¨³ª¸®°¡ Çã¶ô Çϼ̼Ò...? À½.. ±×·¯¸é '°¨¿Á¾È³»'¶ó°í ÀÔ·ÂÇÏ°í ³ª¸¦ µû¶ó ¿À½Ã¿ä. ±×·±µÚ ¾ðÁ¦¶óµµ ¸éȸ¸¦ ÇÏ°í ½ÍÀ¸¸é ³ª¿¡°Ô·Î ¿Í '°¨¿Á¾È³»'¶ó°í ÇÏ¸é ±×¸®·Î ¾È³» ÇØ ÁÖ°Ú¼Ò. diff --git "a/objmon/talk/\306\367\301\271-60" "b/objmon/talk/\306\367\301\271-60" deleted file mode 100644 index 5cd01a2d..00000000 --- "a/objmon/talk/\306\367\301\271-60" +++ /dev/null @@ -1,20 +0,0 @@ -¾È³ç -À̰÷¿¡ ¹¹ÇÏ·¯ ¿ÔÁö? À̰÷¿£ ¹üÁËÀÚ¸¦ °¡µÎ´Â °¨¿ÁÀε¥ ´©±¸ [¸éȸ]¸¦ ¿Ô³ª? -¸éȸ -À½... Áö±Ý À̰÷¿£ ¾îÁ¦ ¸· µé¾î¿Â Á˼ö Çϳª¹Û¿¡ ¾ø´Âµ¥ ¼³¸¶ [±×¸¦] ¸¸³ª·¯ ¿Â°Ç ¾Æ´ÒÅ×Áö? -±×¸¦ -¾ÈµÅ´Âµ¥... Æ÷µµ´ëÀå´ÔÀÌ ±×¸¦ ´Ü´ÜÈ÷ °¨½ÃÇ϶ó°í Ç߰ŵç? ÂÁ~~ °©Àڱ⠸ñÀÌ ¸¶¸£³×. ÀÚ³× È¤½Ã ¼ú°¡Áø°Å ÀÖ³ª? [¿¹][¾Æ´Ï¿À] -¿¹ -ÁÁ¾Æ! ÁÁ¾Æ! ±×·¡ ¹«½¼ ¼úÀ» °¡Áö°í ÀÖ³ª? {¼úÀ» °¡Áö°í ÀÖÀ¸¸é °¡Áö°í ÀÖ´Â ¼úÀ̸§À» ´ë½Ã¿À} -¸·°É¸® -±×°Í»ÓÀΰ¡? ±×°Å¶óµµ ÁÖ°Ô ¿ì¼± ¸ñÀÌ ¸¶¸£´Ï±î... -µ¿µ¿ÁÖ -¿À~~ ±×·±´ë·Î ÁÁÀº ¼úÀ» °¡Áö°í ÀÖ±º.. ÇÑÀܸ¸ ÁÖ°Ú³ª? ¿µ °¥ÁõÀÌ ³ª¼­... -°í·®ÁÖ -Ä«~~~ ³¿»õ°¡ ±â°¡¸·È÷±º.. ³»°¡ Á¦ÀÏ ÁÁ¾ÆÇÏ´Â ¼úÀ» °¡Áö°í ÀÖ±º ±×·¡. ±× ¼ú ³ª¿¡°Ô ÁÖ°Ô ±×·¯¸é °¨¿Á¿¡ ÀÖ´ÂÀÚ¸¦ ¸¸³ª°Ô ÇØÁÖÁö. -¾Æ´Ï¿À -¾È°¡Áö°í ÀÖ¾î? ÀÚ³Ù ¿¹Àýµµ ¸ð¸£´Â±º. ºÎŹÀ» ÇÏ·¯ ¿ÔÀ¸¸é ¼ºÀǸ¦ Ç¥½ÃÇÒÁÙ ¾Ë¾Æ¾ßÁö. ³­ µ·°°Àº °Ç ¹Ù¶óÁö ¾Ê¾Æ. ´Ù¸¸ ³ªÇÑÅ× ÁÁÀº ¼úÀ» °¡Á®´Ù ÁÖ¸é ¼Ò¿øÀ» µé¾îÁÖÁö. ³ª´Â ¿©±â¼­ ÇѼû ÀÚ°í ÀÖÀ»Å×´Ï±î ¼úÀ» °¡Áö°í ¿À°Åµç ³ªÀÇ ±Í¿¡´Ù ´ë°í [¼ú]À̶ó°í ¾ê±âÇØÁÖ°Ô ±×·¯¸é ¾Æ¹«¸® ³»°¡ ±í°Ô ÀáÀÌ µé¾î À־ ¹ú¶± ÀϾ°É¼¼. -¼ú -¼úÀº °¡Áö°í ¿Ô³ª? ÀÀ? ÇÑÂʼտ¡ µé°í ÀÖ´Â°Ô ¼úº´Àΰ¡? ±×·¡ ¹«½¼ ¼úÀ» °¡Áö°í ¿ÔÁö? {¼úÀ» °¡Áö°í ÀÖÀ¸¸é °¡Áö°í ÀÖ´Â ¼úÀÇ À̸§À» ´ë½Ã¿À} -ÀλïÁÖ -À½... ºñ½Ñ¼úÀ» »ç°¡Áö°í ¿Ô±º ±×·¡... ¸¾¿¡ µé¸é ³»°¡ ¿­¼è¸¦ ÁÖÁö ¸¾¿¡ ¾Èµé¸é ±×¸¸À̱¸.. diff --git "a/objmon/talk/\307\322\276\306\271\374-1" "b/objmon/talk/\307\322\276\306\271\374-1" deleted file mode 100644 index a311bda4..00000000 --- "a/objmon/talk/\307\322\276\306\271\374-1" +++ /dev/null @@ -1,22 +0,0 @@ -¼Õ³à -¾îÁ¦ ³»¼Õ³à°¡ '³î·¯'³ª°¡´õ´Ï ¾ÆÁ÷µµ ¾Êµ¹¾Æ¿À°í ÀÖ³×. -³î·¯ -¼Õ³à¸¦ ã¾ÆÁÖ¸é ³»°¡ ÁÁÀº ¼±¹°À» Çϳª ÁÖ°Ú³×... -ÀºµÐ¹ý -¹éÇеµÀÎÀÌ ³õ°í°£°Í ¸»Àΰ¡? ±×·±µ¥ ÇÑ´ÞÀü¿¡ ¿ì¸® ÇÒ¸ØÀÌ '½ÄÀαÍ'¿¡°Ô Àâ¾Æ¸ÔÇûÁö. -½ÄÀÎ±Í -±×´Â ½£ÀÇ µ¿±¼¿¡ »ê´Ù³×...±×¸¦ Á×À̰í 'Áõ°Å'¸¦ °¡Á®¿À°Ô³ª. -Áõ°Å -±×·¯¸é ³»°¡ ÀºµÐ¹ýºñÀüÀ» ÈÉÃİ£ »ç´ç±Í½ÅÀÇ '¿­¼è'¸¦ ÁÖ°Ú³×. -¿­¼è -½ÇÀº '»ç´ç±Í½Å'ÀÌ ÈÉÃݬÁö.±×·±µ¥ ÇѰ¡Áö ±×´Â ¹ã¿¡¸¸ ¸¸³¯¼ö ÀÖ´Ù³×. Àü¼³ÀÇ Çâ·Î¸¦ ÅëÇØ¼­.. -»ç´ç±Í½Å -'»ç¾ÇÇÑ' ³ðÀÌÁö. ¾Æ¸¶ Áö±ÝÂëÀº ÀºµÐ¹ýÀ» ÀÍÇûÀ»²¬? -»ç¾ÇÇÑ -¶Ç ³ðÀº ¸¹Àº ¾Ç·Éµé°ú Àϰö¸Ó¸® ±«¹°À» '¼öÇÏ'·Î µÎ°í ÀÖ³×. -¼öÇÏ -ÀÌ Áß°£°è´Â Àß »ìÆìº¸¸é ºÒ ¹Ù¶÷ ¶¥ ¹° ÀÌ·± ³×°¡Áö '¿µ¿ª'ÀÌ ÀÖ³×. -¿µ¿ª -±×°÷Àº ¾Æ¸¶ ¶¥ÀÇ ¿µ¿ªÀÌ³× ¾îµðµç ±×¿µ¿ªÀÇ 'ÁÖ¹®'À» ½á¾ß Á¦´ë·Î ¸ÔÈù´Ù´Â°É ±â¾ïÇϰԳª. -ÁÖ¹® -´õ¿í °­·ÂÇÑ ÁÖ¹®À» ¿øÇϴ°¡? ±×·³ Èæ°Ë¼ºÁÖ¸¦ ¸¸³ª·¯ Èæ°Ë¼º¿¡ °¡°Ô³ª »õ·Î¿î ¸ðÇèÀÌ ±â´Ù¸±°ÍÀ̳×. diff --git "a/objmon/talk/\307\330\300\373_\274\261\300\345-99" "b/objmon/talk/\307\330\300\373_\274\261\300\345-99" deleted file mode 100644 index 8fa9bbcb..00000000 --- "a/objmon/talk/\307\330\300\373_\274\261\300\345-99" +++ /dev/null @@ -1,7 +0,0 @@ -º¸¹° -³»°¡ À̼¶ ¾îµò°¡¿¡ ¼û°Ü³õ¾ÒÁö. ³ª»Û '¿ë'³ðµéÀÌ ½À°ÝÇßÀ»¶§ ¾ø¾îÁø°Å °°´Ü ¸»¾ß. -¿ë ACTION Âñ·¯ PLAYER -³×°¡ ¿ëµé°ú ½Î¿ü´Ü ¼Ò¹®Àº µé¾úÁö. ±Ùµ¥ º¸¹° 'Áöµµ' º¸Áö ¸øÇß³ª? -Áöµµ ATTACK -ÀÌ·± µµµÏ³ð!!! ´çÀå ³» Áöµµ¸¦ ³»³ö¶ó!!! - diff --git "a/objmon/talk/\307\340\300\316-44" "b/objmon/talk/\307\340\300\316-44" deleted file mode 100644 index 1e54f5a4..00000000 --- "a/objmon/talk/\307\340\300\316-44" +++ /dev/null @@ -1,2 +0,0 @@ -¾È³ç -´ç½Å ¾Ë¾Æ¿ä..? ¾È°³±Í±Ý¼ÓÁý¿¡ °­µµ°¡ µé¾ú´Ù±º¿ä. Æ÷µµÃ»ÀÇ Æ÷µµ´ëÀåÀÌ Á÷Á¢ ޹®¼ö»ç¸¦ ¹úÀ̰í ÀÖ´ë¿ä. diff --git "a/objmon/talk/\307\340\300\316-48" "b/objmon/talk/\307\340\300\316-48" deleted file mode 100644 index 8eae46f7..00000000 --- "a/objmon/talk/\307\340\300\316-48" +++ /dev/null @@ -1,4 +0,0 @@ -¾È³ç -¿äÁò µîž¿¡¼­ ÀÌ»óÇÑ [¼Ò¹®]ÀÌ µé¸®´øµ¥¿ä.. Ȥ½Ã ¾Æ¼¼¿ä? -¼Ò¹® -Æ÷Á¹µéÀÌ µîž¾Õ ÀÔ±¸¸¦ ÁöŰ°í ±× ¾ÈÀ¸·Î ¾Æ¹«µµ ¸øµé¾î °¡µµ·Ï ÇÏ´õ±º¿ä. °ü°¡¿¡¼­ ÀüºÎ ½¬½¬Çϰí ÀÖÁö¸¸ µé¸®´Â ¼Ò¹®¿¡ ÀÇÇÏ¸é ¾È°³µµ½ÃÀÇ »ý¸íÀ̶ó°í ÇÒ ¼ö ÀÖ´Â µîžÀ» ´©±º°¡ Àå¾ÇÇØ¼­ Æ÷µµÃ»¿¡¼­ °ñ¸Ó¸®¸¦ ¾Î°í ÀÖ´Â ¸ð¾çÀÌ¿¹¿ä. ¼³¸¶Çϰí Àü¿¡ ³»°¡ Á÷Á¢ °ü°¡¿¡ Á÷Á¢ ã¾Æ°¡ ¹°¾î º¸¾ÒÁö¸¸ ±Ø±¸ ºÎÀÎÇÏ´øµ¥, ¾Æ¹«·¡µµ ³¦»õ°¡ ÁÁÁö ¾Ê¾Æ¿ä. Àü¿¡ ¾ø´ø Çè»ó±ÄÀº ÀÚµéÀÌ Á¡Á¡ ´Ã¾î°¡°í.. Å«ÀÏÀÌ¿¹¿ä.. diff --git "a/objmon/talk/\307\366\260\250-81" "b/objmon/talk/\307\366\260\250-81" deleted file mode 100644 index 9888e542..00000000 --- "a/objmon/talk/\307\366\260\250-81" +++ /dev/null @@ -1,35 +0,0 @@ -¾È³ç -À½.. ÀÚ³×´Â ´©±¸Àΰ¡? ´©°¡ º¸³»¼­ ¿ÔÁö? [Æ÷µµ´ëÀå] -Æ÷µµ´ëÀå -Æ÷µµ´ëÀåÀÌ..? ±×°¡ ¹«½¼ÀÏ·Î.. (¹«¾ù¶§¹®¿¡ ¿Ô´ÂÁö ¸»ÇϽÿä) -µîž»ç°Ç -¾Æ´Ï.. ±×°É ÀÚ³×°¡ ¾î¶»°Ô ¾Ë¾ÒÁö? Æ÷µµ´ëÀåÀÌ ¸»ÇÏ´ø°¡? [±×·¸½À´Ï´Ù] -±×·¸½À´Ï´Ù -À½.. ±×°¡ Àڳ׿¡°Ô ¸»ÇÑ°É º¸´Ï Àڳ׿¡°Ô ±×ÀÏÀ» ÀÇ·ÚÇÑ ¸ð¾çÀε¥... ÀÚ³×°¡ ±×ÀÏÀ» ÇØ°á ÇÒ¼ö ÀÖÀ»Áö ¸ð¸£°Ú±º.. ¾î¶´ø ÀÚ³×°¡ À̰÷±îÁö ¿ÔÀ¸´Ï ¾î¶»°Ô µÈ°ÇÁö ¸»ÇØ ÁÖ°Ú³×. »ç½Ç ¸çÄ¥Àü¿¡ ¾È°³µµ½ÃÀÇ »ý¸íÀ̶ó°í ÇÒ ¼ö ÀÖ´Â µîžÀÌ ¾îµÒÀÇ Á¤·ÉÀ̶ó´Â ¾Ç¸¶¿¡°Ô »©¾Ñ±â°í ¸»¾Ò³×. ±×·¡¼­ Æ÷µµÃ»ÀÇ °í¼öµéÀ» ±×°÷À¸·Î º¸³ÂÁö¸¸ ¸ðµÎ ½ÇÆÐÇÏ°í ¸»¾ÒÁö. Á¤¸» ¾î ¶»ÇØ ÇØ¾ßÇÒÁö ¸ð¸£°Ú¾î...[°ÆÁ¤¸¶¼¼¿ä] -°ÆÁ¤¸¶¼¼¿ä -°ÆÁ¤¸»¶ó°í..? ÇãÇã.. ±× µîžÀÌ ¾øÀ¸¸é ÀÌ µµ½Ã´Â Á×À½ÀÇ µµ½Ã·Î º¯ÇØ ¹ö¸±°í ¸»°Çµ¥ ³»°¡ °ÆÁ¤ ¾ÈÇÒ¼ö ÀÖ³ª? ¾È±×·¡? [Á¦°¡] -Á¦°¡ -ÀÚ³×°¡ ÇØ°áÇϰڴٱ¸.. À½.. Áö±Ý Æ÷µµÃ»ÀÇ °í¼öµéÀº ¸ðµÎ Á×¾úÀ¸´Ï.. ÁöǪ¶ó±â¶óµµ Àâ°í ½ÍÀº ½ÉÁ¤À̶ó°í.. ÁÁ³×.. Àڳ׿¡°Ô ±×ÀÏÀ» ¸Ã±â°Ú³×.. ÀÚ³×°¡ ¾îµÒÀÇ Á¤·ÉÀ» ¹°¸®Ä¡°í ±×ÀÇ »ý¸íÀ̶ó°í ÇÒ ¼ö ÀÖ´Â Á¤·É¼®À» °¡Á® ¿Â´Ù¸é ±×´ë¿¡°Ô ÈÄÇÑ »óÀ» ³»¸®°Ú³×.. ¾î¶²°¡ ÇØº¼ÅÙ°¡? [¿¹] -¿¹ -ÁÁ³×.. ÇÏÇÏ~~ ±×´ë¸¸ ¹Ï°Ú³×.. ±×Àü¿¡ ´Ù¸¥ ºÎŹÀÌ ÀÖ³ª. ³» ¾î¶²°Å¶óµµ µé¾î ÁÖ°Ú³×.. [¿ëÀÇÀÚ¸¦] -¿ëÀÇÀÚ¸¦ -À½? ¿©ÀÇÁÖ µµ³­»ç°ÇÀÇ ¿ëÀÇÀÚ ¸»Àΰ¡? Èì... ÁÁ³×.. ¹Ù±ù¿¡ ÀÖ´Â Æ÷Á¹¿¡°Ô ³»°¡ '¸éȸÇã°¡'Çß´Ù°í ¸»ÇÏ°Ô ±×·¯¸é ±×°¡ °¨¿ÁÀÇ ¾Õ¿¡ µ¥·Á´Ù Áٰɼ¼.. [±×·³] -±×·³ -±×·¡.. Àß ºÎŹÇϳ×.. ºÎµð ¸öÁ¶½ÉÇϰÔ. -»ç»ý½ÊÀ̰ü¹® -À½? ±×°÷Àº ¿Ö ¹°¾î º¸³ª? [µé¾î°¥·Á°í] -µé¾î°¥·Á°í -¾Æ´Ï? ±×·± À§ÇèÇÑ °÷¿¡ ¿Ö µé¾î °¥·Á°í Çϳª? ³ª´Â ÀÚ³×°¡ ±×·±°÷¿¡ µé¾î°¡´Â °ÍÀ» ¸·°í ½Í³×. ±×°÷Àº ÇÑ»ç¶÷¸¸ Àç¿ÜÇÏ°í ¾Æ¹«µµ »ì¾Æµ¹¾Æ¿ÀÁö ¸øÇß´Ù³×... (³»°¡ ¾Ë±â·Î´Â?) ±×·¸°Ô µé¾î°¡°í ½Í³ª? [³×] -³× -ÁÁ³×.. ±×·¯¸é ³ªÀÇ ºÎŹÀ» µé¾î ÁÖ°Ú³ª? ±Í±Ý¼ÓÁý¿¡¼­ ¿©ÀÇÁÖ¸¦ µµ³­´çÇߴٴµ¥ ±× ÀÏÀ» ÇØ°áÇØ ÁÖ°Ô³ª. [µ¿ÀÇ][À̹ÌÇØ°á] -µ¿ÀÇ -ÁÁ³×... ±×·±µ¥.. Áö±Ý ±× »ç°Ç¿¡ ´ëÇÑ ¾Æ¹«·± ´Ü¼­°¡ ¾ø´Ù³×.. ÀÚ³×°¡ »ç¶÷µé°ú ´ëÈ­¸¦ Çϸ鼭 ã¾Æ º¸°Ô ÀÏÀ» ÇØ°áÇÏ°í ³ª¼­ ³ª¿¡°Ô ´Ù½Ã ¿À°Ô ±×·¯¸é ³»°¡ »ç»ý ½ÊÀ̰ü¹®ÀÇ ¾ÈÀ¸·Î µé¿©º¸³» ÁÖ°Ú³×. -À̹ÌÇØ°á -ÀÌ¹Ì ÀÚ³×°¡ ÇØ°á Çß´Ù±¸? ±×°É ¾î¶»°Ô ¹ÏÁö? ´©°¡ ±×°É Áõ¸íÇϳª..? (Áõ¸íÇÒ »ç¶÷ÀÇ À̸§À» ´ë½Ã¿ä.) -¹ÝÇϵµÀÎ -¾Æ´Ï? ¹ÝÇϵµÀÎÀÌ..? ±×ºÐÀÌ ÀÌ»ç°Ç°ú °ü°è°¡ ÀÖ¾ú³ª? À½... ±×ºÐÀº ¿À·¡Àü¿¡ Çà¹æºÒ¸íÀÌ µÇ¾ú¾ú´Âµ¥.. ¾î¶»°Ô.. ±×ºÐÀÌ ¹¹¶ó°í ÇϽôø°¡? (¹ÝÇÏ´ë»ç°¡ ÇѸ»À» ÀûÀ¸½Ã¿ä.) -»ê»ê¹°¹° -À½... ¸Â¾Æ. ±× ¸»Àº ±× ºÐ¸¸ÀÌ ¾²½ÃÁö.. ÀÚ³×°¡ ±× ÀÏÀ» ÇØ°áÇѰÍÀÌ »ç½ÇÀ̱¸¸¸... ÁÁ³×. Àڳ׸¦ »ç»ý½ÊÀ̰ü¹®ÀÇ ¾ÈÀ¸·Î µé¿© º¸³» ÁÖ°Ú³×. °ü¹®À» ÁöŰ´Â ´ÄÀº º¸ÃÊ¿¡°Ô 'ÃâÀÔÇã°¡'¶ó°í ¸»ÇϰԳª ±×·¯¸é ¿­¼è¸¦ Áٰɼ¼.. - - - diff --git "a/objmon/talk/\310\253\261\315-1" "b/objmon/talk/\310\253\261\315-1" deleted file mode 100644 index f96c65b6..00000000 --- "a/objmon/talk/\310\253\261\315-1" +++ /dev/null @@ -1,3 +0,0 @@ -ÀÓ¹« -¸ÕÀú ³×´É·ÂÀ» Æò°¡ÇϰڴÙ...°¡¼­ Àº½ÊÀÚ°¡¸¦ ÈÉÃĿͼ­ ¹ÙÃĶó. - diff --git "a/objmon/talk/\310\255\271\253\260\341-80" "b/objmon/talk/\310\255\271\253\260\341-80" deleted file mode 100644 index 7cf4a175..00000000 --- "a/objmon/talk/\310\255\271\253\260\341-80" +++ /dev/null @@ -1,30 +0,0 @@ -¾È³ç -À½.. ÀÚ³× À̰÷¿¡ ¾î¶»°Ô µé¾î¿ÔÁö? ´ë´ÜÇϱº.. ³ª ¸»°íµµ À̰÷¿¡ µé¾î¿Ã¼ö ÀÖ´Ù´Ï ÀÚ³×µµ °í¼öÀÎ ¸ð¾çÀ̱º. [À̰÷Àº] -À̰÷Àº -ÇÏÇÏ~~ °©Àڱ⠰ü¹®ÀÌ ²ú¾îÁ®¼­ ¾î¶»°Ô µÈ°ÇÁö ³î·¨³ª º¸±º.. ³ªµµ Áö±Ý Á¤½ÅÀÌ Çϳªµµ ¾ø¾î. [¹«½¼ÀÏ?] -¹«½¼ÀÏ -Àü¿¡´Â ½ÊÀ̰ü¹®¾ÈÀ» ÁöŰ´Â ±«¹°µéÀÌ ³ª¿¡°Ô ¿Â¼øÇߴµ¥ 4°ü¹®À» Áö³ª·Á´Â ¼ø°£ °©ÀÚ±â À̳༮µéÀÌ Æ÷¾ÇÇØÁö¸é¼­ ³ª¸¦ °ø°ÝÇÏ´õ±º.. ¾Ë ¼ö ¾ø´Â ÀÏÀ̾ß.. µµ´ëü ¾î¶»°Ô µÈ°ÇÁö ¸ð¸£°Ú¾î. À̰÷ÀÌ ÀÌ·¸°Ô µÈ°Ç ±× ³à¼®µéÀ» »ó´ëÇÏ´À¶ó°í.. ´õ±º´Ù³ª ³à¼®µé ÀÌ ÈûÀÌ Àüº¸´Ù ´õ¿í °­ÇØÁ® ½Î¿òÀÌ ¹ú¾îÁ³À»¶§ ±×»çÀÌ¿¡ ÆøÇ³ÀÌ ÀϾ À̰÷À» ¿ÏÀüÈ÷ ÆóÇã·Î ¸¸µé¾î ¹ö·È³×. ¾Æ¹«·¡µµ À̰÷¿¡ ½É»óÄ¡ ¾Ê´Â ÀÏÀÌ ¹ú¾îÁö°í ÀÖ´Â°Í °°¾Æ. Á¨Àå °©Àڱ⠱â·ç¿¡ ÀÖ´Â [ÃÊÇâ]ÀÌ º¸°í ½Í¾îÁö´Â±º.. ±×·±µ¥ ÀÚ³×´Â ÀÌ·± Çè¾ÇÇÑ °÷¿¡ ¹«½¼ ÀÏ·Î ¿Ô³ª? (Áú¹®ÀÌ ÀÖÀ¸¸é Áú¹®ÇϽÿä.) -ÃÊÇâ -ÀÀ? ÀÚ³×µµ ÃÊÇâÀ» ¾Æ³ª? ÀÚ³×°¡ ¾î¶»°Ô ±×³à¸¦ ¾ËÁö? [ÃÊÇâºÎŹ] -ÃÊÇâºÎŹ -ÃÊÇâÀÇ ºÎŹÀ» ¹Þ°í ³ª¸¦ ãÀ¸·¯ ¿Ô´Ù±¸? ÇÏÇÏÇÏ~~ ±×³àµµ ¾îÁö°£È÷ ±ÞÇß´ø ¸ð¾çÀ̱º. ±×³àÀÇ ¼º°ÝÀ¸·Î À¢¸¸ÇÏ¸é ³²¿¡°Ô µµ¿òÀ» ûÇÏÁö ¾Ê´Â ¼º°ÝÀε¥.. ¾î¶´ø ÀÚ³×´Â ÀÌ ÀÏÀ» ºÎŹ ¹Þ¾ÒÀ¸´Ï ³ª¸¦ µ¥¸®°í ¹Ù±ùÀ¸·Î ³ª°¡¾ß °ÚÁö? ÇÏÁö¸¸ ³ª´Â À̰÷¿¡ ÇÒÀÏÀÌ ÀÖ¾î ¹Ù±ùÀ¸·Î ³ª°¥¼ö°¡ ¾ø³×. ±×·³ ÀÌ·¸°Ô ÇÏÁö.. ¿ì¼± ³»°¡ ¾ÈÀüÇÏ´Ù´Â °É ¾Ë·ÁÁÖ±â À§ÇØ Àڳ׿¡°Ô ½Å¹°À» ÁÖÁö. ±×°É ±×³à¿¡°Ô ÀüÇØÁÖ°í °ð µ¹¾Æ °¡°Ú´Ù°í ÀüÇØÁÖ°Ô³ª. [¹«½¼] -¹«½¼ give -Àü¿¡ ¿ì¸®°¡ ÁÖ°í ¹Þ¾Ò´ø ¿ÁÆÐ¾ß.. ÀÌ°É ±×³à¿¡°Ô ÀüÇØÁà.. ºÎŹÇϳ×.. ±×¸®°í ³ªµµ Àڳ׿¡°Ô ¼±¹°À» Çϳª ÁÖÁö. [¾î¶²¼±¹°?] -¾î¶²¼±¹° give -³»°¡ °¡Áö°í ÀÖ´ø ¸¸³âÇÑöÀϽê. ±×³É º¸Åë ö·Î º¸À̰ÚÁö¸¸ ÀÌ°É ¹Ù±ùÀ¸·Î °¡Áö°í ³ª°¡ ´ëÀå°£À¸·Î °¡¸é ÁÁÀº ¹«±â·Î ¸¸µé¾î Áٰɼ¼... -¿©ÀÇÁÖ -ÀÚ³×°¡ ¿©ÀÇÁÖ¿¡ ´ëÇØ ¾î¶»°Ô ¾Ë°í ÀÖÁö? ¾Æ´Ï ¸» ¾ÈÇØµµ ¾Ë°Ú³×. º¸³ª¸¶³ª ±Í±Ý¼ÓÁý ÁÖÀÎÀÌ ºÎŹÇß°ÚÁö.. ¾È±×·±°¡? Á¨Àå.. ±× ÀÛÀÚ´Â µ·¿¡ ´«ÀÌ ¸Ö¾î ¿å½ÉÀ» ³Ê¹« ºÎ¸°´Ù ¸»¾¸À̾ß.. ÀÚ³×´Â ¿©ÀÇÁÖ°¡ ¾îµð¿¡ ÀÖ´ÂÁö ¹¯°í ½ÍÀº°ÅÁö? [¸Â¾Æ¿ä] -¸Â¾Æ¿ä -À½.. ÁÁ¾Æ Àڳ׿¡°Ô ÀÏ·¯ÁÖÁö. ÇÏÁö¸¸ ÀÚ³×°¡ ±×°É ²¨³»¿Ã ¼ö ÀÖÀ»Áö ¸ð¸£°Ú±º. ¾Æ±î ÀÚ³× À̰÷À¸·Î ¿À´ÂµµÁß¿¡ ÆäÇã°¡ µÈ ±âµÕÁö´ëÀÇ ¼­ÂÊ ¸Ö¸® ºÒ±âµÕ °°Àº°É ºÃ³ª? [¿¹] -¿¹ -ÁÁ¾Æ.. ¿©ÀÇÁÖ´Â ±× ºÒ±âµÕ¾È¿¡ ÀÖ´Â È­·æÀÌ °¡Áö°í ÀÖ³×. [È­·æ] -¾Æ´Ï¿À -¸ø ºÃ´Ù±¸? ±×°Ç »ó°üÀÌ ¾ø³×.. ¿©ÀÇÁÖ´Â ±× ºÒ±âµÕ¾È¿¡ ÀÖ´Â È­·æÀÌ °¡Áö°í ÀÖ³×. [È­·æ?] -È­·æ -±× È­·æÀº Àϳ⿡ Çѹø¾¿ ¿©ÀÇÁÖ¸¦ ¸¸µé¾î ³»´Âµ¥ ³ª´Â ±×¶§¸¶´Ù ½ÊÀ̰ü¹® ¾È¿¡ µé¾î¿Í È­·æ¿¡°Ô¼­ ¿©ÀÇÁÖ¸¦ ¾ò¾î °¬Áö.. ÇÏÁö¸¸ Áö±ÝÀº ¾î¶³Áö... [¿Ö?] -¿Ö? -¾Æ±îµµ ¸» ÇßÁö¸¸ À̰÷¾È¿¡ ÀÖ¾ú´ø ³à¼®µéÀÌ ¿ÏÀüÈ÷ º¯ÇØ ¹ö·È¾î.. È­·æµµ ±× ¿µÇâÀÌ ¹ÌÄ¡Áö ¾ÊÀ¸¶ó´Â º¸ÀåÀÌ ¾ø°Åµç.. ¸¸¾à ±×³à¼®µµ ´Ù¸¥ ³à¼®µéó·³ º¯ÇØ ¹ö·È´Ù¸é ³ªµµ È­·æ¿¡°Ô¼­ ¿©ÀÇÁÖ¸¦ »¯¾î ¿Â´Ù´Â°Ç ºÒ°¡´ÉÇØ.. ´õ±º´Ù³ª º¯ÇÏÁö ¾Ê¾Ò´õ¶óµµ ±× È­·æÀÌ È­°¡ ³ª¸é ¼²ºÒ¸® Á¢±ÙÇÏÁö ¸øÇϳ×. ¾Æ±î Áö³ª¿À¸é¼­ º¸ÀÌ´Â ºÒ±âµÕÀÌ È­·æÀÌ È­°¡ ³µÀ»¶§ ³»»Õ´Â Áö¿ÁºÒÀε¥, ¸¸¾à ±×³à¼®ÀÌ ´Ù¸¥ ³ðµéó·³ º¯Çعö¸°µ¥´Ù°¡ È­±îÁö ³µ´Ù¸é...Â÷¶ó¸® Æ÷±â Çϴ°ÍÀÌ ³ªÀ»°É¼¼. ±×Àü¿¡ Áö·æ »ê¸ÆÀÇ ÁöÇϵ¿±¼µµ Áö³¯¼ö À»Áö Àǹ®À̳×. [ÁöÇϵ¿±¼?] -ÁöÇϵ¿±¼? -±× ÁöÇϵ¿±¼ÀÌ ¹Ù·Î »ç»ý½ÊÀ̰ü¹®ÀÇ ¸¶Áö¸· °ü¹®ÀÎ Á×À½ÀÇ °ü¹®ÀÌÁö.. ±×°÷¿¡´Â ¿Â°® ±«¹°µé°ú ÇÔÁ¤µéÀÌ µµ»ç¸®°í ÀÖÁö.. ±×·¡µµ °¡°Ú´Ù¸é ºÎµð Á¶½ÉÇϰÔ... Çà¿îÀ» ºô¾îÁÖÁö.. -¸¸³âÇÑö -±× öµéÀº Áö·æ»ê¸ÆÀÇ ÁöÇϵ¿±¼À» µ¹¾Æ ´Ù´Ï´Ùº¸¸é ãÀ»¼ö ÀÖÀ»°Å³×.. ÇÏÁö¸¸ ¿©·¯°³ µé°í °¥¼ö´Â ¾øÀ»°Å³×.. º¸Åë öÀ϶§´Â ¸ð¸£°ÚÁö¸¸ ¸¸³âÇÑö·Î º¯È­ÇÏ°í ³ª¸é °©Àڱ⠱²ÀåÈ÷ ¹«°Å¿öÁöÁö ±×·¡¼­ ±â¿îÀÌ ¼¾ »ç¶÷µµ µÎ°³ ÀÌ»óÀ» µé ¼ö °¡ ¾øÁö. diff --git "a/objmon/talk/\310\346\260\313\274\272\301\326-10" "b/objmon/talk/\310\346\260\313\274\272\301\326-10" deleted file mode 100644 index a942bfeb..00000000 --- "a/objmon/talk/\310\346\260\313\274\272\301\326-10" +++ /dev/null @@ -1,10 +0,0 @@ -¿ë»ç -Èæ°Ë¼ºÀÇ 'º¸¹°'ÀÎ ÀÌ 'Èæ°Ë'À¸·Î ¸¶¿ÕÀ» ¹«Âñ·¯ ÁÖ°Ô³ª. -Èæ°Ë GIVE 346 -Èæ°ËÀº ¿À·¡ ¾µ¼ö ¾ø´Ù´Â°É ¹Ýµå½Ã ¸í½ÉÇϰÔ. -º¸¹° -Èæ°Ë¼º¿¡´Â Èæ°Ë ¸»°íµµ ¼û°ÜÁø º¸¹°ÀÌ ¸¹°í, ÁÖÀDZí°Ô »ìÆìº¸¸é 'º¸¹°Ã¢°í'µµ ¸î±ºµ¥ ÀÖÀ¸´Ï ã¾Æº¸°Ô³ª. -º¸¹°Ã¢°í -À̰÷ ÁöÇϰ¨¿Á¿¡´Â ¼¼°÷ÀÇ º¸¹°Ã¢°í°¡ ÀÖ°í, º¸¹°Ã¢°í¿¡´Â °¢°¢ Çϳª¾¿ÀÇ '±«¹°'ÀÌ Áö۰í ÀÖ³×. -±«¹° -±× ±«¹°µé Áß¿¡´Â ¿ëµéÀÇ °è°î¿¡¼­ ¿Â õ·æµµ Àִµ¥, ±×¿Í À̾߱⸦ ÇØº¸¸é ¹º°¡ ÇÒÀÏÀ» ÁÙÁöµµ ¸ð¸£³×. diff --git "a/objmon/talk/\310\346\260\313\274\272\301\326\300\307_\272\316\300\316-10" "b/objmon/talk/\310\346\260\313\274\272\301\326\300\307_\272\316\300\316-10" deleted file mode 100644 index 7e435f0d..00000000 --- "a/objmon/talk/\310\346\260\313\274\272\301\326\300\307_\272\316\300\316-10" +++ /dev/null @@ -1,10 +0,0 @@ -¸¶¿Õ -¾ó¸¶Àü¿¡ °©Àڱ⠳ªÅ¸³ª¼­ ÀÌ ÆòÈ­·Ó´ø Èæ°Ë¼ºÀ» Á¡·ÉÇØ¹ö·È¾î¿ä. -¼ºÁÖ -¼ºÁÖ´ÔÀº ¸¶¿Õ¿¡ ÀÇÇØ À̰÷ÀÇ 'ÁöÇϰ¨¿Á'¿¡ °¤Çô ÀÖ´ä´Ï´Ù. -ÁöÇϰ¨¿Á -±×°÷Àº 4°³ÀÇ '¿­¼è'¿¡ ÀÇÇØ ±»°Ô Àá°ÜÁ® ÀÖ¾î¿ä. -¿­¼è -4°³ÀÇ °¨¿Á¿­¼è´Â ³×¸íÀÇ 'µþ'µéÀÌ ÇѰ³¾¿ °¡Áö°í ÀÖ´ä´Ï´Ù. -µþ -Á¦ µþµéÀº Èæ°Ë¼º »ç¹æÀÇ Å¾¿¡ °¤Çô¼­ ´©°¡ ±¸ÇØÁֱ⸦ ±â´Ù¸®°í ÀÖ¾î¿ä. Á¦ µþµé¿¡°Ô °¡¼­ '¿ë»ç'°¡ ¿Ô´Ù°í À̾߱â Çϼ¼¿ä. diff --git "a/objmon/\261\344\261\336_\270\355\267\311\274\255" "b/objmon/\261\344\261\336_\270\355\267\311\274\255" deleted file mode 100644 index 81f5cc91..00000000 --- "a/objmon/\261\344\261\336_\270\355\267\311\274\255" +++ /dev/null @@ -1,14 +0,0 @@ - - -¸í·É ±ä±Þ ÇÏ´Þ... - -¼ö½ÅÀÚ: ºñ¹Ð¹®¼­ Ãë±Þ Àΰ¡ÀÚ. - -³»¿ë: ¸çÄ¥ÀüÀÇ ÀûµéÀÇ ½À°ÝÀ¸·Î Áß¿äÇÑ ¹®¼­ Çϳª¸¦ - Å»Ãë´çÇß´Ù. - °¡´ÉÇÑ ¸ðµç ¹æ¹ýÀ» µ¿¿øÇÏ¿© ¹ß°ßÇ϶ó. - Á¤º¸Åë¿¡ ÀÇÇÏ¸é º¯½Å±Í°¡ â°í¿¡ ¼û°Ü³õ¾Ò´Ù ÇÑ´Ù. - »¡¸® ¼ö»öÇÏ¿© ¹ß°ßÇ϶ó. - -¼Û½Å: º¸¾È´ã´ç ¼­±â°ü ¿Àµò. - diff --git "a/objmon/\263\260\300\272_\271\256\274\255" "b/objmon/\263\260\300\272_\271\256\274\255" deleted file mode 100644 index 3794f348..00000000 --- "a/objmon/\263\260\300\272_\271\256\274\255" +++ /dev/null @@ -1,11 +0,0 @@ ------------------------------ - -»õ·Î¿î ¹°°ÇÀ» ....¹ß°ßÇß... -¾îµÎ¿î Áö¿ªÀ» ŽÇèÇÏ´øÁß.... -Æó°¡¿¡¼­...... ºû³ª´Â.... -...ÁöºØ...Ä®ÀâÀÌ.......... -Á×À½ÀÌ...... -.......¹ß°ßÇÏ±æ ¹Ù¶õ´Ù... -(´ëºÎºÐ Áö¿öÁ®¼­ º¸ÀÌÁö ¾ÊÀ½) - ------------------------------ diff --git "a/objmon/\265\277\310\255\303\245" "b/objmon/\265\277\310\255\303\245" deleted file mode 100644 index 8e88c36c..00000000 --- "a/objmon/\265\277\310\255\303\245" +++ /dev/null @@ -1,9 +0,0 @@ -¿¾³¯ ¿¾Àû¿¡ ¼±³à¿Í ³ª¹«²ÛÀÌ »ì¾Ò´ä´Ï´Ù..... -..... -´ë°­ÀÇ ÀÌ·¯ÇÑ À̾߱Ⱑ ÀüÇØÁø´Ù. -±×·¯³ª À̵éÀÌ ½ÇÁ¸ Àι°À̶õ ¼³ÀÌ ÀüÇØÁø´Ù. -¿¬±¸Çغ» ¹Ù·Î´Â ¿¬¸ø¿¡¼­ À̵éÀ» º¸¾Ò´Ù´Â »ç¶÷µéÀÌ ÀÖ´Ù. -¸¸ÀÏ ³ª¹«²ÛÀ» ¸¸³ª¸é '¼±³à'¿¡ ´ëÇØ ¹°¾îº¸¶ó. -Áß¿äÇÑ Á¤º¸¸¦ Á¦°øÇÒÁöµµ ¸ð¸¥´Ù. - -......À̸§¸ð¸¦ ÇÐÀÚ°¡ ¾´±Û. diff --git "a/objmon/\272\260\303\244_\301\366\265\265" "b/objmon/\272\260\303\244_\301\366\265\265" deleted file mode 100644 index 16682d3d..00000000 --- "a/objmon/\272\260\303\244_\301\366\265\265" +++ /dev/null @@ -1,6 +0,0 @@ - - ¿¬¸ø Áö¿ª - | - º° ä_________|_______ ¿ì¹°Áö¿ª - °Ç ¹° - diff --git "a/objmon/\272\264\271\375\274\255" "b/objmon/\272\264\271\375\274\255" deleted file mode 100644 index 439abcba..00000000 --- "a/objmon/\272\264\271\375\274\255" +++ /dev/null @@ -1,53 +0,0 @@ - - *************************************************** - - °è¼®Ä¡¹«ÀÇ º´¹ý¼­ - - ¸ÕÀú ÀüÀïÀº ½Ö¹æÀÇ ÇÕÀǰ¡ ÀÖ¾î¾ß ÀϾ¼ö ÀÖ´Ù. - ¾çÂʰ£¿¡ ¸ÕÀú ±ÔÄ¢À» ÇÕÀÇÇÑ´Ù. - ´ÙÀ½¿¡ ÀüÀﳪÆÈ·Î ÇÑÂÊ¿¡¼­ ¼±ÀüÆ÷°í¸¦ ÇÏ¸é ´Ù¸¥ÂÊ¿¡¼­ - ÀüÀﳪÆÈ·Î ÀÀ¼ö¸¦ ÇØ¾ßµÈ´Ù. - À߸ø ¼±ÀüÆ÷°í Çϴ°æ¿ì »ó´ë¿¡¼­ ¹Þ¾ÆµéÀ̱â Àü¿¡ - ´Ù½Ã Çѹø ³ªÆÈÀ» ºÒ¾î öȸÇÒ¼ö°¡ ÀÖ´Ù. - ÀÏ´Ü ÀüÀïÀÌ ÀϾ¸é ¿ÕÀ» Á׿©¾ßÁö¸¸ ÀüÀïÀÌ ³¡³¯¼öÀÖ´Ù. - ÀüÀïÀÌ ¹ß¹ßµÇ¸é ¸ðµç »ç¿ëÀÚ°¡ ¼ºÇâ¿¡ °ü°è¾øÀÌ ¿Õ±¹¿¡ - °¡À﵂ ÀÖÀ¸¸é ¼­·Î¸¦ °ø°ÝÇÒ¼ö ÀÖ´Ù. - À̶§ »ó´ë¸¦ Á×ÀÌ¸é »ó´ëÀÇ ·¹º§¿¡ µû¶ó ÀÏÁ¤ÇÑ °æÇèÄ¡¸¦ - »©¾Ñ¾Æ ¿Ã¼ö ÀÖ´Ù. - ¶ÇÇÑ »ó´ë¿Õ±¹ÀÇ ±«¹°µéÀ» ÀâÀ¸¸é ¾à°£ÀÇ »óÀ» ¹Þ´Â´Ù. - ¿ÕÀ» ÀâÀ¸¸é ÀÚ½ÅÀÇ ¸ðµç »ç¿ëÀÚµéÀÌ »óÀ» ¹Þ°Ô µÈ´Ù. - ¹°·Ð ÆÐ¹èÇÑ ÂÊ¿¡´Â ±×¸¸ÇÑ ´ñ°¡°¡ µ¹¾Æ°¡°Ô µÈ´Ù. - ÀÏ´Ü °¡ÀÔÀ» ÇßÀ¸¸é »ó´ë º´»çµéÀº ´ç½ÅÀ» ¾Ë¾Æº¸°í - °ø°ÝÀ» ÇÒ°ÍÀÌ´Ù. Á¶½ÉÇØ¼­ ¿òÁ÷¿©¾ßÇÑ´Ù. - - *************************************************** - ÀÚ°´À̳ª µµµÏÀº ÈǸ¢ÇÑ °ø°ÝÁ¶°¡ µÉ¼ö ÀÖ´Ù. - ±×µéÀº ¼û´Â ±â¼ú·Î ±×¸²ÀÚ»çÀÌ·Î »ç¶óÁú¼ö ÀÖÀ¸¸ç, - Àº½Å¼ú·Î Á¶¿ëÈ÷ À̵¿ÇÒ¼ö ÀÖ´Ù. ¾îµÒ¼Ó¿¡¼­ °©Àڱ⠳ªÅ¸³ª¼­ - ±â½ÀÀ» °¡ÇÏ¸é »ó´çÇÑ ÇÇÇØ¸¦ ÀÔÈú¼ö ÀÖ´Ù. - - À̵éÀº ²÷ÀÓ¾øÀÌ ¹æµéÀ» ¼ö»öÇØ¾ß¸¸ ¹ß°ßÇÒ¼ö ÀÖ´Ù. - - ¿Õ¿·¿¡´Â ¹Ýµå½Ã ¹æ¾îÁ¶ ¸î¸íÀÌ ÀÖ¾î¾ß ÇÏ¸ç ºÒÁ¦ÀÚ°¡ - Æ÷ÇԵǾî ÀÖ¾î¾ß ÇÑ´Ù. ¿ÕÀÌ À§ÇèÇÒ°æ¿ì °è¼Ó Ä¡·á¸¦ - ÇØÁÖ¾î¾ß ÇÑ´Ù. - - ¶ÇÇÑ °°ÀºÆí³¢¸® Ç×»ó ¸î¸î ±×·ìÀ¸·Î ´Ù³à¾ß ÇÇÇØ¸¦ - ÀÔÁö ¾Ê´Â´Ù. - - ¿Õ½ÇÀº ¼ÒȯÀ̳ª °ø°£À̵¿ÀÌ ºÒ°¡´ÉÇϳª ¿Õ½Ç¹ÛÀº °¡´ÉÇÏ´Ù - °í·¹º§ÀÌ Ãĵé¾î°¡¼­ ³ª¸ÓÁö »ç¶÷µéÀ» ¼ÒÈ¯ÇØ ÇÕµ¿À¸·Î - °ø°ÝÇϴ°ÍÀÌ °¡´ÉÇÏ´Ù. ¿ªÀ¸·Î ÇÑ»ç¶÷¾¿ ¼ÒȯÀ» ´çÇØ¼­ - °ø°Ý¹ÞÀ» À§ÇèÀÌ ÀÖÀ¸´Ï ÁÖÀÇÇØ¾ß ÇÑ´Ù. - - ³ª¸ÓÁö Àü·«Àº ½º½º·Î ¿¬±¸Çϱ⠹ٶõ´Ù. - *************************************************** - Âü°í·Î ±¤Àå¿¡¼­ ³ªÀÇ º¸È£¾Æ·¡ ÀÖÀ¸¸é ´©±¸µµ - ½Î¿ï¼ö ¾ø´Ù. Á߸³À» ÁöŰ°í ½Í°Å³ª À§ÇèÇÒ¶§¿¡´Â - ¾ðÁ¦µç ³ª¿¡°Ô ã¾Æ¿À¶ó. - - *************************************************** - Á¦ÀÛÀÚ °ø°í.... - - ÀüÀï ±ÝÁöÀÚ. - ºÒ»ç¿Í ½ÅÀÇ Âü¿© ±ÝÁö.... diff --git "a/objmon/\272\270\271\260\301\366\265\265" "b/objmon/\272\270\271\260\301\366\265\265" deleted file mode 100644 index cc7ceb6b..00000000 --- "a/objmon/\272\270\271\260\301\366\265\265" +++ /dev/null @@ -1,36 +0,0 @@ -¿À·¡µÈ º¸¹°Áöµµ ó·³ º¸ÀÔ´Ï´Ù. - - +---------------------------------------------+ - | [ ========== ] | - | / _____ \ ÇØÀû¸¶À» | - | / | | \ | - | ½ÅÀü | - | " " " " | - | /\ " " " | - | /\/ \ º¸¹° ---> X " " " | - | /\/ \ \/\ " " " | - | / \ \ / \ ¹é»çÀå | - | \|/ \|/ \|/ / ½£ | - +---------------------------------------------+ - -Ç×ÇØÀÏÁö - -****³â *¿ù *ÀÏ - -¹é»çÀå¿¡ º¸¹°À» ¼û°ÜµÎ°í ¿À´Â ±æ¿¡ ½ÅÀüÀÇ ¹®Áö±â¶ó´Â ÀÚ¸¦ Àâ¾Ò´Ù. -±×·±µ¥, ±× ÀÚÀÇ ¸»·Î´Â ½ÅÀü¿¡ ³»°¡ ¼û±ä º¸¹°ÀÇ ¸î½Ê¹è °¡Ä¡°¡ ÀÖ´Â -"ÆÄ¶ó¿ÀÀÇ º¸¹°"ÀÌ ÀÖ´Ù´Â °ÍÀÌ´Ù. -¹®Á¦´Â ¹®Áö±â¶ó´Â ³ðÀÌ ½ÅÀü¿¡ µé¾î°¡´Â ¹æ¹ýÀ» °¡¸£ÃÄÁÖÁö ¾Ê´Â°ÍÀÌ´Ù. -±×·¡¼­, ±×ÀÚ¸¦ ÇØÀû¼±ÀÇ ¹«±â°í¿¡ °¡µÖµÎ°í, ºÎÇϵéÀ» ½ÅÀüÀ¸·Î º¸³Â´Ù. -±×°÷¿¡ ¾öû³­ ¼öÈ£½ÅµéÀÌ Áö۰í ÀÖ´Ù°í ÇÏÁö¸¸, ¶Ù¾î³­ ³» ºÎÇϵéÀº -º¸¹°À» ã¾Æ¼­ µ¹¾Æ¿Ã °ÍÀÌ´Ù. ¿ìÇÏÇÏÇÏ. - -****³â *¿ù *ÀÏ - -ºô¾î¸ÔÀ».. -ÇØÀû¼±ÀÇ ¿­¼è¸¦ ÀÒ¾î¹ö¸®´Ù´Ï.. -¹Ù´Ùµ¿±¼À» Áö³ª¿À´Ù°¡ ÀÒ¾î¹ö¸°°Í °°Àºµ¥, ¾îµð¼­ ÀÒ¾î¹ö·È´ÂÁö¸¦ -¸ð¸£°Ú´Ù. ±×¶§ ¿·¿¡ ½Å±â·ç ¿äÁ¤ÀÌ ÀÖ¾ú´Âµ¥.. -¾Æ¸¶µµ ½Å±â·ç ¿äÁ¤ÀÌ °¡Áö°í °£ ¸ð¾çÀÌ´Ù. -³»ÀÏÂë ¿äÁ¤ÀÇ Áý¿¡ °¡¼­ »¯¾Æ ¿Í¾ß°Ú´Ù. - diff --git "a/objmon/\301\276\301\267_\274\322\260\263\274\255" "b/objmon/\301\276\301\267_\274\322\260\263\274\255" deleted file mode 100644 index 3b67e924..00000000 --- "a/objmon/\301\276\301\267_\274\322\260\263\274\255" +++ /dev/null @@ -1,217 +0,0 @@ - -************************************************************* - - Á¾Á·°ú Á÷¾÷ ¼³¸í¼­ - -************************************************************* - - -ÀûÀýÇÑ Á¾Á·°ú Á÷¾÷ÀÇ ¼±ÅÃÀÌ¾ß ¸»·Î Æí¾ÈÇÑ ¸ðÇè±æÀÇ Áö¸§±æÀÔ´Ï´Ù -°¢ Ư¼ºÄ¡¿Í °íÀ¯ÀÇ ±â¼úÀ» °í·ÁÇØ¼­ ¼±ÅÃÇÏ¼Å¾ß ÇÕ´Ï´Ù - -Á÷¾÷µé: - -ÀÚ°´ - ÀÚ°´Àº ¾îµÒ¼Ó¿¡¼­ ±×ÀÇ ÀûÀ» ±â½ÀÇÒ¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ½À´Ï´Ù -ºü¸£°í À§ÇùÀûÀÎ °ø°ÝÀ¸·Î ÀûÀ» °ø°ÝÇϸç, ¾îµÒ¼Ó¿¡ ¾î¶°ÇÑ »ç¶÷º¸´Ù -Àß ¼ûÀ»¼ö ÀÖ½À´Ï´Ù - ±â¼úµé: - »ì±âÃæÀü - Àº½Å¼ú - ±â½À - Ư¼ºÄ¡: - ¹Îø - Èû - Ãßõ Á¾Á·: - Åä½ÅÁ· - Àΰ£Á· - ³­ÀåÀÌÁ· - -±Ç¹ý°¡ - ÁÖ¸Ô°ú ¹ßÀ» »ç¿ëÇÏ¿© ÀûÀ» °­Å¸ÇÒ¼ö ÀÖ´Â ´É·ÂÀ» Áö³æ½À´Ï´Ù -ºü¸¥ ±Ç¹ý°ú ¿òÁ÷ÀÓÀ¸·Î ÀûÀ» È¥¶õ½ÃÄÑ °ø°ÝÀ» Â÷´ÜÇÒ¼ö ÀÖ½À´Ï´Ù -¹«±âµµ ¾øÀÌ ½Î¿ï¼ö ÀÖ´Â ³î¶ó¿î ´É·ÂÀ» Áö³æ½À´Ï´Ù - ±â¼úµé: - ¸Í°ø - ±³¶õ - Â÷±â - Ư¼ºÄ¡: - Èû - ¸ËÁý - ¹Îø - Ãßõ Á¾Á·: - °ÅÀÎÁ· - Àΰ£Á· - ³­ÀåÀÌÁ· - µµ±úºñÁ· -ºÒÁ¦ÀÚ - ºÒÁ¦ÀÚ´Â ±íÀº ½Å¾Ó½ÉÀ» Áö´Ñ ³î¶ó¿î Ä¡·á´É·ÂÀ» Áö´Ï°í ÀÖ½À´Ï´Ù -¶ÇÇÑ ¾îµÒ¿¡¼­ »ì¾Æ³­ ¾ÇÇÑ ¿µµéÀ» ½Å½ÉÀ¸·Î ¹°¸®Ä¥¼ö ÀÖ½À´Ï´Ù. -¸¶·Â¿¡ À־ µµ¼ú»çµé°ú ¾î±ú¸¦ °Ü·ç´Â ´É·ÂÀ» Áö´Ï°í ÀÖ½À´Ï´Ù - ±â¼úµé: - ¹æÈ¥¼ú - ½Å¿ø¹ý - Âü¼± - Ư¼ºÄ¡: - ½Å¾Ó½É - Ãßõ Á¾Á·: - Àΰ£Á· - ¿ä±«Á· - ¶¥±Í½ÅÁ· - -°Ë»ç - °Ë»ç´Â ¸ðµç ¹«±â¿Í ¹æ¾î±¸¿¡ ´É¼ö´É¶õÇÑ ½Î¿ò²ÛÀÔ´Ï´Ù -°­ÇÑ Èû°ú ±â¼ú·Î ÀüÅõ¿¡¼­ ¶Ù¾î³­ ´É·ÂÀ» º¸ÀÔ´Ï´Ù/ - ±â¼úµé: - ¸Í°ø - ±³¶õ - ±â°øÁý°á - Ư¼ºÄ¡: - Èû - ¹Îø - Ãßõ Á¾Á·: - Àΰ£Á· - °ÅÀÎÁ· - ³­ÀåÀÌÁ· - µµ±úºñÁ· - -µµ¼ú»ç - °­ÇÑ ÁÖ¼ú°ú ¸¶·ÂÀÇ ¼ÒÀ¯ÀÚµé·Î Àû¿¡°Ô °­·ÂÇÑ ÁÖ¼úÀ» ´øÁú¼ö -ÀÖ½À´Ï´Ù. ¶ÇÇÑ ³·Àº µî±ÞÀÇ ¸ðÇè°¡µéÀ» °¡¸£Ä¥¼ö ÀÖÀ¸¸ç, ¹°°Ç¿¡ -ÁÖ¼úÀ» °É¼öµµ ÀÖ½À´Ï´Ù - ±â¼úµé: - Àü¼ö - ºùÀÇ - Èí¼º´ë¹ý - Ư¼ºÄ¡: - Áö´É - Ãßõ Á¾Á·: - Àΰ£Á· - ¿ë½ÅÁ· - ¿ä±«Á· - -¹«»ç - ¼ø¼ö Á¤ÆÄÀÇ ÀÇÇùÀ¸·Î½á ºÒÀǸ¦ ÂüÁö¸øÇÏ´Â »ç¶÷µéÀÔ´Ï´Ù. -¼¼»óÀÇ ÆòÈ­¸¦ À§ÇØ ³ë·ÂÇÏ¸ç ¾ÇÀεéÀ» ¡¹úÇϱ⵵ ÇÕ´Ï´Ù. ¶ÇÇÑ ÀÌ¿¡ -´ëÇÑ ½ÅÀÇ º¸´äÀ¸·Î ¾Ç·ÉÀ» ¹°¸®Ä¥¼ö ÀÖÀ¸³ª, ÀüÅõ¿¡¼­ ºñ°ÌÇÏ°Ô -µµ¸Á°¡¸é ¸¹Àº ¼ÕÇØ¸¦ ÀÔ½À´Ï´Ù. -±×¸®°í ¾ÇÇÑ ¹«»ç´Â ±×¸¸ÇÑ ´ñ°¡¸¦ Ä¡·é´Ù ¾Ë·ÁÁ® ÀÖ½À´Ï´Ù. - ±â¼úµé: - ¹æÈ¥¼ú - ½Å¿ø¹ý - Âü¼± - Ư¼ºÄ¡: - Èû - ½Å¾Ó½É - Ãßõ Á¾Á·: - Àΰ£Á· - ³­ÀåÀÌÁ· - ¶¥±Í½ÅÁ· - µµ±úºñÁ· - -Æ÷Á¹ - Æ÷Á¹À» ¹üÀεéÀ» ÃßÀûÇØ¼­ ¼ö»öÇϴµ¥ ¶Ù¾î³­ ´É·ÂÀ» Áö´Ï°í -ÀÖ½À´Ï´Ù. ¶§¹®¿¡ º¸¹°À» ¹ß°ßÇÒ¼öµµ ÀÖ°í ºñ¹Ð Åë·Î¸¦ ãÀ»¼öµµ ÀÖ½À´Ï´Ù. -¸ðÇè°¡µéÀÇ ¸ðÀÓ¿¡¼­ Æ÷Á¹Àº ¾ðÁ¦³ª ÁÁÀº ¾È³»ÀÚÀÔ´Ï´Ù. - ±â¼úµé: - ÃßÀû - Ȱº¸¹ý - Ç÷µµºÀ¼â - Ư¼ºÄ¡: - ¹Îø - Ãßõ Á¾Á·: - Àΰ£Á· - Åä½ÅÁ· - -µµµÏ - µµµÏÀº ¸ðÇè°¡µéÀÇ ¸ðÀÓ¿¡ ±ÍÁßÇÑ Á÷¾÷Áß ÇϳªÀÔ´Ï´Ù -Àá°ÜÁø ¿­¼è¸¦ µþ¼ö ÀÖ°í ÀûÀ¸·ÎºÎÅÍ ¹°°ÇÀ» ÈÉÄ¥¼öµµ ÀÖ½À´Ï´Ù -Á¶½É½º·¹ ¿òÁ÷ÀÌ´Ù°¡ ±â½ÀÀ» ÇÒ¼öµµ ÀÖ½À´Ï´Ù. ¶ÇÇÑ ÃµºÎÀûÀÎ -Àç´ÉÀ¸·Î ¸ð¸£´Â ¹°°ÇÀ» °¨Á¤Çس¾¼ö ÀÖ½À´Ï´Ù. -Ưº°È÷ ¶Ù¾î³­ ´É·ÂÀº ¾øÁö¸¸ °¡Àå ÀûÀÀÀ» ÀßÇÏ°í »ì¾Æ³²À»¼ö -ÀÖ½À´Ï´Ù. - ±â¼úµé: - »ì±âÃæÀü - ¼Ò¸ÅÄ¡±â - ÀÚ¹°¼èµû±â - ¿³º¸±â - ±â½À - Àº½Å¼ú - °¨Á¤ - Ư¼ºÄ¡: - ¹Îø - Ãßõ Á¾Á·: - Àΰ£Á· - Åä½ÅÁ· - -¹«Àû - ¹«ÀûÀº ±Ã±ØÀûÀÎ Á÷¾÷À¸·Î ¸ðµç Á÷¾÷ÀÇ ±â¼úÀ» °¡Áö°í ÀÖ½À´Ï´Ù. -±×µéÀº ¿À·£ ¼ö·ÃÀ» ½×Àº »ç¶÷¸¸ µµ´ÞÇÒ¼ö ÀÖÀ¸¸ç, »õ·Ó°Ô ž°Ô -µË´Ï´Ù. ±×·¡¼­ ÀҴ Ư¼ºµµ ÀÖÁö¸¸ ¸¹Àº »õ·Î¿î ´É·ÂÀ» ¾ò°Ô µË´Ï´Ù. - ±â¼úµé: - ¸ðµç Á÷¾÷ ±â¼ú - µµ·Â ȸº¹ ´É·Â - Ư¼ºÄ¡: - ¾øÀ½ - Ãßõ Á¾Á·: - ¾øÀ½ - -Àû´çÇÑ Á¾Á·°ú Á÷¾÷ÀÇ ¼±ÅÃÀÌ °¡Àå Áß¿äÇÕ´Ï´Ù! - -Á¾Á·µé: - -³­ÀåÀÌÁ· - ÀÛÀº ۸¦ °¡Áø Èû¼¾ Á¾Á·ÀÔ´Ï´Ù. ÀüÅõ½Ã¿¡ °¡Àå °ÅÄ¥Àº -Á¾Á·Áß¿¡ Çϳª·Î ÈǸ¢ÇÑ ½Î¿ò²ÛÀ¸·Î ¾Ë·ÁÁ®ÀÖ½À´Ï´Ù - Ư¼ºÄ¡: - Èû +1 - ½Å¾Ó½É -1 -¿ë½ÅÁ· - °í´ëÀÇ Áö½ÄÀ» °£Á÷ÇÑ ½ÅºñÀÇ ¹ÎÁ·ÀÔ´Ï´Ù. -ÁÖ¼ú¿¡ Ź¿ùÇÑ ´É·ÂÀ» Áö´Ï°í ÀÖ½À´Ï´Ù. ±×·¯³ª ÀüÅõ¿¡´Â ¾àÇÕ´Ï´Ù. - Ư¼ºÄ¡: - Áö´É +2 - Èû -1 - ¸ËÁý -1 -¶¥±Í½ÅÁ· - µ¿±¼¿¡ »ç´Â ÀÛÀº Á¾Á·À¸·Î ÈǸ¢ÇÑ ºÒÁ¦ÀÚ¿Í ¹«»ç°¡ µÉ¼öÀÖ½À´Ï´Ù - Ư¼ºÄ¡: - ½Å¾Ó½É +1 - Èû -1 -°ÅÀÎÁ· - °­ÇÑ Èû°ú °Å´ëÇÑ ¸öÁýÀÇ ¼ÒÀ¯ÀÚ·Î ³î¶ó¿î ½Î¿ò²ÛÀÔ´Ï´Ù - Ư¼ºÄ¡: - Èû +2 - Áö´É -1 - ½Å¾Ó½É -1 -¿ä±«Á· - ¿ä±«Á·Àº ¶Ù¾î³­ ÀûÀÀ·ÂÀ¸·Î ¾î´À Á÷¾÷¿¡³ª Àß ¾î¿ï¸³´Ï´Ù - Ư¼ºÄ¡: - Áö´É +1 - ¸ËÁý -1 -Åä½ÅÁ· - ÀÛ°í ¹ÎøÇÑ Á¾Á·À¸·Î ¼Õ³î¸²ÀÌ ¹ÎøÇÕ´Ï´Ù. -¶§¹®¿¡ ÁÁÀº ÀÚ°´, µµµÏ, Æ÷Á¹ÀÌ µÉ¼ö ÀÖ½À´Ï´Ù. - Ư¼ºÄ¡: - ¹Îø +1 - Èû -1 -Àΰ£Á· - ¾îµð¿¡¼­³ª º¼¼öÀÖ´Â ¸ÛûÇÏ°í ¸ø»ý±ä Á¾Á·ÀÔ´Ï´Ù - Ư¼ºÄ¡: - ¸ËÁý +1 -µµ±úºñÁ· - »ç³³°í ¾ß¸¸½º·± ¹ÎÁ·À¸·Î »ê°ú µé¿¡¼­ °ÅÄ¥°Ô ÀÚ¶ó¼­ -ÈǸ¢ÇÏ°Ô ÀüÅõ¿¡ ÀÓÇÒ¼ö ÀÖ½À´Ï´Ù. - Ư¼ºÄ¡: - Èû +1 - ¸ËÁý +1 - ¹Îø -1 - -¸ÛûÇÑ ½Åµé ---- -ŸÀÌ, Ǫ¸¥ÇÏ´Ã, ¹«Áø°Ë, °³°ñ - -Áú¹®ÀÌ ÀÖÀ¸¸é Á÷Á¢ ¸¸³ª°Å³ª ÆíÁö¸¦ º¸³»¼¼¿ä. - -¹«ÇÑ´ëÀü. - diff --git "a/objmon/\301\337\260\243\260\350_\301\366\265\265" "b/objmon/\301\337\260\243\260\350_\301\366\265\265" deleted file mode 100644 index b41b3ead..00000000 --- "a/objmon/\301\337\260\243\260\350_\301\366\265\265" +++ /dev/null @@ -1,21 +0,0 @@ -¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ -¦¢ ¦¢ ¦¢ ¦¢ -¦¢ Æó °¡ Áö ¿ª ¦¢ ¦¢ ±Í½Å ³ª¹«Áö¿ª ¦¢ -¦¢ ¦¢ ¦¢ ¦¢ -¦¦¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¥ - ¦¢ ¦¢ - ¦¢ ¦¢ - ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ - ¦¢ - ¦£¦¡¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¤ - ¦¢ ¦¢ - ¦¢ Áß°£°è µµ½Ã ¦¢ - ¦¢ ¦¢ - ¦¢ ¦¢ - ¦¢ ¦¢ - ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¨¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ - ¦£¦¡¦¡¦¡¦¡¦¡¦ª¦¡¦¡¦¡¦¤ - ¦¢ ¦¢ - ¦¢ â°íÁö¿ª ¦¢ - ¦¢ ¦¢ - ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ diff --git "a/objmon/\306\304\307\307\267\347\275\272_\265\316\267\347\270\266\261\342" "b/objmon/\306\304\307\307\267\347\275\272_\265\316\267\347\270\266\261\342" deleted file mode 100644 index f1b93252..00000000 --- "a/objmon/\306\304\307\307\267\347\275\272_\265\316\267\347\270\266\261\342" +++ /dev/null @@ -1,16 +0,0 @@ -List of Elven Runes and Meanings: - -AHN Negate/Dispel NOX Poison -BET Small ORT Magic -CORP Death POR Move/Movement -DES Lower/Down QUAS Illusion -EX Freedom REL Change -FLAM Flame SANCT Protect/Protection -GRAV Energy/Field TYM Time -HUR Wind UUS Raise/Up -IHN Make/Create/Cause VAS Great -JUX Danger/Trap/Harm WIS Know/Knowledge -KAL Summon/Invoke XEN Creature -LOR Light YLEM Matter -MANI Light/Healing ZU Sleep - diff --git "a/objmon/\306\363\260\241_\301\366\265\265" "b/objmon/\306\363\260\241_\301\366\265\265" deleted file mode 100644 index 2ec770fa..00000000 --- "a/objmon/\306\363\260\241_\301\366\265\265" +++ /dev/null @@ -1,15 +0,0 @@ -¦£¦¡¦¡¦¡¦¡¦¡¦¤ -¦¢ º°Ã¤Áö¿ª ¦¢ ¦£¦¡¦¡¦¡¦¤ -¦¦¦¡¦¡¦¨¦¡¦¡¦¥ ¦¢¿ì ¹° ¦¢ - ¦§¦¡¦¡¦¡¦¡¦¡¦¡¦© ¦¢ - ¦¢ ¦¢Áö ¿ª ¦¢ ¦£¦¡¦¡¦¡¦¤ - ¦¢ ¦¦¦¡¦¡¦¡¦¥ ¦¢´© °¢¦¢ - ¦¢ ¦¢ ¦¢ - ¦¢ ¦¦¦¡¦¡¦¨¦¥ - ¦¢ ¦£¦¡¦¡¦¡¦¤ ¦¢ ¦£¦¡¦¡¦¡¦¡¦¤ - ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ Çà¶ûä ¦¢ - ¦¦¦¡¦¡¦¡¦¡¦¡¦©º» °¡¦¢ ¦¢ ¦¢ ¦¢ - ¦£¦¡¦¡¦¤ ¦¢ ¦¢ ¦§¦¡¦¡¦¡¦© ¦¢ - ¦¢Ãø°£¦§¦¡¦¡¦¡¦¡¦© ¦¢ ¦¢ ¦¢ ¦¢ - ¦¢ ¦¢ ¦¦¦¡¦¨¦¡¦¥ ¦¢ ¦¦¦¡¦¡¦¡¦¡¦¥ - ¦¦¦¡¦¡¦¥ ¦¦¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¡¦¥ diff --git "a/objmon/\307\245\301\366\306\307" "b/objmon/\307\245\301\366\306\307" deleted file mode 100644 index 48fc5ace..00000000 --- "a/objmon/\307\245\301\366\306\307" +++ /dev/null @@ -1,20 +0,0 @@ - - >>>>> ±¤ÀåÁÖº¯ <<<<< - [µå·¹´Ï¾Æ ] [¼Ò¸²»ç] [¹«´çÆÄ] - *ÇöÀ§Ä¡ : ±¤Àå ¦¢ ¦¢ ¦¢ - -------------------- - [¸¶µµ¿ø] [µîž] ¦¢ ¦¢ - ¦¢ ¦¢ [¾È°³µµ½Ã] [È­»êÆÄ] - [Èæ°Ë¼º] ---------------¦¢ - [¹Ð¸²] ¦¢ [Æó°¡Áö¿ª] [Èæ¿ä¸²] - [Áê¶ó±â] ¦¢ [¹«ÀûÁ¸] ¦¢ [³îÀ̵¿»ê] [±Í½Å³ª¹«] - ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ ¦¢ - [¿ëÀÇ]---------------------------------------------[¾ÆÆÄÆ®] - [°è°î] <»ç¸·ÀÔ±¸> ¦¢ ±¤Àå<->¦¢ - [¼ö·ÃÀå]------------------ - ¦¢ ¦¢ - [ÇѼº]----------------------------[Ãʼº] - ¦¢ ¦¢[â°í] - [ÀüÀïÅÍ]----------- [½ÅÀü] - <<¹ÌÁöÀÇ ¼¶>> - diff --git "a/player/\305\270/\305\270\300\314" "b/player/\305\270/\305\270\300\314" deleted file mode 100644 index 37382ee2..00000000 Binary files "a/player/\305\270/\305\270\300\314" and /dev/null differ diff --git "a/player/\305\270/\305\327\275\272\305\344\275\272" "b/player/\305\270/\305\327\275\272\305\344\275\272" deleted file mode 100644 index 48756de5..00000000 Binary files "a/player/\305\270/\305\327\275\272\305\344\275\272" and /dev/null differ diff --git a/resources_manifest/path-alias.v1.tsv b/resources_manifest/path-alias.v1.tsv index 0f4f65b5..13475c12 100644 --- a/resources_manifest/path-alias.v1.tsv +++ b/resources_manifest/path-alias.v1.tsv @@ -1,4 +1,6 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 +2E6769746875622F776F726B666C6F77732F63692E796D6C .github/workflows/ci.yml .github/workflows/ci.yml 67f5ca68ecb4d8633e65a637a0fd423b60a95686 +524541444D452E6D64 README.md README.md ea728fd4725a5088c248e01df3a7d5bdef0713a1 62696E2F434F50595249474854 bin/COPYRIGHT bin/COPYRIGHT 367e10ed244f0d7cfff758e039c6d9306a938b1a 62696E2F494E5354414C4C bin/INSTALL bin/INSTALL 330c1d8fd718696d9fe1506ff253697905c247c1 62696E2F4D414E4946455354 bin/MANIFEST bin/MANIFEST f06df90c10e3d4758d9422ebf2da0c2cef92be49 @@ -6,6 +8,7 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 62696E2F524541444D45 bin/README bin/README 894be3d5dec58baf5947f86acdb72b691b2e9288 62696E2F667270 bin/frp bin/frp 8118ce78b2e5beb850616862b4c3cba8db68482b 62696E2F6672702E646F63 bin/frp.doc bin/frp.doc fb7c4cd234ca76c0b8b50eea6e3ebcf88108be24 +646F636B65722F6C65676163792D72756E74696D652E446F636B657266696C65 docker/legacy-runtime.Dockerfile docker/legacy-runtime.Dockerfile 07d84b6cf95f3d5da46bf59333e085862708da44 646F63732F626F6172645F6D616B65 docs/board_make docs/board_make ae5d5e1860d64bf09dfc6480f8bc2e4d7c38e37b 646F63732F636D645F6974616C docs/cmd_ital docs/cmd_ital 90ccd4a0d456887b005f0e28e386b1c0b34857b5 646F63732F636D645F6C697374 docs/cmd_list docs/cmd_list 3cd357e1a83e11b6a27625e5faa1b415f7d5783e @@ -19,6 +22,7 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 646F63732F646D5F696E74726F docs/dm_intro docs/dm_intro 4b2e51e605aedcefce16b6c56261a8cbacf33785 646F63732F6F626A5F666C6167 docs/obj_flag docs/obj_flag 8d138e750c04ee05ddf2d3acf5f42a3e01ca5e86 646F63732F6F626A5F6D616B65 docs/obj_make docs/obj_make d00397d82db2768427b6511a2b8f968c79af0f4f +646F63732F7265766976652F626173656C696E652E6D64 docs/revive/baseline.md docs/revive/baseline.md 0247e3c6d0d856bc3137b5eacb7d031d1e128e96 646F63732F726F6D5F636F6D62 docs/rom_comb docs/rom_comb 33b72e88565c23b00b40e5aa434a1dc7b0391915 646F63732F726F6D5F666C6167 docs/rom_flag docs/rom_flag 09084c08a8f60d29bff49966c5bbf05cdd5bfdb4 646F63732F726F6D5F6D616B65 docs/rom_make docs/rom_make 84f330eaed2153534b360b6e215a182ba482238f @@ -255,7 +259,7 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 68656C702F77656C636F6D652E73617665 help/welcome.save help/welcome.save aae62333c722501ef024b4d9f38fbb7706d5ae5b 68656C702F78666C616773 help/xflags help/xflags f8093d3da9ff3968abbacb72bdee3824d33c3eee 68656C702F787472617073 help/xtraps help/xtraps 4ea00f43fc4ad8c91241752f24e6f28bbe57e45f -68656C702FA6B3A9AB help/┳œ help/star 01a95dbfa47bb47558b76de0b2fd2d2c3b1219e5 +68656C702FA6B3A9AB help/┳œ help/┳œ 01a95dbfa47bb47558b76de0b2fd2d2c3b1219e5 6C6F672F444D5F6E657773 log/DM_news log/DM_news c5323e56355759ed5880557eb0aecf6bc15af398 6C6F672F524541444D45 log/README log/README 9c2b48bf624328246b5d185ba3a6ff1f229ee30e 6C6F672F53554943494445 log/SUICIDE log/SUICIDE bd5936ef83a2f7435b54f26457cff9fda23de786 @@ -3696,9 +3700,18 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 726F6F6D732F7230382F723038333030 rooms/r08/r08300 rooms/r08/r08300 133393648ca6deabb130f444c41f3e0907598024 726F6F6D732F7230382F723038333031 rooms/r08/r08301 rooms/r08/r08301 d40811e3c85ae7728aa1fcb990c2861d2b2ce995 726F6F6D732F7230392F723039303030 rooms/r09/r09000 rooms/r09/r09000 8105cea03fecd4f43ccb0490d6eede4f52ce5d59 +727573742F2E67697469676E6F7265 rust/.gitignore rust/.gitignore ea8c4bf7f35f6f77f75d92ad8ce8349f6e81ddba +727573742F436172676F2E6C6F636B rust/Cargo.lock rust/Cargo.lock 363617ecca42a5f1bf91274583c3108c46ceaef1 +727573742F436172676F2E746F6D6C rust/Cargo.toml rust/Cargo.toml 57571c9e5b35f411b2c7cdc0f99c33fa565e3436 +727573742F6D7568616E2D7265736F757263652D6666692F436172676F2E746F6D6C rust/muhan-resource-ffi/Cargo.toml rust/muhan-resource-ffi/Cargo.toml 258ba3355d945c478743ca0fe68af38ce7c762e9 +727573742F6D7568616E2D7265736F757263652D6666692F7372632F6C69622E7273 rust/muhan-resource-ffi/src/lib.rs rust/muhan-resource-ffi/src/lib.rs 8eaf7b594ab4df146a5bf45395232486db6c0a2d +727573742F6D7568616E2D7265736F757263652D696E6465782F436172676F2E746F6D6C rust/muhan-resource-index/Cargo.toml rust/muhan-resource-index/Cargo.toml 61015e90b580b69f447a0dd852f49b1526296656 +727573742F6D7568616E2D7265736F757263652D696E6465782F7372632F6C69622E7273 rust/muhan-resource-index/src/lib.rs rust/muhan-resource-index/src/lib.rs 5ac569cd333421a0d5abb17f09c1c428a5f3f662 +736372697074732F6275696C642D6C65676163792E7368 scripts/build-legacy.sh scripts/build-legacy.sh a9d3c4929426ce6ce8db3ffbc553c4f09c201c28 +736372697074732F72756E2D736D6F6B652E7368 scripts/run-smoke.sh scripts/run-smoke.sh 83ac595e1728c0051e4cdbbbacdd3f1068360c2d 7372632F2E67697469676E6F7265 src/.gitignore src/.gitignore 874c63cfa699b0cb28ada8b48e0f107ee5716f85 7372632F4D5548414E2E455845 src/MUHAN.EXE src/MUHAN.EXE d59004c47a2ecd27578baedc660240c83748bfea -7372632F4D616B6566696C65 src/Makefile src/Makefile bdb255eed96c828dfb3a70e549165c6f058c0266 +7372632F4D616B6566696C65 src/Makefile src/Makefile 28cf9f67cc44301675f2f25faab964bf4ea64574 7372632F524541444D45 src/README src/README 87fd10753452b565f8d879789b05682fcffc6bdb 7372632F524541444D452E757064617465 src/README.update src/README.update 58e5c810a43a6f165725ed79216fbf7d328025a6 7372632F616374696F6E2E63 src/action.c src/action.c 645a8d62ba99ba186559e9cd1b6aa6ca8b80ef4e @@ -3709,20 +3722,21 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 7372632F626F6172642E63 src/board.c src/board.c 46779420805544e77e2406724f9af539ea194e72 7372632F626F6172642E68 src/board.h src/board.h e7ab2f91382418f795150a1d659dc8dae6619168 7372632F636F6D6D616E355F6F6C642E63 src/comman5_old.c src/comman5_old.c 8d0edbaaf06f3f385593e220f7b3091e1c240a3b -7372632F636F6D6D616E64312E63 src/command1.c src/command1.c d654ac92a7d6e608216c00f15dee52dd83dde1cf +7372632F636F6D6D616E64312E63 src/command1.c src/command1.c 5634779b611fdcc135ed10670ffeabd46186d194 7372632F636F6D6D616E6431302E63 src/command10.c src/command10.c 671d456ff3dbba205ae4a4d9a56f04f3e74e28b8 -7372632F636F6D6D616E6431312E63 src/command11.c src/command11.c 0838efb982c799ec6d1c5a75fe80e7fd06478d5c +7372632F636F6D6D616E6431312E63 src/command11.c src/command11.c 4b3f5aba3bb43662537b398868fae1dd77cb8c8b 7372632F636F6D6D616E6431322E63 src/command12.c src/command12.c 2a95713b801232075feb1e09eaa09764c853b9d0 7372632F636F6D6D616E64322E63 src/command2.c src/command2.c b7c3c869b6f1ec43c835972eb31ab489e34047e3 7372632F636F6D6D616E64332E63 src/command3.c src/command3.c c6cb2879cfe4aeb94940081ff40cb27169c8741b -7372632F636F6D6D616E64342E63 src/command4.c src/command4.c 0c17f2f8b7b05754d8880f5db5bfab72dae9f0ed +7372632F636F6D6D616E64342E63 src/command4.c src/command4.c 796096e18fb6bd3c7d1b8eef22eaa578e091569c 7372632F636F6D6D616E64352E63 src/command5.c src/command5.c c4aea9c44f7e9e1f901161d9d922f78e7f340163 7372632F636F6D6D616E64362E63 src/command6.c src/command6.c a10a9fbc7038ef2a25c14cc98982a39014d5677e 7372632F636F6D6D616E64372E63 src/command7.c src/command7.c a0f926c972984a806eb6a29c475b85355d97c259 -7372632F636F6D6D616E64382E63 src/command8.c src/command8.c 565ad879b6f8219adb77ae7a0efcb4411935db1b +7372632F636F6D6D616E64382E63 src/command8.c src/command8.c bdf9aae7c06085975d21282760ba09493b29c518 7372632F636F6D6D616E64392E63 src/command9.c src/command9.c cdb53bba08f2dc94383291cd0a0a68004fe79d55 +7372632F636F6D7061745F6C65676163792E68 src/compat_legacy.h src/compat_legacy.h 68dd8efeef140939f85f778a73125fbdc2e61480 7372632F636F6D70726573732E63 src/compress.c src/compress.c 3b82ccb4352ad6cffe5db9a04bebae98678efcb8 -7372632F63726561747572652E63 src/creature.c src/creature.c 7434bd7b922910c6d5fc846b27a8763a6f0744f1 +7372632F63726561747572652E63 src/creature.c src/creature.c 615a8cc9050ada4079f798904ecc6d39cc5107f8 7372632F646D312E63 src/dm1.c src/dm1.c d9c40269a3e0df1bd16e7d48df073c4a596dee3c 7372632F646D322E63 src/dm2.c src/dm2.c 83c580b9977ea67c8512e5cd50bad63bb4e6af53 7372632F646D332E63 src/dm3.c src/dm3.c c5c1d980a8f2d9e87edd63ffb7bf4eff45e4c736 @@ -3730,11 +3744,11 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 7372632F646D352E63 src/dm5.c src/dm5.c c0694216e2311ea672ed893bfacd0c18b50cecb0 7372632F646D362E63 src/dm6.c src/dm6.c 24cc60961c3de0cefe322a0cfd9c00d3ac673fc2 7372632F66696C6573312E63 src/files1.c src/files1.c a20c7d2e64d754910b4855250102e26625699599 -7372632F66696C6573322E63 src/files2.c src/files2.c 4cc0f0ac11a400cf59e056464c64aeafa91fcdc4 -7372632F66696C6573332E63 src/files3.c src/files3.c 29a516424fabd0e232e9da3404b8362e490b3845 +7372632F66696C6573322E63 src/files2.c src/files2.c 4a13e0fe9f694c06e039cd61920cbdc658f7907e +7372632F66696C6573332E63 src/files3.c src/files3.c b51877d1546ae7164430f98f8dbe188aa148c4df 7372632F66696E6765722E63 src/finger.c src/finger.c 33b5a76cd3eb8eb567d8366da7f16e44686814b8 7372632F676C6F62616C2E63 src/global.c src/global.c 91bfcd78159f2c628a697170259d2c4774a8e6fc -7372632F696F2E63 src/io.c src/io.c 8320aebee82b29862cf1392bdd66ff62f435847b +7372632F696F2E63 src/io.c src/io.c 6935fa06f14dd18d46b359d0d7d9fa9ff0b317df 7372632F6B7374626C2E68 src/kstbl.h src/kstbl.h 91ddd9634ca5723d2a3e2d8616e6376d9a86b5a9 7372632F6D61676963312E63 src/magic1.c src/magic1.c e355a0bf38e466f6041f336fbbbb49643db11f6c 7372632F6D61676963322E63 src/magic2.c src/magic2.c 671527df86a916c2645b7a408e70b2835501165b @@ -3744,11 +3758,11 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 7372632F6D61676963362E63 src/magic6.c src/magic6.c 192aff9d8315fa2e99fb8d7a62e08ac1e2bb2802 7372632F6D61676963372E63 src/magic7.c src/magic7.c 9e83ae31147ddf9c066bfab90e05a34226a66db8 7372632F6D61676963382E63 src/magic8.c src/magic8.c d0ca35c7ad873f6943f7ed897ac48e232d9fcdc9 -7372632F6D61696E2E63 src/main.c src/main.c 18496c3b0beb4c0d43b8e517167ae8cc8685c550 -7372632F6D65787465726E2E68 src/mextern.h src/mextern.h 94bb41a316b480ba41c81d0f96805ae85fc620d6 -7372632F6D6973632E63 src/misc.c src/misc.c 668fa88f6ce36f5fd98f8a0df10076afe3d234ec +7372632F6D61696E2E63 src/main.c src/main.c 85cf14feb0ae082ce33526adcc5f6eb7c6330b76 +7372632F6D65787465726E2E68 src/mextern.h src/mextern.h 131b724f78d8a6381041f44b6756126e98c54c2d +7372632F6D6973632E63 src/misc.c src/misc.c 1bc73eaf87b404a926f900b5f03778228ff4866a 7372632F6D7374727563742E68 src/mstruct.h src/mstruct.h 155855d83e99c77f7a60be8635bcb027f2b35c8b -7372632F6D747970652E68 src/mtype.h src/mtype.h aa2b8543cde90ec7dd1523ec0254ac3cb97c07a9 +7372632F6D747970652E68 src/mtype.h src/mtype.h 04035e050f3f073ed17bab6e7f92f3a3f5e4cd8d 7372632F6D7568616E2E6D616B src/muhan.mak src/muhan.mak 4532a017041e8d5422017c2d1f3778c0b34c2ca1 7372632F6D7568616E2E6D6470 src/muhan.mdp src/muhan.mdp 9f50508d9d9a55859fff883e115d0bc83d52bbc8 7372632F6D7568616E2E6E6362 src/muhan.ncb src/muhan.ncb df96e53d7f7185691c91231a1859b0edcba4d905 @@ -3758,14 +3772,21 @@ legacy_path_hex legacy_path_cp949 normalized_utf8_path blob_sha1 7372632F706C6973742E63 src/plist.c src/plist.c ed8bacde82d885527e20c373d42c50de41fa57d1 7372632F706F73742E63 src/post.c src/post.c a51c75953436b8865886178944d888f21c4e6215 7372632F7265736F757263652E68 src/resource.h src/resource.h 01b50bca4253387933af937ed4bdd260c413c9a4 -7372632F726F6F6D2E63 src/room.c src/room.c 0bd56eb2267fcb47921fba2b1b9733b4348fb6f4 +7372632F7265736F757263655F706174682E63 src/resource_path.c src/resource_path.c 0b6531de14529e5170186eadd1faf959b7af8eef +7372632F7265736F757263655F706174682E68 src/resource_path.h src/resource_path.h 21c20736632337538c851d90c5e2cf1e924a5507 +7372632F726F6F6D2E63 src/room.c src/room.c d4644342708cf893f2c860e299ebde5a1ccc62d7 7372632F732E63 src/s.c src/s.c 07a1597abb6077f8f8b1842675e881e5c0823acd 7372632F73702E63 src/sp.c src/sp.c 7b95df958a197649b503c35a9ffb14802377d7ab 7372632F7370656369616C312E63 src/special1.c src/special1.c 01a6152060986275e03d70cd20fb301a4d51954d 7372632F73746172746D2E63 src/startm.c src/startm.c ffad559ef077ed5fa79f621eaa3d925f5913e542 7372632F7374727374722E63 src/strstr.c src/strstr.c 0412c5838682725f7c4d411d0739d171cbcbc42c -7372632F7570646174652E63 src/update.c src/update.c 358b2f7d89a1e1b13e0b52796616ca1efd5200b1 +7372632F7570646174652E63 src/update.c src/update.c 54cf6c28a6ce1180da2d76f2622118b3b6d6f650 7372632F7570646174652E68 src/update.h src/update.h e7f84585060e8b643b10045bd36ab5b7ed427d31 +74657374732F736D6F6B652F636F6D706172655F7265736F6C766572732E7079 tests/smoke/compare_resolvers.py tests/smoke/compare_resolvers.py b8edbeb21d4d66f10175af4e037028c277e990c2 +74657374732F736D6F6B652F72705F70726F62652E63 tests/smoke/rp_probe.c tests/smoke/rp_probe.c 4fe642901c6eb8b0a8a768510d76df3db54a7a53 +74657374732F736D6F6B652F73657373696F6E5F736D6F6B652E7079 tests/smoke/session_smoke.py tests/smoke/session_smoke.py a916aa7766b04c2d20663d81ec63671ab02e654c +746F6F6C732F7265766976652F657874726163742D6C65676163792D626C6F62732E7368 tools/revive/extract-legacy-blobs.sh tools/revive/extract-legacy-blobs.sh 7a3b042571508d174d27bd403ca2587a3849f836 +746F6F6C732F7265766976652F7265706F72742D6D697373696E672D70617468732E7368 tools/revive/report-missing-paths.sh tools/revive/report-missing-paths.sh dba83ee9f162caf88ab83471f5a5017b1423b2d9 7574696C2F4D414B4546494C45 util/MAKEFILE util/MAKEFILE e3064e9f85f91d574d016ce4609a73470fae767c 7574696C2F524541444D452E7574696C util/README.util util/README.util 7e627909f6fb16ba2305a6f72b87ee995cf4df1c 7574696C2F646F7332756E6978 util/dos2unix util/dos2unix 654eed379891b0b3225603e31d660f279d0b7b0b diff --git a/resources_manifest/resource-map.v1.json b/resources_manifest/resource-map.v1.json index 19158970..57e7b205 100644 --- a/resources_manifest/resource-map.v1.json +++ b/resources_manifest/resource-map.v1.json @@ -1,4 +1,24 @@ [ + { + "legacy_path_hex": "2E6769746875622F776F726B666C6F77732F63692E796D6C", + "legacy_path_cp949": ".github/workflows/ci.yml", + "normalized_utf8_path": ".github/workflows/ci.yml", + "blob_sha1": "67f5ca68ecb4d8633e65a637a0fd423b60a95686", + "sha256": "b6c9399c83848985e86c9899173b935d7a8d14140d27bcd12cc1c06d7c3c16e4", + "size": 4696, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "524541444D452E6D64", + "legacy_path_cp949": "README.md", + "normalized_utf8_path": "README.md", + "blob_sha1": "ea728fd4725a5088c248e01df3a7d5bdef0713a1", + "sha256": "57bf0baa90dbe6fc933d77eed61b9bdeaaaff36686dd2f41ef6144be56e5133b", + "size": 4104, + "kind": "text", + "text_encoding": "utf-8" + }, { "legacy_path_hex": "62696E2F434F50595249474854", "legacy_path_cp949": "bin/COPYRIGHT", @@ -69,6 +89,16 @@ "kind": "text", "text_encoding": "cp949" }, + { + "legacy_path_hex": "646F636B65722F6C65676163792D72756E74696D652E446F636B657266696C65", + "legacy_path_cp949": "docker/legacy-runtime.Dockerfile", + "normalized_utf8_path": "docker/legacy-runtime.Dockerfile", + "blob_sha1": "07d84b6cf95f3d5da46bf59333e085862708da44", + "sha256": "539d7f5899b52da901b971e505605d0ac98c931873deabe3a8592fae07371aaf", + "size": 273, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "646F63732F626F6172645F6D616B65", "legacy_path_cp949": "docs/board_make", @@ -199,6 +229,16 @@ "kind": "text", "text_encoding": "cp949" }, + { + "legacy_path_hex": "646F63732F7265766976652F626173656C696E652E6D64", + "legacy_path_cp949": "docs/revive/baseline.md", + "normalized_utf8_path": "docs/revive/baseline.md", + "blob_sha1": "0247e3c6d0d856bc3137b5eacb7d031d1e128e96", + "sha256": "fea7e5d17399a433b27728b8d8f991c724c4a721c2a4badc5d91391403eebebc", + "size": 1590, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "646F63732F726F6D5F636F6D62", "legacy_path_cp949": "docs/rom_comb", @@ -2562,7 +2602,7 @@ { "legacy_path_hex": "68656C702FA6B3A9AB", "legacy_path_cp949": "help/┳œ", - "normalized_utf8_path": "help/star", + "normalized_utf8_path": "help/┳œ", "blob_sha1": "01a95dbfa47bb47558b76de0b2fd2d2c3b1219e5", "sha256": "0de9616a3201e3ab7ad56b7ac33891fe6007227f98fc7303eb8697f9ccac7f13", "size": 803, @@ -36969,6 +37009,96 @@ "kind": "binary", "text_encoding": "binary" }, + { + "legacy_path_hex": "727573742F2E67697469676E6F7265", + "legacy_path_cp949": "rust/.gitignore", + "normalized_utf8_path": "rust/.gitignore", + "blob_sha1": "ea8c4bf7f35f6f77f75d92ad8ce8349f6e81ddba", + "sha256": "44c92e3a70ad3307b7056871c2bdb096d8bfa9373f5bf06a79bb6324a20ff2fb", + "size": 8, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F436172676F2E6C6F636B", + "legacy_path_cp949": "rust/Cargo.lock", + "normalized_utf8_path": "rust/Cargo.lock", + "blob_sha1": "363617ecca42a5f1bf91274583c3108c46ceaef1", + "sha256": "eaabb401edae18fc59623848e3d785bc99116700a1ac2de7a126093064634553", + "size": 3547, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F436172676F2E746F6D6C", + "legacy_path_cp949": "rust/Cargo.toml", + "normalized_utf8_path": "rust/Cargo.toml", + "blob_sha1": "57571c9e5b35f411b2c7cdc0f99c33fa565e3436", + "sha256": "071a5e839d765478f51593d834a766892836888fd7abb5d77b48820cf24c8efe", + "size": 91, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F6D7568616E2D7265736F757263652D6666692F436172676F2E746F6D6C", + "legacy_path_cp949": "rust/muhan-resource-ffi/Cargo.toml", + "normalized_utf8_path": "rust/muhan-resource-ffi/Cargo.toml", + "blob_sha1": "258ba3355d945c478743ca0fe68af38ce7c762e9", + "sha256": "c4c7b89748649ff427476da79d14acc2f5ed26ba138a3d4959a8aef4c45e7275", + "size": 193, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F6D7568616E2D7265736F757263652D6666692F7372632F6C69622E7273", + "legacy_path_cp949": "rust/muhan-resource-ffi/src/lib.rs", + "normalized_utf8_path": "rust/muhan-resource-ffi/src/lib.rs", + "blob_sha1": "8eaf7b594ab4df146a5bf45395232486db6c0a2d", + "sha256": "5228d4cc1206227167bb9ef535f126641e4b79f5ad566d56aed5534d7f1b99c6", + "size": 1492, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F6D7568616E2D7265736F757263652D696E6465782F436172676F2E746F6D6C", + "legacy_path_cp949": "rust/muhan-resource-index/Cargo.toml", + "normalized_utf8_path": "rust/muhan-resource-index/Cargo.toml", + "blob_sha1": "61015e90b580b69f447a0dd852f49b1526296656", + "sha256": "8c984b86bfdc2f85af092c09c97f8d6b336aa70cfb460586fec9d785a5d899ae", + "size": 126, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "727573742F6D7568616E2D7265736F757263652D696E6465782F7372632F6C69622E7273", + "legacy_path_cp949": "rust/muhan-resource-index/src/lib.rs", + "normalized_utf8_path": "rust/muhan-resource-index/src/lib.rs", + "blob_sha1": "5ac569cd333421a0d5abb17f09c1c428a5f3f662", + "sha256": "1c79819c8632477c1d35dca9954bf99401c8ed130db6f3a98642de30e59818d3", + "size": 1897, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "736372697074732F6275696C642D6C65676163792E7368", + "legacy_path_cp949": "scripts/build-legacy.sh", + "normalized_utf8_path": "scripts/build-legacy.sh", + "blob_sha1": "a9d3c4929426ce6ce8db3ffbc553c4f09c201c28", + "sha256": "25d53d63acb6af32782cb44e58ccad066be8872524a53b53452b6a08f584f895", + "size": 996, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "736372697074732F72756E2D736D6F6B652E7368", + "legacy_path_cp949": "scripts/run-smoke.sh", + "normalized_utf8_path": "scripts/run-smoke.sh", + "blob_sha1": "83ac595e1728c0051e4cdbbbacdd3f1068360c2d", + "sha256": "00304bee90f445986adb678dac6168257dda603437408e9b3919979ba6821a76", + "size": 2522, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "7372632F2E67697469676E6F7265", "legacy_path_cp949": "src/.gitignore", @@ -36993,9 +37123,9 @@ "legacy_path_hex": "7372632F4D616B6566696C65", "legacy_path_cp949": "src/Makefile", "normalized_utf8_path": "src/Makefile", - "blob_sha1": "bdb255eed96c828dfb3a70e549165c6f058c0266", - "sha256": "0fc54501de6c4723d3b2290a06d1ef8f8342109372dea9aa9b3b20e2d5be481d", - "size": 1217, + "blob_sha1": "28cf9f67cc44301675f2f25faab964bf4ea64574", + "sha256": "d6ceb24f7fbf9bf6aafddf93b60f27a738883135e5cda7a3dfbd022f2c4b89fe", + "size": 1669, "kind": "text", "text_encoding": "cp949" }, @@ -37103,9 +37233,9 @@ "legacy_path_hex": "7372632F636F6D6D616E64312E63", "legacy_path_cp949": "src/command1.c", "normalized_utf8_path": "src/command1.c", - "blob_sha1": "d654ac92a7d6e608216c00f15dee52dd83dde1cf", - "sha256": "dc3256118013e588096d11019c3cdb5dd59937a714345fcad21768543b29044c", - "size": 23504, + "blob_sha1": "5634779b611fdcc135ed10670ffeabd46186d194", + "sha256": "69fb27ba98e82d287f209c0ea412b860a3d9b620451a2813f51dfd15452ae577", + "size": 23581, "kind": "text", "text_encoding": "cp949" }, @@ -37123,9 +37253,9 @@ "legacy_path_hex": "7372632F636F6D6D616E6431312E63", "legacy_path_cp949": "src/command11.c", "normalized_utf8_path": "src/command11.c", - "blob_sha1": "0838efb982c799ec6d1c5a75fe80e7fd06478d5c", - "sha256": "b883cd3ac56c03f4e1fac1d9094532898b084aeb61958dd59217cb4bf17beede", - "size": 39671, + "blob_sha1": "4b3f5aba3bb43662537b398868fae1dd77cb8c8b", + "sha256": "91c67d491802f3befebec4ca0a277f40372e3f08ad6b743ed6069310706809df", + "size": 39693, "kind": "text", "text_encoding": "cp949" }, @@ -37163,9 +37293,9 @@ "legacy_path_hex": "7372632F636F6D6D616E64342E63", "legacy_path_cp949": "src/command4.c", "normalized_utf8_path": "src/command4.c", - "blob_sha1": "0c17f2f8b7b05754d8880f5db5bfab72dae9f0ed", - "sha256": "8a06a0cad6a161775a603937da99fd2708711e08272f499345e897a659c1c15e", - "size": 33576, + "blob_sha1": "796096e18fb6bd3c7d1b8eef22eaa578e091569c", + "sha256": "35c572fa0650dd4d9532a3cbc23595afcc816a7fc435ace15f00a23ce3ec6905", + "size": 34021, "kind": "text", "text_encoding": "cp949" }, @@ -37203,9 +37333,9 @@ "legacy_path_hex": "7372632F636F6D6D616E64382E63", "legacy_path_cp949": "src/command8.c", "normalized_utf8_path": "src/command8.c", - "blob_sha1": "565ad879b6f8219adb77ae7a0efcb4411935db1b", - "sha256": "2e5a6a18620ff99a4cdbb05cd255ba31b6debf81f90a6803f53356618d8ec512", - "size": 48867, + "blob_sha1": "bdf9aae7c06085975d21282760ba09493b29c518", + "sha256": "61837c36536f173eaacbbb81aa0a9544219ab1620643e4ad9b3562f733ae2793", + "size": 48916, "kind": "text", "text_encoding": "cp949" }, @@ -37219,6 +37349,16 @@ "kind": "text", "text_encoding": "cp949" }, + { + "legacy_path_hex": "7372632F636F6D7061745F6C65676163792E68", + "legacy_path_cp949": "src/compat_legacy.h", + "normalized_utf8_path": "src/compat_legacy.h", + "blob_sha1": "68dd8efeef140939f85f778a73125fbdc2e61480", + "sha256": "72f1eaa5c837ea927e6a68e6bdd91b1ab9b0eb089f018b1d1f1eef4a38252403", + "size": 238, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "7372632F636F6D70726573732E63", "legacy_path_cp949": "src/compress.c", @@ -37233,9 +37373,9 @@ "legacy_path_hex": "7372632F63726561747572652E63", "legacy_path_cp949": "src/creature.c", "normalized_utf8_path": "src/creature.c", - "blob_sha1": "7434bd7b922910c6d5fc846b27a8763a6f0744f1", - "sha256": "af77759401efdf2dc630ff97f41e37d7d8a0e15929705d9c3397b7c760bbfdad", - "size": 27573, + "blob_sha1": "615a8cc9050ada4079f798904ecc6d39cc5107f8", + "sha256": "21a0e9eac5f83ec1d494b16634fc98022687b8f8bab00a4a15a353c327873e09", + "size": 27603, "kind": "text", "text_encoding": "cp949" }, @@ -37313,9 +37453,9 @@ "legacy_path_hex": "7372632F66696C6573322E63", "legacy_path_cp949": "src/files2.c", "normalized_utf8_path": "src/files2.c", - "blob_sha1": "4cc0f0ac11a400cf59e056464c64aeafa91fcdc4", - "sha256": "ab818d493a7f6c9b705a81727c8ee3ff8c355979a8113b070363444336c95efa", - "size": 18864, + "blob_sha1": "4a13e0fe9f694c06e039cd61920cbdc658f7907e", + "sha256": "3343b9f76571923d8f5acb4873262176a2f37e792740432a79a61883e9c6592f", + "size": 18179, "kind": "text", "text_encoding": "ascii" }, @@ -37323,9 +37463,9 @@ "legacy_path_hex": "7372632F66696C6573332E63", "legacy_path_cp949": "src/files3.c", "normalized_utf8_path": "src/files3.c", - "blob_sha1": "29a516424fabd0e232e9da3404b8362e490b3845", - "sha256": "e976270c17d7d6bc3f5e0336b18c62e0748f82d50fcb646bbc51a093e19cc248", - "size": 8679, + "blob_sha1": "b51877d1546ae7164430f98f8dbe188aa148c4df", + "sha256": "edd670552811fba3cd639fff0ef0558689f49de5bb0fc5dbb21d5af55f28f5a9", + "size": 8709, "kind": "text", "text_encoding": "ascii" }, @@ -37353,9 +37493,9 @@ "legacy_path_hex": "7372632F696F2E63", "legacy_path_cp949": "src/io.c", "normalized_utf8_path": "src/io.c", - "blob_sha1": "8320aebee82b29862cf1392bdd66ff62f435847b", - "sha256": "f6a1fe8a789a566799f23dc409bf87812d7d9f19cbd05df2542b606e6ff09cc6", - "size": 31330, + "blob_sha1": "6935fa06f14dd18d46b359d0d7d9fa9ff0b317df", + "sha256": "dc548704de2dd6c7777f07779ad5926e1a45c0f642e5298a325b626c3dac8caf", + "size": 31358, "kind": "text", "text_encoding": "cp949" }, @@ -37453,9 +37593,9 @@ "legacy_path_hex": "7372632F6D61696E2E63", "legacy_path_cp949": "src/main.c", "normalized_utf8_path": "src/main.c", - "blob_sha1": "18496c3b0beb4c0d43b8e517167ae8cc8685c550", - "sha256": "4f0f289bd8e8a7bb5f795f846258eb6a3526e1bf82f0fdea87c05f8dd89ed1e4", - "size": 3465, + "blob_sha1": "85cf14feb0ae082ce33526adcc5f6eb7c6330b76", + "sha256": "b9864f0bdab49a0f440160c957d77089ded15a0d8b13bec800ccda3030612e0e", + "size": 3492, "kind": "text", "text_encoding": "cp949" }, @@ -37463,9 +37603,9 @@ "legacy_path_hex": "7372632F6D65787465726E2E68", "legacy_path_cp949": "src/mextern.h", "normalized_utf8_path": "src/mextern.h", - "blob_sha1": "94bb41a316b480ba41c81d0f96805ae85fc620d6", - "sha256": "a40abe4a85f657f90ccec5a92f63bb83f25edb7d5d6f472f4c669effd9dd0a36", - "size": 9732, + "blob_sha1": "131b724f78d8a6381041f44b6756126e98c54c2d", + "sha256": "fcac9816d04f2b57dd73a777bc3ebd324db6bc030ef25a883bc7089c032cad3a", + "size": 9861, "kind": "text", "text_encoding": "cp949" }, @@ -37473,9 +37613,9 @@ "legacy_path_hex": "7372632F6D6973632E63", "legacy_path_cp949": "src/misc.c", "normalized_utf8_path": "src/misc.c", - "blob_sha1": "668fa88f6ce36f5fd98f8a0df10076afe3d234ec", - "sha256": "2d602f1ac7d7bae5150d5c677e9a47c1c27caa069cc2956b876ab04bc199f9d0", - "size": 19080, + "blob_sha1": "1bc73eaf87b404a926f900b5f03778228ff4866a", + "sha256": "c20393c75f30e8216e0013c209da77a66a68e23d04a9d56cfbcd2e15fbaae84e", + "size": 19110, "kind": "text", "text_encoding": "cp949" }, @@ -37493,9 +37633,9 @@ "legacy_path_hex": "7372632F6D747970652E68", "legacy_path_cp949": "src/mtype.h", "normalized_utf8_path": "src/mtype.h", - "blob_sha1": "aa2b8543cde90ec7dd1523ec0254ac3cb97c07a9", - "sha256": "6f315b93aee8e5edfc4aefc8d81506566f7a10a8e4af2fe6583b406bee298654", - "size": 24270, + "blob_sha1": "04035e050f3f073ed17bab6e7f92f3a3f5e4cd8d", + "sha256": "2fcdac340f826628cde2d53c08573bf80911955943927ea3f1851606c1ed499a", + "size": 24277, "kind": "text", "text_encoding": "cp949" }, @@ -37589,13 +37729,33 @@ "kind": "text", "text_encoding": "ascii" }, + { + "legacy_path_hex": "7372632F7265736F757263655F706174682E63", + "legacy_path_cp949": "src/resource_path.c", + "normalized_utf8_path": "src/resource_path.c", + "blob_sha1": "0b6531de14529e5170186eadd1faf959b7af8eef", + "sha256": "33c23283fb3912f6ef0609a702c595302ab3122f5d61200c9d7b5e0c587c1118", + "size": 7946, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "7372632F7265736F757263655F706174682E68", + "legacy_path_cp949": "src/resource_path.h", + "normalized_utf8_path": "src/resource_path.h", + "blob_sha1": "21c20736632337538c851d90c5e2cf1e924a5507", + "sha256": "bc06ee5f30bd1df1eefb240519e0ca7e7f4d48a774539676f0ba0bcc97b5b2f7", + "size": 334, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "7372632F726F6F6D2E63", "legacy_path_cp949": "src/room.c", "normalized_utf8_path": "src/room.c", - "blob_sha1": "0bd56eb2267fcb47921fba2b1b9733b4348fb6f4", - "sha256": "0a64be593eaa6d95c86a543fc3815bf19003f6a09ac26819260d0d295a946e27", - "size": 24049, + "blob_sha1": "d4644342708cf893f2c860e299ebde5a1ccc62d7", + "sha256": "7c64ff3a78ed6393bc8719094f30242371e151bd18f7dc39441bb90a3938127f", + "size": 24086, "kind": "text", "text_encoding": "cp949" }, @@ -37653,9 +37813,9 @@ "legacy_path_hex": "7372632F7570646174652E63", "legacy_path_cp949": "src/update.c", "normalized_utf8_path": "src/update.c", - "blob_sha1": "358b2f7d89a1e1b13e0b52796616ca1efd5200b1", - "sha256": "89dfa6815850636c646034393056579fc9b3fab82ab58295d83b6cbecdf2cbf2", - "size": 30105, + "blob_sha1": "54cf6c28a6ce1180da2d76f2622118b3b6d6f650", + "sha256": "5d4be50419ebd79dcd97018b83b06d0674fed6436a1bf1eabd06f2c58873b902", + "size": 30199, "kind": "text", "text_encoding": "cp949" }, @@ -37669,6 +37829,56 @@ "kind": "text", "text_encoding": "cp949" }, + { + "legacy_path_hex": "74657374732F736D6F6B652F636F6D706172655F7265736F6C766572732E7079", + "legacy_path_cp949": "tests/smoke/compare_resolvers.py", + "normalized_utf8_path": "tests/smoke/compare_resolvers.py", + "blob_sha1": "b8edbeb21d4d66f10175af4e037028c277e990c2", + "sha256": "3869e166ce6a5102d299e77a1a288cfec69b49d23b7a4a4b106bfee1084f8458", + "size": 2876, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "74657374732F736D6F6B652F72705F70726F62652E63", + "legacy_path_cp949": "tests/smoke/rp_probe.c", + "normalized_utf8_path": "tests/smoke/rp_probe.c", + "blob_sha1": "4fe642901c6eb8b0a8a768510d76df3db54a7a53", + "sha256": "a534f145c7d05d3fb7fabf40701eb7bdd7f053734ad2efaca1fe4cf16c570db3", + "size": 1411, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "74657374732F736D6F6B652F73657373696F6E5F736D6F6B652E7079", + "legacy_path_cp949": "tests/smoke/session_smoke.py", + "normalized_utf8_path": "tests/smoke/session_smoke.py", + "blob_sha1": "a916aa7766b04c2d20663d81ec63671ab02e654c", + "sha256": "7c7ac7cdde5c27c7b39f59adf1c4e28d522643e2462efecfff58b69b1ff0f703", + "size": 3087, + "kind": "text", + "text_encoding": "utf-8" + }, + { + "legacy_path_hex": "746F6F6C732F7265766976652F657874726163742D6C65676163792D626C6F62732E7368", + "legacy_path_cp949": "tools/revive/extract-legacy-blobs.sh", + "normalized_utf8_path": "tools/revive/extract-legacy-blobs.sh", + "blob_sha1": "7a3b042571508d174d27bd403ca2587a3849f836", + "sha256": "67c883a23e25d1114627ff0bb2928bb1e08f4fb33a63b2c2217667099226de62", + "size": 4570, + "kind": "text", + "text_encoding": "ascii" + }, + { + "legacy_path_hex": "746F6F6C732F7265766976652F7265706F72742D6D697373696E672D70617468732E7368", + "legacy_path_cp949": "tools/revive/report-missing-paths.sh", + "normalized_utf8_path": "tools/revive/report-missing-paths.sh", + "blob_sha1": "dba83ee9f162caf88ab83471f5a5017b1423b2d9", + "sha256": "c87e6aa1e3a0033b4c65986ba34fdadaad056b7a88898883659c8c026596b649", + "size": 1181, + "kind": "text", + "text_encoding": "ascii" + }, { "legacy_path_hex": "7574696C2F4D414B4546494C45", "legacy_path_cp949": "util/MAKEFILE", diff --git a/resources_utf8/.github/workflows/ci.yml b/resources_utf8/.github/workflows/ci.yml new file mode 100644 index 00000000..67f5ca68 --- /dev/null +++ b/resources_utf8/.github/workflows/ci.yml @@ -0,0 +1,160 @@ +name: CI + +on: + push: + +permissions: + contents: read + +jobs: + build-and-smoke: + name: ${{ matrix.runner }} + runs-on: ${{ matrix.runner }} + strategy: + fail-fast: false + matrix: + include: + - runner: ubuntu-latest + smoke_expect_hints: "1" + - runner: ubuntu-22.04-arm + smoke_expect_hints: "0" + - runner: windows-latest + smoke_expect_hints: "1" + - runner: macos-latest + smoke_expect_hints: "1" + + steps: + - name: Checkout (default) + if: matrix.runner != 'macos-latest' + uses: actions/checkout@v4 + + - name: Checkout (macOS sparse, manual) + if: matrix.runner == 'macos-latest' + shell: bash + run: | + set -euo pipefail + git init . + git remote add origin "https://x-access-token:${{ github.token }}@github.com/${{ github.repository }}.git" + git sparse-checkout init --no-cone + printf '%s\n' \ + '/src/' \ + '/tests/' \ + '/resources_manifest/' \ + '/resources_utf8/' \ + '/rooms/' \ + '/post/' \ + '/log/' \ + '/README.md' > .git/info/sparse-checkout + git fetch --no-tags --depth=1 origin "${{ github.sha }}" + git checkout --force FETCH_HEAD + + - name: Setup Python (Linux/macOS) + if: matrix.runner != 'windows-latest' + uses: actions/setup-python@v5 + with: + python-version: "3.11" + + - name: Setup MSYS2 (Windows) + if: matrix.runner == 'windows-latest' + uses: msys2/setup-msys2@v2 + with: + update: true + install: >- + make + gcc + python + + - name: Install build deps (Ubuntu) + if: startsWith(matrix.runner, 'ubuntu') + shell: bash + run: | + set -euo pipefail + sudo apt-get update + sudo apt-get install -y build-essential + + - name: Build (Linux/macOS) + if: matrix.runner != 'windows-latest' + shell: bash + run: | + set -euo pipefail + make -C src clean >/dev/null 2>&1 || true + if [[ "${{ matrix.runner }}" == ubuntu* ]]; then + make -C src -j"$(getconf _NPROCESSORS_ONLN || echo 2)" CC=gcc + else + make -C src -j"$(getconf _NPROCESSORS_ONLN || echo 2)" CC=cc + fi + + - name: Build (Windows/MSYS2) + if: matrix.runner == 'windows-latest' + shell: msys2 {0} + run: | + set -euo pipefail + make -C src clean >/dev/null 2>&1 || true + make -C src -j2 CC=gcc + + - name: Smoke test (Linux/macOS) + if: matrix.runner != 'windows-latest' + shell: bash + run: | + set -euo pipefail + export MUHAN_HOME="$GITHUB_WORKSPACE" + log_file="/tmp/frp.log" + port="$((40000 + RANDOM % 1000))" + + ./src/frp.new -r "$port" >"$log_file" 2>&1 & + pid=$! + + cleanup() { + kill -9 "$pid" >/dev/null 2>&1 || true + wait "$pid" 2>/dev/null || true + } + trap cleanup EXIT + + sleep 2 + if ! kill -0 "$pid" >/dev/null 2>&1; then + echo "smoke failed: server exited immediately" + tail -n 200 "$log_file" || true + exit 1 + fi + + if ! MUD_PORT="$port" SMOKE_EXPECT_HINTS='${{ matrix.smoke_expect_hints }}' python tests/smoke/session_smoke.py; then + echo "smoke failed: session scenario" + tail -n 200 "$log_file" || true + exit 1 + fi + + - name: Smoke test (Windows/MSYS2) + if: matrix.runner == 'windows-latest' + shell: msys2 {0} + run: | + set -euo pipefail + export MUHAN_HOME="$(pwd)" + log_file="/tmp/frp.log" + bin="./src/frp.new" + port="$((40000 + RANDOM % 1000))" + + if [[ ! -x "$bin" && -x "./src/frp.new.exe" ]]; then + bin="./src/frp.new.exe" + fi + + "$bin" -r "$port" >"$log_file" 2>&1 & + pid=$! + + cleanup() { + kill -9 "$pid" >/dev/null 2>&1 || true + wait "$pid" 2>/dev/null || true + } + trap cleanup EXIT + + sleep 2 + if ! kill -0 "$pid" >/dev/null 2>&1; then + echo "smoke failed: server exited immediately" + tail -n 200 "$log_file" || true + exit 1 + fi + + if ! MUD_PORT="$port" SMOKE_EXPECT_HINTS='${{ matrix.smoke_expect_hints }}' python tests/smoke/session_smoke.py; then + echo "smoke failed: session scenario" + tail -n 200 "$log_file" || true + exit 1 + fi diff --git a/resources_utf8/README.md b/resources_utf8/README.md new file mode 100644 index 00000000..ea728fd4 --- /dev/null +++ b/resources_utf8/README.md @@ -0,0 +1,102 @@ +# 무한대전(MUHAN) 레거시 MUD 복구 프로ì �트 + +무한대전ì�€ 1990년대 스타ì�¼ì�˜ í…�스트 기반 MUD(Multi-User Dungeon) 게임입니다. +ì�´ 저장소는 오래ë�œ C 코드베ì�´ìŠ¤ì™€ 게임 리소스를 현대 개발환경(특히 Linux 컨테ì�´ë„ˆ)ì—�서 다시 구ë�™í•  수 있ë�„ë¡� 복구하는 작업ì�„ ë‹´ê³  있습니다. + +## 게임 개요 +- 장르: í…�스트 기반 온ë�¼ì�¸ RPG(MUD) +- 핵심 요소: ë°©/ì�´ë�™/전투/NPC 대화/플레ì�´ì–´ 저장 +- 기술 특성: 레거시 C 소스 + 다수ì�˜ 파ì�¼ 기반 리소스 + +## 복구 ë°°ê²½ +기존 코드/ë�°ì�´í„°ëŠ” 다ì�Œ 문제를 가지고 있었습니다. +- 비ASCII(주로 CP949 계열) 파ì�¼ëª…으로 ì�¸í•´ macOSì—�서 ì²´í�¬ì•„웃 불가 파ì�¼ ë°œìƒ� +- 레거시 컴파ì�¼ 관행(구ì‹� ì„ ì–¸/시그니처/í—¤ë�” 누ë�½)으로 최신 툴체ì�¸ì—�서 빌드 실패 +- 리소스 경로가 과거 ë°”ì�´íЏ 경로ì—� 강하게 ê²°í•©ë�˜ì–´ ì�´ì‹�성 저하 + +## ì�´ë²ˆ 복구ì�˜ 핵심 +1. **리소스 ë³µì›� ë°� 정규화** +- Git blob 기반으로 누ë�½ 리소스를 복구 +- `resources_utf8/`ì—� UTF-8 안전 경로 트리 구성 +- `resources_manifest/resource-map.v1.json` + `path-alias.v1.tsv` ìƒ�성 + +2. **C 런타임 경로 í•´ì„� 계층 ë�„ìž…** +- 레거시 ë°”ì�´íЏ 경로 -> 정규화 경로 í•´ì„�기 추가 +- 주요 파ì�¼ ì ‘ê·¼ ì§€ì �(`talk/ddesc/help/player`)ì—� í•´ì„� 계층 ì �ìš© +- `MUHAN_HOME` 환경변수로 런타임 루트 오버ë�¼ì�´ë“œ ì§€ì›� + +3. **현대 빌드/실행 ë³µì›�** +- GNU89 기반 빌드로 ë³µì›� +- Linux amd64 컨테ì�´ë„ˆì—�서 서버 빌드 ë°� 부팅 가능 +- 스모í�¬ 테스트 스í�¬ë¦½íŠ¸ë¡œ 핵심 시나리오 ìž�ë�™ ê²€ì¦� + +4. **Rust 2단계 기반 마련** +- 리소스 ì�¸ë�±ìФ/경로 í•´ì„�ì�„ Rust í�¬ë ˆì�´íŠ¸ë¡œ 분리 +- C <-> Rust FFI 경로 í•´ì„� ì�¸í„°íŽ˜ì�´ìФ ì—°ê²° +- C resolver와 Rust resolver ê²°ê³¼ ë�™ì¹˜ ê²€ì¦� ë�„구 제공 + +## 빠른 실행 +```bash +# 1) 누ë�½ 경로 리í�¬íЏ +./tools/revive/report-missing-paths.sh + +# 2) 리소스 정규화/manifest 재ìƒ�성 +./tools/revive/extract-legacy-blobs.sh resources_utf8 resources_manifest + +# 3) 통합 스모í�¬(C-only + Rust resolver) +./scripts/run-smoke.sh +``` + +## 디렉터리 ê°€ì�´ë“œ +- `tools/revive/`: 복구 유틸리티 스í�¬ë¦½íЏ +- `resources_utf8/`: 정규화ë�œ 리소스 트리 +- `resources_manifest/`: 경로/리소스 매핑 ë�°ì�´í„° +- `src/`: 레거시 C 서버 소스 + 경로 í•´ì„� 계층 +- `rust/`: 리소스 ì�¸ë�±ìФ/FFI í�¬ë ˆì�´íЏ +- `scripts/`, `tests/smoke/`: 빌드/부팅/회귀 ê²€ì¦� ìž�ë�™í™” +- `docs/revive/`: 기준선/복구 메모 + +## 참고 +- ì›�본 레거시 ë�°ì�´í„°ì�˜ ë°”ì�´íЏ 경로 정보는 manifestì—� ë³´ì¡´ë�©ë‹ˆë‹¤. +- macOS 네ì�´í‹°ë¸Œë³´ë‹¤ Linux 컨테ì�´ë„ˆ 기반 실행ì�„ ìš°ì„  권장합니다. + +## macOS 호환 패치 ë‚´ì—­ +- 브랜치: `feat/macos-compat` +- 목ì �: macOS(Apple clang)ì—�서 네ì�´í‹°ë¸Œ 빌드/기ë�™ì�´ 가능하ë�„ë¡� 레거시 C 코드 호환성 ë³´ê°• +주요 수정: +- 누ë�½ 함수 ì„ ì–¸ ë³´ê°•(`scwrite`, `broadcast_eaves`, `find_enm_crt`, `special_cmd`, `log_fl`, `log_dmcmd`) +- `qsort` 비êµ� 함수 시그니처를 표준형(`const void *`)으로 맞춤 +- `command8.c`ì—� `` 추가(문ìž� 분류 함수 ì„ ì–¸ 누ë�½ í•´ê²°) +- `isnumber` ì�´ë¦„ì�„ `is_number_str`로 변경(macOS libc 심볼 ì¶©ë�Œ 회피) +- `load_family()`ì—�서 `fopen` 실패 시 `NULL` ì²´í�¬ 추가(시작 시 segfault ë°©ì§€) +- macOSì—�서 clang 경고를 오류로 승격하지 않ë�„ë¡� `src/Makefile`ì—� Darwin ì „ìš© 완화 플래그 추가 + +## 플랫í�¼ë³„ 컴파ì�¼/실행 명령 +아래 명령ì�€ 모ë‘� 저장소 루트ì—�서 실행합니다. + +### macOS 네ì�´í‹°ë¸Œ (Apple clang) +```bash +# 컴파ì�¼ +make -C src -j1 CC=cc + +# 실행 +MUHAN_HOME="$PWD" ./src/frp.new -r 4102 +``` + +### Linux (Docker, C-only 권장) +```bash +# 컴파ì�¼ +./scripts/build-legacy.sh c + +# 실행(스모í�¬ í�¬í•¨) +./scripts/run-smoke.sh +``` + +### Linux (Docker, Rust resolver í�¬í•¨) +```bash +# 컴파ì�¼(Rust FFI + C 서버) +./scripts/build-legacy.sh rust + +# 실행 ë°� ê²€ì¦�(C-only + Rust resolver 통합 스모í�¬) +./scripts/run-smoke.sh +``` diff --git a/resources_utf8/docker/legacy-runtime.Dockerfile b/resources_utf8/docker/legacy-runtime.Dockerfile new file mode 100644 index 00000000..07d84b6c --- /dev/null +++ b/resources_utf8/docker/legacy-runtime.Dockerfile @@ -0,0 +1,11 @@ +FROM --platform=linux/amd64 rust:1.77 + +WORKDIR /work +ENV MUHAN_HOME=/work + +# Keep runtime tooling explicit for smoke/debug sessions. +RUN apt-get update \ + && apt-get install -y --no-install-recommends python3 ca-certificates \ + && rm -rf /var/lib/apt/lists/* + +CMD ["bash"] diff --git a/resources_utf8/docs/revive/baseline.md b/resources_utf8/docs/revive/baseline.md new file mode 100644 index 00000000..0247e3c6 --- /dev/null +++ b/resources_utf8/docs/revive/baseline.md @@ -0,0 +1,53 @@ +# Muhan Revival Baseline + +## Snapshot +- Repository: `/Users/comfuture/Project/muhan` +- Commit (HEAD): `4266c30752d5ab8351b29d5b9c4897654cf0741d` +- Date: 2026-02-08 + +## Filesystem vs HEAD +- Total tracked paths in HEAD: `3803` +- Existing on macOS checkout: `3711` +- Missing due filename/encoding constraints: `92` +- Missing by top-level directory: +- `help`: `1` +- `objmon`: `89` +- `player`: `2` + +Reference command: +```bash +tools/revive/report-missing-paths.sh +``` + +## Resource normalization outputs +- Normalized resource tree: `resources_utf8/` +- Manifest: `resources_manifest/resource-map.v1.json` +- Alias table: `resources_manifest/path-alias.v1.tsv` +- Manifest entries: `3803` +- Paths containing non-ASCII bytes in legacy tree: `92` + +Reference command: +```bash +tools/revive/extract-legacy-blobs.sh resources_utf8 resources_manifest +``` + +## Known compile baseline (before fixes) +- Legacy code requires GNU89 compatibility behavior. +- Primary hard blockers observed: +- `Port` multiple definition (`src/mtype.h` defines storage in header). +- `enemy_status` function pointer signature mismatch in command table. +- Many implicit function declaration/header issues on modern compilers. + +## Repro commands +```bash +# Missing path report +tools/revive/report-missing-paths.sh + +# Generate normalized resources + manifests +tools/revive/extract-legacy-blobs.sh resources_utf8 resources_manifest + +# Linux container compile (legacy baseline) +docker run --rm --platform linux/amd64 \ + -v "$(pwd)":/work -w /work gcc:14 bash -lc \ + 'make -C src clean >/dev/null 2>&1 || true; make -C src CC=gcc -j4' +``` diff --git a/resources_utf8/help/star b/resources_utf8/help/star deleted file mode 100644 index 01a95dbf..00000000 --- a/resources_utf8/help/star +++ /dev/null @@ -1,22 +0,0 @@ -DM *commands -Many of these commands have options or require parameters. -Type help * to find the correct syntax and options. -*********************************************************************** - *¹æ¾î·Â *Ȱ¼º *¹æÁ¦ÀÛ - *Ãß°¡ *°ø°Ý *¹æ¼Û - *âÁ¶ *µû¸£±â *ÃÖ¸é - *±«¹°À̸§ *Áö¿ì±â *µµ¿ò¸» - *º­¶ôÄ¡±â *°øÁö *Àû - *ÇΰŠ*Àç¼³Á¤ *¸ðµçÀúÀå - *°­Á¦ *ÀüÁÖ¹® *±×·ì - *Á¤º¸ *Åõ¸í *¸®½ºÆ® - *Á¦ÇÑ *Á¢¼Ó *±«¹° - *¹æÀ̸§ *¸Þ¸ð *¹°°ÇÀ̸§ - *¼öÄ¡ *¿µ¿ø *¼­¾ð - *¾ø¾Ö±â *·Îµå *±³Ã¼ - *¹æ¹øÈ£ *¼¼À̺ê *ÀüÇϱâ - *¼³Á¤ *Á¾·á *º¡¾î¸® - *°¨½Ã *»óÅ *¼ø°£À̵¿ - *´©±¸ -*********************************************************************** -NOTE: Eavesdrop function is not a *. Set the DM's flag #16. diff --git "a/help/\246\263\251\253" "b/resources_utf8/help/\342\224\263\305\223" similarity index 100% rename from "help/\246\263\251\253" rename to "resources_utf8/help/\342\224\263\305\223" diff --git a/resources_utf8/rust/.gitignore b/resources_utf8/rust/.gitignore new file mode 100644 index 00000000..ea8c4bf7 --- /dev/null +++ b/resources_utf8/rust/.gitignore @@ -0,0 +1 @@ +/target diff --git a/resources_utf8/rust/Cargo.lock b/resources_utf8/rust/Cargo.lock new file mode 100644 index 00000000..363617ec --- /dev/null +++ b/resources_utf8/rust/Cargo.lock @@ -0,0 +1,137 @@ +# This file is automatically @generated by Cargo. +# It is not intended for manual editing. +version = 3 + +[[package]] +name = "bitflags" +version = "2.10.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "812e12b5285cc515a9c72a5c1d3b6d46a19dac5acfef5265968c166106e31dd3" + +[[package]] +name = "cfg-if" +version = "1.0.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9330f8b2ff13f34540b44e946ef35111825727b38d33286ef986142615121801" + +[[package]] +name = "errno" +version = "0.3.14" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "39cab71617ae0d63f51a36d69f866391735b51691dbda63cf6f96d042b63efeb" +dependencies = [ + "libc", + "windows-sys", +] + +[[package]] +name = "fastrand" +version = "2.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37909eebbb50d72f9059c3b6d82c0463f2ff062c9e95845c43a6c9c0355411be" + +[[package]] +name = "getrandom" +version = "0.3.4" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "899def5c37c4fd7b2664648c28120ecec138e4d395b459e5ca34f9cce2dd77fd" +dependencies = [ + "cfg-if", + "libc", + "r-efi", + "wasip2", +] + +[[package]] +name = "libc" +version = "0.2.180" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "bcc35a38544a891a5f7c865aca548a982ccb3b8650a5b06d0fd33a10283c56fc" + +[[package]] +name = "linux-raw-sys" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "df1d3c3b53da64cf5760482273a98e575c651a67eec7f77df96b5b642de8f039" + +[[package]] +name = "muhan-resource-ffi" +version = "0.1.0" +dependencies = [ + "muhan-resource-index", +] + +[[package]] +name = "muhan-resource-index" +version = "0.1.0" +dependencies = [ + "tempfile", +] + +[[package]] +name = "once_cell" +version = "1.21.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "42f5e15c9953c5e4ccceeb2e7382a716482c34515315f7b03532b8b4e8393d2d" + +[[package]] +name = "r-efi" +version = "5.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "69cdb34c158ceb288df11e18b4bd39de994f6657d83847bdffdbd7f346754b0f" + +[[package]] +name = "rustix" +version = "1.1.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "146c9e247ccc180c1f61615433868c99f3de3ae256a30a43b49f67c2d9171f34" +dependencies = [ + "bitflags", + "errno", + "libc", + "linux-raw-sys", + "windows-sys", +] + +[[package]] +name = "tempfile" +version = "3.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "655da9c7eb6305c55742045d5a8d2037996d61d8de95806335c7c86ce0f82e9c" +dependencies = [ + "fastrand", + "getrandom", + "once_cell", + "rustix", + "windows-sys", +] + +[[package]] +name = "wasip2" +version = "1.0.2+wasi-0.2.9" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9517f9239f02c069db75e65f174b3da828fe5f5b945c4dd26bd25d89c03ebcf5" +dependencies = [ + "wit-bindgen", +] + +[[package]] +name = "windows-link" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f0805222e57f7521d6a62e36fa9163bc891acd422f971defe97d64e70d0a4fe5" + +[[package]] +name = "windows-sys" +version = "0.61.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ae137229bcbd6cdf0f7b80a31df61766145077ddf49416a728b02cb3921ff3fc" +dependencies = [ + "windows-link", +] + +[[package]] +name = "wit-bindgen" +version = "0.51.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d7249219f66ced02969388cf2bb044a09756a083d0fab1e566056b04d9fbcaa5" diff --git a/resources_utf8/rust/Cargo.toml b/resources_utf8/rust/Cargo.toml new file mode 100644 index 00000000..57571c9e --- /dev/null +++ b/resources_utf8/rust/Cargo.toml @@ -0,0 +1,6 @@ +[workspace] +members = [ + "muhan-resource-index", + "muhan-resource-ffi", +] +resolver = "2" diff --git a/resources_utf8/rust/muhan-resource-ffi/Cargo.toml b/resources_utf8/rust/muhan-resource-ffi/Cargo.toml new file mode 100644 index 00000000..258ba335 --- /dev/null +++ b/resources_utf8/rust/muhan-resource-ffi/Cargo.toml @@ -0,0 +1,10 @@ +[package] +name = "muhan-resource-ffi" +version = "0.1.0" +edition = "2021" + +[lib] +crate-type = ["staticlib", "cdylib"] + +[dependencies] +muhan-resource-index = { path = "../muhan-resource-index" } diff --git a/resources_utf8/rust/muhan-resource-ffi/src/lib.rs b/resources_utf8/rust/muhan-resource-ffi/src/lib.rs new file mode 100644 index 00000000..8eaf7b59 --- /dev/null +++ b/resources_utf8/rust/muhan-resource-ffi/src/lib.rs @@ -0,0 +1,66 @@ +use muhan_resource_index::{load_alias_tsv, resolve_from_map, AliasMap}; +use std::ffi::CStr; +use std::os::raw::{c_char, c_int}; +use std::ptr; +use std::sync::OnceLock; + +static MAP: OnceLock = OnceLock::new(); + +#[no_mangle] +pub extern "C" fn mr_manifest_load(manifest_path: *const c_char) -> c_int { + if manifest_path.is_null() { + return -1; + } + + let path = unsafe { CStr::from_ptr(manifest_path) }; + let path = match path.to_str() { + Ok(v) => v, + Err(_) => return -1, + }; + + let loaded = match load_alias_tsv(path) { + Ok(m) => m, + Err(_) => return -1, + }; + + if MAP.set(loaded).is_err() { + // already initialized; treat as success + return 0; + } + + 0 +} + +#[no_mangle] +pub extern "C" fn mr_resolve_legacy_path( + legacy_path: *const c_char, + out: *mut c_char, + out_len: usize, +) -> c_int { + if legacy_path.is_null() || out.is_null() || out_len == 0 { + return -1; + } + + let map = match MAP.get() { + Some(m) => m, + None => return -1, + }; + + let path_bytes = unsafe { CStr::from_ptr(legacy_path) }.to_bytes(); + let normalized = match resolve_from_map(map, path_bytes) { + Some(v) => v, + None => return -1, + }; + + let bytes = normalized.as_bytes(); + if bytes.len() + 1 > out_len { + return -1; + } + + unsafe { + ptr::copy_nonoverlapping(bytes.as_ptr(), out as *mut u8, bytes.len()); + *out.add(bytes.len()) = 0; + } + + 0 +} diff --git a/resources_utf8/rust/muhan-resource-index/Cargo.toml b/resources_utf8/rust/muhan-resource-index/Cargo.toml new file mode 100644 index 00000000..61015e90 --- /dev/null +++ b/resources_utf8/rust/muhan-resource-index/Cargo.toml @@ -0,0 +1,9 @@ +[package] +name = "muhan-resource-index" +version = "0.1.0" +edition = "2021" + +[dependencies] + +[dev-dependencies] +tempfile = "3" diff --git a/resources_utf8/rust/muhan-resource-index/src/lib.rs b/resources_utf8/rust/muhan-resource-index/src/lib.rs new file mode 100644 index 00000000..5ac569cd --- /dev/null +++ b/resources_utf8/rust/muhan-resource-index/src/lib.rs @@ -0,0 +1,66 @@ +use std::collections::HashMap; +use std::fs; +use std::path::Path; + +pub type AliasMap = HashMap; + +pub fn legacy_path_hex(path_bytes: &[u8]) -> String { + let mut s = String::with_capacity(path_bytes.len() * 2); + for b in path_bytes { + s.push_str(&format!("{:02X}", b)); + } + s +} + +pub fn load_alias_tsv>(path: P) -> std::io::Result { + let text = fs::read_to_string(path)?; + let mut map = AliasMap::new(); + + for (idx, line) in text.lines().enumerate() { + if idx == 0 && line.starts_with("legacy_path_hex\t") { + continue; + } + if line.trim().is_empty() { + continue; + } + let mut it = line.split('\t'); + let legacy_hex = it.next().unwrap_or("").trim(); + let _legacy_cp949 = it.next().unwrap_or(""); + let normalized = it.next().unwrap_or("").trim(); + if !legacy_hex.is_empty() && !normalized.is_empty() { + map.insert(legacy_hex.to_string(), normalized.to_string()); + } + } + + Ok(map) +} + +pub fn resolve_from_map<'a>(map: &'a AliasMap, legacy_path_bytes: &[u8]) -> Option<&'a str> { + let key = legacy_path_hex(legacy_path_bytes); + map.get(&key).map(String::as_str) +} + +#[cfg(test)] +mod tests { + use super::*; + use std::io::Write; + + #[test] + fn test_hex() { + assert_eq!(legacy_path_hex(b"objmon/talk"), "6F626A6D6F6E2F74616C6B"); + } + + #[test] + fn test_load_and_resolve() { + let mut f = tempfile::NamedTempFile::new().unwrap(); + writeln!( + f, + "legacy_path_hex\tlegacy_path_cp949\tnormalized_utf8_path\tblob_sha1\n6F626A\tobj\tobj_utf8\tdeadbeef" + ) + .unwrap(); + + let map = load_alias_tsv(f.path()).unwrap(); + assert_eq!(resolve_from_map(&map, b"obj"), Some("obj_utf8")); + assert_eq!(resolve_from_map(&map, b"none"), None); + } +} diff --git a/resources_utf8/scripts/build-legacy.sh b/resources_utf8/scripts/build-legacy.sh new file mode 100644 index 00000000..a9d3c492 --- /dev/null +++ b/resources_utf8/scripts/build-legacy.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +set -euo pipefail + +repo_root="$(cd "$(dirname "$0")/.." && pwd)" +mode="${1:-c}" + +if [[ "$mode" == "c" ]]; then + exec docker run --rm --platform linux/amd64 \ + -v "$repo_root:/work" \ + -w /work \ + gcc:14 bash -lc ' + set -euo pipefail + make -C src clean >/dev/null 2>&1 || true + make -C src -j4 CC=gcc + ' +fi + +if [[ "$mode" == "rust" ]]; then + docker run --rm --platform linux/amd64 \ + -v "$repo_root:/work" \ + -w /work/rust \ + rust:1.77 bash -lc ' + set -euo pipefail + export PATH="/usr/local/cargo/bin:$PATH" + cargo build -p muhan-resource-ffi --release + ' + + exec docker run --rm --platform linux/amd64 \ + -v "$repo_root:/work" \ + -w /work \ + gcc:14 bash -lc ' + set -euo pipefail + make -C src clean >/dev/null 2>&1 || true + make -C src -j4 CC=gcc USE_RUST_RESOLVER=1 RUST_FFI_LIB=/work/rust/target/release/libmuhan_resource_ffi.a + ' +fi + +echo "unknown mode: $mode (expected: c|rust)" >&2 +exit 2 diff --git a/resources_utf8/scripts/run-smoke.sh b/resources_utf8/scripts/run-smoke.sh new file mode 100644 index 00000000..83ac595e --- /dev/null +++ b/resources_utf8/scripts/run-smoke.sh @@ -0,0 +1,92 @@ +#!/usr/bin/env bash +set -euo pipefail + +repo_root="$(cd "$(dirname "$0")/.." && pwd)" + +run_server_smoke() { + local image="$1" + local label="$2" + local port="$3" + + echo "[${label}] boot + session smoke (port=${port})" + docker run --rm --platform linux/amd64 \ + -e MUD_PORT="$port" \ + -v "$repo_root:/work" \ + -w /work \ + "$image" bash -lc ' + set -euo pipefail + mkdir -p /home + ln -sfn /work /home/muhan + export MUHAN_HOME=/work + + ./src/frp.new -r "$MUD_PORT" >/tmp/frp.log 2>&1 & + pid=$! + trap "kill -9 $pid >/dev/null 2>&1 || true" EXIT + + sleep 1 + if ! kill -0 "$pid" >/dev/null 2>&1; then + echo "smoke failed: server exited immediately" >&2 + echo "----- /tmp/frp.log (tail) -----" >&2 + tail -n 200 /tmp/frp.log >&2 || true + exit 1 + fi + + if ! python3 tests/smoke/session_smoke.py; then + echo "smoke failed: session scenario" >&2 + echo "----- /tmp/frp.log (tail) -----" >&2 + tail -n 200 /tmp/frp.log >&2 || true + exit 1 + fi + + if ! kill -0 "$pid" >/dev/null 2>&1; then + echo "smoke failed: server exited early" >&2 + echo "----- /tmp/frp.log (tail) -----" >&2 + tail -n 200 /tmp/frp.log >&2 || true + exit 1 + fi + ' +} + +echo "[c-only] build" +"$repo_root/scripts/build-legacy.sh" c +run_server_smoke gcc:14 "c-only" 4100 + +echo "[rust-resolver] build" +"$repo_root/scripts/build-legacy.sh" rust + +echo "[rust-resolver] resolver parity" +docker run --rm --platform linux/amd64 \ + -v "$repo_root:/work" \ + -w /work \ + gcc:14 bash -lc ' + set -euo pipefail + export MUHAN_HOME=/work + + gcc -std=gnu89 -fcommon -finput-charset=cp949 -I src \ + tests/smoke/rp_probe.c src/resource_path.c -o /tmp/rp_probe_c + + gcc -std=gnu89 -fcommon -finput-charset=cp949 -DUSE_RUST_RESOLVER -I src \ + tests/smoke/rp_probe.c src/resource_path.c \ + /work/rust/target/release/libmuhan_resource_ffi.a -ldl -lpthread \ + -o /tmp/rp_probe_rust + + python3 tests/smoke/compare_resolvers.py \ + --probe-a /tmp/rp_probe_c \ + --probe-b /tmp/rp_probe_rust \ + --manifest /work/resources_manifest/resource-map.v1.json \ + --muhan-home /work + ' + +run_server_smoke gcc:14 "rust-resolver" 4101 + +echo "[rust] unit tests" +docker run --rm --platform linux/amd64 \ + -v "$repo_root:/work" \ + -w /work/rust \ + rust:1.77 bash -lc ' + set -euo pipefail + export PATH="/usr/local/cargo/bin:$PATH" + cargo test --workspace + ' + +echo "smoke completed" diff --git a/resources_utf8/src/Makefile b/resources_utf8/src/Makefile index bdb255ee..28cf9f67 100644 --- a/resources_utf8/src/Makefile +++ b/resources_utf8/src/Makefile @@ -6,10 +6,24 @@ # -DNODUPLE ¿É¼ÇÀ» ³Ö¾îÁֱ⸦ ¹Ù¶÷. # Å©·ÎŰ ·¹º§ Á¦ÇÑÀ» µÎ°í ½ÍÁö ¾ÊÀº °æ¿ì, -DOBJLEVEL À» »èÁ¦ÇØ ÁÖ¸é µÊ. -CFLAGS = -g -O2 -DFINGERACCT -DCHECKDOUBLE -DSUICIDE -DOBJLEVEL -DDEBUG +LEGACY_CHARSET_FLAGS ?= +CFLAGS = -g -O2 -std=gnu89 -fcommon -DFINGERACCT -DCHECKDOUBLE -DSUICIDE -DOBJLEVEL -DDEBUG $(LEGACY_CHARSET_FLAGS) + +ifeq ($(shell uname -s),Darwin) +CFLAGS += -Wno-error=implicit-function-declaration -Wno-error=return-mismatch -Wno-error=incompatible-function-pointer-types +endif + LIBS = -lm CC = cc OUTFILE = frp.new +EXTRA_LIBS = + +ifeq ($(USE_RUST_RESOLVER),1) +CFLAGS += -DUSE_RUST_RESOLVER +RUST_FFI_LIB ?= ../rust/target/release/libmuhan_resource_ffi.a +EXTRA_LIBS += $(RUST_FFI_LIB) -ldl -lpthread +endif + OBJECTS = global.o main.o files1.o files2.o files3.o bank.o command1.o command2.o \ command3.o command4.o command5.o command6.o command7.o \ @@ -17,10 +31,10 @@ OBJECTS = global.o main.o files1.o files2.o files3.o bank.o command1.o command2. magic3.o magic4.o magic5.o magic6.o magic7.o magic8.o \ dm1.o dm2.o dm3.o dm4.o dm5.o dm6.o io.o \ player.o creature.o room.o object.o update.o post.o action.o misc.o \ - special1.o compress.o alias.o board.o + special1.o compress.o alias.o board.o resource_path.o $(OUTFILE): $(OBJECTS) - $(CC) $(CFLAGS) $(OBJECTS) -o $(OUTFILE) $(LIBS) + $(CC) $(CFLAGS) $(OBJECTS) -o $(OUTFILE) $(LIBS) $(EXTRA_LIBS) chmod 777 $(OUTFILE) # strip $(OUTFILE) diff --git a/resources_utf8/src/command1.c b/resources_utf8/src/command1.c index d654ac92..5634779b 100644 --- a/resources_utf8/src/command1.c +++ b/resources_utf8/src/command1.c @@ -10,6 +10,7 @@ #include "kstbl.h" #include "mstruct.h" #include "mextern.h" +#include "resource_path.h" #include #ifndef WIN32 @@ -84,7 +85,7 @@ char file[80]; str[25]=0; sprintf(tmp,"%s/%s/%s",PLAYERPATH,first_han(str),str); last_login[fd]=0; - if (!stat(tmp,&f_stat)) last_login[fd]=f_stat.st_ctime; + if (!rp_stat(tmp,&f_stat)) last_login[fd]=f_stat.st_ctime; if(load_ply(str, &ply_ptr) < 0) { strcpy(Ply[fd].extr->tempstr[0], str); @@ -427,7 +428,7 @@ input which causes a crash. */ logn("all_cmd","\n%s-%d (%d): %s\n",Ply[fd].ply->name,fd,Ply[fd].ply->rom_num,str); -#endif RECORD_ALL +#endif /* RECORD_ALL */ switch(param) { case 1: @@ -610,7 +611,7 @@ cmd *cmnd; Ply[fd].ply->class!=ZONEMAKER))) { print(fd, "\"%s\": ÀÌ·± ¸í·É¾î´Â ¾ø³×¿ä.", cmnd->str[0]); - RETURN(fd, command, 1); + Ply[fd].io->fn = command; Ply[fd].io->fnparam = 1; return(0); } /* °¡Àå ºñ½ÁÇÑ ¸í·É¾î¸¦ ¾²±â À§ÇØ ¼öÁ¤.. ¿©·¯ ³¹¸»ÀÌ ³ª¿Ã°æ¿ì ¿¡·¯Ã³¸®=>»ç¿ë else if(match > 1) { @@ -640,7 +641,7 @@ char *name; int rtn=0; sprintf(path, "%s/simul/%s", PLAYERPATH, name); - fp = fopen(path, "r"); + fp = rp_fopen(path, "r"); if(!fp) return(0); diff --git a/resources_utf8/src/command11.c b/resources_utf8/src/command11.c index 0838efb9..4b3f5aba 100644 --- a/resources_utf8/src/command11.c +++ b/resources_utf8/src/command11.c @@ -479,6 +479,8 @@ int load_family() sprintf(file, "%s/family/family_list", PLAYERPATH); fp = fopen(file, "r"); + if(!fp) + return(0); fnum =0 ; do { diff --git a/resources_utf8/src/command4.c b/resources_utf8/src/command4.c index 0c17f2f8..796096e1 100644 --- a/resources_utf8/src/command4.c +++ b/resources_utf8/src/command4.c @@ -9,6 +9,7 @@ #include "mstruct.h" #include "mextern.h" +#include "resource_path.h" #ifndef WIN32 @@ -20,6 +21,22 @@ #include +static int spell_name_cmp(const void *a, const void *b) +{ + return(strcmp((const char *)a, (const char *)b)); +} + +static void view_file_resolved(fd, file) +int fd; +char *file; +{ + char resolved[512]; + if(resolve_legacy_path(file, resolved, sizeof(resolved)) == 0) + view_file(fd, 1, resolved); + else + view_file(fd, 1, file); +} + /**********************************************************************/ /* health */ /**********************************************************************/ @@ -128,18 +145,18 @@ cmd *cmnd; if(cmnd->num < 2) { strcat(file, "/helpfile"); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } if(!strcmp(cmnd->str[1], "ÁÖ¼ú")) { strcat(file, "/spellfile"); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } if(!strcmp(cmnd->str[1], "Á¤Ã¥")) { strcat(file, "/policy"); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } @@ -161,7 +178,7 @@ cmd *cmnd; if(match == 1) { sprintf(file, "%s/help.%d", DOCPATH, cmdlist[num].cmdno); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } else if(match > 1) { @@ -198,7 +215,7 @@ cmd *cmnd; */ sprintf(file, "%s/spell.%d", DOCPATH, spllist[num].splno); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } @@ -220,7 +237,7 @@ cmd *cmnd; sprintf(file, "%s/welcome", DOCPATH); - view_file(fd, 1, file); + view_file_resolved(fd, file); return(DOPROMPT); } @@ -341,7 +358,7 @@ char *instr; if(!j) strcat(str, "¾øÀ½."); else { - qsort((void *)spl, j, 20, strcmp); + qsort((void *)spl, j, 20, spell_name_cmp); for(i=0; i + /**********************************************************************/ /* give */ /**********************************************************************/ @@ -734,7 +736,7 @@ cmd *cmnd; } } - if(!dum_ptr->name[0]) return; + if(!dum_ptr->name[0]) return(0); if(save_ply(dum_ptr->name, dum_ptr) < 0) merror("savegame", NONFATAL); @@ -772,7 +774,7 @@ creature *ply_ptr; } } - if(!dum_ptr->name[0]) return; + if(!dum_ptr->name[0]) return(0); if(save_ply(dum_ptr->name, dum_ptr) < 0) merror("savegame", NONFATAL); @@ -1335,7 +1337,7 @@ cmd *cmnd; } -void enemy_status(ply_ptr, cmnd) +int enemy_status(ply_ptr, cmnd) creature *ply_ptr; cmd *cmnd; { @@ -1350,13 +1352,13 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PBLIND)) { print(fd, "¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù!\n"); - return; + return(0); } if(crt_ptr==NULL) { if(cmnd->num < 2) { print(fd, "´©±¸ÀÇ »óŸ¦ º¸½Ã°Ú½À´Ï±î?\n"); - return; + return(0); } crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, @@ -1365,11 +1367,12 @@ cmd *cmnd; if(crt_ptr==NULL) { print(fd, "±×·±°ÍÀº ¿©±â¿¡ ¾ø½À´Ï´Ù.\n"); - return; + return(0); } print(fd, "%s : ", crt_ptr->name); display_status(fd, crt_ptr); print(fd, "\n"); + return(0); } diff --git a/resources_utf8/src/compat_legacy.h b/resources_utf8/src/compat_legacy.h new file mode 100644 index 00000000..68dd8efe --- /dev/null +++ b/resources_utf8/src/compat_legacy.h @@ -0,0 +1,14 @@ +#ifndef COMPAT_LEGACY_H +#define COMPAT_LEGACY_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#endif diff --git a/resources_utf8/src/creature.c b/resources_utf8/src/creature.c index 7434bd7b..615a8cc9 100644 --- a/resources_utf8/src/creature.c +++ b/resources_utf8/src/creature.c @@ -9,6 +9,7 @@ #include "mstruct.h" #include "mextern.h" +#include "resource_path.h" #ifdef WIN32 #include @@ -586,7 +587,7 @@ creature *crt_ptr; if(name[i] == ' ') name[i] = '_'; sprintf(file,"%s/ddesc/%s_%d",OBJPATH,name,crt_ptr->level); - fd = open(file,O_RDONLY,0); + fd = rp_open(file,O_RDONLY,0); if (fd){ n = read(fd,tmp,2048); tmp[n] = 0; diff --git a/resources_utf8/src/files2.c b/resources_utf8/src/files2.c index 4cc0f0ac..4a13e0fe 100644 --- a/resources_utf8/src/files2.c +++ b/resources_utf8/src/files2.c @@ -1,739 +1,740 @@ -/* - * FILES2.C: - * - * Additional file routines, including memory management. - * - * Copyright (C) 1991, 1992, 1993 Brett J. Vickers - * - */ - -#include "mstruct.h" -#include "mextern.h" - -#ifdef WIN32 -#include -#endif - -typedef struct queue_tag { /* General queue tag data struct */ - int index; - struct queue_tag *next; - struct queue_tag *prev; -} qtag; - -typedef struct rsparse { /* Sparse pointer array for rooms */ - room *rom; - qtag *q_rom; -} rsparse; - -typedef struct csparse { /* Sparse pointer array for creatures */ - creature *crt; - qtag *q_crt; -} csparse; - -typedef struct osparse { /* Sparse pointer array for objects */ - object *obj; - qtag *q_obj; -} osparse; - -static rsparse Rom[RMAX]; /* Pointer array declared */ -static csparse Crt[CMAX]; -static osparse Obj[OMAX]; - -static qtag *Romhead=0; /* Queue header and tail pointers */ -static qtag *Romtail=0; -static qtag *Crthead=0; -static qtag *Crttail=0; -static qtag *Objhead=0; -static qtag *Objtail=0; - -int Rsize=0; /* Queue sizes */ -int Csize=0; -int Osize=0; - -/**********************************************************************/ -/* load_rom */ -/**********************************************************************/ - -/* This function accepts a room number as its first argument and then */ -/* returns a dblpointer to that room's data in the second parameter. */ -/* If the room has already been loaded, the pointer is simply returned. */ -/* Otherwise, the room is loaded into memory. If a maximal number of */ -/* rooms is already in the memory, then the least recently used room */ -/* is stored back to disk, and the memory is freed. */ - -int load_rom(index, rom_ptr) -int index; -room **rom_ptr; -{ - int fd; - qtag *qt; - char file[256], filebak[256]; - - if(index >= RMAX || index < 0) - return(-1); - - /* Check if room is already loaded, and if so return pointer */ - - if(Rom[index].rom) { - front_queue(&Rom[index].q_rom, &Romhead, &Romtail, &Rsize); - *rom_ptr = Rom[index].rom; - } - - /* Otherwise load the room, store rooms if queue size becomes */ - /* too big, and return a pointer to the newly loaded room */ - - else { - sprintf(file, "%s/r%02d/r%05d", ROOMPATH, index/1000,index); - fd = open(file, O_RDONLY | O_BINARY, 0); - if(fd < 0) - return(-1); - *rom_ptr = (room *)malloc(sizeof(room)); - if(!*rom_ptr) - merror("load_rom", FATAL); - if(read_rom(fd, *rom_ptr) < 0) { - close(fd); - return(-1); - } - close(fd); - - (*rom_ptr)->rom_num = index; - - qt = (qtag *)malloc(sizeof(qtag)); - if(!qt) - merror("load_rom", FATAL); - qt->index = index; - Rom[index].rom = *rom_ptr; - Rom[index].q_rom = qt; - put_queue(&qt, &Romhead, &Romtail, &Rsize); - - while(Rsize > RQMAX) { - - pull_queue(&qt, &Romhead, &Romtail, &Rsize); - if(Rom[qt->index].rom->first_ply) { - put_queue(&qt, &Romhead, &Romtail, &Rsize); - continue; - } - sprintf(file, "%s/r%02d/r%05d", ROOMPATH, qt->index/1000,qt->index); - sprintf(filebak, "%s~", file); - rename(file, filebak); - fd = open(file, O_RDWR | O_CREAT | O_BINARY, ACC); - if(fd < 1) - return(-1); - if(!Rom[qt->index].rom) - merror("load_rom", NONFATAL); - if(write_rom(fd, Rom[qt->index].rom, PERMONLY) < 0) { - close(fd); - unlink(file); - rename(filebak, file); - merror("write_rom", NONFATAL); - return(-1); - } - close(fd); - unlink(filebak); - free_rom(Rom[qt->index].rom); - Rom[qt->index].rom = 0; - free(qt); - } - } - - add_permobj_rom(*rom_ptr); - return(0); - -} - -int is_rom_loaded(num) -int num; -{ - return(Rom[num].rom != 0); -} - -/**********************************************************************/ -/* reload_rom */ -/**********************************************************************/ - -/* This function reloads a room from disk, if it's already loaded. This */ -/* allows you to make changes to a room, and then reload it, even if it's */ -/* already in the memory room queue. */ - -int reload_rom(num) -int num; -{ - room *rom_ptr; - ctag *cp; - otag *op; - char file[80]; - int fd; - - if(!Rom[num].rom) - return(0); - - sprintf(file, "%s/r%02d/r%05d", ROOMPATH, num/1000,num); - fd = open(file, O_RDONLY | O_BINARY, 0); - if(fd < 0) - return(-1); - rom_ptr = (room *)malloc(sizeof(room)); - if(!rom_ptr) - merror("reload_rom", FATAL); - if(read_rom(fd, rom_ptr) < 0) { - close(fd); - return(-1); - } - close(fd); - - rom_ptr->first_ply = Rom[num].rom->first_ply; - Rom[num].rom->first_ply = 0; - - add_permcrt_rom(rom_ptr); - if(!rom_ptr->first_mon) { - rom_ptr->first_mon = Rom[num].rom->first_mon; - Rom[num].rom->first_mon = 0; - } - - if(!rom_ptr->first_obj) { - rom_ptr->first_obj = Rom[num].rom->first_obj; - Rom[num].rom->first_obj = 0; - } - - free_rom(Rom[num].rom); - Rom[num].rom = rom_ptr; - - cp = rom_ptr->first_ply; - while(cp) { - cp->crt->parent_rom = rom_ptr; - cp = cp->next_tag; - } - - cp = rom_ptr->first_mon; - while(cp) { - cp->crt->parent_rom = rom_ptr; - cp = cp->next_tag; - } - - op = rom_ptr->first_obj; - while(op) { - op->obj->parent_rom = rom_ptr; - op = op->next_tag; - } - - return(0); - -} - -/**********************************************************************/ -/* resave_rom */ -/**********************************************************************/ - -/* This function saves an already-loaded room back to memory without */ -/* altering its position on the queue. */ - -int resave_rom(num) -int num; -{ - char file[256], filebak[256]; - int fd; - - if(!Rom[num].rom) - return(0); - - sprintf(file, "%s/r%02d/r%05d", ROOMPATH, num/1000,num); - sprintf(filebak, "%s~", file); - rename(file, filebak); - fd = open(file, O_RDWR | O_CREAT | O_BINARY, ACC); - if(fd < 1) - return(-1); - if(write_rom(fd, Rom[num].rom, PERMONLY) < 0) { - close(fd); - unlink(file); - rename(filebak, file); - return(-1); - } - close(fd); - unlink(filebak); - - return(0); - -} - -/**********************************************************************/ -/* resave_all_rom */ -/**********************************************************************/ - -/* This function saves all memory-resident rooms back to disk. If the */ -/* permonly parameter is non-zero, then only permanent items in those */ -/* rooms are saved back. */ - -void resave_all_rom(permonly) -int permonly; -{ - qtag *qt; - char file[80]; - int fd; - - qt = Romhead; - while(qt) { - if(!Rom[qt->index].rom) { - qt = qt->next; - continue; - } - - sprintf(file, "%s/r%02d/r%05d", ROOMPATH, qt->index/1000,qt->index); - fd = open(file, O_RDWR | O_CREAT | O_BINARY, ACC); - if(fd < 1) - return; - if(write_rom(fd, Rom[qt->index].rom, permonly) < 0) { - close(fd); - return; - } - close(fd); - qt = qt->next; - } -} - -/**********************************************************************/ -/* save_all_ply */ -/**********************************************************************/ - -/* This function saves all players currently in memory. */ - -void save_all_ply() -{ - int i; - - for(i=0; iname[0]) - savegame(Ply[i].ply, 0); - } -} - -/**********************************************************************/ -/* flush_rom */ -/**********************************************************************/ - -/* This function flushes out the room queue and clears the room sparse */ -/* pointer array, without saving anything to file. It also clears all */ -/* memory used by loaded rooms. Call this function before leaving the */ -/* program. */ - -void flush_rom() -{ - qtag *qt; - - while(1) { - pull_queue(&qt, &Romhead, &Romtail, &Rsize); - if(!qt) break; - free_rom(Rom[qt->index].rom); - Rom[qt->index].rom = 0; - free(qt); - } -} - -/**********************************************************************/ -/* flush_crt */ -/**********************************************************************/ - -/* This function flushes out the monster queue and clears the monster */ -/* sparse pointer array without saving anything to file. It also */ -/* clears all memory used by loaded creatures. Call this function */ -/* before leaving the program. */ - -void flush_crt() -{ - qtag *qt; - - while(1) { - pull_queue(&qt, &Crthead, &Crttail, &Csize); - if(!qt) break; - free_crt(Crt[qt->index].crt); - Crt[qt->index].crt = 0; - free(qt); - } -} - -/**********************************************************************/ -/* flush_obj */ -/**********************************************************************/ - -/* This function flushes out the object queue and clears the object */ -/* sparse pointer array without saving anything to file. It also */ -/* clears all memory used by loaded objects. Call this function */ -/* leaving the program. */ - -void flush_obj() -{ - qtag *qt; - - while(1) { - pull_queue(&qt, &Objhead, &Objtail, &Osize); - if(!qt) break; - free_obj(Obj[qt->index].obj); - Obj[qt->index].obj = 0; - free(qt); - } -} - -/**********************************************************************/ -/* load_crt */ -/**********************************************************************/ - -/* This function returns a pointer to the monster given by the index in */ -/* the first parameter. The pointer is returned in the second. If the */ -/* monster is already in memory, then a pointer is merely returned. */ -/* Otherwise, the monster is loaded into memory and a pointer is re- */ -/* turned. If there are too many monsters in memory, then the least */ -/* recently used one is freed from memory. */ - -int load_crt(index, mon_ptr) -int index; -creature **mon_ptr; -{ - int fd; - long n; - qtag *qt; - char file[256]; - - if(index >= CMAX || index < 0) - return(-1); - - /* Check if monster is already loaded, and if so return pointer */ - - if(Crt[index].crt) { - front_queue(&Crt[index].q_crt, &Crthead, &Crttail, &Csize); - *mon_ptr = (creature *)malloc(sizeof(creature)); - **mon_ptr = *Crt[index].crt; - } - - /* Otherwise load the monster, erase monsters if queue size */ - /* becomes too big, and return a pointer to the newly loaded monster */ - - else { - sprintf(file, "%s/m%02d", MONPATH, index/MFILESIZE); - fd = open(file, O_RDONLY | O_BINARY, 0); - if(fd < 0) { - *mon_ptr = 0; - return(-1); - } - *mon_ptr = (creature *)malloc(sizeof(creature)); - if(!*mon_ptr) - merror("load_crt", FATAL); - n = lseek(fd, (long)((index%MFILESIZE)*sizeof(creature)), 0); - if(n < 0L) { - free(*mon_ptr); - close(fd); - *mon_ptr = 0; - return(-1); - } - n = read(fd, *mon_ptr, sizeof(creature)); - close(fd); - if(n < sizeof(creature)) { - free(*mon_ptr); - *mon_ptr = 0; - return(-1); - } - - (*mon_ptr)->fd = -1; - qt = (qtag *)malloc(sizeof(qtag)); - if(!qt) - merror("load_crt", FATAL); - qt->index = index; - Crt[index].crt = (creature *)malloc(sizeof(creature)); - *Crt[index].crt = **mon_ptr; - Crt[index].q_crt = qt; - put_queue(&qt, &Crthead, &Crttail, &Csize); - - while(Csize > CQMAX) { - pull_queue(&qt, &Crthead, &Crttail, &Csize); - free_crt(Crt[qt->index].crt); - Crt[qt->index].crt = 0; - free(qt); - } - } - - (*mon_ptr)->lasttime[LT_HEALS].ltime = time(0); - (*mon_ptr)->lasttime[LT_HEALS].interval = 60L; - (*mon_ptr)->first_enm= 0; - - return(0); - -} - -/**********************************************************************/ -/* load_obj */ -/**********************************************************************/ - -/* This function loads the object specified by the first parameter, and */ -/* returns a pointer to it in the second parameter. If the object has */ -/* already been loaded before, then a pointer is merely returned. */ -/* Otherwise, the object is loaded into memory and the pointer is */ -/* returned. If there are too many objects in memory, then the least */ -/* recently used objects are freed from memory. */ - -int load_obj(index, obj_ptr) -int index; -object **obj_ptr; -{ - int fd; - long n; - qtag *qt; - char file[256]; - - if(index >= OMAX || index < 0) - return(-1); - - /* Check if object is already loaded, and if so return pointer */ - - if(Obj[index].obj) { - front_queue(&Obj[index].q_obj, &Objhead, &Objtail, &Osize); - *obj_ptr = (object *)malloc(sizeof(object)); - **obj_ptr = *Obj[index].obj; - } - - /* Otherwise load the object, erase objects if queue size */ - /* becomes too big, and return a pointer to the newly loaded object */ - - else { - sprintf(file, "%s/o%02d", OBJPATH, index/OFILESIZE); - fd = open(file, O_RDONLY | O_BINARY, 0); - if(fd < 0) - return(-1); - *obj_ptr = (object *)malloc(sizeof(object)); - if(!*obj_ptr) - merror("load_obj", FATAL); - n = lseek(fd, (long)((index%OFILESIZE)*sizeof(object)), 0); - if(n < 0L) { - close(fd); - return(-1); - } - n = read(fd, *obj_ptr, sizeof(object)); - close(fd); - if(n < sizeof(object)) - return(-1); - - qt = (qtag *)malloc(sizeof(qtag)); - if(!qt) - merror("load_obj", FATAL); - qt->index = index; - Obj[index].obj = (object *)malloc(sizeof(object)); - *Obj[index].obj = **obj_ptr; - Obj[index].q_obj = qt; - put_queue(&qt, &Objhead, &Objtail, &Osize); - while(Osize > OQMAX) { - pull_queue(&qt, &Objhead, &Objtail, &Osize); - free_obj(Obj[qt->index].obj); - Obj[qt->index].obj = 0; - free(qt); - } - } - - return(0); - -} - -/***********************************************************************/ -/* save_ply */ -/***********************************************************************/ - -/* This function saves the player specified by the string in the first */ -/* parameter, and uses the player in the second parameter. */ - -int save_ply(str, ply_ptr) -char *str; -creature *ply_ptr; -{ - char file[256], filebak[256]; - int fd, n; -#ifdef COMPRESS - char *a_buf, *b_buf; - int size; -#endif - - sprintf(file, "%s/%s/%s", PLAYERPATH,first_han(str), str); - sprintf(filebak, "%s~", file); - rename(file, filebak); - fd = open(file, O_RDWR | O_CREAT | O_BINARY, ACC); - if(fd < 0) { - rename(filebak, file); - return(-1); - } - -#ifdef COMPRESS - a_buf = (char *)malloc(100000); - if(!a_buf) merror("Memory allocation", FATAL); - n = write_crt_to_mem(a_buf, ply_ptr, 0); - if(n > 100000) merror(ply_ptr->name, FATAL); - b_buf = (char *)malloc(n); - if(!b_buf) merror("Memory allocation", FATAL); - size = compress(a_buf, b_buf, n); - n = write(fd, b_buf, size); - free(a_buf); - free(b_buf); -#else - n = write_crt(fd, ply_ptr, 0); - if(n < 0) { - close(fd); - unlink(file); - rename(filebak, file); - return(-1); - } -#endif - - close(fd); - unlink(filebak); - return(0); - -} - -/***********************************************************************/ -/* load_ply */ -/***********************************************************************/ - -/* This function loads the player specified by the string in the first */ -/* parameter, and returns the player in the second parameter. */ - -int load_ply(str, ply_ptr) -char *str; -creature **ply_ptr; -{ - char file[80]; - int fd, n; -#ifdef COMPRESS - char *a_buf, *b_buf; - int size; -#endif - - sprintf(file, "%s/%s/%s", PLAYERPATH, first_han(str), str); - fd = open(file, O_RDONLY | O_BINARY, 0); - if(fd < 0) - return(-1); - - *ply_ptr = (creature *)malloc(sizeof(creature)); - if(!*ply_ptr) - merror("load_ply", FATAL); - -#ifdef COMPRESS - a_buf = (char *)malloc(50000); - if(!a_buf) merror("Memory allocation", FATAL); - size = read(fd, a_buf, 50000); - if(size >= 50000) merror("Player too large", FATAL); - if(size < 1) { - close(fd); - return(-1); - } - b_buf = (char *)malloc(100000); - if(!b_buf) merror("Memory allocation", FATAL); - n = uncompress(a_buf, b_buf, size); - if(n > 100000) merror("Player too large", FATAL); - n = read_crt_from_mem(b_buf, *ply_ptr, 0); - free(a_buf); - free(b_buf); -#else - n = read_crt(fd, *ply_ptr); - if(n < 0) { - close(fd); - return(-1); - } -#endif - - close(fd); - return(0); - -} - -/**********************************************************************/ -/* put_queue */ -/**********************************************************************/ - -/* put_queue places the queue tag pointed to by the first paramater onto */ -/* a queue whose head and tail tag pointers are the second and third */ -/* parameters. If parameters 2 & 3 are 0, then a new queue is created. */ -/* The fourth parameter points to a queue size counter which is */ -/* incremented. */ - -void put_queue(qt, headptr, tailptr, sizeptr) -qtag **qt; -qtag **headptr; -qtag **tailptr; -int *sizeptr; -{ - *sizeptr = *sizeptr + 1; - - if(!*headptr) { - *headptr = *qt; - *tailptr = *qt; - (*qt)->next = 0; - (*qt)->prev = 0; - } - - else { - (*headptr)->prev = *qt; - (*qt)->next = *headptr; - (*qt)->prev = 0; - *headptr = *qt; - } -} - -/**********************************************************************/ -/* pull_queue */ -/**********************************************************************/ - -/* pull_queue removes the last queue tag on the queue specified by the */ -/* second and third parameters and returns that tag in the first */ -/* parameter. The fourth parameter points to a queue size counter */ -/* which is decremented. */ - -void pull_queue(qt, headptr, tailptr, sizeptr) -qtag **qt; -qtag **headptr; -qtag **tailptr; -int *sizeptr; -{ - if(!*tailptr) - *qt = 0; - else { - *sizeptr = *sizeptr - 1; - *qt = *tailptr; - if((*qt)->prev) { - (*qt)->prev->next = 0; - *tailptr = (*qt)->prev; - } - else { - *headptr = 0; - *tailptr = 0; - } - } -} - -/**********************************************************************/ -/* front_queue */ -/**********************************************************************/ - -/* front_queue removes the queue tag pointed to by the first parameter */ -/* from the queue (specified by the second and third parameters) and */ -/* places it back at the head of the queue. The fourth parameter is a */ -/* pointer to a queue size counter, and it remains unchanged. */ - -void front_queue(qt, headptr, tailptr, sizeptr) -qtag **qt; -qtag **headptr; -qtag **tailptr; -int *sizeptr; -{ - if((*qt)->prev) { - ((*qt)->prev)->next = (*qt)->next; - if(*qt == *tailptr) - *tailptr = (*qt)->prev; - } - if((*qt)->next) { - ((*qt)->next)->prev = (*qt)->prev; - if(*qt == *headptr) - *headptr = (*qt)->next; - } - if(!(*qt)->prev && !(*qt)->next) { - *headptr = 0; - *tailptr = 0; - } - (*qt)->next = 0; - (*qt)->prev = 0; - *sizeptr = *sizeptr - 1; - - put_queue(qt, headptr, tailptr, sizeptr); -} +/* + * FILES2.C: + * + * Additional file routines, including memory management. + * + * Copyright (C) 1991, 1992, 1993 Brett J. Vickers + * + */ + +#include "mstruct.h" +#include "mextern.h" +#include "resource_path.h" + +#ifdef WIN32 +#include +#endif + +typedef struct queue_tag { /* General queue tag data struct */ + int index; + struct queue_tag *next; + struct queue_tag *prev; +} qtag; + +typedef struct rsparse { /* Sparse pointer array for rooms */ + room *rom; + qtag *q_rom; +} rsparse; + +typedef struct csparse { /* Sparse pointer array for creatures */ + creature *crt; + qtag *q_crt; +} csparse; + +typedef struct osparse { /* Sparse pointer array for objects */ + object *obj; + qtag *q_obj; +} osparse; + +static rsparse Rom[RMAX]; /* Pointer array declared */ +static csparse Crt[CMAX]; +static osparse Obj[OMAX]; + +static qtag *Romhead=0; /* Queue header and tail pointers */ +static qtag *Romtail=0; +static qtag *Crthead=0; +static qtag *Crttail=0; +static qtag *Objhead=0; +static qtag *Objtail=0; + +int Rsize=0; /* Queue sizes */ +int Csize=0; +int Osize=0; + +/**********************************************************************/ +/* load_rom */ +/**********************************************************************/ + +/* This function accepts a room number as its first argument and then */ +/* returns a dblpointer to that room's data in the second parameter. */ +/* If the room has already been loaded, the pointer is simply returned. */ +/* Otherwise, the room is loaded into memory. If a maximal number of */ +/* rooms is already in the memory, then the least recently used room */ +/* is stored back to disk, and the memory is freed. */ + +int load_rom(index, rom_ptr) +int index; +room **rom_ptr; +{ + int fd; + qtag *qt; + char file[256], filebak[256]; + + if(index >= RMAX || index < 0) + return(-1); + + /* Check if room is already loaded, and if so return pointer */ + + if(Rom[index].rom) { + front_queue(&Rom[index].q_rom, &Romhead, &Romtail, &Rsize); + *rom_ptr = Rom[index].rom; + } + + /* Otherwise load the room, store rooms if queue size becomes */ + /* too big, and return a pointer to the newly loaded room */ + + else { + sprintf(file, "%s/r%02d/r%05d", ROOMPATH, index/1000,index); + fd = rp_open(file, O_RDONLY | O_BINARY, 0); + if(fd < 0) + return(-1); + *rom_ptr = (room *)malloc(sizeof(room)); + if(!*rom_ptr) + merror("load_rom", FATAL); + if(read_rom(fd, *rom_ptr) < 0) { + close(fd); + return(-1); + } + close(fd); + + (*rom_ptr)->rom_num = index; + + qt = (qtag *)malloc(sizeof(qtag)); + if(!qt) + merror("load_rom", FATAL); + qt->index = index; + Rom[index].rom = *rom_ptr; + Rom[index].q_rom = qt; + put_queue(&qt, &Romhead, &Romtail, &Rsize); + + while(Rsize > RQMAX) { + + pull_queue(&qt, &Romhead, &Romtail, &Rsize); + if(Rom[qt->index].rom->first_ply) { + put_queue(&qt, &Romhead, &Romtail, &Rsize); + continue; + } + sprintf(file, "%s/r%02d/r%05d", ROOMPATH, qt->index/1000,qt->index); + sprintf(filebak, "%s~", file); + rename(file, filebak); + fd = rp_open(file, O_RDWR | O_CREAT | O_BINARY, ACC); + if(fd < 1) + return(-1); + if(!Rom[qt->index].rom) + merror("load_rom", NONFATAL); + if(write_rom(fd, Rom[qt->index].rom, PERMONLY) < 0) { + close(fd); + unlink(file); + rename(filebak, file); + merror("write_rom", NONFATAL); + return(-1); + } + close(fd); + unlink(filebak); + free_rom(Rom[qt->index].rom); + Rom[qt->index].rom = 0; + free(qt); + } + } + + add_permobj_rom(*rom_ptr); + return(0); + +} + +int is_rom_loaded(num) +int num; +{ + return(Rom[num].rom != 0); +} + +/**********************************************************************/ +/* reload_rom */ +/**********************************************************************/ + +/* This function reloads a room from disk, if it's already loaded. This */ +/* allows you to make changes to a room, and then reload it, even if it's */ +/* already in the memory room queue. */ + +int reload_rom(num) +int num; +{ + room *rom_ptr; + ctag *cp; + otag *op; + char file[80]; + int fd; + + if(!Rom[num].rom) + return(0); + + sprintf(file, "%s/r%02d/r%05d", ROOMPATH, num/1000,num); + fd = rp_open(file, O_RDONLY | O_BINARY, 0); + if(fd < 0) + return(-1); + rom_ptr = (room *)malloc(sizeof(room)); + if(!rom_ptr) + merror("reload_rom", FATAL); + if(read_rom(fd, rom_ptr) < 0) { + close(fd); + return(-1); + } + close(fd); + + rom_ptr->first_ply = Rom[num].rom->first_ply; + Rom[num].rom->first_ply = 0; + + add_permcrt_rom(rom_ptr); + if(!rom_ptr->first_mon) { + rom_ptr->first_mon = Rom[num].rom->first_mon; + Rom[num].rom->first_mon = 0; + } + + if(!rom_ptr->first_obj) { + rom_ptr->first_obj = Rom[num].rom->first_obj; + Rom[num].rom->first_obj = 0; + } + + free_rom(Rom[num].rom); + Rom[num].rom = rom_ptr; + + cp = rom_ptr->first_ply; + while(cp) { + cp->crt->parent_rom = rom_ptr; + cp = cp->next_tag; + } + + cp = rom_ptr->first_mon; + while(cp) { + cp->crt->parent_rom = rom_ptr; + cp = cp->next_tag; + } + + op = rom_ptr->first_obj; + while(op) { + op->obj->parent_rom = rom_ptr; + op = op->next_tag; + } + + return(0); + +} + +/**********************************************************************/ +/* resave_rom */ +/**********************************************************************/ + +/* This function saves an already-loaded room back to memory without */ +/* altering its position on the queue. */ + +int resave_rom(num) +int num; +{ + char file[256], filebak[256]; + int fd; + + if(!Rom[num].rom) + return(0); + + sprintf(file, "%s/r%02d/r%05d", ROOMPATH, num/1000,num); + sprintf(filebak, "%s~", file); + rename(file, filebak); + fd = rp_open(file, O_RDWR | O_CREAT | O_BINARY, ACC); + if(fd < 1) + return(-1); + if(write_rom(fd, Rom[num].rom, PERMONLY) < 0) { + close(fd); + unlink(file); + rename(filebak, file); + return(-1); + } + close(fd); + unlink(filebak); + + return(0); + +} + +/**********************************************************************/ +/* resave_all_rom */ +/**********************************************************************/ + +/* This function saves all memory-resident rooms back to disk. If the */ +/* permonly parameter is non-zero, then only permanent items in those */ +/* rooms are saved back. */ + +void resave_all_rom(permonly) +int permonly; +{ + qtag *qt; + char file[80]; + int fd; + + qt = Romhead; + while(qt) { + if(!Rom[qt->index].rom) { + qt = qt->next; + continue; + } + + sprintf(file, "%s/r%02d/r%05d", ROOMPATH, qt->index/1000,qt->index); + fd = rp_open(file, O_RDWR | O_CREAT | O_BINARY, ACC); + if(fd < 1) + return; + if(write_rom(fd, Rom[qt->index].rom, permonly) < 0) { + close(fd); + return; + } + close(fd); + qt = qt->next; + } +} + +/**********************************************************************/ +/* save_all_ply */ +/**********************************************************************/ + +/* This function saves all players currently in memory. */ + +void save_all_ply() +{ + int i; + + for(i=0; iname[0]) + savegame(Ply[i].ply, 0); + } +} + +/**********************************************************************/ +/* flush_rom */ +/**********************************************************************/ + +/* This function flushes out the room queue and clears the room sparse */ +/* pointer array, without saving anything to file. It also clears all */ +/* memory used by loaded rooms. Call this function before leaving the */ +/* program. */ + +void flush_rom() +{ + qtag *qt; + + while(1) { + pull_queue(&qt, &Romhead, &Romtail, &Rsize); + if(!qt) break; + free_rom(Rom[qt->index].rom); + Rom[qt->index].rom = 0; + free(qt); + } +} + +/**********************************************************************/ +/* flush_crt */ +/**********************************************************************/ + +/* This function flushes out the monster queue and clears the monster */ +/* sparse pointer array without saving anything to file. It also */ +/* clears all memory used by loaded creatures. Call this function */ +/* before leaving the program. */ + +void flush_crt() +{ + qtag *qt; + + while(1) { + pull_queue(&qt, &Crthead, &Crttail, &Csize); + if(!qt) break; + free_crt(Crt[qt->index].crt); + Crt[qt->index].crt = 0; + free(qt); + } +} + +/**********************************************************************/ +/* flush_obj */ +/**********************************************************************/ + +/* This function flushes out the object queue and clears the object */ +/* sparse pointer array without saving anything to file. It also */ +/* clears all memory used by loaded objects. Call this function */ +/* leaving the program. */ + +void flush_obj() +{ + qtag *qt; + + while(1) { + pull_queue(&qt, &Objhead, &Objtail, &Osize); + if(!qt) break; + free_obj(Obj[qt->index].obj); + Obj[qt->index].obj = 0; + free(qt); + } +} + +/**********************************************************************/ +/* load_crt */ +/**********************************************************************/ + +/* This function returns a pointer to the monster given by the index in */ +/* the first parameter. The pointer is returned in the second. If the */ +/* monster is already in memory, then a pointer is merely returned. */ +/* Otherwise, the monster is loaded into memory and a pointer is re- */ +/* turned. If there are too many monsters in memory, then the least */ +/* recently used one is freed from memory. */ + +int load_crt(index, mon_ptr) +int index; +creature **mon_ptr; +{ + int fd; + long n; + qtag *qt; + char file[256]; + + if(index >= CMAX || index < 0) + return(-1); + + /* Check if monster is already loaded, and if so return pointer */ + + if(Crt[index].crt) { + front_queue(&Crt[index].q_crt, &Crthead, &Crttail, &Csize); + *mon_ptr = (creature *)malloc(sizeof(creature)); + **mon_ptr = *Crt[index].crt; + } + + /* Otherwise load the monster, erase monsters if queue size */ + /* becomes too big, and return a pointer to the newly loaded monster */ + + else { + sprintf(file, "%s/m%02d", MONPATH, index/MFILESIZE); + fd = rp_open(file, O_RDONLY | O_BINARY, 0); + if(fd < 0) { + *mon_ptr = 0; + return(-1); + } + *mon_ptr = (creature *)malloc(sizeof(creature)); + if(!*mon_ptr) + merror("load_crt", FATAL); + n = lseek(fd, (long)((index%MFILESIZE)*sizeof(creature)), 0); + if(n < 0L) { + free(*mon_ptr); + close(fd); + *mon_ptr = 0; + return(-1); + } + n = read(fd, *mon_ptr, sizeof(creature)); + close(fd); + if(n < sizeof(creature)) { + free(*mon_ptr); + *mon_ptr = 0; + return(-1); + } + + (*mon_ptr)->fd = -1; + qt = (qtag *)malloc(sizeof(qtag)); + if(!qt) + merror("load_crt", FATAL); + qt->index = index; + Crt[index].crt = (creature *)malloc(sizeof(creature)); + *Crt[index].crt = **mon_ptr; + Crt[index].q_crt = qt; + put_queue(&qt, &Crthead, &Crttail, &Csize); + + while(Csize > CQMAX) { + pull_queue(&qt, &Crthead, &Crttail, &Csize); + free_crt(Crt[qt->index].crt); + Crt[qt->index].crt = 0; + free(qt); + } + } + + (*mon_ptr)->lasttime[LT_HEALS].ltime = time(0); + (*mon_ptr)->lasttime[LT_HEALS].interval = 60L; + (*mon_ptr)->first_enm= 0; + + return(0); + +} + +/**********************************************************************/ +/* load_obj */ +/**********************************************************************/ + +/* This function loads the object specified by the first parameter, and */ +/* returns a pointer to it in the second parameter. If the object has */ +/* already been loaded before, then a pointer is merely returned. */ +/* Otherwise, the object is loaded into memory and the pointer is */ +/* returned. If there are too many objects in memory, then the least */ +/* recently used objects are freed from memory. */ + +int load_obj(index, obj_ptr) +int index; +object **obj_ptr; +{ + int fd; + long n; + qtag *qt; + char file[256]; + + if(index >= OMAX || index < 0) + return(-1); + + /* Check if object is already loaded, and if so return pointer */ + + if(Obj[index].obj) { + front_queue(&Obj[index].q_obj, &Objhead, &Objtail, &Osize); + *obj_ptr = (object *)malloc(sizeof(object)); + **obj_ptr = *Obj[index].obj; + } + + /* Otherwise load the object, erase objects if queue size */ + /* becomes too big, and return a pointer to the newly loaded object */ + + else { + sprintf(file, "%s/o%02d", OBJPATH, index/OFILESIZE); + fd = rp_open(file, O_RDONLY | O_BINARY, 0); + if(fd < 0) + return(-1); + *obj_ptr = (object *)malloc(sizeof(object)); + if(!*obj_ptr) + merror("load_obj", FATAL); + n = lseek(fd, (long)((index%OFILESIZE)*sizeof(object)), 0); + if(n < 0L) { + close(fd); + return(-1); + } + n = read(fd, *obj_ptr, sizeof(object)); + close(fd); + if(n < sizeof(object)) + return(-1); + + qt = (qtag *)malloc(sizeof(qtag)); + if(!qt) + merror("load_obj", FATAL); + qt->index = index; + Obj[index].obj = (object *)malloc(sizeof(object)); + *Obj[index].obj = **obj_ptr; + Obj[index].q_obj = qt; + put_queue(&qt, &Objhead, &Objtail, &Osize); + while(Osize > OQMAX) { + pull_queue(&qt, &Objhead, &Objtail, &Osize); + free_obj(Obj[qt->index].obj); + Obj[qt->index].obj = 0; + free(qt); + } + } + + return(0); + +} + +/***********************************************************************/ +/* save_ply */ +/***********************************************************************/ + +/* This function saves the player specified by the string in the first */ +/* parameter, and uses the player in the second parameter. */ + +int save_ply(str, ply_ptr) +char *str; +creature *ply_ptr; +{ + char file[256], filebak[256]; + int fd, n; +#ifdef COMPRESS + char *a_buf, *b_buf; + int size; +#endif + + sprintf(file, "%s/%s/%s", PLAYERPATH,first_han(str), str); + sprintf(filebak, "%s~", file); + rename(file, filebak); + fd = rp_open(file, O_RDWR | O_CREAT | O_BINARY, ACC); + if(fd < 0) { + rename(filebak, file); + return(-1); + } + +#ifdef COMPRESS + a_buf = (char *)malloc(100000); + if(!a_buf) merror("Memory allocation", FATAL); + n = write_crt_to_mem(a_buf, ply_ptr, 0); + if(n > 100000) merror(ply_ptr->name, FATAL); + b_buf = (char *)malloc(n); + if(!b_buf) merror("Memory allocation", FATAL); + size = compress(a_buf, b_buf, n); + n = write(fd, b_buf, size); + free(a_buf); + free(b_buf); +#else + n = write_crt(fd, ply_ptr, 0); + if(n < 0) { + close(fd); + unlink(file); + rename(filebak, file); + return(-1); + } +#endif + + close(fd); + unlink(filebak); + return(0); + +} + +/***********************************************************************/ +/* load_ply */ +/***********************************************************************/ + +/* This function loads the player specified by the string in the first */ +/* parameter, and returns the player in the second parameter. */ + +int load_ply(str, ply_ptr) +char *str; +creature **ply_ptr; +{ + char file[80]; + int fd, n; +#ifdef COMPRESS + char *a_buf, *b_buf; + int size; +#endif + + sprintf(file, "%s/%s/%s", PLAYERPATH, first_han(str), str); + fd = rp_open(file, O_RDONLY | O_BINARY, 0); + if(fd < 0) + return(-1); + + *ply_ptr = (creature *)malloc(sizeof(creature)); + if(!*ply_ptr) + merror("load_ply", FATAL); + +#ifdef COMPRESS + a_buf = (char *)malloc(50000); + if(!a_buf) merror("Memory allocation", FATAL); + size = read(fd, a_buf, 50000); + if(size >= 50000) merror("Player too large", FATAL); + if(size < 1) { + close(fd); + return(-1); + } + b_buf = (char *)malloc(100000); + if(!b_buf) merror("Memory allocation", FATAL); + n = uncompress(a_buf, b_buf, size); + if(n > 100000) merror("Player too large", FATAL); + n = read_crt_from_mem(b_buf, *ply_ptr, 0); + free(a_buf); + free(b_buf); +#else + n = read_crt(fd, *ply_ptr); + if(n < 0) { + close(fd); + return(-1); + } +#endif + + close(fd); + return(0); + +} + +/**********************************************************************/ +/* put_queue */ +/**********************************************************************/ + +/* put_queue places the queue tag pointed to by the first paramater onto */ +/* a queue whose head and tail tag pointers are the second and third */ +/* parameters. If parameters 2 & 3 are 0, then a new queue is created. */ +/* The fourth parameter points to a queue size counter which is */ +/* incremented. */ + +void put_queue(qt, headptr, tailptr, sizeptr) +qtag **qt; +qtag **headptr; +qtag **tailptr; +int *sizeptr; +{ + *sizeptr = *sizeptr + 1; + + if(!*headptr) { + *headptr = *qt; + *tailptr = *qt; + (*qt)->next = 0; + (*qt)->prev = 0; + } + + else { + (*headptr)->prev = *qt; + (*qt)->next = *headptr; + (*qt)->prev = 0; + *headptr = *qt; + } +} + +/**********************************************************************/ +/* pull_queue */ +/**********************************************************************/ + +/* pull_queue removes the last queue tag on the queue specified by the */ +/* second and third parameters and returns that tag in the first */ +/* parameter. The fourth parameter points to a queue size counter */ +/* which is decremented. */ + +void pull_queue(qt, headptr, tailptr, sizeptr) +qtag **qt; +qtag **headptr; +qtag **tailptr; +int *sizeptr; +{ + if(!*tailptr) + *qt = 0; + else { + *sizeptr = *sizeptr - 1; + *qt = *tailptr; + if((*qt)->prev) { + (*qt)->prev->next = 0; + *tailptr = (*qt)->prev; + } + else { + *headptr = 0; + *tailptr = 0; + } + } +} + +/**********************************************************************/ +/* front_queue */ +/**********************************************************************/ + +/* front_queue removes the queue tag pointed to by the first parameter */ +/* from the queue (specified by the second and third parameters) and */ +/* places it back at the head of the queue. The fourth parameter is a */ +/* pointer to a queue size counter, and it remains unchanged. */ + +void front_queue(qt, headptr, tailptr, sizeptr) +qtag **qt; +qtag **headptr; +qtag **tailptr; +int *sizeptr; +{ + if((*qt)->prev) { + ((*qt)->prev)->next = (*qt)->next; + if(*qt == *tailptr) + *tailptr = (*qt)->prev; + } + if((*qt)->next) { + ((*qt)->next)->prev = (*qt)->prev; + if(*qt == *headptr) + *headptr = (*qt)->next; + } + if(!(*qt)->prev && !(*qt)->next) { + *headptr = 0; + *tailptr = 0; + } + (*qt)->next = 0; + (*qt)->prev = 0; + *sizeptr = *sizeptr - 1; + + put_queue(qt, headptr, tailptr, sizeptr); +} diff --git a/resources_utf8/src/files3.c b/resources_utf8/src/files3.c index 29a51642..b51877d1 100644 --- a/resources_utf8/src/files3.c +++ b/resources_utf8/src/files3.c @@ -9,6 +9,7 @@ #include "mstruct.h" #include "mextern.h" +#include "resource_path.h" #include #include @@ -270,7 +271,7 @@ creature *crt_ptr; crt_name[i] = '_'; sprintf(path, "%s/talk/%s-%d", MONPATH, crt_name, crt_ptr->level); - fp = fopen(path, "r"); + fp = rp_fopen(path, "r"); if(!fp) return(0); i = 0; diff --git a/resources_utf8/src/io.c b/resources_utf8/src/io.c index 8320aebe..6935fa06 100644 --- a/resources_utf8/src/io.c +++ b/resources_utf8/src/io.c @@ -592,13 +592,13 @@ void output_buf() void print(fd, fmt, i1, i2, i3, i4, i5, i6) int fd; unsigned char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char msg[3072]; char *fmt2; int i = 0, j = 0, k, n, otail, ohead; int num, loc, ind = -1, len, flags = 0; - int arg[8]; + long arg[8]; char type; char *prestr; char *Josa[6][2]={ {"Àº","´Â",},{"ÀÌ","°¡",},{"°ú","¿Í",},{"À»","¸¦",},{"À¸·Î","·Î",},}; @@ -661,10 +661,10 @@ int i1, i2, i3, i4, i5, i6; switch(type) { case 'm': - arg[ind] = (int)(prestr=crt_str(arg[ind], num, flags|CAP)); + arg[ind] = (long)(prestr=crt_str(arg[ind], num, flags|CAP)); continue; case 'M': - arg[ind] = (int)(prestr=crt_str(arg[ind], num, flags)); + arg[ind] = (long)(prestr=crt_str(arg[ind], num, flags)); continue; case 'S': prestr=(char *)arg[ind]; @@ -676,31 +676,31 @@ int i1, i2, i3, i4, i5, i6; case '2': case '3': case '4': - if(under_han(prestr)) arg[ind]=(int)Josa[*((char *)arg[ind])-'0'][0]; - else arg[ind] = (int)Josa[*((char *)arg[ind])-'0'][1]; + if(under_han(prestr)) arg[ind] = (long)Josa[*((char *)arg[ind])-'0'][0]; + else arg[ind] = (long)Josa[*((char *)arg[ind])-'0'][1]; break; - default: arg[ind]= (int)""; + default: arg[ind] = (long)""; } continue; case 'i': case 'I': - arg[ind] = (int)(prestr=obj_str(arg[ind], num, flags)); + arg[ind] = (long)(prestr=obj_str(arg[ind], num, flags)); continue; case 'C': if(F_ISSET(Ply[fd].ply,PANSIC)) { sprintf(color_buf1,"%c[%d;%sm",27, (F_ISSET(Ply[fd].ply,PBRIGH)&&atoi((char *)arg[ind])!=WHITE)?1:0, (char *)arg[ind]); - arg[ind]=(int)color_buf1; - } else arg[ind]= (int)""; + arg[ind] = (long)color_buf1; + } else arg[ind] = (long)""; continue; case 'D': if(F_ISSET(Ply[fd].ply,PANSIC)) { sprintf(color_buf2,"%c[%d;%sm",27, (F_ISSET(Ply[fd].ply,PBRIGH)&&atoi((char *)arg[ind])!=WHITE)?1:0, (char *)arg[ind]); - arg[ind]=(int)color_buf2; - } else arg[ind]= (int)""; + arg[ind] = (long)color_buf2; + } else arg[ind] = (long)""; continue; } } @@ -894,7 +894,7 @@ int fd; void broadcast(fmt, i1, i2, i3, i4, i5, i6) char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -910,7 +910,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast2(fmt, i1, i2, i3, i4, i5, i6) char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -925,7 +925,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast_all(fmt, i1, i2, i3, i4, i5, i6) char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -948,7 +948,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast_wiz(fmt, i1, i2, i3, i4, i5, i6) char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -974,7 +974,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast_eaves(fmt, i1, i2, i3, i4, i5, i6) char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -1002,7 +1002,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast_rom(ignore, rm, fmt, i1, i2, i3, i4, i5, i6) int ignore, rm; char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; @@ -1027,7 +1027,7 @@ int i1, i2, i3, i4, i5, i6; void broadcast_rom2(ignore1, ignore2, rm, fmt, i1, i2, i3, i4, i5, i6) int ignore1, ignore2, rm; char *fmt; -int i1, i2, i3, i4, i5, i6; +long i1, i2, i3, i4, i5, i6; { char fmt2[1024]; int i; diff --git a/resources_utf8/src/main.c b/resources_utf8/src/main.c index 18496c3b..85cf14fe 100644 --- a/resources_utf8/src/main.c +++ b/resources_utf8/src/main.c @@ -32,7 +32,7 @@ char *argv[]; #ifdef SCHED if(argc == 1) Port = schedule_g(); -#endif SCHED +#endif /* SCHED */ #ifndef DEBUG #ifndef WIN32 @@ -43,17 +43,17 @@ char *argv[]; #endif if (argc == 2) - if(isnumber(argv[1])) + if(is_number_str(argv[1])) Port = atoi(argv[1]); else if (!strcmp(argv[1],"-r")) report = 1; if (argc == 3){ - if(isnumber(argv[1])) + if(is_number_str(argv[1])) Port = atoi(argv[1]); else if (!strcmp(argv[1],"-r")) report = 1; - if(isnumber(argv[2])) + if(is_number_str(argv[2])) Port = atoi(argv[2]); else if (!strcmp(argv[2],"-r")) report = 1; @@ -80,7 +80,7 @@ char *argv[]; #ifdef RECORD_ALL mvc_log(); -#endif RECORD_ALL +#endif /* RECORD_ALL */ { long c; c = time(0); diff --git a/resources_utf8/src/mextern.h b/resources_utf8/src/mextern.h index 94bb41a3..131b724f 100644 --- a/resources_utf8/src/mextern.h +++ b/resources_utf8/src/mextern.h @@ -9,6 +9,7 @@ */ #include +#include "compat_legacy.h" #ifndef WIN32 @@ -130,11 +131,11 @@ extern void drop_all_bank(), get_all_bank(); /* IO.C */ extern int io_check(), accept_input(), locked_out(), addr_equal(), - remove_wait(); + remove_wait(), scwrite(); extern void sock_init(), sock_loop(), accept_connect(), output_buf(), print(), handle_commands(), disconnect(), broadcast(), broadcast2(), broadcast_all(), broadcast_wiz(), broadcast_rom(), broadcast_rom2(), - broadcast_robot_rom(), add_wait(), init_connect(), + broadcast_eaves(), broadcast_robot_rom(), add_wait(), init_connect(), waiting(), child_died(), reap_children(); /* COMMAND1.C */ @@ -195,7 +196,8 @@ extern int flee(), list(), buy(), sell(), value(), backstab(), train(), extern int give(), repair(), prt_time(), circle(), bash(), savegame(), talk(), chg_name(), moon_set(), kick(); extern int savegame_nomsg(); -extern void give_money(), talk_action(), enemy_status(); +extern void give_money(), talk_action(); +extern int enemy_status(); /* COMMAND9.C */ @@ -328,7 +330,7 @@ extern creature *find_who(), *lowest_piety(), *low_piety_alg(), *enemy_ply(); extern creature *find_crt(); extern int add_enm_crt(), del_enm_crt(), is_enm_crt(), add_charm_crt(), - del_charm_crt(), is_charm_crt(); + del_charm_crt(), is_charm_crt(), find_enm_crt(); extern void end_enm_crt(), die(), temp_perm(), die_perm_crt(), check_for_flee(), consider(), add_enm_dmg(), display_status(); @@ -368,14 +370,14 @@ extern int action(); /* MISC.C */ extern void merror(), lowercize(), zero(), delimit(), view_file(), log_f(), - sort_cmds(), load_lockouts(), please_wait(), logn(); + sort_cmds(), load_lockouts(), please_wait(), logn(), log_fl(), log_dmcmd(); extern int low(), up(), dice(), exp_to_lev(), dec_daily(), sort_cmp(), - file_exists(), isnumber(); + file_exists(), is_number_str(); extern char *crt_str(), *obj_str(); /* SPECIAL1.C */ -extern int call_war(), special_obj(), special_read(), is_bad_item(); +extern int call_war(), special_obj(), special_read(), is_bad_item(), special_cmd(); extern void check_item(), check_contain(), free_obj2(); #ifdef COMPRESS diff --git a/resources_utf8/src/misc.c b/resources_utf8/src/misc.c index 668fa88f..1bc73eaf 100644 --- a/resources_utf8/src/misc.c +++ b/resources_utf8/src/misc.c @@ -527,7 +527,7 @@ struct daily *dly_ptr; void log_f(fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024]; @@ -551,7 +551,7 @@ int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; void log_dm(fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024]; @@ -572,7 +572,7 @@ int i1, i2, i3, i4, i5, i6, i7, i9, i10; void log_dmcmd(fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024],str2[1024]; @@ -598,7 +598,7 @@ int i1, i2, i3, i4, i5, i6, i7, i9, i10; } void log_fl(cur_time, cur_name) -int cur_time, cur_name; +char *cur_time, *cur_name; { char file[80], file2[80]; char str[1024], str2[1024]; @@ -749,7 +749,7 @@ int duration; void logn(name,fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *name; char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024]; @@ -791,7 +791,7 @@ int i1,i2,i3,i4,i5,i6; } /*====================================================================*/ -int isnumber(str) +int is_number_str(str) char *str; /* checks if the given str contains all digits */ @@ -807,7 +807,7 @@ char *str; void log_pl(fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024]; @@ -828,7 +828,7 @@ int i1, i2, i3, i4, i5, i6, i7, i9, i10; void log_plcmd(fmt, i1, i2, i3, i4, i5, i6, i7, i8, i9, i10) char *fmt; -int i1, i2, i3, i4, i5, i6, i7, i9, i10; +long i1, i2, i3, i4, i5, i6, i7, i8, i9, i10; { char file[80]; char str[1024]; diff --git a/resources_utf8/src/mtype.h b/resources_utf8/src/mtype.h index aa2b8543..04035e05 100644 --- a/resources_utf8/src/mtype.h +++ b/resources_utf8/src/mtype.h @@ -6,7 +6,7 @@ * Copyright (C) 1991, 1992, 1993 Brett J. Vickers * */ -int Port; +extern int Port; /* socket port number */ #define PORTNUM 4000 diff --git a/resources_utf8/src/resource_path.c b/resources_utf8/src/resource_path.c new file mode 100644 index 00000000..0b6531de --- /dev/null +++ b/resources_utf8/src/resource_path.c @@ -0,0 +1,305 @@ +#include "mstruct.h" +#include "mextern.h" +#include "resource_path.h" + +#define RP_MAX_LINE 8192 + +typedef struct rp_alias { + char *legacy_hex; + char *normalized; +} rp_alias; + +static rp_alias *g_aliases = 0; +static int g_alias_count = 0; +static int g_alias_loaded = 0; + +#ifdef USE_RUST_RESOLVER +extern int mr_manifest_load(const char *manifest_path); +extern int mr_resolve_legacy_path(const char *legacy_path, char *out, unsigned long out_sz); +static int g_rust_manifest_loaded = 0; +#endif + +static char *rp_strdup(const char *s) +{ + unsigned long n; + char *p; + + if(!s) + return 0; + + n = (unsigned long)strlen(s) + 1; + p = (char *)malloc(n); + if(!p) + return 0; + + memcpy(p, s, n); + return p; +} + +static void rp_get_runtime_root(char *out, unsigned long out_sz) +{ + char *env_root; + + if(!out || out_sz == 0) + return; + + env_root = getenv("MUHAN_HOME"); + if(env_root && env_root[0]) { + snprintf(out, out_sz, "%s", env_root); + return; + } + + snprintf(out, out_sz, "%s", MUDHOME); +} + +static int rp_path_exists(const char *path) +{ + if(!path || !path[0]) + return 0; + return access(path, F_OK) == 0; +} + +static int rp_starts_with(const char *s, const char *prefix) +{ + unsigned long n; + + if(!s || !prefix) + return 0; + + n = (unsigned long)strlen(prefix); + if(strlen(s) < n) + return 0; + + return strncmp(s, prefix, n) == 0; +} + +static void rp_bytes_to_hex(const unsigned char *in, char *out, unsigned long out_sz) +{ + static const char hex[] = "0123456789ABCDEF"; + unsigned long i, j, n; + + if(!in || !out || out_sz == 0) + return; + + n = (unsigned long)strlen((const char *)in); + j = 0; + for(i = 0; i < n && (j + 2) < out_sz; i++) { + out[j++] = hex[(in[i] >> 4) & 0x0f]; + out[j++] = hex[in[i] & 0x0f]; + } + out[j] = 0; +} + +static int rp_is_read_mode(const char *mode) +{ + if(!mode || !mode[0]) + return 1; + + if(strchr(mode, 'w') || strchr(mode, 'a') || strchr(mode, '+')) + return 0; + + return 1; +} + +static void rp_load_aliases(void) +{ + char root[512], alias_file[1024], line[RP_MAX_LINE]; + FILE *fp; + + if(g_alias_loaded) + return; + g_alias_loaded = 1; + + rp_get_runtime_root(root, sizeof(root)); + snprintf(alias_file, sizeof(alias_file), "%s/resources_manifest/path-alias.v1.tsv", root); + + fp = fopen(alias_file, "r"); + if(!fp) + return; + + while(fgets(line, sizeof(line), fp)) { + char *legacy_hex; + char *legacy_cp949; + char *normalized; + char *sha; + rp_alias *tmp; + + if(strncmp(line, "legacy_path_hex\t", 16) == 0) + continue; + + legacy_hex = strtok(line, "\t\r\n"); + legacy_cp949 = strtok(0, "\t\r\n"); + normalized = strtok(0, "\t\r\n"); + sha = strtok(0, "\t\r\n"); + + (void)legacy_cp949; + (void)sha; + + if(!legacy_hex || !normalized) + continue; + + tmp = (rp_alias *)realloc(g_aliases, sizeof(rp_alias) * (g_alias_count + 1)); + if(!tmp) + continue; + + g_aliases = tmp; + g_aliases[g_alias_count].legacy_hex = rp_strdup(legacy_hex); + g_aliases[g_alias_count].normalized = rp_strdup(normalized); + if(g_aliases[g_alias_count].legacy_hex && g_aliases[g_alias_count].normalized) + g_alias_count++; + } + + fclose(fp); +} + +static const char *rp_find_alias(const char *legacy_hex) +{ + int i; + + if(!legacy_hex) + return 0; + + rp_load_aliases(); + for(i = 0; i < g_alias_count; i++) { + if(strcmp(g_aliases[i].legacy_hex, legacy_hex) == 0) + return g_aliases[i].normalized; + } + + return 0; +} + +int resolve_legacy_path(const char *legacy_path, char *out, unsigned long out_sz) +{ + char root[512], adjusted[1024], hexbuf[2048], candidate[2048]; + const char *rel = 0; + const char *alias; + unsigned long root_len; + + if(!legacy_path || !out || out_sz == 0) + return -1; + + out[0] = 0; + + if(rp_path_exists(legacy_path)) { + snprintf(out, out_sz, "%s", legacy_path); + return 0; + } + + rp_get_runtime_root(root, sizeof(root)); + root_len = (unsigned long)strlen(root); + +#ifdef USE_RUST_RESOLVER + if(!g_rust_manifest_loaded) { + char manifest_path[1024]; + snprintf(manifest_path, sizeof(manifest_path), "%s/resources_manifest/path-alias.v1.tsv", root); + g_rust_manifest_loaded = (mr_manifest_load(manifest_path) == 0) ? 1 : -1; + } + + if(g_rust_manifest_loaded == 1) { + if(mr_resolve_legacy_path(legacy_path, candidate, sizeof(candidate)) == 0) { + if(candidate[0] == '/') { + snprintf(out, out_sz, "%s", candidate); + } else { + char rust_joined[2048]; + snprintf(rust_joined, sizeof(rust_joined), "%s/resources_utf8/%s", root, candidate); + snprintf(out, out_sz, "%s", rust_joined); + } + return rp_path_exists(out) ? 0 : -1; + } + } +#endif + + adjusted[0] = 0; + if(rp_starts_with(legacy_path, MUDHOME) && strcmp(root, MUDHOME) != 0) { + snprintf(adjusted, sizeof(adjusted), "%s%s", root, legacy_path + strlen(MUDHOME)); + if(rp_path_exists(adjusted)) { + snprintf(out, out_sz, "%s", adjusted); + return 0; + } + } + + if(rp_starts_with(legacy_path, MUDHOME "/")) + rel = legacy_path + strlen(MUDHOME) + 1; + else if(root_len > 0 && rp_starts_with(legacy_path, root) && legacy_path[root_len] == '/') + rel = legacy_path + root_len + 1; + else if(legacy_path[0] != '/') + rel = legacy_path; + + if(rel && rel[0]) { + rp_bytes_to_hex((const unsigned char *)rel, hexbuf, sizeof(hexbuf)); + alias = rp_find_alias(hexbuf); + + if(alias && alias[0]) { + snprintf(candidate, sizeof(candidate), "%s/resources_utf8/%s", root, alias); + if(rp_path_exists(candidate)) { + snprintf(out, out_sz, "%s", candidate); + return 0; + } + } + + snprintf(candidate, sizeof(candidate), "%s/resources_utf8/%s", root, rel); + if(rp_path_exists(candidate)) { + snprintf(out, out_sz, "%s", candidate); + return 0; + } + } + + if(adjusted[0]) { + snprintf(out, out_sz, "%s", adjusted); + return rp_path_exists(adjusted) ? 0 : -1; + } + + snprintf(out, out_sz, "%s", legacy_path); + return rp_path_exists(legacy_path) ? 0 : -1; +} + +FILE *rp_fopen(const char *path, const char *mode) +{ + char resolved[2048]; + + if(rp_is_read_mode(mode)) { + if(resolve_legacy_path(path, resolved, sizeof(resolved)) == 0) + return fopen(resolved, mode); + } else { + char root[512], adjusted[2048]; + rp_get_runtime_root(root, sizeof(root)); + if(rp_starts_with(path, MUDHOME) && strcmp(root, MUDHOME) != 0) { + snprintf(adjusted, sizeof(adjusted), "%s%s", root, path + strlen(MUDHOME)); + return fopen(adjusted, mode); + } + } + + return fopen(path, mode); +} + +int rp_open(const char *path, int flags, int mode) +{ + char resolved[2048]; + int read_only; + + read_only = ((flags & O_ACCMODE) == O_RDONLY) && !(flags & O_CREAT); + + if(read_only) { + if(resolve_legacy_path(path, resolved, sizeof(resolved)) == 0) + return open(resolved, flags, mode); + } else { + char root[512], adjusted[2048]; + rp_get_runtime_root(root, sizeof(root)); + if(rp_starts_with(path, MUDHOME) && strcmp(root, MUDHOME) != 0) { + snprintf(adjusted, sizeof(adjusted), "%s%s", root, path + strlen(MUDHOME)); + return open(adjusted, flags, mode); + } + } + + return open(path, flags, mode); +} + +int rp_stat(const char *path, struct stat *st) +{ + char resolved[2048]; + + if(resolve_legacy_path(path, resolved, sizeof(resolved)) == 0) + return stat(resolved, st); + + return stat(path, st); +} diff --git a/resources_utf8/src/resource_path.h b/resources_utf8/src/resource_path.h new file mode 100644 index 00000000..21c20736 --- /dev/null +++ b/resources_utf8/src/resource_path.h @@ -0,0 +1,12 @@ +#ifndef RESOURCE_PATH_H +#define RESOURCE_PATH_H + +#include +#include + +int resolve_legacy_path(const char *legacy_path, char *out, unsigned long out_sz); +FILE *rp_fopen(const char *path, const char *mode); +int rp_open(const char *path, int flags, int mode); +int rp_stat(const char *path, struct stat *st); + +#endif diff --git a/resources_utf8/src/room.c b/resources_utf8/src/room.c index 0bd56eb2..d4644342 100644 --- a/resources_utf8/src/room.c +++ b/resources_utf8/src/room.c @@ -225,6 +225,9 @@ int num; ctag *cg, *temp, *prev; char str[160]; + if(!crt_ptr || !rom_ptr) + return; + crt_ptr->parent_rom = rom_ptr; crt_ptr->rom_num = rom_ptr->rom_num; diff --git a/resources_utf8/src/update.c b/resources_utf8/src/update.c index 358b2f7d..54cf6c28 100644 --- a/resources_utf8/src/update.c +++ b/resources_utf8/src/update.c @@ -70,7 +70,7 @@ void update_game() #ifdef RECORD_ALL if(t- last_allcmd >= 300) update_allcmd(t); -#endif RECORD_ALL +#endif /* RECORD_ALL */ } /**********************************************************************/ @@ -773,7 +773,8 @@ long t; if(strlen(new_rom->name) < 2) return; - load_crt(mrand(732, 755), &crt_ptr); + if(load_crt(mrand(732, 755), &crt_ptr) < 0 || !crt_ptr) + continue; add_crt_rom(crt_ptr, new_rom); } broadcast("\nµå·¹´Ï¾Æ¿¡ Ä«¿À½ºÀÇ ÁöÈÖÇÏ¿¡ ¸÷ÀÌ Ä§°øÇß½À´Ï´Ù. \"ÀïÃëÇ϶ó!!\""); @@ -794,7 +795,8 @@ long t; for (tmp; tmp < 10; tmp++) { rom_num = mrand(3601, 3630); - load_crt(mrand(265, 299), &crt_ptr); + if(load_crt(mrand(265, 299), &crt_ptr) < 0 || !crt_ptr) + continue; if(load_rom(rom_num, &new_rom) < 0) continue; add_crt_rom(crt_ptr, new_rom); } @@ -840,7 +842,7 @@ long t; #ifdef RECORD_ALL sprintf(path,"%s/%s",LOGPATH,"all_cmd"); unlink(path); -#endif RECORD_ALL +#endif /* RECORD_ALL */ #ifndef WIN32 kill(getpid(), 9); #endif diff --git a/resources_utf8/tests/smoke/compare_resolvers.py b/resources_utf8/tests/smoke/compare_resolvers.py new file mode 100644 index 00000000..b8edbeb2 --- /dev/null +++ b/resources_utf8/tests/smoke/compare_resolvers.py @@ -0,0 +1,89 @@ +#!/usr/bin/env python3 +import argparse +import json +import os +import pathlib +import subprocess +import sys + + +def run_probe(probe: str, hex_lines: list[str]) -> dict[str, tuple[int, str]]: + payload = ("\n".join(hex_lines) + "\n").encode("ascii") + p = subprocess.run([probe], input=payload, stdout=subprocess.PIPE, stderr=subprocess.PIPE, check=True) + out = p.stdout.decode("utf-8", errors="replace").splitlines() + + result: dict[str, tuple[int, str]] = {} + for line in out: + parts = line.split("\t", 2) + if len(parts) < 3: + continue + key, rc_s, resolved = parts[0], parts[1], parts[2] + try: + rc = int(rc_s) + except ValueError: + rc = -999 + result[key] = (rc, resolved) + return result + + +def main() -> int: + ap = argparse.ArgumentParser() + ap.add_argument("--probe-a", required=True) + ap.add_argument("--probe-b", required=True) + ap.add_argument("--manifest", default="resources_manifest/resource-map.v1.json") + ap.add_argument("--muhan-home", default=os.environ.get("MUHAN_HOME", "/work")) + args = ap.parse_args() + + manifest = json.loads(pathlib.Path(args.manifest).read_text(encoding="utf-8")) + hex_lines = [row["legacy_path_hex"] for row in manifest] + + a = run_probe(args.probe_a, hex_lines) + b = run_probe(args.probe_b, hex_lines) + + mismatches = [] + missing = [] + + for row in manifest: + h = row["legacy_path_hex"] + expected_utf8 = os.path.realpath(os.path.join(args.muhan_home, "resources_utf8", row["normalized_utf8_path"])) + raw = bytes.fromhex(h) + has_non_ascii = any(b >= 0x80 for b in raw) + + if h not in a or h not in b: + missing.append(h) + continue + + a_rc, a_path = a[h] + b_rc, b_path = b[h] + + a_real = os.path.realpath(a_path) if a_path else "" + b_real = os.path.realpath(b_path) if b_path else "" + + if a_rc != 0 or b_rc != 0 or a_real != b_real: + mismatches.append((h, a_rc, a_path, b_rc, b_path, expected_utf8)) + continue + + if has_non_ascii and a_real != expected_utf8: + mismatches.append((h, a_rc, a_path, b_rc, b_path, expected_utf8)) + + if missing: + print(f"resolver parity failed: missing probe rows={len(missing)}") + for h in missing[:20]: + print(f" missing: {h}") + return 1 + + if mismatches: + print(f"resolver parity failed: mismatches={len(mismatches)}") + for h, a_rc, a_path, b_rc, b_path, expected in mismatches[:20]: + print(f" {h}") + print(f" c: rc={a_rc} path={a_path}") + print(f" rust: rc={b_rc} path={b_path}") + print(f" exp: {expected}") + return 1 + + print(f"resolver parity ok: {len(manifest)} paths") + return 0 + + +if __name__ == "__main__": + raise SystemExit(main()) diff --git a/resources_utf8/tests/smoke/rp_probe.c b/resources_utf8/tests/smoke/rp_probe.c new file mode 100644 index 00000000..4fe64290 --- /dev/null +++ b/resources_utf8/tests/smoke/rp_probe.c @@ -0,0 +1,60 @@ +#include +#include +#include + +#include "resource_path.h" + +static int hexval(int c) +{ + if(c >= '0' && c <= '9') return c - '0'; + if(c >= 'a' && c <= 'f') return c - 'a' + 10; + if(c >= 'A' && c <= 'F') return c - 'A' + 10; + return -1; +} + +int main(void) +{ + char line[8192]; + + while(fgets(line, sizeof(line), stdin)) { + unsigned char legacy[4096]; + char out[4096]; + char *p; + int len, i, rc; + + p = line; + while(*p && *p != '\n' && *p != '\r') p++; + *p = 0; + + len = (int)strlen(line); + if(len == 0) { + continue; + } + + if(len % 2 != 0 || len / 2 >= (int)sizeof(legacy)) { + printf("%s\t-9\t\n", line); + continue; + } + + for(i = 0; i < len / 2; i++) { + int hi = hexval((unsigned char)line[i * 2]); + int lo = hexval((unsigned char)line[i * 2 + 1]); + if(hi < 0 || lo < 0) { + printf("%s\t-8\t\n", line); + fflush(stdout); + goto next_line; + } + legacy[i] = (unsigned char)((hi << 4) | lo); + } + legacy[len / 2] = 0; + + out[0] = 0; + rc = resolve_legacy_path((const char *)legacy, out, sizeof(out)); + printf("%s\t%d\t%s\n", line, rc, (rc == 0) ? out : ""); + fflush(stdout); +next_line: + ; + } + + return 0; +} diff --git a/resources_utf8/tests/smoke/session_smoke.py b/resources_utf8/tests/smoke/session_smoke.py new file mode 100644 index 00000000..a916aa77 --- /dev/null +++ b/resources_utf8/tests/smoke/session_smoke.py @@ -0,0 +1,116 @@ +#!/usr/bin/env python3 +import os +import random +import socket +import string +import time + +HOST = "127.0.0.1" +PORT = int(os.environ.get("MUD_PORT", "4000")) +ENC = "cp949" +EXPECT_HINTS = os.environ.get("SMOKE_EXPECT_HINTS", "1") not in ("0", "false", "False") + + +def recv_some(sock: socket.socket, timeout: float = 0.5) -> bytes: + sock.settimeout(timeout) + chunks = [] + while True: + try: + data = sock.recv(4096) + if not data: + break + chunks.append(data) + if len(data) < 4096: + break + except socket.timeout: + break + return b"".join(chunks) + + +def send_line(sock: socket.socket, text: str, wait: float = 0.6) -> bytes: + sock.sendall(text.encode(ENC) + b"\n") + time.sleep(wait) + return recv_some(sock) + + +def wait_port(host: str, port: int, sec: float = 40.0) -> None: + t0 = time.time() + while time.time() - t0 < sec: + try: + with socket.create_connection((host, port), timeout=0.5): + return + except OSError: + time.sleep(0.2) + raise RuntimeError("server port not ready") + + +def mk_name() -> str: + # Keep first char "타" so legacy first_han() folder stays under player/타. + second = chr(0xAC00 + random.randint(0, 11171)) + third = chr(0xAC00 + random.randint(0, 11171)) + return "타" + second + third + + +def main() -> None: + wait_port(HOST, PORT) + + name = mk_name() + password = "pw" + "".join(random.choice(string.digits) for _ in range(4)) + + transcript = bytearray() + transcript2 = bytearray() + + # Session 1: create player + run core commands. + with socket.create_connection((HOST, PORT), timeout=3.0) as sock: + time.sleep(0.7) + transcript.extend(recv_some(sock, 1.0)) + + for step in [ + name, + "y", + "남", + "4", + "12 10 12 10 10", + "1", + "ì„ ", + "7", + password, + "환ì˜�", + "ë�„움ë§�", + "ê±´ê°•", + "저장", + ]: + transcript.extend(send_line(sock, step)) + + time.sleep(0.5) + + # Session 2: login existing player (save/load round-trip path). + with socket.create_connection((HOST, PORT), timeout=3.0) as sock: + time.sleep(0.7) + transcript2.extend(recv_some(sock, 1.0)) + for step in [ + name, + password, + "ê±´ê°•", + "ë�„움ë§�", + ]: + transcript2.extend(send_line(sock, step)) + + transcript.extend(transcript2) + + text = transcript.decode(ENC, errors="ignore") + + if len(transcript) < 200: + raise RuntimeError("smoke failed: too little server output") + + if EXPECT_HINTS: + hints = ["ë�„움", "환ì˜�", "ê±´ê°•", "ì�´ë¦„"] + if not any(h in text for h in hints): + raise RuntimeError("smoke failed: expected response hints not found") + + if len(transcript2) < 60: + raise RuntimeError("smoke failed: reconnect transcript too small") + + +if __name__ == "__main__": + main() diff --git a/resources_utf8/tools/revive/extract-legacy-blobs.sh b/resources_utf8/tools/revive/extract-legacy-blobs.sh new file mode 100644 index 00000000..7a3b0425 --- /dev/null +++ b/resources_utf8/tools/revive/extract-legacy-blobs.sh @@ -0,0 +1,144 @@ +#!/usr/bin/env bash +set -euo pipefail + +repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)" +cd "$repo_root" + +out_root="${1:-resources_utf8}" +manifest_dir="${2:-resources_manifest}" + +python3 - "$out_root" "$manifest_dir" <<'PY' +import json +import hashlib +import pathlib +import shutil +import subprocess +import sys +import unicodedata +from typing import Tuple + +out_root = pathlib.Path(sys.argv[1]) +manifest_dir = pathlib.Path(sys.argv[2]) + +if out_root.exists(): + shutil.rmtree(out_root) +if manifest_dir.exists(): + shutil.rmtree(manifest_dir) +out_root.mkdir(parents=True, exist_ok=True) +manifest_dir.mkdir(parents=True, exist_ok=True) + + +def run_git(*args: str) -> bytes: + return subprocess.run(["git", *args], check=True, stdout=subprocess.PIPE).stdout + + +def safe_seg(seg: bytes) -> Tuple[str, bool]: + try: + return seg.decode("cp949"), True + except UnicodeDecodeError: + return f"__legacy_hex_{seg.hex().upper()}", False + + +def classify_blob(data: bytes) -> Tuple[str, str]: + if b"\x00" in data: + return "binary", "binary" + ctrl = sum(1 for b in data if (b < 9) or (13 < b < 32)) + if data and (ctrl / len(data)) > 0.02: + return "binary", "binary" + try: + txt = data.decode("utf-8") + if all(ord(ch) < 128 for ch in txt): + return "text", "ascii" + return "text", "utf-8" + except UnicodeDecodeError: + pass + try: + data.decode("cp949") + return "text", "cp949" + except UnicodeDecodeError: + return "binary", "binary" + + +exclude_roots = [] +for p in (out_root, manifest_dir): + posix = p.as_posix().strip("/") + if posix: + exclude_roots.append(posix.encode("utf-8")) + +raw = run_git("ls-tree", "-r", "-z", "HEAD") +entries = [] +for e in (x for x in raw.split(b"\x00") if x): + _, path_b = e.split(b"\t", 1) + if any(path_b == root or path_b.startswith(root + b"/") for root in exclude_roots): + continue + entries.append(e) +manifest = [] +used_paths = {} +used_fs_keys = {} + +for entry in entries: + meta, path_b = entry.split(b"\t", 1) + _, typ_b, sha_b = meta.split(b" ", 2) + if typ_b != b"blob": + continue + + sha = sha_b.decode("ascii") + segs = path_b.split(b"/") + norm_segs = [] + for s in segs: + decoded, _ = safe_seg(s) + norm_segs.append(decoded) + + candidate = "/".join(norm_segs) + # macOS default filesystems are case-insensitive + Unicode-normalized. + # Reserve path keys in that view as well to avoid silent overwrite. + while True: + fs_key = unicodedata.normalize("NFD", candidate).casefold() + exact_conflict = candidate in used_paths and used_paths[candidate] != path_b + fs_conflict = fs_key in used_fs_keys and used_fs_keys[fs_key] != path_b + if not exact_conflict and not fs_conflict: + break + + p = pathlib.PurePosixPath(candidate) + stem = p.stem if p.stem else p.name + suffix = p.suffix if p.suffix else "" + parent = str(p.parent) + alt_name = f"{stem}__{sha[:8]}{suffix}" + candidate = f"{parent}/{alt_name}" if parent != "." else alt_name + + used_paths[candidate] = path_b + used_fs_keys[unicodedata.normalize("NFD", candidate).casefold()] = path_b + blob = run_git("cat-file", "-p", sha) + + out_path = out_root / pathlib.PurePosixPath(candidate) + out_path.parent.mkdir(parents=True, exist_ok=True) + out_path.write_bytes(blob) + + kind, encoding = classify_blob(blob) + try: + cp949_path = path_b.decode("cp949") + except UnicodeDecodeError: + cp949_path = "" + + manifest.append({ + "legacy_path_hex": path_b.hex().upper(), + "legacy_path_cp949": cp949_path, + "normalized_utf8_path": candidate, + "blob_sha1": sha, + "sha256": hashlib.sha256(blob).hexdigest(), + "size": len(blob), + "kind": kind, + "text_encoding": encoding, + }) + +manifest.sort(key=lambda x: x["normalized_utf8_path"]) +(manifest_dir / "resource-map.v1.json").write_text(json.dumps(manifest, ensure_ascii=False, indent=2) + "\n", encoding="utf-8") +with (manifest_dir / "path-alias.v1.tsv").open("w", encoding="utf-8", newline="") as fp: + fp.write("legacy_path_hex\tlegacy_path_cp949\tnormalized_utf8_path\tblob_sha1\n") + for row in manifest: + cp949 = row["legacy_path_cp949"].replace("\t", " ").replace("\n", " ") + norm = row["normalized_utf8_path"].replace("\t", " ").replace("\n", " ") + fp.write(f"{row['legacy_path_hex']}\t{cp949}\t{norm}\t{row['blob_sha1']}\n") + +print(f"generated_entries={len(manifest)}") +PY diff --git a/resources_utf8/tools/revive/report-missing-paths.sh b/resources_utf8/tools/revive/report-missing-paths.sh new file mode 100644 index 00000000..dba83ee9 --- /dev/null +++ b/resources_utf8/tools/revive/report-missing-paths.sh @@ -0,0 +1,50 @@ +#!/usr/bin/env bash +set -euo pipefail + +repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)" +cd "$repo_root" + +python3 - <<'PY' +import os +import subprocess +from collections import Counter + +def hex_bytes(b: bytes) -> str: + out = [] + for x in b: + if 32 <= x <= 126 and x != 92: + out.append(chr(x)) + else: + out.append(f"\\x{x:02X}") + return "".join(out) + +p = subprocess.run(["git", "ls-tree", "-r", "-z", "--name-only", "HEAD"], check=True, stdout=subprocess.PIPE) +paths = [x for x in p.stdout.split(b"\x00") if x] + +missing = [] +for pb in paths: + if not os.path.lexists(pb): + missing.append(pb) + +print(f"total={len(paths)}") +print(f"missing={len(missing)}") +print(f"exists={len(paths)-len(missing)}") + +by_top = Counter() +for pb in missing: + top = pb.split(b"/", 1)[0].decode("ascii", "replace") + by_top[top] += 1 + +if missing: + print("missing_by_top:") + for k in sorted(by_top): + print(f" {k}: {by_top[k]}") + +print("missing_paths:") +for pb in missing: + try: + cp949 = pb.decode("cp949") + except UnicodeDecodeError: + cp949 = "" + print(f"{hex_bytes(pb)}\t{cp949}") +PY diff --git a/scripts/run-smoke.sh b/scripts/run-smoke.sh index 83ac595e..7db555f9 100755 --- a/scripts/run-smoke.sh +++ b/scripts/run-smoke.sh @@ -62,10 +62,10 @@ docker run --rm --platform linux/amd64 \ set -euo pipefail export MUHAN_HOME=/work - gcc -std=gnu89 -fcommon -finput-charset=cp949 -I src \ + gcc -std=gnu89 -fcommon -I src \ tests/smoke/rp_probe.c src/resource_path.c -o /tmp/rp_probe_c - gcc -std=gnu89 -fcommon -finput-charset=cp949 -DUSE_RUST_RESOLVER -I src \ + gcc -std=gnu89 -fcommon -DUSE_RUST_RESOLVER -I src \ tests/smoke/rp_probe.c src/resource_path.c \ /work/rust/target/release/libmuhan_resource_ffi.a -ldl -lpthread \ -o /tmp/rp_probe_rust diff --git a/src/.gitignore b/src/.gitignore index 874c63cf..b829f749 100644 --- a/src/.gitignore +++ b/src/.gitignore @@ -1,2 +1,2 @@ *.o - +frp.new diff --git a/src/Makefile b/src/Makefile index 28cf9f67..8184c9c4 100644 --- a/src/Makefile +++ b/src/Makefile @@ -1,10 +1,10 @@ -# ¼ö³²ÀÌ ¿¡¶ó ¸Þ¼¼Áö -Wall -# ¶Ç ´Ù¸¥ ÄÄÆÄÀÏ ¿É¼Ç -DRECORD_ALL ¿ë·®¸¹¾Æ Áö¿üÀ½..debug³ÖÀ½ -# Á¤±ÕÀÌ -DDEBUG¾ø¾Ú. -# ¿ÀÅä¼Ë´Ù¿î ¾ø¾Ú. -DAUTOSHUTDOWN -# ¶óÅäÅ© savegame_nomsg ÇÔ¼ö¸¦ ³Ö°í ½ÍÀº °æ¿ì Áï, º¹»ç°¡ ¸¹ÀÌ µÇ°í ÀÖÀ»¶§¿¡´Â -# -DNODUPLE ¿É¼ÇÀ» ³Ö¾îÁֱ⸦ ¹Ù¶÷. -# Å©·ÎŰ ·¹º§ Á¦ÇÑÀ» µÎ°í ½ÍÁö ¾ÊÀº °æ¿ì, -DOBJLEVEL À» »èÁ¦ÇØ ÁÖ¸é µÊ. +# 수남ì�´ ì—�ë�¼ 메세지 -Wall +# ë˜� 다른 컴파ì�¼ 옵션 -DRECORD_ALL 용량많아 지웠ì�Œ..debugë„£ì�Œ +# ì •ê· ì�´ -DDEBUG없앰. +# 오토셧다운 없앰. -DAUTOSHUTDOWN +# ë�¼í† í�¬ savegame_nomsg 함수를 넣고 ì‹¶ì�€ 경우 즉, 복사가 ë§Žì�´ ë�˜ê³  있ì�„때ì—�는 +# -DNODUPLE 옵션ì�„ 넣어주기를 바람. +# í�¬ë¡œí‚¤ 레벨 제한ì�„ ë‘�ê³  ì‹¶ì§€ 않ì�€ 경우, -DOBJLEVEL ì�„ 삭제해 주면 ë�¨. LEGACY_CHARSET_FLAGS ?= CFLAGS = -g -O2 -std=gnu89 -fcommon -DFINGERACCT -DCHECKDOUBLE -DSUICIDE -DOBJLEVEL -DDEBUG $(LEGACY_CHARSET_FLAGS) @@ -31,7 +31,8 @@ OBJECTS = global.o main.o files1.o files2.o files3.o bank.o command1.o command2. magic3.o magic4.o magic5.o magic6.o magic7.o magic8.o \ dm1.o dm2.o dm3.o dm4.o dm5.o dm6.o io.o \ player.o creature.o room.o object.o update.o post.o action.o misc.o \ - special1.o compress.o alias.o board.o resource_path.o + special1.o compress.o alias.o board.o resource_path.o utf8_text.o \ + player_path.o $(OUTFILE): $(OBJECTS) $(CC) $(CFLAGS) $(OBJECTS) -o $(OUTFILE) $(LIBS) $(EXTRA_LIBS) @@ -44,7 +45,7 @@ auth: auth.o mv auth ../bin clean: - rm $(OBJECTS) + rm -f $(OBJECTS) $(OUTFILE) port: rm -f io.o main.o; @@ -53,4 +54,3 @@ port: fing: finger.o $(CC) finger.o -o fing mv fing ../bin - diff --git a/src/README b/src/README index 87fd1075..47a72560 100644 --- a/src/README +++ b/src/README @@ -1,43 +1,43 @@ - ÄÄÆÄÀÏ ¹æ¹ý. + 컴파ì�¼ 방법. * LINUX - µð·ºÅ丮¸¦ º¯°æÇϰíÀÚ Çϸé mtype.h¿¡¼­ Á¤ÀÇµÈ µð·ºÅ丮¸¦ °íÄ¡¸é µË´Ï´Ù. + 디렉토리를 변경하고ìž� 하면 mtype.hì—�서 ì •ì�˜ë�œ 디렉토리를 고치면 ë�©ë‹ˆë‹¤. - ´ëºÎºÐÀÇ ±â´ÉÀÌ ¾ÆÁ÷ ¼³°èÁßÀ̱⠶§¹®¿¡ ÀÛµ¿ÀÌ ¾ÊµÇ´Â °æ¿ìµµ - ÀÖ½À´Ï´Ù. + 대부분ì�˜ 기능ì�´ ì•„ì§� 설계중ì�´ê¸° 때문ì—� ìž‘ë�™ì�´ 않ë�˜ëŠ” 경우ë�„ + 있습니다. - util µð·ºÅ丮¿¡ ÀÖ´Â °¢Á¾ À¯Æ¿µµ ´Ù½Ã ÄÄÆÄÀÏÇØ¼­ ÀÚ½ÅÀÇ ½Ã½ºÅÛ¿¡ - Àû¿ë½ÃÄѼ­ ¾²½Ã´Â°ÍÀÌ ÁÁ½À´Ï´Ù. - °³¹ßÁß¿¡ ´Ù¿îÀÌ Çϵµ ¸¹ÀÌ µÇ¼­ startmÀ̶õ À¯Æ¿À» °³¹ß ÇÏ¿´´Âµ¥, - À̰ÍÀº 30ÃÊ ´ÜÀ§·Î ¸Óµå¸¦ ´Ù½Ã ºÎÆÃ½ÃÄÑ ÁÝ´Ï´Ù. + util 디렉토리ì—� 있는 ê°�종 유틸ë�„ 다시 컴파ì�¼í•´ì„œ ìž�ì‹ ì�˜ 시스템ì—� + ì �용시켜서 쓰시는것ì�´ 좋습니다. + 개발중ì—� 다운ì�´ 하ë�„ ë§Žì�´ ë�˜ì„œ startmì�´ëž€ 유틸ì�„ 개발 하였는ë�°, + ì�´ê²ƒì�€ 30ì´ˆ 단위로 머드를 다시 부팅시켜 ì¤�니다. - make¸¦ ÀÔ·ÂÇÏ½Ã¸é ¹Ù·Î frp.new ½ÇÇàÆÄÀÏÀÌ »ý¼ºµÇ¸ç ÀÌ ÆÄÀÏÀ» bin/¿¡ - frp·Î Ä«ÇÇÇϼż­ ½ÇÇàÇÏ½Ã¸é µË´Ï´Ù. + make를 입력하시면 바로 frp.new 실행파ì�¼ì�´ ìƒ�성ë�˜ë©° ì�´ 파ì�¼ì�„ bin/ì—� + frp로 카피하셔서 실행하시면 ë�©ë‹ˆë‹¤. * WINDOWS95 - ÄÄÆÄÀÏ ¾ÊÇÏ´Â °æ¿ì \home\muhan\À̶ó´Â µð·ºÅ丮¿¡ ¼³Ä¡ÇÑÈÄ - À©µµ¿ì»ó¿¡¼­ µµ½ºÃ¢À» ¿­°í binµð·ºÅ丮ÀÇ muhan.exe¸¦ ½ÇÇàÇÑ´Ù. - ±×·³ µµ½ºÃ¢ÀÌ Á¤ÁöµÇ¸é¼­ ¹«ÇÑ´ëÀüÀÌ ÀÛµ¿Çϱ⠽ÃÀÛÇÑ´Ù. - À̶§ ÄÄÇ»ÅÍ´Â ¹Ýµå½Ã ³×Æ®¿öÅ©°¡ °¡´ÉÇÏ¿©¾ß ÇÑ´Ù. - ÄÄÆÄÀÏÀ» ¿øÇϸé VC++¿¡¼­ muhan.mdp ÇÁ·ÎÁ§Æ® ÆÄÀÏÀ» ÀоîµéÀÎ ´ÙÀ½ ÄÄÆÄÀÏÀ» ÇÑ´Ù. - mtype.h¿¡ ÀÖ´Â µð·ºÅ丮¸¦ ÀÚ½ÅÀÇ È¯°æ¿¡ ¸Â°Ô °íÄ£´Ù. + 컴파ì�¼ 않하는 경우 \home\muhan\ì�´ë�¼ëŠ” 디렉토리ì—� 설치한후 + 윈ë�„ìš°ìƒ�ì—�서 ë�„스창ì�„ ì—´ê³  bin디렉토리ì�˜ muhan.exe를 실행한다. + 그럼 ë�„스창ì�´ ì •ì§€ë�˜ë©´ì„œ 무한대전ì�´ ìž‘ë�™í•˜ê¸° 시작한다. + ì�´ë•Œ 컴퓨터는 반드시 네트워í�¬ê°€ 가능하여야 한다. + 컴파ì�¼ì�„ ì›�하면 VC++ì—�서 muhan.mdp 프로ì �트 파ì�¼ì�„ ì�½ì–´ë“¤ì�¸ 다ì�Œ 컴파ì�¼ì�„ 한다. + mtype.hì—� 있는 디렉토리를 ìž�ì‹ ì�˜ 환경ì—� 맞게 고친다. - util µð·ºÅ丮¿¡¼­ editor¿Í list¸¦ ÄÄÆÄÀÏÇÏ¿© Áö¿ø À¯Æ¿À» Á¦ÀÛÇØ¾ß ÇÑ´Ù. - editor¸¦ »ç¿ëÇϱâÀ§Çؼ­´Â ºÎÆÃ½Ã ansi.sys¸¦ Ãß°¡ÇÏ¿©¾ß ÇÑ´Ù. + util 디렉토리ì—�서 editor와 list를 컴파ì�¼í•˜ì—¬ ì§€ì›� 유틸ì�„ 제작해야 한다. + editor를 사용하기위해서는 부팅시 ansi.sys를 추가하여야 한다. - À©µµ¿ì¹öÁ¯Àº Äڵ常 ÀÛ¼ºµÇ¾úÀ»»Ó ¸®´ª½ºÈ¯°æ°ú ´Þ¸® ¾Æ¹«·± º£Å¸ Å×½ºÆ®³ª - ¿î¿µÀÌ ÀÌ·ç¾îÁöÁö ¾Ê¾Ò´Ù. ¶§¹®¿¡ ¼­¹ö·Î ¿î¿µÇÒ °æ¿ì ¹ß»ýÇÏ´Â ¸ðµç - ¹®Á¦¿¡ ´ëÇØ ½º½º·Î °³¹ßÇÏ¿© ¿Ï¼ºÇÏ¿©¾ß ÇÑ´Ù. + 윈ë�„우버젼ì�€ 코드만 작성ë�˜ì—ˆì�„ë¿� 리눅스환경과 달리 아무런 베타 테스트나 + ìš´ì˜�ì�´ ì�´ë£¨ì–´ì§€ì§€ 않았다. 때문ì—� 서버로 ìš´ì˜�í•  경우 ë°œìƒ�하는 모든 + 문제ì—� 대해 스스로 개발하여 완성하여야 한다. - WinSock Code¸¦ Á¦°øÇÏ¿© ÁֽŠJohn Freeman¿¡°Ô °¨»ç¸¦ µå¸³´Ï´Ù. + WinSock Code를 제공하여 주신 John Freemanì—�게 ê°�사를 드립니다. - * Link¿¡ °üÇÏ¿©.... + * Linkì—� 관하여.... - ¸®´ª½º¿¡¼­´Â ¸µÅ©°¡ ¼³Á¤µÇ´Âµ¥ À©µµ¿ì¿¡¼­´Â ¸µÅ©°¡ ¼³Á¤µÇÁö ¾Ê´Â´Ù. - µû¶ó¼­ ¸ðµç include ÆÄÀÏÀº ¸®´ª½º¿¡¼­´Â srcµð·ºÅ丮·Î ¸µÅ©¸¦ - ¼³Á¤ÇÏ¸é Æí¸®ÇÏ´Ù. - À©µµ¿ì»ó¿¡¼­´Â srcµð·ºÅ丮ÀÇ include ¸¦ ¼öÁ¤½Ã utilµð·ºÅ丮ÀÇ - editor¿Í listµð·ºÅ丮·Î Ä«ÇÇÇÏ¿© µ¿ÀÏÇÑ ÆÄÀÏ·Î ¸¸µé¾î¾ß ÇÑ´Ù. + 리눅스ì—�서는 ë§�í�¬ê°€ 설정ë�˜ëŠ”ë�° 윈ë�„ìš°ì—�서는 ë§�í�¬ê°€ 설정ë�˜ì§€ 않는다. + ë”°ë�¼ì„œ 모든 include 파ì�¼ì�€ 리눅스ì—�서는 src디렉토리로 ë§�í�¬ë¥¼ + 설정하면 편리하다. + 윈ë�„ìš°ìƒ�ì—�서는 src디렉토리ì�˜ include 를 수정시 util디렉토리ì�˜ + editor와 list디렉토리로 카피하여 ë�™ì�¼í•œ 파ì�¼ë¡œ 만들어야 한다. diff --git a/src/README.update b/src/README.update index 58e5c810..9e7a0c71 100644 --- a/src/README.update +++ b/src/README.update @@ -1,77 +1,77 @@ -¹«ÇÑ´ëÀü 1.1 - ÆÐ°Å¸® ÀüÀïÀÇ Ãß°¡. - -- ÇÑÂÊÀÇ ÆÐ°Å¸®°¡ ½Î¿ï ÆÐ°Å¸®¿¡ ´ëÇØ¼­ [ÆÐ°Å¸®¸í ¼±ÀüÆ÷°í] ¸í·ÉÀ» Çϰí, - »ó´ë ÆÐ°Å¸®¿¡¼­µµ [ÆÐ°Å¸®¸í ¼±ÀüÆ÷°í]¸¦ ÇØ¼­ ÀüÀïÀÌ ¼º¸³. - ¼±ÀüÆ÷°í ¸í·ÉÀº ÆÐ°Å¸®ÀÇ µÎ¸ñ¸¸ÀÌ ÇÒ¼ö ÀÖÀ¸¸ç, ÆÐ°Å¸®ÀÇ µÎ¸ñÀÌ Á×°Ô - µÅ¸é ÀüÀïÀÌ ³¡ÀÌ ³ª°Ô µÈ´Ù. ÀüÀïÀ¸·Î ÀÎÇÑ °æÇèÄ¡µîÀÇ À̵æÀº ¾øÀ¸¸ç, - ´ÜÁö ÆÐ°Å¸® »óÈ£°£ÀÇ Àç¹Ì¸¦ À§Çؼ­ ¸¸µé¾îÁø ±â´É. - -- ¹®Á¦Á¡ : ÀüÀïÀº µÎ ÆÐ°Å¸®°£¿¡¸¸ ÇÒ¼ö ÀÖÀ¸¸ç, ¾î¶² ÆÐ°Å¸®¿¡¼­ ÀüÀïÁß - ÀÌ¸é ´Ù¸¥ ÆÐ°Å¸®µéÀº ÀüÀï¿¡ Âü°¡ ÇÒ¼ö ¾ø´Ù. - ÆÐ°Å¸® µÎ¸ñÀÌ ÀüÀïÁß ¸Óµå¿¡¼­ ³ª°¡°Ô µÇ¸é ÀüÀïÀÌ ³¡ÀÌ ³ªÁö - ¾Ê°Ô µÈ´Ù. +무한대전 1.1 + 패거리 ì „ìŸ�ì�˜ 추가. + -- 한쪽ì�˜ 패거리가 싸울 패거리ì—� 대해서 [패거리명 ì„ ì „í�¬ê³ ] 명령ì�„ 하고, + ìƒ�대 패거리ì—�서ë�„ [패거리명 ì„ ì „í�¬ê³ ]를 해서 ì „ìŸ�ì�´ 성립. + ì„ ì „í�¬ê³  명령ì�€ 패거리ì�˜ ë‘�목만ì�´ 할수 있으며, 패거리ì�˜ ë‘�목ì�´ 죽게 + ë�¼ë©´ ì „ìŸ�ì�´ ë��ì�´ 나게 ë�œë‹¤. ì „ìŸ�으로 ì�¸í•œ 경험치등ì�˜ ì�´ë“�ì�€ 없으며, + 단지 패거리 ìƒ�호간ì�˜ 재미를 위해서 만들어진 기능. + -- 문제ì � : ì „ìŸ�ì�€ ë‘� 패거리간ì—�ë§Œ 할수 있으며, ì–´ë–¤ 패거리ì—�서 ì „ìŸ�중 + ì�´ë©´ 다른 패거리들ì�€ ì „ìŸ�ì—� 참가 할수 없다. + 패거리 ë‘�목ì�´ ì „ìŸ�중 머드ì—�서 나가게 ë�˜ë©´ ì „ìŸ�ì�´ ë��ì�´ 나지 + 않게 ë�œë‹¤. -¹«ÇÑ´ëÀü 1.2 º£Å¸ - ÀºÇà ±â´ÉÀÇ Ãß°¡. - -- ÀºÇà¿¡¼­ÀÇ ÀÔ±Ý, Ãâ±Ý ±â´É°ú »ç¹°ÇÔÀÇ ±â´ÉÀ» Ãß°¡. - ÀºÇàÀ¸·Î »ç¿ëÇÒ ¹æ¿¡ 40¹ø Ç÷¡±×¸¦ °É¾îÁ༭ ÀºÇàÀ¸·Î ¸¸µé¾îµÖ¾ß ÇÔ. - -- ±â´É : [###³É ÀÔ±Ý], [###³É Ãâ±Ý], [º¸°ü], [### º¸°ü] [### ¹Þ¾Æ] - º¸°üµîÀÇ »ç¹°ÇÔ ±â´Éµµ ÀºÇà¿¡¼­ »ç¿ëÇÔ. - ±âÁ¸ÀÇ »ç¹°ÇÔ°ú ´Þ¸® ÀºÇà¿¡ »ç¹°ÇÔÀ̶õ ¾ÆÀÌÅÛÀÌ ÇÊ¿äÄ¡ ¾ÊÀ½. - Ç÷¹À̾îÀÇ À̸§¿¡ µû¶ó¼­ ÀÚµ¿À¸·Î »ç¹°ÇÔÀÌ Ã¼Å©µÊ. - -- ÀºÇà ±â´ÉÀ» »ç¿ëÇÏ·Á¸é, /player µð·ºÅ丮 ¾È¿¡ ¼­ºê µð·ºÅ丮·Î, - /bank µð·ºÅ丮°¡ ÀÖ¾î¾ß °¡´É. (/home/muhan/player/bank) +무한대전 1.2 베타 + ì�€í–‰ 기능ì�˜ 추가. + -- ì�€í–‰ì—�서ì�˜ 입금, 출금 기능과 사물함ì�˜ 기능ì�„ 추가. + ì�€í–‰ìœ¼ë¡œ 사용할 ë°©ì—� 40번 플래그를 걸어줘서 ì�€í–‰ìœ¼ë¡œ 만들어둬야 함. + -- 기능 : [###냥 입금], [###냥 출금], [ë³´ê´€], [### ë³´ê´€] [### 받아] + 보관등ì�˜ 사물함 기능ë�„ ì�€í–‰ì—�서 사용함. + 기존ì�˜ 사물함과 달리 ì�€í–‰ì—� 사물함ì�´ëž€ ì•„ì�´í…œì�´ 필요치 않ì�Œ. + 플레ì�´ì–´ì�˜ ì�´ë¦„ì—� ë”°ë�¼ì„œ ìž�ë�™ìœ¼ë¡œ 사물함ì�´ ì²´í�¬ë�¨. + -- ì�€í–‰ 기능ì�„ 사용하려면, /player 디렉토리 안ì—� 서브 디렉토리로, + /bank 디렉토리가 있어야 가능. (/home/muhan/player/bank) -¹«ÇÑ´ëÀü 1.2 - ÀºÇà ±â´ÉÀÇ Çâ»ó. - -- [¸ðµÎ ÀÔ±Ý], [¸ðµÎ Ãâ±Ý], [¸ðµÎ º¸°ü], [¸ðµÎ ¹Þ¾Æ] µîÀÇ ¸í·É°ú, - [¸ðµç´Üµµ º¸°ü], [¸ðµç´Üµµ ¹Þ¾Æ] µî [¸ðµÎ/¸ðµç] ¸í·ÉÀÌ °¡´É. +무한대전 1.2 + ì�€í–‰ 기능ì�˜ í–¥ìƒ�. + -- [모ë‘� 입금], [모ë‘� 출금], [모ë‘� ë³´ê´€], [모ë‘� 받아] 등ì�˜ 명령과, + [모든단ë�„ ë³´ê´€], [모든단ë�„ 받아] 등 [모ë‘�/모든] 명령ì�´ 가능. - ¼Ò°¢ ±ÝÁö ¾ÆÀÌÅÛ Ç÷¡±×. - -- ÀÓ¹«¿¡ ÇÊ¿äÇÑ "´ëÈ­·Î ÀÎÇØ¼­ ¹Þ¾ÆÁö´Â ¾ÆÀÌÅÛ"µéÀ» ¼Ò°¢Çؼ­ µ·º­¶ôÀ» - ¸Â´Â Ç÷¹À̾îÀÇ Áõ°¡·Î ÀÎÇØ¼­, ¼Ò°¢ºÒ°¡ Ç÷¡±×¸¦ ¸¸µë. - ¿¡µðÅÍ¿¡¼­ÀÇ Ç÷¡±× ¹øÈ£´Â 49¹ø. + 소ê°� 금지 ì•„ì�´í…œ 플래그. + -- 임무ì—� 필요한 "대화로 ì�¸í•´ì„œ 받아지는 ì•„ì�´í…œ"들ì�„ 소ê°�해서 ë�ˆë²¼ë�½ì�„ + 맞는 플레ì�´ì–´ì�˜ ì¦�가로 ì�¸í•´ì„œ, 소ê°�불가 플래그를 만듬. + ì—�디터ì—�서ì�˜ 플래그 번호는 49번. - µð·ºÅ丮 ±¸Á¶. - -- mtype.h ³»ÀÇ PATH ÁöÁ¤À» º¯°æÇÏ¿©, ½±°Ô µð·ºÅ丮¸¦ º¯°æÇÒ¼ö ÀÖ°Ô ÇÔ. - MUDHOME ºÎºÐÀ» ¼öÁ¤ÇÔÀ¸·Î½á ´Ù¸¥ board.c µîÀÇ È­Àϳ»ÀÇ µð·ºÅ丮¸¦ - ¼öÁ¤ÇÏÁö ¾Ê°íµµ Á¦´ë·Î ÀÛµ¿ÇÒ¼ö ÀÖ°Ô ÇÔ. + 디렉토리 구조. + -- mtype.h ë‚´ì�˜ PATH 지정ì�„ 변경하여, 쉽게 디렉토리를 변경할수 있게 함. + MUDHOME 부분ì�„ 수정함으로ì�¨ 다른 board.c 등ì�˜ í™”ì�¼ë‚´ì�˜ 디렉토리를 + 수정하지 않고ë�„ 제대로 ìž‘ë�™í• ìˆ˜ 있게 함. - ¾ÆÀÌÅÛ ·¹º§ Á¦ÇÑÀÇ ÄÄÆÄÀÏ option ºÎ¿©. - -- ·¹º§Á¦ÇÑÀÌ ¾ø´Â ¼Ò½º¸¦ ¿øÇÏ´Â »ç¶÷µéÀÌ ¸¹¾Æ¼­ ÄÄÆÄÀÏ ¿É¼ÇÀ¸·Î ¼±ÅÃÇÒ¼ö - ÀÖ°Ô ÇÔ. - -- ¸¸¾à, ·¹º§Á¦ÇÑÀ» µÎ°í ½ÍÁö ¾Ê´Ù¸é, ÄÄÆÄÀÏ Àü¿¡ Makefile ÀÇ ÄÄÆÄÀÏ ¿É¼Ç¿¡ - -DOBJLEVEL À» Á¦°ÅÇÑÈÄ ÄÄÆÄÀÏÀ» ÇÏ¸é ·¹º§Á¦ÇÑÀÌ ¾ø°Ô µÊ. + ì•„ì�´í…œ 레벨 제한ì�˜ 컴파ì�¼ option 부여. + -- 레벨제한ì�´ 없는 소스를 ì›�하는 사람들ì�´ 많아서 컴파ì�¼ 옵션으로 ì„ íƒ�할수 + 있게 함. + -- 만약, 레벨제한ì�„ ë‘�ê³  ì‹¶ì§€ 않다면, 컴파ì�¼ ì „ì—� Makefile ì�˜ 컴파ì�¼ 옵션ì—� + -DOBJLEVEL ì�„ 제거한후 컴파ì�¼ì�„ 하면 레벨제한ì�´ 없게 ë�¨. -¹«ÇÑ´ëÀü 1.3 - ¸÷ÀÇ ³²Àº ü·Â ±×·¡ÇÁ Ç¥½Ã - -- ¸÷ÀÇ ³²Àº ü·ÂÀ» ±×·¡ÇÁ·Î Ç¥½ÃÇØÁØ´Ù. »óÅ ¸í·É°ú µ¿ÀÏÇÏ´Ù. - ÇÔ¼ö´Â display_status(¼ÒÄÏ µð½ºÅ©¸³ÅÍ, ´ë»ó¸÷ Æ÷ÀÎÅÍ) ÀÌ´Ù. +무한대전 1.3 + 몹ì�˜ 남ì�€ ì²´ë ¥ 그래프 표시 + -- 몹ì�˜ 남ì�€ ì²´ë ¥ì�„ 그래프로 표시해준다. ìƒ�태 명령과 ë�™ì�¼í•˜ë‹¤. + 함수는 display_status(소켓 디스í�¬ë¦½í„°, 대ìƒ�몹 í�¬ì�¸í„°) ì�´ë‹¤. - mrand ¸ÅÅ©·Î ¹ö±× ÀâÀ½ - -- mrand ¸ÅÅ©·Î°¡ ¼öÁ¤µÇ¾ú´Ù. - 0À¸·Î ³ª´­¶§ ¹æÆøÀÌ ÀϾ´Â°ÍÀ» ¸·¾Ò´Ù. + mrand 매í�¬ë¡œ 버그 ìž¡ì�Œ + -- mrand 매í�¬ë¡œê°€ 수정ë�˜ì—ˆë‹¤. + 0으로 나눌때 ë°©í�­ì�´ ì�¼ì–´ë‚˜ëŠ”ê²ƒì�„ 막았다. - ÃÊÀÎÀǵ¹ - -- ÃÊÀÎÀÇ µ¹À» »ç¿ëÇÒ ¼ö ÀÖ´Ù. update ÇÔ¼ö¿Í °ü·ÃµÈ´Ù. + ì´ˆì�¸ì�˜ë�Œ + -- ì´ˆì�¸ì�˜ ë�Œì�„ 사용할 수 있다. update 함수와 관련ë�œë‹¤. - ¹¦»çºÎºÐ Ãß°¡ - -- »ç¿ëÀÚ°¡ ¼­ ÀÖÀ»¶§ ³ª¿À´Â ¹¦»çº¸±â°¡ Ãß°¡µÇ¾ú´Ù. + 묘사부분 추가 + -- 사용ìž�ê°€ 서 있ì�„때 나오는 묘사보기가 추가ë�˜ì—ˆë‹¤. - ºÒ¹ý ¾ÆÀÌÅÛ °¨½Ã±â´É - -- ºÒ¹ý ¾ÆÀÌÅÛÀ» °¡Áö°í ÀÖÀ»½Ã log_dm ÆÄÀÏ¿¡ ±â·ÏµÈ´Ù. - µðÆúÆ®·Î ¾ÆÀÌÅÛÀ» ¾ø¾Öµµ·Ï µÇ¾î ÀÖ´Ù. - special ÆÄÀÏÀ» °íÃÄ À̸¦ ¸·À» ¼öµµ ÀÖ´Ù. + 불법 ì•„ì�´í…œ ê°�시기능 + -- 불법 ì•„ì�´í…œì�„ 가지고 있ì�„시 log_dm 파ì�¼ì—� 기ë¡�ë�œë‹¤. + ë””í�´íŠ¸ë¡œ ì•„ì�´í…œì�„ 없애ë�„ë¡� ë�˜ì–´ 있다. + special 파ì�¼ì�„ ê³ ì³� ì�´ë¥¼ 막ì�„ 수ë�„ 있다. - ±âŸµîµî... - -- »ý°¢ÀÌ ¾È³­´Ù.. --; + 기타등등... + -- ìƒ�ê°�ì�´ 안난다.. --; -¹«ÇÑ´ëÀü 1.4 Beta - WIN95,NT¿ëÀ¸·Î ȣȯÄÚµå Ãß°¡. - -- À©95¿ë ¼ÒÄÏÄڵ带 Ãß°¡Çϰí, ÇÔ¼ö¸¦ °»½ÅÇÏ¿´´Ù. +무한대전 1.4 Beta + WIN95,NT용으로 호환코드 추가. + -- 윈95ìš© 소켓코드를 추가하고, 함수를 갱신하였다. - LINUXÄÚµåÀÇ º¯È­ - -- 1.3±â´É°ú ´Þ¶óÁø¹Ù ¾ø´Ù. + LINUX코드ì�˜ 변화 + -- 1.3기능과 달ë�¼ì§„ë°” 없다. - WIN95ÄÚµåÀÇ º¯È­ - -- ÄÚµåºÒ¾ÈÁ¤À¸·Î Spy¸ðµå¸¦ ¾ø¾Ý´Ù. + WIN95코드ì�˜ 변화 + -- 코드불안정으로 Spy모드를 없앴다. diff --git a/src/action.c b/src/action.c index 645a8d62..b2786d3c 100644 --- a/src/action.c +++ b/src/action.c @@ -58,7 +58,7 @@ cmd *cmnd; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "ÇѸ¶µðµµ ÇÒ¼ö ¾ø½À´Ï´Ù!"); + print(fd, "한마디ë�„ 할수 없습니다!"); return(0); } @@ -89,7 +89,7 @@ cmd *cmnd; if(!crt_ptr || crt_ptr == ply_ptr) { i=-1; } - else if(!strcmp(cmdlist[cmdno].cmdstr,"»ý°¢")) i=-1; + else if(!strcmp(cmdlist[cmdno].cmdstr,"ìƒ�ê°�")) i=-1; else { for(i=0;ifullstr);i++) if(cmnd->fullstr[i]!=' ') break; for(;ifullstr);i++) if(cmnd->fullstr[i]==' ') break; @@ -103,174 +103,174 @@ cmd *cmnd; else msg_ok=0; } - if(!strcmp(cmdlist[cmdno].cmdstr, "°¨Á¤Ç¥Çö")) { - OUTn1("´ç½ÅÀº '°¨Á¤Ç¥Çö µµ¿ò'À̶ó Ä¡´Â°Ô ÁÁÀ»°Ì´Ï´Ù.","\n%MÀÌ °¨Á¤Ç¥ÇöÀ» ¿¬±¸ÇÕ´Ï´Ù."); + if(!strcmp(cmdlist[cmdno].cmdstr, "ê°�정표현")) { + OUTn1("당신ì�€ 'ê°�정표현 ë�„움'ì�´ë�¼ 치는게 좋ì�„ê²�니다.","\n%Mì�´ ê°�정표현ì�„ 연구합니다."); } - else if(!strcmp(cmdlist[cmdno].cmdstr, "º¸¾Æ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "ë³´ì•„")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %sº¾´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» %sº¾´Ï´Ù.","\n%MÀÌ %M%j %sº¾´Ï´Ù.","","3") - else OUT1("´ç½ÅÀº %sº¾´Ï´Ù.", "\n%MÀÌ %sº¾´Ï´Ù.","") + OUTj2("당신ì�€ %M%j %s봅니다.", "\n%Mì�´ 당신ì�„ %s봅니다.","\n%Mì�´ %M%j %s봅니다.","","3") + else OUT1("당신ì�€ %s봅니다.", "\n%Mì�´ %s봅니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "³ë·ÁºÁ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "노려ë´�")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s³ë·Á º¾´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» %s³ë·Á º¾´Ï´Ù.","\n%MÀÌ %M%j %s³ë·Á º¾´Ï´Ù.","¹í»õ´«À» Çϰí ","3") - else OUT1("´ç½ÅÀº %s³ë·Á º¾´Ï´Ù.", "\n%MÀÌ %s³ë·Á º¾´Ï´Ù.","Çã°øÀ» ¶Õ¾îÁ®¶ó ") + OUTj2("당신ì�€ %M%j %s노려 봅니다.", "\n%Mì�´ 당신ì�„ %s노려 봅니다.","\n%Mì�´ %M%j %s노려 봅니다.","ë±�새눈ì�„ 하고 ","3") + else OUT1("당신ì�€ %s노려 봅니다.", "\n%Mì�´ %s노려 봅니다.","허공ì�„ 뚫어져ë�¼ ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "²ô´ö") || !strcmp(cmdlist[cmdno].cmdstr, "ÀÀ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "ë�„ë�•") || !strcmp(cmdlist[cmdno].cmdstr, "ì�‘")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s°í°³¸¦ ²ô´ö°Å¸³´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %s°í°³¸¦ ²ô´ö°Å¸³´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %s°í°³¸¦ ²ô´ö°Å¸³´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s°í°³¸¦ ²ô´ö°Å¸³´Ï´Ù.", "\n%MÀÌ %s°í°³¸¦ ²ô´ö°Å¸³´Ï´Ù.","") + OUT2("당신ì�€ %Mì—�게 %s고개를 ë�„ë�•거립니다.", "\n%Mì�´ 당신ì—�게 %s고개를 ë�„ë�•거립니다.","\n%Mì�´ %Mì—�게 %s고개를 ë�„ë�•거립니다.","") + else OUT1("당신ì�€ %s고개를 ë�„ë�•거립니다.", "\n%Mì�´ %s고개를 ë�„ë�•거립니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¾Æ´Ï")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "아니")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s°í°³¸¦ °¡·Î Á£½À´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %s°í°³¸¦ °¡·ÎÁ£½À´Ï´Ù.","\n%MÀÌ %M¿¡°Ô °í°³¸¦ °¡·ÎÁ£½À´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s°í°³¸¦ °¡·ÎÁ£½À´Ï´Ù.", "\n%MÀÌ %s°í°³¸¦ °¡·ÎÁ£½À´Ï´Ù.","") + OUT2("당신ì�€ %Mì—�게 %s고개를 가로 젓습니다.", "\n%Mì�´ 당신ì—�게 %s고개를 가로젓습니다.","\n%Mì�´ %Mì—�게 고개를 가로젓습니다.","") + else OUT1("당신ì�€ %s고개를 가로젓습니다.", "\n%Mì�´ %s고개를 가로젓습니다.","") } - else if(!strncmp(cmdlist[cmdno].cmdstr, "°¨",2)) { + else if(!strncmp(cmdlist[cmdno].cmdstr, "ê°�",2)) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s°¨»çÇØ ÇÕ´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %s°¨»çÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ %M¿¡°Ô %s°¨»çÇØ ÇÕ´Ï´Ù.","Áø½ÉÀ¸·Î ") - else OUT1("´ç½ÅÀº %s°¨»çÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ %s°¨»çÇØ ÇÕ´Ï´Ù.","Áø½ÉÀ¸·Î ") + OUT2("당신ì�€ %Mì—�게 %sê°�사해 합니다.","\n%Mì�´ 당신ì—�게 %sê°�사해 합니다.", "\n%Mì�´ %Mì—�게 %sê°�사해 합니다.","진심으로 ") + else OUT1("당신ì�€ %sê°�사해 합니다.", "\n%Mì�´ %sê°�사해 합니다.","진심으로 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¹Ì¼Ò")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "미소")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s¹Ì¼Ò¸¦ º¸³À´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %s¹Ì¼Ò¸¦ Áþ½À´Ï´Ù.", "\n%MÀÌ %M¿¡°Ô %s¹Ì¼Ò¸¦ Áþ½À´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s¹Ì¼Ò¸¦ Áþ½À´Ï´Ù.", "\n%MÀÌ %s¹Ì¼Ò¸¦ Áþ½À´Ï´Ù.","¹àÀº ") + OUT2("당신ì�€ %Mì—�게 %s미소를 보냅니다.","\n%Mì�´ 당신ì—�게 %s미소를 짓습니다.", "\n%Mì�´ %Mì—�게 %s미소를 짓습니다.","") + else OUT1("당신ì�€ %s미소를 짓습니다.", "\n%Mì�´ %s미소를 짓습니다.","ë°�ì�€ ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¶³¾î")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "떨어")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %MÀ» º¸°í %s¹ú¹ú ¶·´Ï´Ù.","\n%MÀÌ ´ç½ÅÀ» º¸°í %s¹ú¹ú ¶·´Ï´Ù.", "\n%MÀÌ %M¸¦ º¸°í %s¹ú¹ú ¶·´Ï´Ù.","¹«¼­¿ö¼­ ") - else OUT1("´ç½ÅÀº %s¹ú¹ú ¶·´Ï´Ù.", "\n%MÀÌ %s¹ú¹ú ¶·´Ï´Ù.","¹«¼­¿ö¼­ ") + OUT2("당신ì�€ %Mì�„ ë³´ê³  %s벌벌 떱니다.","\n%Mì�´ 당신ì�„ ë³´ê³  %s벌벌 떱니다.", "\n%Mì�´ %M를 ë³´ê³  %s벌벌 떱니다.","무서워서 ") + else OUT1("당신ì�€ %s벌벌 떱니다.", "\n%Mì�´ %s벌벌 떱니다.","무서워서 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "ÇØ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "í•´")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %MÀ» %sÇÕ´Ï´Ù.","\n%MÀÌ ´ç½ÅÀ» %sÇÕ´Ï´Ù.", "\n%MÀÌ %MÀ» %sÇÕ´Ï´Ù.","º¸¸ç ½É½ÉÇØ ") - else OUT1("´ç½ÅÀº %sÇÕ´Ï´Ù.", "\n%MÀÌ %sÇÕ´Ï´Ù.","½É½ÉÇØ ") + OUT2("당신ì�€ %Mì�„ %s합니다.","\n%Mì�´ 당신ì�„ %s합니다.", "\n%Mì�´ %Mì�„ %s합니다.","ë³´ë©° 심심해 ") + else OUT1("당신ì�€ %s합니다.", "\n%Mì�´ %s합니다.","심심해 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "ÇÏǰ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "하품")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %MÀ» º¸°í %sÇÏǰÀ» ÇÕ´Ï´Ù. ¾ÆÇÔ~","\n%MÀÌ ´ç½ÅÀ» º¸°í %sÇÏǰÀ» ÇÕ´Ï´Ù. ¾ÆÇÔ~", "\n%MÀÌ %M¸¦ º¸°í %sÇÏǰÀ» ÇÕ´Ï´Ù. ¾ÆÇÔ~","") - else OUT1("´ç½ÅÀº %sÇÏǰÀ» ÇÕ´Ï´Ù.", "\n%MÀÌ %sÇÏǰÀ» ÇÕ´Ï´Ù.","ÀÚÁö·¯Áö°Ô ") + OUT2("당신ì�€ %Mì�„ ë³´ê³  %s하품ì�„ 합니다. 아함~","\n%Mì�´ 당신ì�„ ë³´ê³  %s하품ì�„ 합니다. 아함~", "\n%Mì�´ %M를 ë³´ê³  %s하품ì�„ 합니다. 아함~","") + else OUT1("당신ì�€ %s하품ì�„ 합니다.", "\n%Mì�´ %s하품ì�„ 합니다.","ìž�지러지게 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "ûȥ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "청혼")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %sûȥÀ» ÇÕ´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %sûȥÀ» ÇÕ´Ï´Ù.", "\n%MÀÌ %M¿¡°Ô %sûȥÀ» ÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %sûȥÀ» ÇÕ´Ï´Ù.", "\n%MÀÌ %sûȥÀ» ÇÕ´Ï´Ù.","È¥ÀÚ¼­ ") + OUT2("당신ì�€ %Mì—�게 %s청혼ì�„ 합니다.","\n%Mì�´ 당신ì—�게 %s청혼ì�„ 합니다.", "\n%Mì�´ %Mì—�게 %s청혼ì�„ 합니다.","") + else OUT1("당신ì�€ %s청혼ì�„ 합니다.", "\n%Mì�´ %s청혼ì�„ 합니다.","혼ìž�서 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¿ô¾î")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "웃어")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j º¸¸ç %s¿ô½À´Ï´Ù.","\n%MÀÌ ´ç½ÅÀ» º¸¸ç %s¿ô½À´Ï´Ù.","%MÀÌ %M%j º¸¸ç %s¿ô½À´Ï´Ù.","»ý±ß ","3") - else OUT1("´ç½ÅÀº %s¿ô½À´Ï´Ù.", "\n%MÀÌ %s¿ô½À´Ï´Ù.", "»ý±ß ") + OUTj2("당신ì�€ %M%j ë³´ë©° %s웃습니다.","\n%Mì�´ 당신ì�„ ë³´ë©° %s웃습니다.","%Mì�´ %M%j ë³´ë©° %s웃습니다.","ìƒ�긋 ","3") + else OUT1("당신ì�€ %s웃습니다.", "\n%Mì�´ %s웃습니다.", "ìƒ�긋 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¹Ì¾È")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "미안")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s¹Ì¾ÈÇØ ÇÕ´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %s¹Ì¾ÈÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ %M¿¡°Ô %s¹Ì¾ÈÇØ ÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s¹Ì¾ÈÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ %s¹Ì¾ÈÇØ ÇÕ´Ï´Ù.","") + OUT2("당신ì�€ %Mì—�게 %s미안해 합니다.","\n%Mì�´ 당신ì—�게 %s미안해 합니다.", "\n%Mì�´ %Mì—�게 %s미안해 합니다.","") + else OUT1("당신ì�€ %s미안해 합니다.", "\n%Mì�´ %s미안해 합니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¾Ç¼ö")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "악수")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s¾Ç¼ö¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½Å°ú %s¾Ç¼ö¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ %M%j %s¾Ç¼ö¸¦ ÇÕ´Ï´Ù.","","2") - else OUT1("´ç½ÅÀº ¼ÕÀ» ³»¹Ð¾î %s¾Ç¼ö¸¦ ûÇÕ´Ï´Ù.", "\n%MÀÌ ¼ÕÀ» ³»¹Ð¾î %s¾Ç¼ö¸¦ ûÇÕ´Ï´Ù.","") + OUTj2("당신ì�€ %M%j %s악수를 합니다.", "\n%Mì�´ 당신과 %s악수를 합니다.", "\n%Mì�´ %M%j %s악수를 합니다.","","2") + else OUT1("당신ì�€ ì†�ì�„ 내밀어 %s악수를 청합니다.", "\n%Mì�´ ì†�ì�„ 내밀어 %s악수를 청합니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "ÇÏÀÌÆÄÀ̺ê")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "하ì�´íŒŒì�´ë¸Œ")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %sÇÏÀÌÆÄÀ̺긦 ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½Å°ú %sÇÏÀÌÆÄÀ̺긦 ÇÕ´Ï´Ù.", "\n%MÀÌ %M%j ÇÏÀÌÆÄÀ̺긦 ÇÕ´Ï´Ù.","¼ÕÀ» ³ôÀ̵é¾î ","2") - else OUT1("´ç½ÅÀº ¼ÕÀ» µé¾î Çã°ø¿¡´Ù %sÈÖÁ£½À´Ï´Ù.","\n%MÀÌ ¼ÕÀ» µé¾î Çã°ø¿¡´Ù %sÈÖÁ£½À´Ï´Ù.","") + OUTj2("당신ì�€ %M%j %s하ì�´íŒŒì�´ë¸Œë¥¼ 합니다.", "\n%Mì�´ 당신과 %s하ì�´íŒŒì�´ë¸Œë¥¼ 합니다.", "\n%Mì�´ %M%j 하ì�´íŒŒì�´ë¸Œë¥¼ 합니다.","ì†�ì�„ 높ì�´ë“¤ì–´ ","2") + else OUT1("당신ì�€ ì†�ì�„ 들어 허공ì—�다 %s휘젓습니다.","\n%Mì�´ ì†�ì�„ 들어 허공ì—�다 %s휘젓습니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¹Ú¼ö")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "박수")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s¹Ú¼ö¸¦ Ĩ´Ï´Ù. ¦¦~", "\n%MÀÌ ´ç½Å¿¡°Ô %s¹Ú¼ö¸¦ Ĩ´Ï´Ù. ¦¦~", "\n%MÀÌ %M¿¡°Ô %s¹Ú¼ö¸¦ Ĩ´Ï´Ù. ¦¦~","") - else OUT1("´ç½ÅÀº %s¹Ú¼ö¸¦ Ĩ´Ï´Ù. ¦¦~", "\n%MÀÌ %s¹Ú¼ö¸¦ Ĩ´Ï´Ù. ¦¦~","") + OUT2("당신ì�€ %Mì—�게 %s박수를 칩니다. ì§�ì§�~", "\n%Mì�´ 당신ì—�게 %s박수를 칩니다. ì§�ì§�~", "\n%Mì�´ %Mì—�게 %s박수를 칩니다. ì§�ì§�~","") + else OUT1("당신ì�€ %s박수를 칩니다. ì§�ì§�~", "\n%Mì�´ %s박수를 칩니다. ì§�ì§�~","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "Èí¿¬") || !strcmp(cmdlist[cmdno].cmdstr, "´ã¹è")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "í�¡ì—°") || !strcmp(cmdlist[cmdno].cmdstr, "ë‹´ë°°")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s´ã¹è¸¦ ±ÇÇÕ´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %s´ã¹è¸¦ ±ÇÇÕ´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %s´ã¹è¸¦ ±ÇÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº ´ã¹è¸¦ %sÇÇ¿ó´Ï´Ù. Ǫ¿ì~~~~", "\n%MÀÌ ´ã¹è¸¦ %sÇÇ¿ó´Ï´Ù. Ǫ¿ì~~","»µ±Ý»µ±Ý ") + OUT2("당신ì�€ %Mì—�게 %s담배를 권합니다.","\n%Mì�´ 당신ì—�게 %s담배를 권합니다.","\n%Mì�´ %Mì—�게 %s담배를 권합니다.","") + else OUT1("당신ì�€ 담배를 %s피ì›�니다. 푸우~~~~", "\n%Mì�´ 담배를 %s피ì›�니다. 푸우~~","ë»�금ë»�금 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "Àý")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "ì ˆ")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %sÀýÀ» ÇÕ´Ï´Ù.","\n%MÀÌ ´ç½Å¿¡°Ô %sÀýÀ» ÇÕ´Ï´Ù.", "\n%MÀÌ %M¿¡°Ô %sÀýÀ» ÇÕ´Ï´Ù.","°ø¼ÕÈ÷ ") - else OUT1("´ç½ÅÀº %sÀýÀ» ÇÕ´Ï´Ù.", "\n%MÀÌ %sÀýÀ» ÇÕ´Ï´Ù.","°ø¼ÕÈ÷ ") + OUT2("당신ì�€ %Mì—�게 %sì ˆì�„ 합니다.","\n%Mì�´ 당신ì—�게 %sì ˆì�„ 합니다.", "\n%Mì�´ %Mì—�게 %sì ˆì�„ 합니다.","ê³µì†�히 ") + else OUT1("당신ì�€ %sì ˆì�„ 합니다.", "\n%Mì�´ %sì ˆì�„ 합니다.","ê³µì†�히 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "Âñ·¯")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "찔러")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %sÂ´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» %sÂ´Ï´Ù.", "\n%MÀÌ %M%j %sÂ´Ï´Ù.","ÄîÄî ","3") - else OUT1("´ç½ÅÀº ¼ÕÀ» ¿Ã·Á Çã°øÀ» %sÂ´Ï´Ù.", "\n%MÀÌ ¼ÕÀ» ¿Ã·Á Çã°øÀ» %sÂ´Ï´Ù.","ÄîÄî ") + OUTj2("당신ì�€ %M%j %s찌릅니다.", "\n%Mì�´ 당신ì�„ %s찌릅니다.", "\n%Mì�´ %M%j %s찌릅니다.","ì¿¡ì¿¡ ","3") + else OUT1("당신ì�€ ì†�ì�„ 올려 허공ì�„ %s찌릅니다.", "\n%Mì�´ ì†�ì�„ 올려 허공ì�„ %s찌릅니다.","ì¿¡ì¿¡ ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "Ãã")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "춤")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %sÃãÀ» Ãä´Ï´Ù. '´ë±¸.ºÎ»ê.Âï°í~±¤ÁÖ.ÅÏ!'", "\n%MÀÌ ´ç½Å°ú %sÃãÀ» Ãä´Ï´Ù. '´ë±¸.ºÎ»ê.Âï°í~±¤ÁÖ.ÅÏ!'","\n%MÀÌ %M%j %sÃãÀ» Ãä´Ï´Ù. '´ë±¸.ºÎ»ê.Âï°í~±¤ÁÖ.ÅÏ!'","½Å³ª°Ô ","2") - else OUT1("´ç½ÅÀº %sÃãÀ» Ãä´Ï´Ù. '´ë±¸.ºÎ»ê.Âï°í~±¤ÁÖ.ÅÏ!'", "\n%MÀÌ %sÃãÀ» Ãä´Ï´Ù. '´ë±¸.ºÎ»ê.Âï°í~±¤ÁÖ.ÅÏ!'","È¥ÀÚ¼­ ") + OUTj2("당신ì�€ %M%j %s춤ì�„ 춥니다. '대구.부산.ì°�ê³ ~광주.í„´!'", "\n%Mì�´ 당신과 %s춤ì�„ 춥니다. '대구.부산.ì°�ê³ ~광주.í„´!'","\n%Mì�´ %M%j %s춤ì�„ 춥니다. '대구.부산.ì°�ê³ ~광주.í„´!'","신나게 ","2") + else OUT1("당신ì�€ %s춤ì�„ 춥니다. '대구.부산.ì°�ê³ ~광주.í„´!'", "\n%Mì�´ %s춤ì�„ 춥니다. '대구.부산.ì°�ê³ ~광주.í„´!'","혼ìž�서 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "³ë·¡")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "노래")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j À§ÇØ %s³ë·¡¸¦ ºÎ¸¨´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» À§ÇØ %s³ë·¡¸¦ ºÎ¸¨´Ï´Ù.\n","\n%MÀÌ %M%j À§ÇØ %s³ë·¡¸¦ ºÎ¸¨´Ï´Ù.\n","Áñ°Ì°Ô ","3") - else OUT1("´ç½ÅÀº %s³ë·¡¸¦ ºÎ¸¨´Ï´Ù.", "\n%MÀÌ %s³ë·¡¸¦ ºÎ¸¨´Ï´Ù.\n","Áñ°Ì°Ô ") + OUTj2("당신ì�€ %M%j 위해 %s노래를 부릅니다.", "\n%Mì�´ 당신ì�„ 위해 %s노래를 부릅니다.\n","\n%Mì�´ %M%j 위해 %s노래를 부릅니다.\n","ì¦�ê²�게 ","3") + else OUT1("당신ì�€ %s노래를 부릅니다.", "\n%Mì�´ %s노래를 부릅니다.\n","ì¦�ê²�게 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¿ï¾î")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "울어")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s´«¹°À» º¸ÀÔ´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %s´«¹°À» º¸ÀÔ´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %s´«¹°À» º¸ÀÔ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s¿ó´Ï´Ù. ¾Æ¾Ó~", "\n%MÀÌ %s¿ó´Ï´Ù. ¾Æ¾Ó~","½½ÇÁ°Ô ") + OUT2("당신ì�€ %Mì—�게 %s눈물ì�„ 보입니다.", "\n%Mì�´ 당신ì—�게 %s눈물ì�„ 보입니다.","\n%Mì�´ %Mì—�게 %s눈물ì�„ 보입니다.","") + else OUT1("당신ì�€ %sì›�니다. ì•„ì•™~", "\n%Mì�´ %sì›�니다. ì•„ì•™~","슬프게 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "´Þ·¡")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "달래")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s´Þ·¡ ÁÝ´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» %s´Þ·¡ ÁÝ´Ï´Ù.","\n%MÀÌ %M%j %s´Þ·¡ ÁÝ´Ï´Ù.","","3") - else OUT1("´ç½ÅÀº %s´Þ·¡ ÁÝ´Ï´Ù.", "\n%MÀÌ %s´Þ·¡ ÁÝ´Ï´Ù.","ÀÚ½ÅÀ» ") + OUTj2("당신ì�€ %M%j %s달래 ì¤�니다.", "\n%Mì�´ 당신ì�„ %s달래 ì¤�니다.","\n%Mì�´ %M%j %s달래 ì¤�니다.","","3") + else OUT1("당신ì�€ %s달래 ì¤�니다.", "\n%Mì�´ %s달래 ì¤�니다.","ìž�ì‹ ì�„ ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "´çȲ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "당황")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j º¸°í %s´çÈ²ÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» º¸°í %s´çÈ²ÇØÇÕ´Ï´Ù.","\n%MÀÌ %M%j º¸°í %s´çÈ²ÇØ ÇÕ´Ï´Ù.","","3") - else OUT1("´ç½ÅÀº %s´çÈ²ÇØ ÇÕ´Ï´Ù.", "\n%MÀÌ %s´çÈ²ÇØ ÇÕ´Ï´Ù.","") + OUTj2("당신ì�€ %M%j ë³´ê³  %s당황해 합니다.", "\n%Mì�´ 당신ì�„ ë³´ê³  %s당황해합니다.","\n%Mì�´ %M%j ë³´ê³  %s당황해 합니다.","","3") + else OUT1("당신ì�€ %s당황해 합니다.", "\n%Mì�´ %s당황해 합니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "À®Å©")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "윙í�¬")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %sÀ®Å©¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %sÀ®Å©¸¦ ÇÕ´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %sÀ®Å©¸¦ ÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %sÀ®Å©¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ %sÀ®Å©¸¦ ÇÕ´Ï´Ù.","") + OUT2("당신ì�€ %Mì—�게 %s윙í�¬ë¥¼ 합니다.", "\n%Mì�´ 당신ì—�게 %s윙í�¬ë¥¼ 합니다.","\n%Mì�´ %Mì—�게 %s윙í�¬ë¥¼ 합니다.","") + else OUT1("당신ì�€ %s윙í�¬ë¥¼ 합니다.", "\n%Mì�´ %s윙í�¬ë¥¼ 합니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "»Ç»Ç")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "뽀뽀")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s»Ç»Ç¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %s»Ç»Ç¸¦ ÇÕ´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %s»Ç»Ç¸¦ ÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %s»Ç»Ç¸¦ ÇÕ´Ï´Ù.", "\n%MÀÌ %s»Ç»Ç¸¦ ÇÕ´Ï´Ù.","Àڱ⠼չٴڿ¡´Ù ") + OUT2("당신ì�€ %Mì—�게 %s뽀뽀를 합니다.", "\n%Mì�´ 당신ì—�게 %s뽀뽀를 합니다.","\n%Mì�´ %Mì—�게 %s뽀뽀를 합니다.","") + else OUT1("당신ì�€ %s뽀뽀를 합니다.", "\n%Mì�´ %s뽀뽀를 합니다.","ìž�기 ì†�바닥ì—�다 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¹ÙÀÌ") || !strcmp(cmdlist[cmdno].cmdstr, "Àß°¡")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "ë°”ì�´") || !strcmp(cmdlist[cmdno].cmdstr, "잘가")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %sÀÛº°Àλ縦 ÇÕ´Ï´Ù.", "\n%MÀÌ ´ç½Å¿¡°Ô %sÀÛº°Àλ縦 ÇÕ´Ï´Ù.","\n%MÀÌ %M¿¡°Ô %sÀÛº°Àλ縦 ÇÕ´Ï´Ù.","") - else OUT1("´ç½ÅÀº %sÀÛº°Àλ縦 ÇÕ´Ï´Ù.", "\n%MÀÌ %sÀÛº°Àλ縦 ÇÕ´Ï´Ù.","") + OUT2("당신ì�€ %Mì—�게 %s작별ì�¸ì‚¬ë¥¼ 합니다.", "\n%Mì�´ 당신ì—�게 %s작별ì�¸ì‚¬ë¥¼ 합니다.","\n%Mì�´ %Mì—�게 %s작별ì�¸ì‚¬ë¥¼ 합니다.","") + else OUT1("당신ì�€ %s작별ì�¸ì‚¬ë¥¼ 합니다.", "\n%Mì�´ %s작별ì�¸ì‚¬ë¥¼ 합니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¾È³ç")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "안녕")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %sÀλ縦 ÇÕ´Ï´Ù. \"¾È³çÇϼ¼¿ä~\"", "\n%MÀÌ ´ç½Å¿¡°Ô %sÀλ縦 ÇÕ´Ï´Ù. \"¾È³çÇϼ¼¿ä~\"","\n%MÀÌ %M¿¡°Ô %sÀλ縦 ÇÕ´Ï´Ù. \"¾È³çÇϼ¼¿ä~\"","") - else OUT1("´ç½ÅÀº %sÀλ縦 ÇÕ´Ï´Ù. \"¾È³çÇϼ¼¿ä~\"", "\n%MÀÌ %sÀλ縦 ÇÕ´Ï´Ù. \"¾È³çÇϼ¼¿ä~\"","") + OUT2("당신ì�€ %Mì—�게 %sì�¸ì‚¬ë¥¼ 합니다. \"안녕하세요~\"", "\n%Mì�´ 당신ì—�게 %sì�¸ì‚¬ë¥¼ 합니다. \"안녕하세요~\"","\n%Mì�´ %Mì—�게 %sì�¸ì‚¬ë¥¼ 합니다. \"안녕하세요~\"","") + else OUT1("당신ì�€ %sì�¸ì‚¬ë¥¼ 합니다. \"안녕하세요~\"", "\n%Mì�´ %sì�¸ì‚¬ë¥¼ 합니다. \"안녕하세요~\"","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¼³·¹")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "설레")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j º¸°í %s¸¶À½ÀÌ ¼³·¹ÀÔ´Ï´Ù.", "\n%MÀÌ ´ç½ÅÀ» º¸°í %s´çÈ²ÇØÇÕ´Ï´Ù.","\n%MÀÌ %M%j º¸°í %s¸¶À½ÀÌ ¼³·¹ÀÔ´Ï´Ù.","","3") - else OUT1("´ç½ÅÀº %s¸¶À½ÀÌ ¼³·¹ÀÔ´Ï´Ù.", "\n%MÀÌ %s¸¶À½ÀÌ ¼³·¹ÀÔ´Ï´Ù.","") + OUTj2("당신ì�€ %M%j ë³´ê³  %s마ì�Œì�´ 설레입니다.", "\n%Mì�´ 당신ì�„ ë³´ê³  %s당황해합니다.","\n%Mì�´ %M%j ë³´ê³  %s마ì�Œì�´ 설레입니다.","","3") + else OUT1("당신ì�€ %s마ì�Œì�´ 설레입니다.", "\n%Mì�´ %s마ì�Œì�´ 설레입니다.","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "³î·Á")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "놀려")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s³î¸³´Ï´Ù. ¸Þ·Õ¸Þ·Õ~~", "\n%MÀÌ ´ç½ÅÀ» %s³î¸³´Ï´Ù. ¸Þ·Õ¸Þ·Õ~~","\n%MÀÌ %M%j º¸°í %s³î¸³´Ï´Ù. ¸Þ·Õ¸Þ·Õ~~","¾à¿À¸£°Ô ","3") - else OUT1("´ç½ÅÀº %s³î¸³´Ï´Ù. ¸Þ·Õ¸Þ·Õ~~", "\n%MÀÌ %s³î¸³´Ï´Ù. ¸Þ·Õ¸Þ·Õ~~","¾à¿À¸£°Ô ") + OUTj2("당신ì�€ %M%j %s놀립니다. 메롱메롱~~", "\n%Mì�´ 당신ì�„ %s놀립니다. 메롱메롱~~","\n%Mì�´ %M%j ë³´ê³  %s놀립니다. 메롱메롱~~","약오르게 ","3") + else OUT1("당신ì�€ %s놀립니다. 메롱메롱~~", "\n%Mì�´ %s놀립니다. 메롱메롱~~","약오르게 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "»ý°¢")) { - OUT1("´ç½ÅÀº %s»ý°¢ÇÕ´Ï´Ù.", "\n%MÀÌ %s»ý°¢ÇÕ´Ï´Ù.","Á¶½É½º·´°Ô ") + else if(!strcmp(cmdlist[cmdno].cmdstr, "ìƒ�ê°�")) { + OUT1("당신ì�€ %sìƒ�ê°�합니다.", "\n%Mì�´ %sìƒ�ê°�합니다.","조심스럽게 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "ºÎ²ô·¯")) { - OUT1("´ç½ÅÀº %sºÎ²ô·¯¿ö ÇÕ´Ï´Ù.", "\n%MÀÌ %sºÎ²ô·¯¿ö ÇÕ´Ï´Ù.","¾ó±¼ÀÌ »¡°³Á® ") + else if(!strcmp(cmdlist[cmdno].cmdstr, "ë¶€ë�„러")) { + OUT1("당신ì�€ %së¶€ë�„러워 합니다.", "\n%Mì�´ %së¶€ë�„러워 합니다.","얼굴ì�´ 빨개져 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "±¸°É")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "구걸")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUT2("´ç½ÅÀº %M¿¡°Ô %s±¸°ÉÇÕ´Ï´Ù. \"ÇÑǬÁݼî~~\"", "\n%MÀÌ ´ç½Å¿¡°Ô %s±¸°ÉÇÕ´Ï´Ù. \"ÇÑǬÁݼî~~\"", "\n%MÀÌ %M¿¡°Ô %s±¸°ÉÇÕ´Ï´Ù. \"ÇÑǬÁݼî~~\"","") - else OUT1("´ç½ÅÀº ¹Ù´Ú¿¡ ¾þµå·Á %s±¸°ÉÇÕ´Ï´Ù. \"ÇÑǬÁݼî~~\"", "\n%MÀÌ ¹Ù´Ú¿¡ ¾þµå·Á %s±¸°ÉÇÕ´Ï´Ù. \"ÇÑǬÁݼî~~\"","") + OUT2("당신ì�€ %Mì—�게 %s구걸합니다. \"한푼ì¤�쇼~~\"", "\n%Mì�´ 당신ì—�게 %s구걸합니다. \"한푼ì¤�쇼~~\"", "\n%Mì�´ %Mì—�게 %s구걸합니다. \"한푼ì¤�쇼~~\"","") + else OUT1("당신ì�€ 바닥ì—� 엎드려 %s구걸합니다. \"한푼ì¤�쇼~~\"", "\n%Mì�´ 바닥ì—� 엎드려 %s구걸합니다. \"한푼ì¤�쇼~~\"","") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "±¸¹Ú")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "구박")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s±¸¹ÚÇÕ´Ï´Ù.","\n%MÀÌ ´ç½ÅÀ» %s±¸¹ÚÇÕ´Ï´Ù.","\n%MÀÌ %M%j %s±¸¹ÚÇÕ´Ï´Ù.","¸¶±¸ ","3") - else OUT1("´ç½ÅÀº ½º½º·Î¸¦ %s±¸¹ÚÇÕ´Ï´Ù.","\n%MÀÌ ½º½º·Î¸¦ %s±¸¹ÚÇÕ´Ï´Ù.","¸¶±¸ ") + OUTj2("당신ì�€ %M%j %s구박합니다.","\n%Mì�´ 당신ì�„ %s구박합니다.","\n%Mì�´ %M%j %s구박합니다.","마구 ","3") + else OUT1("당신ì�€ 스스로를 %s구박합니다.","\n%Mì�´ 스스로를 %s구박합니다.","마구 ") } - else if(!strcmp(cmdlist[cmdno].cmdstr, "¾È¾Æ") || !strcmp(cmdlist[cmdno].cmdstr, "²¸¾È¾Æ")) { + else if(!strcmp(cmdlist[cmdno].cmdstr, "안아") || !strcmp(cmdlist[cmdno].cmdstr, "껴안아")) { if(crt_ptr && crt_ptr!=ply_ptr) - OUTj2("´ç½ÅÀº %M%j %s²¸¾È½À´Ï´Ù.","\n%MÀÌ ´ç½ÅÀ» %s²¸¾È½À´Ï´Ù.","\n%MÀÌ %M%j %s²¸¾È½À´Ï´Ù.","²À ","3") - else OUT1("´ç½ÅÀº %s²¸¾ÈÀ¸·Á ¾Ö¸¦ ¾¹´Ï´Ù.","\n%MÀÌ %s²¸¾ÈÀ¸·Á ¾Ö¸¦ ¾²°í ÀÖ½À´Ï´Ù.","Çã°øÀ» ") + OUTj2("당신ì�€ %M%j %s껴안습니다.","\n%Mì�´ 당신ì�„ %s껴안습니다.","\n%Mì�´ %M%j %s껴안습니다.","ê¼­ ","3") + else OUT1("당신ì�€ %s껴안으려 애를 ì”�니다.","\n%Mì�´ %s껴안으려 애를 ì“°ê³  있습니다.","허공ì�„ ") } return(0); } diff --git a/src/alias.c b/src/alias.c index 600dc3d8..99fece7f 100644 --- a/src/alias.c +++ b/src/alias.c @@ -1,4 +1,4 @@ -/* ÁÙÀÓ¸» , Īȣ */ +/* 줄임ë§� , 칭호 */ #include #include @@ -12,7 +12,7 @@ typedef struct ALIAS_COMMAND { char process[256]; } Alias_Cmd; -#define MAX_ALIAS 50 /* ÃÖ´ë ÀúÀå ÁÙÀÓ¸» ¼ö */ +#define MAX_ALIAS 50 /* 최대 저장 줄임ë§� 수 */ Alias_Cmd *ply_alias[PMAX][MAX_ALIAS]; char ply_alias_num[PMAX]; @@ -136,7 +136,7 @@ char *buf1; char *buf2; { if(ply_alias_num[fd]==MAX_ALIAS) { - print(fd,"´õÀÌ»ó ÁÙÀÓ¸»À» ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"ë�”ì�´ìƒ� 줄임ë§�ì�„ 설정할 수 없습니다."); return -1; } ply_alias[fd][ply_alias_num[fd]]=(Alias_Cmd *)malloc(sizeof(Alias_Cmd)); @@ -160,23 +160,23 @@ cmd *cmnd; fd=ply_ptr->fd; if(cmnd->num==1) { - /* ÇöÀç ¼³Á¤µÇ¾î ÀÖ´Â ÁÙÀÓ¸»À» º¸¿©ÁØ´Ù. */ + /* 현재 설정ë�˜ì–´ 있는 줄임ë§�ì�„ 보여준다. */ if(ply_alias_num[fd]==0) { - print(fd,"¼³Á¤µÈ ÁÙÀÓ¸»ÀÌ ¾ø½À´Ï´Ù."); + print(fd,"설정ë�œ 줄임ë§�ì�´ 없습니다."); return 0; } - print(fd,"ÁÙÀÓ¸»:\n"); + print(fd,"줄임ë§�:\n"); for(i=0;ialias,ply_alias[fd][i]->process); } return 0; } - if(!strncmp(cmnd->str[1],"¼ýÀÚ",4)) { + if(!strncmp(cmnd->str[1],"숫ìž�",4)) { if(strlen(cmnd->str[1]+4)>0) k=4; } if(cmnd->num==2) { - /* ÁÙÀÓ¸» »èÁ¦ */ + /* 줄임ë§� ì‚­ì œ */ for(i=0;ialias,cmnd->str[1]+k)) { free(ply_alias[fd][i]); @@ -184,33 +184,33 @@ cmd *cmnd; ply_alias[fd][j-1]=ply_alias[fd][j]; ply_alias_num[fd]--; save_alias(ply_ptr); - print(fd,"ÁÙÀÓ¸»ÀÌ »èÁ¦µÇ¾ú½À´Ï´Ù."); + print(fd,"줄임ë§�ì�´ ì‚­ì œë�˜ì—ˆìŠµë‹ˆë‹¤."); return 0; } } - print(fd,"±× À̸§À¸·Î ¼³Á¤µÈ ÁÙÀÓ¸»ÀÌ ¾ø½À´Ï´Ù."); + print(fd,"ê·¸ ì�´ë¦„으로 설정ë�œ 줄임ë§�ì�´ 없습니다."); return 0; } - /* ÁÙÀÓ¸» Ãß°¡ */ + /* 줄임ë§� 추가 */ if(!strcmp(cmnd->str[1]+k,"~!")) { - print(fd,"±× ÄÚµå·Î´Â ÁÙÀÓ¸»·Î ¼³Á¤ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"ê·¸ 코드로는 줄임ë§�로 설정할 수 없습니다."); return 0; } if(strlen(cmnd->str[1]+k)>14) { - print(fd,"ÁÙÀÓ¸»ÀÇ ±æÀ̰¡ ³Ê¹« ±é´Ï´Ù."); + print(fd,"줄임ë§�ì�˜ 길ì�´ê°€ 너무 ê¹�니다."); return 0; } for(i=0;ialias,cmnd->str[1]+k)) { - print(fd,"±× ÁÙÀÓ¸»Àº ÀÌ¹Ì ¼³Á¤µÇ¾î ÀÖ½À´Ï´Ù."); + print(fd,"ê·¸ 줄임ë§�ì�€ ì�´ë¯¸ 설정ë�˜ì–´ 있습니다."); return 0; } } len=cut_command(cmnd->fullstr); if(len > 70) { - print(fd, "ÁÙÀÓ¸»ÀÇ ÀüüÀû ±æÀ̰¡ ³Ê¹« ±é´Ï´Ù."); + print(fd, "줄임ë§�ì�˜ ì „ì²´ì � 길ì�´ê°€ 너무 ê¹�니다."); return(0); } @@ -222,7 +222,7 @@ cmd *cmnd; } buf[i+1]=0; if(add_alias(fd,cmnd->str[1]+k,buf)!=-1) - print(fd,"ÁÙÀÓ¸»ÀÌ ¼³Á¤µÇ¾ú½À´Ï´Ù."); + print(fd,"줄임ë§�ì�´ 설정ë�˜ì—ˆìŠµë‹ˆë‹¤."); save_alias(ply_ptr); return 0; } @@ -237,7 +237,7 @@ creature *ply_ptr; sprintf(path, "%s/alias/%s", PLAYERPATH, ply_ptr->name); handle = creat(path, 0660); if(handle==-1) { - print(fd,"È­ÀÏ·Î ÀúÀåÇϴµ¥ ½ÇÆÐÇÏ¿´½À´Ï´Ù"); + print(fd,"í™”ì�¼ë¡œ 저장하는ë�° 실패하였습니다"); return; } for(i=0;ifd; if(cmnd->num<2) { title_cut_index[fd] = 1; - print(fd,"´ç½ÅÀº %s %sÀÔ´Ï´Ù.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); + print(fd,"당신ì�€ %s %s입니다.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); title_cut_index[fd] = 0; return 0; } len=cut_command(cmnd->fullstr); if(len>78) - print(fd,"Īȣ°¡ ³Ê¹« ±é´Ï´Ù."); + print(fd,"칭호가 너무 ê¹�니다."); else { ply_titles[fd]=(char *)malloc(len+1); if(ply_titles[fd]!=NULL) { strcpy(ply_titles[fd],cmnd->fullstr); save_alias(ply_ptr); title_cut_index[fd] = 1; - print(fd,"´ç½ÅÀº ÀÌÁ¦ºÎÅÍ %s %sÀÔ´Ï´Ù.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); + print(fd,"당신ì�€ ì�´ì œë¶€í„° %s %s입니다.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); title_cut_index[fd] = 0; } } @@ -358,14 +358,14 @@ cmd *cmnd; fd=ply_ptr->fd; if(ply_titles[fd]==NULL) { - print(fd,"Īȣ°¡ ¼³Á¤µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd,"칭호가 설정ë�˜ì–´ 있지 않습니다."); return 0; } free(ply_titles[fd]); ply_titles[fd]=NULL; save_alias(ply_ptr); - print(fd,"´ç½ÅÀº ÀÌÁ¦ºÎÅÍ %s %sÀÔ´Ï´Ù.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); + print(fd,"당신ì�€ ì�´ì œë¶€í„° %s %s입니다.",title_ply(ply_ptr,ply_ptr),ply_ptr->name); return 0; } @@ -373,7 +373,7 @@ int color_cmp(str) char *str; { char buf[3]; - char *col[7]={"»¡","³ë","ÆÄ","ÇÏ","º¸","³ì","Èò"}; + char *col[7]={"빨","ë…¸","파","하","ë³´","ë…¹","í�°"}; char code[7]={31,33,34,36,35,32,37}; int i; diff --git a/src/bank.c b/src/bank.c index a08b3854..c00a48f9 100644 --- a/src/bank.c +++ b/src/bank.c @@ -9,6 +9,9 @@ #include #endif +#define UTF8_PREFIX_ALL "모든" +#define UTF8_PREFIX_ALL_LEN ((int)(sizeof(UTF8_PREFIX_ALL) - 1)) + int load_bank(str, obj_ptr) char *str; object **obj_ptr; @@ -70,13 +73,13 @@ cmd *cmnd; fd = ply_ptr->fd; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } if(cmnd->num < 2) { n = load_bank(ply_ptr->name, &bnk_ptr); if(n < 0) { - print(fd, "º¸°üÇϰí ÀÖ´Â ¹°°ÇÀÌ ¾ø½À´Ï´Ù."); + print(fd, "보관하고 있는 물건ì�´ 없습니다."); bnk_ptr = (object *)malloc(sizeof(object)); zero(bnk_ptr, sizeof(object)); bnk_ptr->shotsmax = 200; @@ -85,11 +88,11 @@ cmd *cmnd; free_obj(bnk_ptr); } else { - print(fd, "´ç½ÅÀÇ À̸§ÀÌ »õ°ÜÁø º¸°üÇÔÀÔ´Ï´Ù.\n"); - strcpy(str, "º¸°üǰÀÇ ¸ñ·Ï : "); + print(fd, "당신ì�˜ ì�´ë¦„ì�´ 새겨진 보관함입니다.\n"); + strcpy(str, "보관품ì�˜ 목ë¡� : "); n = list_obj(&str[16], ply_ptr, bnk_ptr->first_obj); if(n) print(fd, "%s.\n", str); - else print(fd, "º¸°üÇϰí ÀÖ´Â ¹°°ÇÀÌ ¾ø½À´Ï´Ù."); + else print(fd, "보관하고 있는 물건ì�´ 없습니다."); } return(0); } @@ -110,7 +113,7 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } n = load_bank(ply_ptr->name, &bnk_ptr); @@ -121,7 +124,7 @@ cmd *cmnd; F_ISSET(bnk_ptr, OCONTN); } - print(fd, "´ç½ÅÀÇ Àܰí´Â %ld³ÉÀÔ´Ï´Ù.", bnk_ptr->value); + print(fd, "당신ì�˜ 잔고는 %ld냥입니다.", bnk_ptr->value); return(0); } @@ -136,7 +139,7 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } n = load_bank(ply_ptr->name, &cnt_ptr); @@ -147,12 +150,12 @@ cmd *cmnd; F_ISSET(cnt_ptr, OCONTN); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { drop_all_bank(ply_ptr, cnt_ptr,cmnd->str[1]); return(0); } - if(!strncmp(cmnd->str[1], "¸ðµç",4)) { - drop_all_bank(ply_ptr, cnt_ptr,cmnd->str[1]+4); + if(!strncmp(cmnd->str[1], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + drop_all_bank(ply_ptr, cnt_ptr, cmnd->str[1] + UTF8_PREFIX_ALL_LEN); return(0); } @@ -160,25 +163,25 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } if(cnt_ptr->shotscur >= cnt_ptr->shotsmax) { - print(fd, "º¸°üÇÔ ¾È¿¡ ´õÀÌ»ó ³ÖÀ» ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "보관함 안ì—� ë�”ì�´ìƒ� ë„£ì�„ 수 없습니다.\n"); return(0); } if(F_ISSET(obj_ptr, OCONTN)) { - print(fd, "º¸µû¸® Á¾·ù´Â º¸°üÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "보따리 종류는 보관할 수 없습니다.\n"); return(0); } del_obj_crt(obj_ptr, ply_ptr); add_obj_obj(obj_ptr, cnt_ptr); cnt_ptr->shotscur++; - print(fd, "´ç½ÅÀº %1i%j º¸°ü½ÃÄ×½À´Ï´Ù.\n", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j º¸°ü½ÃÄ×½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 보관시켰습니다.\n", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 보관시켰습니다.", ply_ptr, "1", obj_ptr,"3"); savegame_nomsg(ply_ptr); save_bank(ply_ptr->name, cnt_ptr); @@ -199,7 +202,7 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } n = load_bank(ply_ptr->name, &cnt_ptr); @@ -216,16 +219,16 @@ cmd *cmnd; cnt += count_inv(ply_ptr, -1); if(cmnd->num < 2) { - print(fd, "ÀºÇàÀ¸·ÎºÎÅÍ ¹«¾ùÀ» ¹ÞÀ¸½Ã·Á°í¿ä?"); + print(fd, "ì�€í–‰ìœ¼ë¡œë¶€í„° 무엇ì�„ 받으시려고요?"); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { get_all_bank(ply_ptr, cnt_ptr,cmnd->str[1]); return(0); } - if(!strncmp(cmnd->str[1], "¸ðµç",4)) { - get_all_bank(ply_ptr, cnt_ptr,cmnd->str[1]+4); + if(!strncmp(cmnd->str[1], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + get_all_bank(ply_ptr, cnt_ptr, cmnd->str[1] + UTF8_PREFIX_ALL_LEN); return(0); } @@ -233,13 +236,13 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "±× ¾È¿¡ ±×·±°ÍÀº ¾ø¾î¿ä."); + print(fd, "ê·¸ 안ì—� 그런것ì�€ 없어요."); return(0); } if((weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr) && cnt_ptr->parent_rom) || cnt>150) { - print(fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다."); return(0); } @@ -248,8 +251,8 @@ cmd *cmnd; cnt_ptr->shotscur--; del_obj_obj(obj_ptr, cnt_ptr); - print(fd, "´ç½ÅÀº %1i%j ¹Þ¾Ò½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %1i%j ¹Þ¾Ò½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 받았습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %1i%j 받았습니다.", ply_ptr, obj_ptr,"3"); add_obj_crt(obj_ptr, ply_ptr); @@ -258,7 +261,7 @@ cmd *cmnd; savegame_nomsg(ply_ptr); if(F_ISSET(obj_ptr, OEVENT) && !F_ISSET(obj_ptr, ONEWEV)) { - print(fd, "\n%I%j »ç¶óÁ³½À´Ï´Ù.", obj_ptr, "1"); + print(fd, "\n%I%j 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.", obj_ptr, "1"); del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); savegame_nomsg(ply_ptr); @@ -274,32 +277,30 @@ cmd *cmnd; { int fd, n; object *bnk_ptr; - int len; long amt; fd = ply_ptr->fd; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } if(cmnd->num != 2) { - print(fd, "¾ó¸¶¸¦ ÀÔ±ÝÇϽ÷Á°í¿ä?"); + print(fd, "얼마를 입금하시려고요?"); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { amt = ply_ptr->gold; goto input_bank_all; } - len = strlen(cmnd->str[1]); - if(len>2 && !strcmp(&cmnd->str[1][len-2],"³É")) { + if(utf8_ends_with((unsigned char *)cmnd->str[1], (unsigned char *)"냥")) { amt = atol(cmnd->str[1]); if(amt < 1) { - print(fd, "µ·ÀÇ ´ÜÀ§´Â À½¼ö°¡ µÉ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�ˆì�˜ 단위는 ì�Œìˆ˜ê°€ ë� ìˆ˜ 없습니다."); return(0); } if(amt > ply_ptr->gold) { - print(fd, "´ç½ÅÀº ±×¸¸Å­ÀÇ µ·À» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그만í�¼ì�˜ ë�ˆì�„ 가지고 있지 않습니다."); return(0); } input_bank_all : @@ -312,20 +313,20 @@ cmd *cmnd; } /* By Latok */ if( bnk_ptr->value + amt > 300000000){ - print(fd,"\nÀºÇà¿¡´Â 3¾ïÀÌ»ó ÀÔ±ÝÇÒ ¼ö ¾ø½À´Ï´Ù. Á˼ÛÇÕ´Ï´Ù\n"); + print(fd,"\nì�€í–‰ì—�는 3ì–µì�´ìƒ� 입금할 수 없습니다. 죄송합니다\n"); return(0); } bnk_ptr->value += amt; ply_ptr->gold -= amt; - print(fd, "´ç½ÅÀº %ld³ÉÀ» ÀÔ±ÝÇß½À´Ï´Ù.\n", amt); - print(fd, "ÀºÇàÀÇ ÀÜ°í°¡ %ld³ÉÀÌ µÇ¾ú½À´Ï´Ù.", bnk_ptr->value); + print(fd, "당신ì�€ %ld냥ì�„ 입금했습니다.\n", amt); + print(fd, "ì�€í–‰ì�˜ 잔고가 %ld냥ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤.", bnk_ptr->value); save_bank(ply_ptr->name, bnk_ptr); free_obj(bnk_ptr); savegame_nomsg(ply_ptr); } else { - print(fd, "»ç¿ë¹ý : ¸î³É ÀÔ±Ý"); + print(fd, "사용법 : 몇냥 입금"); } return(0); } @@ -336,17 +337,16 @@ cmd *cmnd; { int fd, n; object *bnk_ptr; - int len; long amt; fd = ply_ptr->fd; if(!F_ISSET(ply_ptr->parent_rom, RBANK)) { - print(fd, "ÀºÇà¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì�€í–‰ì—�서만 가능합니다."); return(0); } if(cmnd->num != 2) { - print(fd, "¾ó¸¶¸¦ Ãâ±ÝÇϽ÷Á°í¿ä?"); + print(fd, "얼마를 출금하시려고요?"); return(0); } n = load_bank(ply_ptr->name, &bnk_ptr); @@ -356,32 +356,31 @@ cmd *cmnd; bnk_ptr->shotsmax = 200; F_ISSET(bnk_ptr, OCONTN); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { amt = bnk_ptr->value; goto output_bank_all; } - len = strlen(cmnd->str[1]); - if(len>2 && !strcmp(&cmnd->str[1][len-2],"³É")) { + if(utf8_ends_with((unsigned char *)cmnd->str[1], (unsigned char *)"냥")) { amt = atol(cmnd->str[1]); if(amt < 1) { - print(fd, "µ·ÀÇ ´ÜÀ§´Â À½¼ö°¡ µÉ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�ˆì�˜ 단위는 ì�Œìˆ˜ê°€ ë� ìˆ˜ 없습니다."); return(0); } if(amt > bnk_ptr->value) { - print(fd, "´ç½ÅÀº ±×¸¸Å­ÀÇ µ·À» Àú±ÝÇØµÎÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "당신ì�€ 그만í�¼ì�˜ ë�ˆì�„ 저금해ë‘�ì§€ 않았습니다."); return(0); } output_bank_all : bnk_ptr->value -= amt; ply_ptr->gold += amt; - print(fd, "´ç½ÅÀº %ld³ÉÀ» Ãâ±ÝÇß½À´Ï´Ù.\n", amt); - print(fd, "ÀºÇàÀÇ ÀÜ°í°¡ %ld³ÉÀÌ µÇ¾ú½À´Ï´Ù.", bnk_ptr->value); + print(fd, "당신ì�€ %ld냥ì�„ 출금했습니다.\n", amt); + print(fd, "ì�€í–‰ì�˜ 잔고가 %ld냥ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤.", bnk_ptr->value); save_bank(ply_ptr->name, bnk_ptr); free_obj(bnk_ptr); savegame_nomsg(ply_ptr); } else { - print(fd, "»ç¿ë¹ý : ¸î³É Ãâ±Ý"); + print(fd, "사용법 : 몇냥 출금"); } return(0); } @@ -398,7 +397,7 @@ char *part_obj; int fd, n = 1, found = 0, full = 0; int index=1; - if(!strcmp(part_obj,"¸ðµÎ")) { + if(!strcmp(part_obj,"모ë‘�")) { index=0; } fd = ply_ptr->fd; @@ -462,17 +461,17 @@ char *part_obj; if(found && last_obj) strcat(str, obj_str(last_obj, n, 0)); else { - print(fd, "´ç½ÅÀº º¸°ü½Ãų ¹°°ÇÀ» ¾Æ¹«°Íµµ °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 보관시킬 물건ì�„ 아무것ë�„ ê°–ê³  있지 않습니다."); return; } if(full) - print(fd, "´õÀÌ»ó ¹°°ÇÀ» º¸°ü½Ãų ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 물건ì�„ 보관시킬 수 없습니다."); if(full == found) return; - print(fd, "´ç½ÅÀº %1i%j º¸°ü½ÃÄ×½À´Ï´Ù.\n", str,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j º¸°ü½ÃÄ×½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 보관시켰습니다.\n", str,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 보관시켰습니다.", ply_ptr, "1", str,"3"); savegame_nomsg(ply_ptr); save_bank(ply_ptr->name, cnt_ptr); @@ -498,7 +497,7 @@ char *part_obj; if(ply_ptr->ready[i]) cnt++; cnt += count_inv(ply_ptr, -1); - if(!strcmp(part_obj,"¸ðµÎ")) { + if(!strcmp(part_obj,"모ë‘�")) { index=0; } last_obj = 0; str[0] = 0; @@ -553,7 +552,7 @@ char *part_obj; ply_ptr->gold += obj_ptr->value; free_obj(obj_ptr); last_obj = 0; - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù.", + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ 가지고 있습니다.", ply_ptr->gold); } else { @@ -568,19 +567,19 @@ char *part_obj; if(found && last_obj) strcat(str, obj_str(last_obj, n, 0)); else if(!found) { - print(fd, "º¸°üǰÀÌ ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù."); + print(fd, "보관품ì�´ 아무것ë�„ 없습니다."); return; } if(heavy) { - print(fd, "°¡Áö°í ÀÖ´Â ¹°°ÇÀÌ ³Ê¹« ¹«°Å¿ö µé ¼ö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "가지고 있는 물건ì�´ 너무 무거워 들 수가 없습니다.\n"); if(heavy == found) return; } if(!strlen(str)) return; - print(fd, "´ç½ÅÀº %1i%j ¹Þ¾Ò½À´Ï´Ù.", str,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %1i%j ¹Þ¾Ò½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 받았습니다.", str,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %1i%j 받았습니다.", ply_ptr, str,"3"); save_bank(ply_ptr->name, cnt_ptr); free_obj(cnt_ptr); @@ -595,6 +594,3 @@ char *part_obj; - - - diff --git a/src/bank_check.c b/src/bank_check.c index 8c8982cb..bd43d003 100644 --- a/src/bank_check.c +++ b/src/bank_check.c @@ -30,7 +30,7 @@ void main() n = load_bank(ply_ptr->name, &bnk_ptr); if(n < 0){ - printf("º¸°üÇϰí ÀÖ´Â ¹°ÇÀÌ ¾ø½À´Ï´Ù."); + printf("보관하고 있는 물퓽� 없습니다."); bnk_ptr = (object *)malloc(sizeof(object)); zero(bnk_ptr, sizeof(object)); bnk_ptr->shotsmax = 200; @@ -39,11 +39,11 @@ void main() free_obj(bnk_ptr); } else { - printf( "´ç½ÅÀÇ À̸§ÀÌ »õ°ÜÁø º¸°üÇÔÀÔ´Ï´Ù.\n"); - strcpy(str, "º¸°üǰÀÇ ¸ñ·Ï : "); + printf( "당신ì�˜ ì�´ë¦„ì�´ 새겨진 보관함입니다.\n"); + strcpy(str, "보관품ì�˜ 목ë¡� : "); n = list_obj(&str[16], ply_ptr, bnk_ptr->first_obj); if(n) printf( "%s.\n", str); - else printf( "º¸°üÇϰí ÀÖ´Â ¹°ÇÀÌ ¾ø½À´Ï´Ù."); - printf( "ÀºÇà¿¡ Àܰí´Â %1d³ÉÀÔ´Ï´Ù.", bnk_ptr->value); + else printf( "보관하고 있는 물퓽� 없습니다."); + printf( "ì�€í–‰ì—� 잔고는 %1d냥입니다.", bnk_ptr->value); } } diff --git a/src/board.c b/src/board.c index 46779420..37dadb3f 100644 --- a/src/board.c +++ b/src/board.c @@ -1,4 +1,4 @@ -/* °Ô½ÃÆÇ */ +/* 게시íŒ� */ #include @@ -75,10 +75,10 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; obj_ptr = find_obj(ply_ptr, rom_ptr->first_obj, - "°Ô½ÃÆÇ", 1); + "게시íŒ�", 1); if(!obj_ptr) { - print(fd,"À̰÷¿¡´Â °Ô½ÃÆÇÀÌ ¾ø½À´Ï´Ù."); + print(fd,"ì�´ê³³ì—�는 게시íŒ�ì�´ 없습니다."); return 0; } @@ -90,7 +90,7 @@ cmd *cmnd; return DOPROMPT; } -/* °Ô½ÃÆÇ º¸±â */ +/* 게시íŒ� 보기 */ void list_board(fd, param, str) int fd; int param; @@ -101,9 +101,9 @@ char *str; int i,handle; switch(param) { - case 0: /* °Ô½ÃÆÇ º¸±â ½ÃÀÛ */ + case 0: /* 게시íŒ� 보기 시작 */ broadcast_rom(fd,Ply[fd].ply->parent_rom->rom_num, - "\n%MÀÌ °Ô½ÃÆÇÀ» º¾´Ï´Ù.",Ply[fd].ply); + "\n%Mì�´ 게시íŒ�ì�„ 봅니다.",Ply[fd].ply); board_handle[fd] = 0; i = 1; while(board_dir[i].num>0) { @@ -112,18 +112,18 @@ char *str; } exit_while: if(board_dir[i].num<0) { - print(fd,"À߸øµÈ °Ô½ÃÆÇÀÔ´Ï´Ù."); + print(fd,"잘못ë�œ 게시íŒ�입니다."); RETURN(fd, command, 1); } sprintf(name,"%s/board_index",board_dir[i].dir); if((handle=open(name,O_RDONLY))==-1) { - print(fd,"À妽ºÈ­ÀÏÀ» ÀÐÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd,"ì�¸ë�±ìŠ¤í™”ì�¼ì�„ ì�½ì�„수 없습니다."); RETURN(fd, command, 1); } board_pos[fd]=lseek(handle,0,SEEK_END); if(board_pos[fd]intrpt &= ~1; RETURN(fd, list_board, 1); @@ -185,10 +185,10 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; obj_ptr = find_obj(ply_ptr, rom_ptr->first_obj, - "°Ô½ÃÆÇ", 1); + "게시íŒ�", 1); if(!obj_ptr) { - print(fd,"À̰÷¿¡´Â °Ô½ÃÆÇÀÌ ¾ø½À´Ï´Ù."); + print(fd,"ì�´ê³³ì—�는 게시íŒ�ì�´ 없습니다."); return 0; } @@ -214,9 +214,9 @@ unsigned char *str; struct tm *tt; switch(param) { - case 0: /* °Ô½ÃÆÇ ¾²±â Áغñ */ + case 0: /* 게시íŒ� 쓰기 준비 */ broadcast_rom(fd,Ply[fd].ply->parent_rom->rom_num, - "\n%MÀÌ °Ô½ÃÆÇ¿¡ ±ÛÀ» ¾¹´Ï´Ù.",Ply[fd].ply); + "\n%Mì�´ 게시íŒ�ì—� 글ì�„ ì”�니다.",Ply[fd].ply); board_handle[fd] = 0; i = 1; while(board_dir[i].num>0) { @@ -225,20 +225,20 @@ unsigned char *str; } exit_while: if(board_dir[i].num<0) { - print(fd,"À߸øµÈ °Ô½ÃÆÇÀÔ´Ï´Ù."); + print(fd,"잘못ë�œ 게시íŒ�입니다."); RETURN(fd, command, 1); } sprintf(name,"%s/board_index",board_dir[i].dir); if((handle=open(name,O_RDWR))==-1) { - print(fd,"À妽ºÈ­ÀÏÀ» ÀÐÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd,"ì�¸ë�±ìŠ¤í™”ì�¼ì�„ ì�½ì�„수 없습니다."); RETURN(fd, command, 1); } board_handle[fd]=handle; sprintf(name,"%s/%s",board_dir[i].dir,Ply[fd].ply->name); if((handle=creat(name,0644))==-1) { - print(fd,"È­ÀÏÀ» »ý¼ºÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"í™”ì�¼ì�„ ìƒ�성할 수 없습니다."); close(board_handle[fd]); RETURN(fd, command, 1); } @@ -246,7 +246,7 @@ unsigned char *str; board_handle2[fd]=handle; F_SET(Ply[fd].ply,PREADI); - print(fd,"Á¦¸ñ: "); + print(fd,"제목: "); output_buf(); Ply[fd].io->intrpt &= ~1; RETURN(fd, write_board, 1); @@ -255,7 +255,7 @@ unsigned char *str; if(strlen(str)==0) { close(board_handle[fd]); close(board_handle2[fd]); - print(fd,"°Ô½Ã¹° ÀÛ¼ºÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd,"게시물 작성ì�„ 취소합니다."); RETURN(fd,command,1); } @@ -263,8 +263,8 @@ unsigned char *str; board_title[fd][40]=0; board_pos[fd]=1; - print(fd,"°Ô½Ã¹°À» ÀÛ¼ºÇÕ´Ï´Ù. ³¡³»½Ã·Á¸é ÇàÀÇ Ã³À½¿¡ [.]À» ÀÔ·ÂÇϽʽÿä.\n"); - print(fd,"Áß°£¿¡ Ãë¼ÒÇϽ÷Á¸é ÇàÀÇ Ã³À½¿¡ [!!]¸¦ ÀÔ·ÂÇϽʽÿä.\n\n"); + print(fd,"게시물ì�„ 작성합니다. ë��내시려면 í–‰ì�˜ 처ì�Œì—� [.]ì�„ 입력하십시요.\n"); + print(fd,"중간ì—� 취소하시려면 í–‰ì�˜ 처ì�Œì—� [!!]를 입력하십시요.\n\n"); F_SET(Ply[fd].ply,PREADI); print(fd,"%3ld: ",board_pos[fd]); output_buf(); @@ -278,7 +278,7 @@ unsigned char *str; close(board_handle[fd]); sprintf(name,"%s/%s",board_dir[board_num[fd]].dir,Ply[fd].ply->name); unlink(name); - print(fd,"°Ô½Ã¹° ÀÛ¼ºÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd,"게시물 작성ì�„ 취소합니다."); RETURN(fd,command,1); } if(str[0]=='.') { @@ -306,7 +306,7 @@ unsigned char *str; sizeof(struct BOARD_INDEX)); close(board_handle[fd]); - print(fd,"°Ô½Ã¹°ÀÌ µî·ÏµÇ¾ú½À´Ï´Ù."); + print(fd,"게시물ì�´ 등ë¡�ë�˜ì—ˆìŠµë‹ˆë‹¤."); RETURN(fd, command, 1); } write(board_handle2[fd],str,strlen(str)); @@ -337,19 +337,19 @@ cmd *cmnd; i++; } if(board_dir[i].num<0) { - print(fd,"À߸øµÈ °Ô½ÃÆÇÀÔ´Ï´Ù."); + print(fd,"잘못ë�œ 게시íŒ�입니다."); return 0; } sprintf(name,"%s/board_index",board_dir[i].dir); if((handle=open(name,O_RDWR))==-1) { - print(fd,"À妽ºÈ­ÀÏÀ» ÀÐÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd,"ì�¸ë�±ìŠ¤í™”ì�¼ì�„ ì�½ì�„수 없습니다."); return 0; } number=lseek(handle,0,SEEK_END)/sizeof(struct BOARD_INDEX); if(cmnd->val[0]>number || cmnd->val[0]<1) { - print(fd,"¹üÀ§¿¡ ¹þ¾î³ª´Â °Ô½Ã¹°ÀÔ´Ï´Ù."); + print(fd,"범위ì—� 벗어나는 게시물입니다."); close(handle); return 0; } @@ -357,19 +357,19 @@ cmd *cmnd; lseek(handle,(cmnd->val[0]-1)*sizeof(struct BOARD_INDEX),SEEK_SET); read(handle,&board_index,sizeof(struct BOARD_INDEX)); if(board_index.readnum<0 && ply_ptr->classparent_rom->rom_num, - "\n%MÀÌ °Ô½ÃÆÇÀÇ ±ÛÀ» ÀнÀ´Ï´Ù.",ply_ptr); + "\n%Mì�´ 게시íŒ�ì�˜ 글ì�„ ì�½ìŠµë‹ˆë‹¤.",ply_ptr); - print(fd,"\n¹øÈ£: %d ¿Ã¸°ÀÌ: %s Á¦¸ñ: %s\n", + print(fd,"\n번호: %d 올린ì�´: %s 제목: %s\n", board_index.num, board_index.upload, board_index.title); - print(fd,"¿Ã¸°³¯: 19%d³â %d¿ù %dÀÏ %d½Ã %dºÐ ", + print(fd,"올린날: 19%dë…„ %dì›” %dì�¼ %d시 %dë¶„ ", board_index.year,board_index.month, board_index.day, board_index.hour,board_index.min); - print(fd,"ÃÑÁÙ¼ö: %d ÀÐÀºÈ½¼ö: %d\n", + print(fd,"ì´�줄수: %d ì�½ì�€íšŸìˆ˜: %d\n", board_index.line, board_index.readnum); print(fd,"---------------------------------------------------------------\n"); @@ -399,17 +399,17 @@ cmd *cmnd; fd=ply_ptr->fd; - if(cmnd->num<2 || strcmp(cmnd->str[1],"°Ô½ÃÆÇ") + if(cmnd->num<2 || strcmp(cmnd->str[1],"게시íŒ�") || (cmnd->val[1]==1 && ply_ptr->class ±Û»èÁ¦"); + print(fd, "사용법: 게시íŒ� <번호> 글삭제"); return 0; } obj_ptr=find_obj(ply_ptr,ply_ptr->parent_rom->first_obj, - "°Ô½ÃÆÇ", 1); + "게시íŒ�", 1); if(!obj_ptr || obj_ptr->special!=SP_BOARD) { - print(fd, "À̰÷¿¡´Â °Ô½ÃÆÇÀÌ ¾ø½À´Ï´Ù."); + print(fd, "ì�´ê³³ì—�는 게시íŒ�ì�´ 없습니다."); return 0; } @@ -420,35 +420,35 @@ cmd *cmnd; } exit_while: if(board_dir[i].num<0) { - print(fd,"À߸øµÈ °Ô½ÃÆÇÀÔ´Ï´Ù."); + print(fd,"잘못ë�œ 게시íŒ�입니다."); return 0; } sprintf(name,"%s/board_index",board_dir[i].dir); if((handle=open(name,O_RDWR))==-1) { - print(fd,"À妽ºÈ­ÀÏÀ» ÀÐÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd,"ì�¸ë�±ìŠ¤í™”ì�¼ì�„ ì�½ì�„수 없습니다."); return 0; } if(lseek(handle,0,SEEK_END)val[1]*sizeof(struct BOARD_INDEX)) { - print(fd, "¹üÀ§¿¡ ¹þ¾î³ª´Â °Ô½Ã¹°ÀÔ´Ï´Ù."); + print(fd, "범위ì—� 벗어나는 게시물입니다."); return 0; } lseek(handle,(cmnd->val[1]-1)*sizeof(struct BOARD_INDEX),SEEK_SET); read(handle,&board_index,sizeof(struct BOARD_INDEX)); if(strcmp(board_index.upload,ply_ptr->name) && ply_ptr->classval[1]-1)*sizeof(struct BOARD_INDEX),SEEK_SET); write(handle,&board_index,sizeof(struct BOARD_INDEX)); diff --git a/src/comman5_old.c b/src/comman5_old.c index 8d0edbaa..0210ae90 100644 --- a/src/comman5_old.c +++ b/src/comman5_old.c @@ -41,7 +41,7 @@ cmd *cmnd; i = LT(ply_ptr, LT_ATTCK); if(ply_ptr->class==0) { - print(fd,"´ç½ÅÀº ÀüÅõ°¡ ±ÝÁöµÈ Á÷¾÷À» °®°í ÀÖ½À´Ï´Ù."); + print(fd,"당신ì�€ 전투가 금지ë�œ ì§�ì—…ì�„ ê°–ê³  있습니다."); return 0; } if(t < i) { @@ -50,14 +50,14 @@ cmd *cmnd; } if(cmnd->num < 2 || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´©±¸¸¦ °ø°ÝÇϽ÷Á±¸¿ä?"); + print(fd, "누구를 공격하시려구요?"); return(0); } rom_ptr = ply_ptr->parent_rom; if(ply_is_attacking(ply_ptr,cmnd)) { - print(fd, "´ç½ÅÀº Áö±Ý ½Î¿ì°í ÀÖÀݾƿä!"); + print(fd, "당신ì�€ 지금 싸우고 있잖아요!"); return(0); } @@ -70,7 +70,7 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[1]) < 2) { - print(fd, "±×·±°Ç ¿©±â ¾ø½À´Ï´Ù."); + print(fd, "그런건 여기 없습니다."); return(0); } @@ -113,7 +113,7 @@ creature *crt_ptr; return(0); if (crt_ptr->type != MONSTER) { if(is_charm_crt(ply_ptr->name, crt_ptr) && F_ISSET(ply_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %S%j ³Ê¹« ÁÁ¾ÆÇؼ­ ±×·²¼ö ¾ø½À´Ï´Ù.", crt_ptr->name,"3"); + print(fd, "당신ì�€ %S%j 너무 좋아해서 그럴수 없습니다.", crt_ptr->name,"3"); return(0); } else @@ -123,8 +123,8 @@ creature *crt_ptr; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³µ½À´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³µ½À´Ï´Ù.", + print(fd, "\n당신ì�˜ 모습ì�´ 서서히 드러났습니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러났습니다.", ply_ptr); } @@ -138,27 +138,27 @@ creature *crt_ptr; } if(crt_ptr->type == MONSTER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥ ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 í•´ì¹  수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(add_enm_crt(ply_ptr->name, crt_ptr) < 0) { - print(fd, "´ç½ÅÀº %M%j °ø°ÝÇÕ´Ï´Ù.", crt_ptr,"3"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j °ø°ÝÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %M%j 공격합니다.", crt_ptr,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j 공격합니다.", ply_ptr, "1",crt_ptr,"3"); } if(F_ISSET(crt_ptr, MMGONL)) { - print(fd, "\n´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.", + print(fd, "\n당신ì�˜ 무기는 %Mì—�게 아무 소용ì�´ 없는듯 합니다.", crt_ptr); return(0); } if(F_ISSET(crt_ptr, MENONL) && ply_ptr->class < CARETAKER) { if(!ply_ptr->ready[WIELD-1] || ply_ptr->ready[WIELD-1]->adjustment < 1) { - print(fd, "\n´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.", + print(fd, "\n당신ì�˜ 무기는 %Mì—�게 아무 소용ì�´ 없는듯 합니다.", crt_ptr); return(0); } @@ -166,35 +166,35 @@ creature *crt_ptr; } else { if(F_ISSET(ply_ptr->parent_rom, RNOKIL)) { - print(fd, "ÀÌ °÷¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì�´ ê³³ì—�서는 싸울 수 없습니다."); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && ply_ptr->level < 128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±ÇÏ´Ù´Â°É ¾Æ¼¼¿ä."); + print(fd, "당신ì�€ 선하다는걸 아세요."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && ply_ptr->level <128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 공격할 수 없습니다."); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && ply_ptr->level < 128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±ÇÏ´Ù´Â°É ¾Æ¼¼¿ä."); + print(fd, "당신ì�€ 선하다는걸 아세요."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && ply_ptr->level <128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 공격할 수 없습니다."); return (0); } } ply_ptr->lasttime[LT_ATTCK].interval += 3; - print(crt_ptr->fd, "\n%M%j ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù!", ply_ptr,"1"); + print(crt_ptr->fd, "\n%M%j 당신ì�„ 공격합니다!", ply_ptr,"1"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j °ø°ÝÇÕ´Ï´Ù!", ply_ptr, "1",crt_ptr,"3"); + "\n%M%j %M%j 공격합니다!", ply_ptr, "1",crt_ptr,"3"); } count = 1; @@ -211,9 +211,9 @@ creature *crt_ptr; if(ply_ptr->ready[WIELD-1]) { if(ply_ptr->ready[WIELD-1]->shotscur < 1) { - print(fd, "\n%S%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + print(fd, "\n%S%j 부서져 버렸습니다.", ply_ptr->ready[WIELD-1]->name,"1"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ %S%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ %S%j 부서져 버렸습니다.", ply_ptr, ply_ptr->ready[WIELD-1]->name,"1"); add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; @@ -226,7 +226,7 @@ creature *crt_ptr; if (F_ISSET(ply_ptr, PFEARS)) n += 2; if (F_ISSET(ply_ptr, PBLIND)) n += 5; - if(mrand(1,30) >= n) { /* ¿ø·¡°ª 20 */ + if(mrand(1,30) >= n) { /* ì›�래값 20 */ if(ply_ptr->ready[WIELD-1]) { n = mdice(ply_ptr->ready[WIELD-1]) + bonus[(int)ply_ptr->strength] + @@ -261,11 +261,11 @@ creature *crt_ptr; if(ply_ptr->class == PALADIN) { if(ply_ptr->alignment < 0) { n /= 2; - print(fd, "\n´ç½ÅÀÇ ¾ÇÇàÀÌ ¾ç½ÉÀ» ±«·ÓÈü´Ï´Ù."); + print(fd, "\n당신ì�˜ ì•…í–‰ì�´ 양심ì�„ 괴롭힙니다."); } else if(ply_ptr->alignment > 250) { n += mrand(1,3); - print(fd, "\n´ç½ÅÀÇ ¼±ÇàÀÌ ´É·ÂÀ» ¹è°¡½Ãŵ´Ï´Ù."); + print(fd, "\n당신ì�˜ ì„ í–‰ì�´ 능력ì�„ 배가시킵니다."); } } @@ -274,18 +274,18 @@ creature *crt_ptr; (ply_ptr->ready[WIELD-1] && F_ISSET(ply_ptr->ready[WIELD-1],OALCRT))) { ANSI(fd, GREEN); - print(fd, "\n´ç½ÅÀº %M¿¡°Ô Ä¡¸íŸ¸¦ ³¯·È½À´Ï´Ù.",crt_ptr); + print(fd, "\n당신ì�€ %Mì—�게 치명타를 날렸습니다.",crt_ptr); ANSI(fd, WHITE); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Ä¡¸íŸ¸¦ ³¯·È½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 치명타를 날렸습니다.", ply_ptr); n *= mrand(3,6); if(ply_ptr->ready[WIELD-1] && (!F_ISSET(ply_ptr->ready[WIELD-1], ONSHAT)) && ((mrand(1,100) < 3) || (F_ISSET(ply_ptr->ready[WIELD-1],OALCRT)))) { if(!F_ISSET(ply_ptr->ready[WIELD-1], ONEWEV)) { - print(fd, "\n%S%j »ê»êÈ÷ ºÎ¼­Áý´Ï´Ù.", + print(fd, "\n%S%j 산산히 부서집니다.", ply_ptr->ready[WIELD-1]->name,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%sÀÇ %S%j »ê»êÈ÷ ºÎ¼­Áý´Ï´Ù.", - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à", + "\n%sì�˜ %S%j 산산히 부서집니다.", + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀", ply_ptr->ready[WIELD-1]->name,"1"); free_obj(ply_ptr->ready[WIELD-1]); ply_ptr->ready[WIELD-1] = 0; @@ -295,22 +295,22 @@ creature *crt_ptr; else if(mrand(1,100) <= (5-p) && ply_ptr->ready[WIELD-1] && !F_ISSET(ply_ptr->ready[WIELD-1], OCURSE)) { ANSI(fd, GREEN); - print(fd, "\n´ç½ÅÀº ¹«±â¸¦ ¶³¾î¶ß·È½À´Ï´Ù."); + print(fd, "\n당신ì�€ 무기를 떨어뜨렸습니다."); ANSI(fd, WHITE); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¹«±â¸¦ ¶³¾î¶ß·È½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 무기를 떨어뜨렸습니다.", ply_ptr); n = 0; add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; compute_thaco(ply_ptr); } - print(fd, "\n´ç½ÅÀº %M¿¡°Ô %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.", crt_ptr, n); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔÈü´Ï´Ù.",ply_ptr, "1",crt_ptr,"3",n); - print(crt_ptr->fd, "\n´ç½ÅÀº %M¿¡°Ô¼­ %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.", + print(fd, "\n당신ì�€ %Mì—�게 %d ë§Œí�¼ì�˜ 피해를 주었습니다.", crt_ptr, n); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j %dë§Œí�¼ì�˜ 피해를 입힙니다.",ply_ptr, "1",crt_ptr,"3",n); + print(crt_ptr->fd, "\n당신ì�€ %Mì—�게서 %d ë§Œí�¼ì�˜ 피해를 입었습니다.", ply_ptr, n); - /* »óÅÂÃâ·Â */ + /* ìƒ�태출력 */ st=(float)(crt_ptr->hpcur-n)/crt_ptr->hpmax; if(crt_ptr->hpcur-n < 1) st=0; st=st*15; @@ -364,9 +364,9 @@ creature *crt_ptr; } if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.", crt_ptr,"3"); + print(fd, "\n당신ì�€ %M%j 죽였습니다.", crt_ptr,"3"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", crt_ptr,"3"); + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); return(1); } @@ -374,8 +374,8 @@ creature *crt_ptr; check_for_flee(ply_ptr, crt_ptr); } else { - print(fd, "\nÇã°øÀ» ÃÆ½À´Ï´Ù."); - print(crt_ptr->fd, "\n%M%j Çã°øÀ» ÃÆ½À´Ï´Ù.", ply_ptr,"1"); + print(fd, "\n허공ì�„ 쳤습니다."); + print(crt_ptr->fd, "\n%M%j 허공ì�„ 쳤습니다.", ply_ptr,"1"); } } return(0); @@ -402,7 +402,7 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PBLIND)){ ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!\n"); ANSI(fd, WHITE); return(0); } @@ -413,8 +413,8 @@ cmd *cmnd; } if((sum > 30) && !((cmnd->num == 2) && !strcmp(cmnd->str[1], "l"))) { - print(fd, "%-14s [·¹º§ Á÷¾÷]", "»ç¿ëÀÚ"); - print(fd, " %-14s [·¹º§ Á÷¾÷]\n", "»ç¿ëÀÚ"); + print(fd, "%-14s [레벨 ì§�ì—…]", "사용ìž�"); + print(fd, " %-14s [레벨 ì§�ì—…]\n", "사용ìž�"); print(fd, "-------------------------------"); print(fd, "-----------------------------\n"); for(i=0; iclass < SUB_DM) - if(Ply[i].ply!=ply_ptr) continue; /* Åõ¸íµÇ¾îµµ ÀÚ½ÅÀº ³ª¿Àµµ·Ï... */ + if(Ply[i].ply!=ply_ptr) continue; /* 투명ë�˜ì–´ë�„ ìž�ì‹ ì�€ 나오ë�„ë¡�... */ total++; ANSI(fd, WHITE); print(fd, "%-13s%s ", Ply[i].ply->name, @@ -468,7 +468,7 @@ cmd *cmnd; ANSI(fd, GREEN); print(fd, "[%s%02d ] ", (Ply[i].ply->level>=100)? "" : " ", Ply[i].ply->level); - /* ºÒ»çÀÌ»ó »¡°­»ö */ + /* 불사ì�´ìƒ� 빨강색 */ /* if(Ply[i].ply->class>=CARETAKER) { ANSI(fd,BOLD); ANSI(fd,RED); @@ -498,7 +498,7 @@ cmd *cmnd; } else { ANSI(fd, BLUE); - print(fd, "[Á߸³] "); + print(fd, "[중립] "); } ANSI(fd, WHITE); title_cut_index[fd]=1; @@ -508,11 +508,11 @@ cmd *cmnd; #endif } } - if(total!=1) print(fd, "\nÃÑ %d¸íÀÇ »ç¿ëÀÚ°¡ ¹«ÇÑ´ëÀüÀ» ÀÌ¿ëÇϰí ÀÖ½À´Ï´Ù.",total); - else print(fd, "\n´ç½Å È¥ÀÚ¼­ ¿Ü·ÎÀÌ ¹«ÇÑ´ëÀüÀ» ÀÌ¿ëÇϰí ÀÖ½À´Ï´Ù."); + if(total!=1) print(fd, "\nì´� %d명ì�˜ 사용ìž�ê°€ 무한대전ì�„ ì�´ìš©í•˜ê³  있습니다.",total); + else print(fd, "\n당신 혼ìž�서 외로ì�´ 무한대전ì�„ ì�´ìš©í•˜ê³  있습니다."); if(AT_WAR) - print(fd, "\n%s ÆÐ°Å¸®¿Í %s ÆÐ°Å¸®°¡ ÀüÀïÁßÀÔ´Ï´Ù.", + print(fd, "\n%s 패거리와 %s 패거리가 ì „ìŸ�중입니다.", family_str[AT_WAR/16], family_str[AT_WAR%16]); return(0); @@ -535,7 +535,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "´©±¸¸¦ °Ë»öÇϽ÷Á±¸¿ä?"); + print(fd, "누구를 검색하시려구요?"); return(0); } @@ -544,16 +544,16 @@ cmd *cmnd; if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || F_ISSET(ply_ptr, PBLIND) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "ÇöÀç ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "현재 ì�´ìš©ì¤‘ì�´ 아닙니다."); return(0); } ANSI(fd, YELLOW); - print(fd, "%-18s %-4s [·¹º§] %-4s %-20s %-4s %-10s\n", "»ç¿ëÀÚ", "¼ºº°", "Á÷¾÷", "Īȣ", "³ªÀÌ", "Á¾Á·"); + print(fd, "%-18s %-4s [레벨] %-4s %-20s %-4s %-10s\n", "사용ìž�", "성별", "ì§�ì—…", "칭호", "나ì�´", "종족"); print(fd, "----------------------------------------------------------------------------\n"); print(fd, "%-18s %-4s [ %02d ] %-4.4s %-20s %-4d ", crt_ptr->name, - F_ISSET(crt_ptr, PMALES) ? " ³²":" ¿©", + F_ISSET(crt_ptr, PMALES) ? " 남":" ì—¬", crt_ptr->level, class_str[(int)crt_ptr->class], title_ply(ply_ptr,crt_ptr), @@ -619,7 +619,7 @@ cmd *cmnd; if((!F_ISSET(xp->ext, XINVIS) || F_ISSET(ply_ptr,PDINVI)) && !F_ISSET(xp->ext, XNOSEE)){ found++; - print(fd, "\nÃⱸ¸¦ ã¾Ò½À´Ï´Ù: %s.", xp->ext->name); + print(fd, "\n출구를 찾았습니다: %s.", xp->ext->name); } xp = xp->next_tag; } @@ -629,7 +629,7 @@ cmd *cmnd; if(F_ISSET(op->obj, OHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(op->obj, OINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº %1i%j ã¾Ò½À´Ï´Ù.", op->obj,"3"); + print(fd, "\n당신ì�€ %1i%j 찾았습니다.", op->obj,"3"); } op = op->next_tag; } @@ -640,7 +640,7 @@ cmd *cmnd; mrand(1,100) <= chance) if(!F_ISSET(cp->crt, PINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %S%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt->name,"3"); + print(fd, "\n당신ì�€ 숨어있는 %S%j 찾아내었습니다.", cp->crt->name,"3"); } cp = cp->next_tag; } @@ -650,18 +650,18 @@ cmd *cmnd; if(F_ISSET(cp->crt, MHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(cp->crt, MINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %1M%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt,"3"); + print(fd, "\n당신ì�€ 숨어있는 %1M%j 찾아내었습니다.", cp->crt,"3"); } cp = cp->next_tag; } - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖº¯À» »ô»ôÀÌ µÚÁ®º¾´Ï´Ù.", ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주변ì�„ 샅샅ì�´ 뒤져봅니다.", ply_ptr); if(found) - broadcast_rom(fd, ply_ptr->rom_num, "\n%s°¡ ¹» ¹ß°ßÇÑ°Í °°±º¿ä!", - F_ISSET(ply_ptr, MMALES) ? "±×":"±×³à"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%sê°€ ë­˜ 발견한것 같군요!", + F_ISSET(ply_ptr, MMALES) ? "ê·¸":"그녀"); else - print(fd, "´ç½ÅÀº ¾Æ¹«°Íµµ ãÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 아무것ë�„ 찾지 못했습니다.\n"); return(0); @@ -706,8 +706,8 @@ char *str; case 1: ANSI(fd, BOLD); ANSI(fd, RED); - print(fd, "´ç½Å¿¡ °üÇÑ µ¥ÀÌÅ͸¦ ¿ÏÀüÈ÷ »èÁ¦ÇÕ´Ï´Ù.\n"); - print(fd, "´ç½ÅÀÇ ÇöÀç ¾ÏÈ£¸¦ ³Ö¾îÁֽʽÿä : "); + print(fd, "당신ì—� 관한 ë�°ì�´í„°ë¥¼ 완전히 삭제합니다.\n"); + print(fd, "당신ì�˜ 현재 암호를 넣어주십시요 : "); ANSI(fd, NORMAL); ANSI(fd, WHITE); F_SET(Ply[fd].ply,PREADI); @@ -715,23 +715,26 @@ char *str; case 2: F_CLR(Ply[fd].ply,PREADI); if(!strcmp(ply_ptr->password, str)) { - print(fd, "ÂðÂ¥·Î? (ÂðÂ¥·Î/»½À¸·Î)"); + print(fd, "ì°�짜로? (ì°�짜로/뻥으로)"); F_SET(Ply[fd].ply,PREADI); RETURN(fd, suicide, 3); } else { - print(fd, "¾ÏÈ£°¡ Ʋ¸³´Ï´Ù.\n»èÁ¦µÇÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "암호가 틀립니다.\nì‚­ì œë�˜ì§€ 않았습니다."); RETURN(fd, command, 1); } case 3: F_CLR(Ply[fd].ply,PREADI); - if(!strcmp(str,"ÂðÂ¥·Î")) { + if(!strcmp(str,"ì°�짜로")) { if(F_ISSET(ply_ptr, PFAMIL)) { edit_member(ply_ptr->name, ply_ptr->class, ply_ptr->daily[DL_EXPND].max, 2); } - broadcast_all("\n### %s´ÔÀÌ ÀÚ»ì½ÅûÀ» ÇÏ¿´½À´Ï´Ù.\n", Ply[fd].ply->name); + broadcast_all("\n### %s님ì�´ ìž�ì‚´ì‹ ì²­ì�„ 하였습니다.\n", Ply[fd].ply->name); all_broad_time=time(0); - sprintf(file, "%s/%s/%s", PLAYERPATH,first_han(Ply[fd].ply->name), Ply[fd].ply->name); + if(player_path_from_name(Ply[fd].ply->name, file, sizeof(file)) < 0) { + print(fd, "플레ì�´ì–´ 경로를 만들 수 없습니다."); + RETURN(fd, command, 1); + } sprintf(file2,"%s/alias/%s",PLAYERPATH,Ply[fd].ply->name); sprintf(file3,"%s/bank/%s",PLAYERPATH,Ply[fd].ply->name); sprintf(temp, "mv %s %s/suic/%s", file, PLAYERPATH, Ply[fd].ply->name); @@ -741,7 +744,7 @@ char *str; t = time(0); strcpy(buf,ctime(&t)); buf[strlen(buf)-1] = 0; - logn("SUICIDE","%s : %s (%s)´ÔÀÌ ÀÚ»ì½ÅûÀ» ÇÏ¿´½À´Ï´Ù.\n", buf,Ply[fd].ply->name, Ply[fd].io->address); + logn("SUICIDE","%s : %s (%s)님ì�´ ìž�ì‚´ì‹ ì²­ì�„ 하였습니다.\n", buf,Ply[fd].ply->name, Ply[fd].io->address); #endif disconnect(fd); system(temp); @@ -750,7 +753,7 @@ char *str; return; } else { - print(fd, "»èÁ¦µÇÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "ì‚­ì œë�˜ì§€ 않았습니다."); RETURN(fd, command, 1); } } @@ -799,21 +802,21 @@ cmd *cmnd; chance = MIN(90, 5 + 2*((ply_ptr->level+3)/4) + 3*bonus[(int)ply_ptr->dexterity]); - print(fd, "´ç½ÅÀº ¾Ö½á ¼û¾îº¸·Á°í ÇÕ´Ï´Ù."); + print(fd, "당신ì�€ ì• ì�¨ 숨어보려고 합니다."); if(F_ISSET(ply_ptr, PBLIND)) chance = MIN(chance, 20); if(mrand(1,100) <= chance) { F_SET(ply_ptr, PHIDDN); - print(fd, "\n´ç½ÅÀº ¼º°øÀûÀ¸·Î ¼û¾ú½À´Ï´Ù."); + print(fd, "\n당신ì�€ 성공ì �으로 숨었습니다."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j ±×¸²ÀÚ »çÀÌ·Î ¼û¾ú½À´Ï´Ù.", ply_ptr,"1"); + "\n%M%j 그림ìž� 사ì�´ë¡œ 숨었습니다.", ply_ptr,"1"); } else { F_CLR(ply_ptr, PHIDDN); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j ¾Ö½á ¼û¾îº¸·Á°í ÇÕ´Ï´Ù.", ply_ptr,"1"); + "\n%M%j ì• ì�¨ 숨어보려고 합니다.", ply_ptr,"1"); } @@ -825,12 +828,12 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "±×·±°ÍÀº ¿©±â ¾ø¾î¿ä."); + print(fd, "그런것ì�€ 여기 없어요."); return(0); } if(F_ISSET(obj_ptr,ONOTAK)){ - print(fd,"´ç½ÅÀº ±×°ÍÀ» ¼û±æ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"당신ì�€ 그것ì�„ 숨길 수 없습니다."); return (0); } if(ply_ptr->class == THIEF || ply_ptr->class == ASSASSIN) @@ -843,14 +846,14 @@ cmd *cmnd; chance = MIN(90, 5 + 3*((ply_ptr->level+3)/4) + 3*bonus[(int)ply_ptr->dexterity]); - print(fd, "´ç½ÅÀº ±×°ÍÀ» ¼û°Üº¸·Á°í ÇÕ´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j ¼û°Üº¸·Á°í ÇÕ´Ï´Ù.", + print(fd, "당신ì�€ 그것ì�„ 숨겨보려고 합니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j 숨겨보려고 합니다.", ply_ptr, "1",obj_ptr,"3"); if(mrand(1,100) <= chance) { F_SET(obj_ptr, OHIDDN); - print(fd, "\n´ç½ÅÀº ¼º°øÀûÀ¸·Î ¼û°å½À´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j ¾îµò°¡ ¼û±é´Ï´Ù.", + print(fd, "\n당신ì�€ 성공ì �으로 숨겼습니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j 어딘가 숨ê¹�니다.", ply_ptr, "1", obj_ptr,"3"); } else @@ -873,37 +876,37 @@ cmd *cmnd; fd = ply_ptr->fd; - print(fd,"ÇöÀç ¼³Á¤ »óÅÂ:\n"); - print(fd," À̾߱âµè±â: %s\n", F_ISSET(ply_ptr, PIGNOR) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," Àâ´ãµè±â : %s\n", F_ISSET(ply_ptr, PNOBRD) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," ȯȣµè±â : %s\n", F_ISSET(ply_ptr, PNOBR2) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," ¹¦»çº¸±â : %s\n", F_ISSET(ply_ptr, PDSCRP) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," ¼Òȯ : %s\n", F_ISSET(ply_ptr, PNOSUM) ? " ºÒ°¡ " : " °¡´É "); - print(fd," µµ¸Á¼öÄ¡ : "); + print(fd,"현재 설정 ìƒ�태:\n"); + print(fd," ì�´ì•¼ê¸°ë“£ê¸°: %s\n", F_ISSET(ply_ptr, PIGNOR) ? "미설정" : " 설정 "); + print(fd," 잡담듣기 : %s\n", F_ISSET(ply_ptr, PNOBRD) ? "미설정" : " 설정 "); + print(fd," 환호듣기 : %s\n", F_ISSET(ply_ptr, PNOBR2) ? "미설정" : " 설정 "); + print(fd," 묘사보기 : %s\n", F_ISSET(ply_ptr, PDSCRP) ? " 설정 " : "미설정"); + print(fd," 소환 : %s\n", F_ISSET(ply_ptr, PNOSUM) ? " 불가 " : " 가능 "); + print(fd," ë�„ë§�수치 : "); if(F_ISSET(ply_ptr, PWIMPY)) print(fd, "%-6d\n", ply_ptr->WIMPYVALUE); - else print(fd, "¹Ì¼³Á¤\n"); - print(fd," Çà»ðÀÔ : %s\n", F_ISSET(ply_ptr, PNOCMP) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," »óÅ : %s\n", F_ISSET(ply_ptr, PPROMP) ? " Ãâ·Â " : "¹Ì¼³Á¤"); - print(fd," ¹ÝÇâ : %s\n", F_ISSET(ply_ptr, PLECHO) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," »ö : %s\n", F_ISSET(ply_ptr, PANSIC) ? " »ç¿ë " : "¹Ì»ç¿ë"); - print(fd," ¹àÀº»ö : %s\n", F_ISSET(ply_ptr, PBRIGH) ? " »ç¿ë " : "¹Ì»ç¿ë"); - print(fd," ¹æÀ̸§ : %s\n", F_ISSET(ply_ptr, PNORNM) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," ªÀº¼³¸í : %s\n", F_ISSET(ply_ptr, PNOSDS) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," ±ä¼³¸í : %s\n", F_ISSET(ply_ptr, PNOLDS) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," Ãⱸ : %s\n", F_ISSET(ply_ptr, PNOEXT) ? "±×·¡ÇÁ" : "ÅØ½ºÆ®"); - print(fd," ÆÐ°Å¸®±Íȯ: %s\n", F_ISSET(ply_ptr, PFRTUN) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); + else print(fd, "미설정\n"); + print(fd," 행삽입 : %s\n", F_ISSET(ply_ptr, PNOCMP) ? " 설정 " : "미설정"); + print(fd," ìƒ�태 : %s\n", F_ISSET(ply_ptr, PPROMP) ? " 출력 " : "미설정"); + print(fd," 반향 : %s\n", F_ISSET(ply_ptr, PLECHO) ? " 설정 " : "미설정"); + print(fd," 색 : %s\n", F_ISSET(ply_ptr, PANSIC) ? " 사용 " : "미사용"); + print(fd," ë°�ì�€ìƒ‰ : %s\n", F_ISSET(ply_ptr, PBRIGH) ? " 사용 " : "미사용"); + print(fd," ë°©ì�´ë¦„ : %s\n", F_ISSET(ply_ptr, PNORNM) ? "미설정" : " 출력 "); + print(fd," ì§§ì�€ì„¤ëª… : %s\n", F_ISSET(ply_ptr, PNOSDS) ? "미설정" : " 출력 "); + print(fd," 긴설명 : %s\n", F_ISSET(ply_ptr, PNOLDS) ? "미설정" : " 출력 "); + print(fd," 출구 : %s\n", F_ISSET(ply_ptr, PNOEXT) ? "그래프" : "í…�스트"); + print(fd," 패거리귀환: %s\n", F_ISSET(ply_ptr, PFRTUN) ? " 설정 " : "미설정"); /* - if(F_ISSET(ply_ptr, PNOAAT)) strcat(str, "¼öµ¿°ø°ÝÀ¸·Î ÀüȯÇÕ´Ï´Ù.\n"); - if(F_ISSET(ply_ptr, PHASTE)) strcat(str, "Ȱº¸¹ýÀ¸·Î ±â¸¦ ¿îÇàÇϰí ÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PPRAYD)) strcat(str, "½ÅÀÇ º¸È£¸¦ ¹Þ°íÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PPOWER)) strcat(str, "±â°øÀ¸·Î ÈûÀ» ¸ðÀ¸°í ÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PSLAYE)) strcat(str, "´ç½ÅÀÇ ¹«±â¿¡ »ì±â°¡ °¨µ½´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PMEDIT)) strcat(str, "´ç½ÅÀº Âü¼±À¸·Î »ç¹°À» ²ç¶Ô¾îº¾´Ï´Ù\n"); + if(F_ISSET(ply_ptr, PNOAAT)) strcat(str, "수ë�™ê³µê²©ìœ¼ë¡œ 전환합니다.\n"); + if(F_ISSET(ply_ptr, PHASTE)) strcat(str, "활보법으로 기를 운행하고 있습니다\n"); + if(F_ISSET(ply_ptr, PPRAYD)) strcat(str, "ì‹ ì�˜ 보호를 받고있습니다\n"); + if(F_ISSET(ply_ptr, PPOWER)) strcat(str, "기공으로 힘ì�„ 모으고 있습니다\n"); + if(F_ISSET(ply_ptr, PSLAYE)) strcat(str, "당신ì�˜ 무기ì—� 살기가 ê°�ë�•니다\n"); + if(F_ISSET(ply_ptr, PMEDIT)) strcat(str, "당신ì�€ 참선으로 사물ì�„ 꿰뚤어봅니다\n"); print(fd,"%s\n",str); */ - print(fd, "[¼³Á¤ µµ¿ò¸»]À̶ó°í Ä¡½Ã¸é ÀÚ¼¼ÇÑ ¼³Á¤»çÇ×À» º¼ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "[설정 ë�„움ë§�]ì�´ë�¼ê³  치시면 ìž�세한 설정사항ì�„ ë³¼ 수 있습니다.\n"); return(0); } /**********************************************************************/ @@ -923,20 +926,20 @@ cmd *cmnd; char *str; int flags; } setkeys[]={ - { "À̾߱âµè±â", PIGNOR }, - { "Àâ´ãµè±â", PNOBRD }, - { "ȯȣµè±â", PNOBR2 }, - { "¹¦»çº¸±â", PDSCRP }, - { "¼Òȯ", PNOSUM }, - { "Çà»ðÀÔ", PNOCMP }, - { "»óÅÂ", PPROMP }, - { "¹ÝÇâ", PLECHO }, - { "»ö", PANSIC }, - { "¹àÀº»ö", PBRIGH }, - { "¹æÀ̸§", PNORNM }, - { "ªÀº¼³¸í", PNOSDS }, - { "±ä¼³¸í", PNOLDS }, - { "Ãⱸ", PNOEXT }, + { "ì�´ì•¼ê¸°ë“£ê¸°", PIGNOR }, + { "잡담듣기", PNOBRD }, + { "환호듣기", PNOBR2 }, + { "묘사보기", PDSCRP }, + { "소환", PNOSUM }, + { "행삽입", PNOCMP }, + { "ìƒ�태", PPROMP }, + { "반향", PLECHO }, + { "색", PANSIC }, + { "ë°�ì�€ìƒ‰", PBRIGH }, + { "ë°©ì�´ë¦„", PNORNM }, + { "ì§§ì�€ì„¤ëª…", PNOSDS }, + { "긴설명", PNOLDS }, + { "출구", PNOEXT }, { NULL, -1 }, }; @@ -959,18 +962,18 @@ cmd *cmnd; i++; } - if(!strcmp(cmnd->str[1], "µµ¸Á¼öÄ¡")) { + if(!strcmp(cmnd->str[1], "ë�„ë§�수치")) { F_SET(ply_ptr, PWIMPY); ply_ptr->WIMPYVALUE = cmnd->val[1] == 1L ? 10 : cmnd->val[1]; ply_ptr->WIMPYVALUE = MAX(ply_ptr->WIMPYVALUE, 2); if(ply_ptr->WIMPYVALUE==0) F_CLR(ply_ptr,PWIMPY); } - else if(!strcmp(cmnd->str[1], "ÆÐ°Å¸®±Íȯ")) { + else if(!strcmp(cmnd->str[1], "패거리귀환")) { if(F_ISSET(ply_ptr, PFAMIL)) { F_SET(ply_ptr, PFRTUN); - print(fd, "ÆÐ°Å¸® Á¸À¸·Î ±ÍȯÀ» ÇÕ´Ï´Ù.\n"); + print(fd, "패거리 존으로 귀환ì�„ 합니다.\n"); } - else print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡ °¡ÀԵǾî ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + else print(fd, "당신ì�€ 패거리ì—� 가입ë�˜ì–´ 있지 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "hexline")) { F_SET(ply_ptr, PHEXLN); @@ -984,9 +987,9 @@ cmd *cmnd; F_SET(ply_ptr, PROBOT); print(fd, "Robot mode on.\n"); } - else if(!strcmp(cmnd->str[1], "¼öµ¿°ø°Ý")) { + else if(!strcmp(cmnd->str[1], "수ë�™ê³µê²©")) { F_SET(ply_ptr, PNOAAT); - print(fd, "¼öµ¿À¸·Î °ø°ÝÇÕ´Ï´Ù.\n"); + print(fd, "수ë�™ìœ¼ë¡œ 공격합니다.\n"); } flag_list(ply_ptr,cmnd); @@ -1011,80 +1014,80 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num == 1) { - print(fd, "[ÇØÁ¦ µµ¿ò¸»]À̶ó°í Ä¡½Ã¸é ¸ðµç ¼³Á¤»çÇ×µéÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "[í•´ì œ ë�„움ë§�]ì�´ë�¼ê³  치시면 모든 설정사항들ì�„ ë³¼ 수 있습니다.\n"); return(0); } - if(!strcmp(cmnd->str[1], "Àâ´ãµè±â°ÅºÎ")) { + if(!strcmp(cmnd->str[1], "잡담듣기거부")) { F_CLR(ply_ptr, PNOBRD); - print(fd, "ÀÌÁ¦ºÎÅÍ Àâ´ãÀ» µè½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 잡담ì�„ 듣습니다.\n"); } - else if(!strcmp(cmnd->str[1], "Çà»ðÀÔ")) { /* compact */ + else if(!strcmp(cmnd->str[1], "행삽입")) { /* compact */ F_CLR(ply_ptr, PNOCMP); - print(fd, "ÀÌÁ¦ºÎÅÍ ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÒ¶§ ÇÑÇàÀ» »ðÀÔÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 메세지를 출력할때 한행ì�„ 삽입하지 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹ÝÇâ")) { + else if(!strcmp(cmnd->str[1], "반향")) { F_CLR(ply_ptr, PLECHO); - print(fd, "´ç½ÅÀÇ ¸Þ¼¼Áö°¡ ¹ÝÇâµÇÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�˜ 메세지가 반향ë�˜ì§€ 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹æÀ̸§")) { + else if(!strcmp(cmnd->str[1], "ë°©ì�´ë¦„")) { F_SET(ply_ptr, PNORNM); - print(fd, "ÀÌÁ¦ºÎÅÍ ¹æÀ̸§À» Ãâ·ÂÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ë°©ì�´ë¦„ì�„ 출력하지 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "°£´Ü")) { + else if(!strcmp(cmnd->str[1], "간단")) { F_SET(ply_ptr, PNOSDS); - print(fd, "¹æÀÇ °£´ÜÇÑ ¼³¸íÀ» º¸Áö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ë°©ì�˜ 간단한 설명ì�„ ë³´ì§€ 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "ÀϹÝ")) { + else if(!strcmp(cmnd->str[1], "ì�¼ë°˜")) { F_SET(ply_ptr, PNOLDS); - print(fd, "¹æÀÇ ÀÚ¼¼ÇÑ ¼³¸íÀ» º¸Áö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ë°©ì�˜ ìž�세한 설명ì�„ ë³´ì§€ 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "hexline")) { F_CLR(ply_ptr, PHEXLN); print(fd, "Hex line disabled.\n"); } - else if(!strcmp(cmnd->str[1], "µµ¸Á¼öÄ¡")) { + else if(!strcmp(cmnd->str[1], "ë�„ë§�수치")) { F_CLR(ply_ptr, PWIMPY); - print(fd, "µµ¸Á¼öÄ¡ ¼³Á¤ÀÌ ÇØÁ¦µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "ë�„ë§�수치 설정ì�´ í•´ì œë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); } else if(!strcmp(cmnd->str[1], "eavesdropper")) { F_CLR(ply_ptr, PEAVES); print(fd, "Eavesdropper mode disabled.\n"); } - else if(!strcmp(cmnd->str[1], "»óÅÂ")) { + else if(!strcmp(cmnd->str[1], "ìƒ�태")) { F_CLR(ply_ptr, PPROMP); - print(fd, "´ç½ÅÀÇ »óŸ¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�˜ ìƒ�태를 보여주지 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "~robot~")) { F_CLR(ply_ptr, PROBOT); print(fd, "Robot mode off.\n"); } - else if(!strcmp(cmnd->str[1], "»ö")) { + else if(!strcmp(cmnd->str[1], "색")) { F_CLR(ply_ptr, PANSIC); - print(fd, "ÀÌÁ¦ºÎÅÍ ¸Þ¼¼Áö°¡ ¸ðµÎ Èæ¹éÀ¸·Î Ãâ·ÂµË´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 메세지가 모ë‘� í�‘백으로 출력ë�©ë‹ˆë‹¤.\n"); } - else if(!strcmp(cmnd->str[1], "¼Òȯ°ÅºÎ")) { + else if(!strcmp(cmnd->str[1], "소환거부")) { F_CLR(ply_ptr, PNOSUM); - print(fd, "ÀÌÁ¦ºÎÅÍ ´Ù¸¥»ç¶÷ÀÌ ´ç½ÅÀ» ¼ÒȯÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 다른사람ì�´ 당신ì�„ 소환할 수 있습니다.\n"); } - else if(!strcmp(cmnd->str[1], "À̾߱âµè±â°ÅºÎ")) { + else if(!strcmp(cmnd->str[1], "ì�´ì•¼ê¸°ë“£ê¸°ê±°ë¶€")) { F_CLR(ply_ptr, PIGNOR); - print(fd, "ÀÌÁ¦ºÎÅÍ °³ÀÎÀûÀÎ À̾߱⸦ µè½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ê°œì�¸ì �ì�¸ ì�´ì•¼ê¸°ë¥¼ 듣습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¼öµ¿°ø°Ý")) { + else if(!strcmp(cmnd->str[1], "수ë�™ê³µê²©")) { F_CLR(ply_ptr, PNOAAT); - print(fd, "ÀÌÁ¦ºÎÅÍ ÀÚµ¿À¸·Î °ø°ÝÇÕ´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ìž�ë�™ìœ¼ë¡œ 공격합니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹àÀº»ö")) { + else if(!strcmp(cmnd->str[1], "ë°�ì�€ìƒ‰")) { F_CLR(ply_ptr,PBRIGH); - print(fd,"¾îµÎ¿î »öÀ¸·Î Ãâ·ÂÇÕ´Ï´Ù.\n"); + print(fd,"ì–´ë‘�ìš´ 색으로 출력합니다.\n"); } - else if(!strcmp(cmnd->str[1], "ÆÐ°Å¸®±Íȯ")) { + else if(!strcmp(cmnd->str[1], "패거리귀환")) { F_CLR(ply_ptr, PFRTUN); - print(fd,"±¤ÀåÀ¸·Î ±ÍȯÇÕ´Ï´Ù.\n"); + print(fd,"광장으로 귀환합니다.\n"); } else - print(fd, "À߸ø ÁöÁ¤µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "잘못 지정ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(0); @@ -1118,4 +1121,3 @@ cmd *cmnd; update_ply(ply_ptr); return(DISCONNECT); } - diff --git a/src/command1.c b/src/command1.c index 5634779b..58bcb746 100644 --- a/src/command1.c +++ b/src/command1.c @@ -10,6 +10,7 @@ #include "kstbl.h" #include "mstruct.h" #include "mextern.h" +#include "player_path.h" #include "resource_path.h" #include @@ -49,7 +50,7 @@ unsigned char *str; char tmp[256]; char file[80]; struct tm *login_tt; - char *wday[7]={"ÀÏ","¿ù","È­","¼ö","¸ñ","±Ý","Åä",}; + char *wday[7]={"ì�¼","ì›”","í™”","수","목","금","토",}; switch(param) { case -1: str[0]=0; @@ -60,36 +61,53 @@ char file[80]; return; */ RETURN(fd, login, 1); } - print(fd, "\n´ç½ÅÀÇ À̸§Àº ¹«¾ùÀԴϱî? "); + print(fd, "\n당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); RETURN(fd, login, 1); case 1: - if(strlen(str)==0) { - print(fd, "À̸§Àº ÇÑ ÀÚ ÀÌ»óÀ̾î¾ß ÇÕ´Ï´Ù.\n"); - print(fd, "\n´ç½ÅÀÇ À̸§Àº ¹«¾ùÀԴϱî? "); + unsigned long name_len; + unsigned long name_bytes; + + if(!utf8_validate((unsigned char *)str, (unsigned long)strlen(str))) { + print(fd, "ì�´ë¦„ì�´ UTF-8 형ì‹�ì�´ 아닙니다.\n"); + print(fd, "\n당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); + RETURN(fd, login, 1); + } + + name_len = utf8_codepoint_len((unsigned char *)str); + name_bytes = (unsigned long)strlen((char *)str); + if(name_len == 0) { + print(fd, "ì�´ë¦„ì�€ 한 ìž� ì�´ìƒ�ì�´ì–´ì•¼ 합니다.\n"); + print(fd, "\n당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); RETURN(fd, login, 1); } - if(strlen(str) > 12) { - print(fd, "À̸§ÀÌ ³Ê¹« ±é´Ï´Ù.\n\n"); - print(fd, "´ç½ÅÀÇ À̸§Àº ¹«¾ùÀԴϱî? "); + if(name_len > PLAYER_NAME_MAX_CODEPOINTS) { + print(fd, "ì�´ë¦„ì�´ 너무 ê¹�니다.\n\n"); + print(fd, "당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); RETURN(fd, login, 1); } - if(!ishan(str)) { - print(fd, "À̸§Àº Çѱ۷ΠÀûÀ¸¼Å¾ß ÇÕ´Ï´Ù.\n\n"); - print(fd, "´ç½ÅÀÇ À̸§Àº ¹«¾ùÀԴϱî? "); + if(name_bytes > PLAYER_NAME_MAX_BYTES) { + print(fd, "ì�´ë¦„ì�€ 최대 %ldë°”ì�´íŠ¸ê¹Œì§€ 가능합니다.\n\n", (long)PLAYER_NAME_MAX_BYTES); + print(fd, "당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); + RETURN(fd, login, 1); + } + + if(!player_name_is_valid((unsigned char *)str, PLAYER_NAME_MIN_CODEPOINTS, PLAYER_NAME_MAX_CODEPOINTS)) { + print(fd, "ì�´ë¦„ì—� 사용할 수 없는 문ìž�ê°€ 있습니다.\n\n"); + print(fd, "당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); RETURN(fd, login, 1); } lowercize(str, 1); - str[25]=0; - sprintf(tmp,"%s/%s/%s",PLAYERPATH,first_han(str),str); - last_login[fd]=0; - if (!rp_stat(tmp,&f_stat)) last_login[fd]=f_stat.st_ctime; + last_login[fd]=0; + if(player_path_from_name((char *)str, tmp, sizeof(tmp)) == 0) { + if (!rp_stat(tmp,&f_stat)) last_login[fd]=f_stat.st_ctime; + } if(load_ply(str, &ply_ptr) < 0) { strcpy(Ply[fd].extr->tempstr[0], str); - print(fd, "\n%S%j ÇϽðڽÀ´Ï±î(¿¹/¾Æ´Ï¿À)? ", str,"4"); + print(fd, "\n%S%j 하시겠습니까(예/아니오)? ", str,"4"); RETURN(fd, login, 2); } @@ -98,9 +116,9 @@ char file[80]; Ply[fd].ply = ply_ptr; if(strcmp(str , Ply[fd].ply->name)) { - scwrite(fd, "\nµ¥ÀÌŸ°¡ ¼Õ»óµÇ¾ú½À´Ï´Ù.\n",25); + scwrite(fd, "\në�°ì�´íƒ€ê°€ ì†�ìƒ�ë�˜ì—ˆìŠµë‹ˆë‹¤.\n",25); if(str[0]==0 || pass_num[fd]>=3) - scwrite(fd,"Á¢¼ÓÀ» ²÷½À´Ï´Ù.",18); + scwrite(fd,"ì ‘ì†�ì�„ ë�ŠìŠµë‹ˆë‹¤.",18); disconnect(fd); return; } @@ -108,53 +126,54 @@ char file[80]; /* uninit_ply(ply_ptr); */ - scwrite(fd, "\nÀÚ»ì ½ÅûÇÑ ¾ÆÀ̵ðÀÔ´Ï´Ù.\n", 18); + scwrite(fd, "\nìž�ì‚´ 신청한 ì•„ì�´ë””입니다.\n", 18); disconnect(fd); return; } if(checkdouble(ply_ptr->name)) { - scwrite(fd, "ÀÌ»óÇϱº¿ä.. -_-;.\n", 25); + scwrite(fd, "ì�´ìƒ�하군요.. -_-;.\n", 25); disconnect(fd); return; } - print(fd, "¾ÏÈ£¸¦ ³Ö¾î Áֽʽÿä: "); + print(fd, "암호를 넣어 주십시요: "); print(fd,"%c%c%c", 255,251,1); RETURN(fd, login, 3); } case 2: - if(strcmp(str,"¿¹") && str[0]!='y' && str[0]!='Y') { + if(strcmp(str,"예") && str[0]!='y' && str[0]!='Y') { Ply[fd].extr->tempstr[0][0] = 0; - print(fd, "´ç½ÅÀÇ À̸§Àº ¹«¾ùÀԴϱî? "); + print(fd, "당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); RETURN(fd, login, 1); } else { - print(fd, "\n[¿£ÅÍ]¸¦ ´©¸£½Ê½Ã¿ä."); + print(fd, "\n[엔터]를 누르십시요."); RETURN(fd, create_ply, 1); } case 3: check_item(Ply[fd].ply); if(strcmp(str, Ply[fd].ply->password)) { - scwrite(fd, "\n¾ÏÈ£°¡ Ʋ¸³´Ï´Ù. ", 18); + scwrite(fd, "\n암호가 틀립니다. ", 18); pass_num[fd]++; if(str[0]==0 || pass_num[fd] >= 3) { t = time(0); strcpy(str3, (char *)ctime(&t)); str3[strlen(str3)-1] = 0; log_fl(str3, Ply[fd].ply->name); - scwrite(fd,"Á¢¼ÓÀ» ²÷½À´Ï´Ù.\n\n",18); + scwrite(fd,"ì ‘ì†�ì�„ ë�ŠìŠµë‹ˆë‹¤.\n\n",18); disconnect(fd); return; } else { - print(fd,"´Ù½Ã ÀÔ·ÂÇϽʽÿä.\n¾ÏÈ£¸¦ ´Ù½Ã ÀÔ·ÂÇϼ¼¿ä: "); + print(fd,"다시 입력하십시요.\n암호를 다시 입력하세요: "); RETURN(fd, login, 3); } } else { print(fd, "%c%c%c\n",255,252,1); - strcpy(tempstr, Ply[fd].ply->name); + strncpy((char *)tempstr, Ply[fd].ply->name, sizeof(tempstr)-1); + tempstr[sizeof(tempstr)-1] = 0; for(i=0; iname, @@ -167,7 +186,7 @@ char file[80]; t = time(0); strcpy(str2, (char *)ctime(&t)); str2[strlen(str2)-1] = 0; - logn("sui_crash","%s: %s (%s) ´Â ÀÚ»ìÇÏ¿´½À´Ï´Ù.\n", + logn("sui_crash","%s: %s (%s) 는 ìž�살하였습니다.\n", str2, Ply[fd].ply->name, Ply[fd].io->address); disconnect(fd); return; @@ -175,13 +194,23 @@ char file[80]; Ply[fd].ply->fd = fd; - init_ply(Ply[fd].ply); - init_alias(Ply[fd].ply); + if(init_ply(Ply[fd].ply) < 0) { + scwrite(fd, "\n서버 초기화 중 오류가 ë°œìƒ�했습니다.\n", + (int)strlen("\n서버 초기화 중 오류가 ë°œìƒ�했습니다.\n")); + if(Ply[fd].ply) { + free_crt(Ply[fd].ply); + Ply[fd].ply = 0; + } + pass_num[fd] = 0; + print(fd, "\n당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); + RETURN(fd, login, 1); + } + init_alias(Ply[fd].ply); if(last_login[fd]) { login_tt=localtime(&last_login[fd]); - print(fd,"\n¸¶Áö¸· Á¢¼Ó½Ã°£: %d¿ù %dÀÏ(%s) %d½Ã %dºÐÀÔ´Ï´Ù.\n", + print(fd,"\n마지막 ì ‘ì†�시간: %dì›” %dì�¼(%s) %d시 %d분입니다.\n", login_tt->tm_mon+1, login_tt->tm_mday, wday[login_tt->tm_wday], login_tt->tm_hour, login_tt->tm_min); } @@ -214,19 +243,19 @@ char *str; zero(Ply[fd].ply, sizeof(creature)); Ply[fd].ply->fd = -1; Ply[fd].ply->rom_num = 1; - print(fd, "´ç½ÅÀº ³²ÀÚÀԴϱî, ¿©ÀÚÀԴϱî(³²ÀÚ/¿©ÀÚ)? "); + print(fd, "당신ì�€ 남ìž�입니까, ì—¬ìž�입니까(남ìž�/ì—¬ìž�)? "); RETURN(fd, create_ply, 2); case 2: - if(strncmp(str,"³²", 2) && strncmp(str,"¿©",2)) { - print(fd, "ÀÔ·ÂÀÌ À߸øµÇ¾ú½À´Ï´Ù.\n\n´ç½ÅÀº ³²ÀÚÀԴϱî, ¿©ÀÚÀԴϱî(³²ÀÚ/¿©ÀÚ)? "); + if(strncmp(str,"남", 2) && strncmp(str,"ì—¬",2)) { + print(fd, "ìž…ë ¥ì�´ 잘못ë�˜ì—ˆìŠµë‹ˆë‹¤.\n\n당신ì�€ 남ìž�입니까, ì—¬ìž�입니까(남ìž�/ì—¬ìž�)? "); RETURN(fd, create_ply, 2); } - if(!strncmp(str,"³²",2)) + if(!strncmp(str,"남",2)) F_SET(Ply[fd].ply, PMALES); - print(fd, "\n´ÙÀ½°ú °°Àº Á÷¾÷ÀÌ ÀÖ½À´Ï´Ù.\n"); - print(fd, "1.ÀÚ °´ 2.±Ç¹ý°¡ 3.ºÒÁ¦ÀÚ 4.°Ë »ç\n"); - print(fd, "5.µµ¼ú»ç 6.¹« »ç 7.Æ÷ Á¹ 8.µµ µÏ\n"); - print(fd, "Á÷¾÷À» °í¸£¼¼¿ä: "); + print(fd, "\n다ì�Œê³¼ ê°™ì�€ ì§�ì—…ì�´ 있습니다.\n"); + print(fd, "1.ìž� ê°� 2.권법가 3.불제ìž� 4.ê²€ 사\n"); + print(fd, "5.ë�„술사 6.무 사 7.í�¬ 졸 8.ë�„ ë‘‘\n"); + print(fd, "ì§�ì—…ì�„ 고르세요: "); RETURN(fd, create_ply, 3); case 3: switch(low(str[0])) { @@ -238,12 +267,12 @@ char *str; case '6': Ply[fd].ply->class = PALADIN; break; case '7': Ply[fd].ply->class = RANGER; break; case '8': Ply[fd].ply->class = THIEF; break; - default: print(fd, "Á÷¾÷À» °í¸£¼¼¿ä: "); + default: print(fd, "ì§�ì—…ì�„ 고르세요: "); RETURN(fd, create_ply, 3); } - print(fd, "\n´ç½ÅÀº 54Á¡À¸·Î ´ÙÀ½ 5°¡Áö ´É·ÂÄ¡¸¦ ±¸¼ºÇÒ¼ö ÀÖ½À´Ï´Ù.\n\ -3ÀÌ»ó 18ÀÌÇÏÀÇ ¼öÄ¡·Î ## ## ## ## ##ÀÇ Çü½ÄÀ¸·Î 5°¡Áö ´É·ÂÄ¡¸¦ Àû¾îÁֽʽÿä.\n\ -´É·Â: Èû ¹Îø ¸ËÁý Áö½Ä ½Å¾Ó½É\n¿¹: 12 10 12 10 10\n\n"); + print(fd, "\n당신ì�€ 54ì �으로 다ì�Œ 5가지 능력치를 구성할수 있습니다.\n\ +3ì�´ìƒ� 18ì�´í•˜ì�˜ 수치로 ## ## ## ## ##ì�˜ 형ì‹�으로 5가지 능력치를 ì �어주십시요.\n\ +능력: 힘 민첩 ë§·ì§‘ ì§€ì‹� 신앙심\n예: 12 10 12 10 10\n\n"); /* Strength, Dexterity, Constitution, Intelligence, Piety. */ print(fd, ": "); @@ -259,21 +288,21 @@ char *str; if(k>4) break; } if(k<5) { - print(fd, "5°¡Áö ´É·ÂÄ¡ ¸ðµÎ¸¦ À§ÀÇ Çü½Ä´ë·Î Àû¾î Áֽʽÿä.\n"); + print(fd, "5가지 능력치 모ë‘�를 위ì�˜ 형ì‹�대로 ì �ì–´ 주십시요.\n"); print(fd, ": "); RETURN(fd, create_ply, 4); } sum = 0; for(i=0; i<5; i++) { if(num[i] < 3 || num[i] > 18) { - print(fd, "°¢ ´É·ÂÄ¡´Â 3ÀÌ»ó 18ÀÌÇÏ·Î ¼³Á¤ÇØ¾ß ÇÕ´Ï´Ù.\n"); + print(fd, "ê°� 능력치는 3ì�´ìƒ� 18ì�´í•˜ë¡œ 설정해야 합니다.\n"); print(fd, ": "); RETURN(fd, create_ply, 4); } sum += num[i]; } if(sum > 54) { - print(fd, "°¢ ´É·ÂÄ¡ÀÇ ÇÕÀÌ 54Á¡À» ÃʰúÇÒ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ê°� 능력치ì�˜ í•©ì�´ 54ì �ì�„ 초과할수 없습니다.\n"); print(fd, ": "); RETURN(fd, create_ply, 4); } @@ -282,8 +311,8 @@ char *str; Ply[fd].ply->constitution = num[2]; Ply[fd].ply->intelligence = num[3]; Ply[fd].ply->piety = num[4]; - print(fd, "\n´ç½Å¿¡°Ô Àͼ÷ÇÑ ¹«±â¸¦ °í¸£½Ê½Ã¿ä.\n"); - print(fd, "1.µµ 2.°Ë 3.ºÀ 4.â 5.±Ã.\n"); + print(fd, "\n당신ì—�게 ì�µìˆ™í•œ 무기를 고르십시요.\n"); + print(fd, "1.ë�„ 2.ê²€ 3.ë´‰ 4.ì°½ 5.ê¶�.\n"); print(fd, ": "); RETURN(fd, create_ply, 5); case 5: @@ -293,28 +322,28 @@ char *str; case '3': Ply[fd].ply->proficiency[2]=1024; break; case '4': Ply[fd].ply->proficiency[3]=1024; break; case '5': Ply[fd].ply->proficiency[4]=1024; break; - default: print(fd, "´Ù½Ã °í¸£¼¼¿ä.\n: "); + default: print(fd, "다시 고르세요.\n: "); RETURN(fd, create_ply, 5); } - print(fd, "\n¼±ÇÑ ±¸¼º¿øÀº ´Ù¸¥»ç¶÷À» °ø°ÝÇÏÁö ¸øÇÏ°í °ø°Ý ¹ÞÀ»¼öµµ ¾øÀ¸¸ç"); - print(fd, "\n±× ±¸¼º¿ø¿¡°Ô¼­ ¹°°ÇÀ» ÈÉÄ¥¼öµµ ¾ø½À´Ï´Ù."); - print(fd, "\n±×·¯³ª ¾ÇÇÑ ±¸¼º¿øÀº °ø°ÝÇÒ¼öµµ ÀÖ°í ¹°°ÇÀ» ÈÉÄ¥¼öµµ ÀÖÀ¸¸ç"); - print(fd, "\n´Ù¸¥ ¾ÇÇÑ ±¸¼º¿øµé¿¡°Ô °ø°ÝÀ» ¹ÞÀ» ¼öµµ ÀÖ½À´Ï´Ù.\n"); - print(fd, "\n¼ºÇâÀ» °í¸£½Ê½Ã¿ä(¼±ÇÔ/¾ÇÇÔ): "); + print(fd, "\n선한 구성ì›�ì�€ 다른사람ì�„ 공격하지 못하고 공격 ë°›ì�„수ë�„ 없으며"); + print(fd, "\nê·¸ 구성ì›�ì—�게서 물건ì�„ 훔칠수ë�„ 없습니다."); + print(fd, "\n그러나 악한 구성ì›�ì�€ 공격할수ë�„ 있고 물건ì�„ 훔칠수ë�„ 있으며"); + print(fd, "\n다른 악한 구성ì›�들ì—�게 공격ì�„ ë°›ì�„ 수ë�„ 있습니다.\n"); + print(fd, "\n성향ì�„ 고르십시요(선함/악함): "); RETURN(fd, create_ply, 6); case 6: - if(!strncmp(str,"¾Ç",2)) + if(!strncmp(str,"ì•…",2)) F_SET(Ply[fd].ply, PCHAOS); - else if(!strncmp(str,"¼±",2)) + else if(!strncmp(str,"ì„ ",2)) F_CLR(Ply[fd].ply, PCHAOS); else { - print(fd, "¼ºÇâÀ» °í¸£½Ê½Ã¿ä(¼±ÇÔ/¾ÇÇÔ): "); + print(fd, "성향ì�„ 고르십시요(선함/악함): "); RETURN(fd, create_ply, 6); } - print(fd, "\n´ÙÀ½°ú °°Àº Á¾Á·µéÀÌ ÀÖ½À´Ï´Ù."); - print(fd, "\n1.³­ÀåÀÌÁ· 2.¿ë ½Å Á· 3.¶¥±Í½ÅÁ· 4.¿ä ±« Á·"); - print(fd, "\n5.°Å ÀÎ Á· 6.Åä ½Å Á· 7.ÀÎ °£ Á· 8.µµ±úºñÁ·"); - print(fd, "\nÁ¾Á·À» °í¸£½Ê½Ã¿ä: "); + print(fd, "\n다ì�Œê³¼ ê°™ì�€ 종족들ì�´ 있습니다."); + print(fd, "\n1.난장ì�´ì¡± 2.ìš© ì‹  족 3.땅귀신족 4.ìš” ê´´ 족"); + print(fd, "\n5.ê±° ì�¸ 족 6.토 ì‹  족 7.ì�¸ ê°„ 족 8.ë�„깨비족"); + print(fd, "\n종족ì�„ 고르십시요: "); RETURN(fd, create_ply, 7); case 7: switch(low(str[0])) { @@ -328,7 +357,7 @@ char *str; case '7': Ply[fd].ply->race = HUMAN; break; } if(!Ply[fd].ply->race) { - print(fd, "\nÁ¾Á·À» °í¸£½Ê½Ã¿ä: "); + print(fd, "\n종족ì�„ 고르십시요: "); RETURN(fd, create_ply, 7); } @@ -370,32 +399,43 @@ char *str; break; } - print(fd, "\n»õ ¾ÏÈ£¸¦ ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 14ÀÚÀÌÇÏ): "); + print(fd, "\n새 암호를 넣으십시요(3ìž�ì�´ìƒ� 14ìž�ì�´í•˜): "); print(fd,"%c%c%c",255,251,1); RETURN(fd, create_ply, 8); case 8: if(strlen(str) > 14) { - print(fd, "ÀÔ·ÂµÈ ¾ÏÈ£°¡ ³Ê¹« ±é´Ï´Ù.\n¾ÏÈ£¸¦ ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 14ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ 암호가 너무 ê¹�니다.\n암호를 다시 넣으십시요(3ìž�ì�´ìƒ� 14ìž�ì�´í•˜): "); RETURN(fd, create_ply, 8); } if(strlen(str) < 3) { - print(fd, "ÀÔ·ÂµÈ ¾ÏÈ£°¡ ³Ê¹« ª½À´Ï´Ù.\n¾ÏÈ£¸¦ ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 14ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ 암호가 너무 짧습니다.\n암호를 다시 넣으십시요(3ìž�ì�´ìƒ� 14ìž�ì�´í•˜): "); RETURN(fd, create_ply, 8); } - strncpy(Ply[fd].ply->password, str, 14); + strncpy(Ply[fd].ply->password, str, sizeof(Ply[fd].ply->password) - 1); + Ply[fd].ply->password[sizeof(Ply[fd].ply->password) - 1] = 0; strcpy(Ply[fd].ply->name, Ply[fd].extr->tempstr[0]); up_level(Ply[fd].ply); Ply[fd].ply->fd = fd; - init_ply(Ply[fd].ply); - init_alias(Ply[fd].ply); + if(init_ply(Ply[fd].ply) < 0) { + scwrite(fd, "\n서버 초기화 중 오류가 ë°œìƒ�했습니다.\n", + (int)strlen("\n서버 초기화 중 오류가 ë°œìƒ�했습니다.\n")); + if(Ply[fd].ply) { + free_crt(Ply[fd].ply); + Ply[fd].ply = 0; + } + pass_num[fd] = 0; + print(fd, "\n당신ì�˜ ì�´ë¦„ì�€ 무엇입니까? "); + RETURN(fd, login, 1); + } + init_alias(Ply[fd].ply); F_SET(Ply[fd].ply,PLECHO); F_SET(Ply[fd].ply,PPROMP); Ply[fd].ply->gold = 500; save_ply(Ply[fd].ply->name, Ply[fd].ply); print(fd, "%c%c%c\n",255,252,1); - print(fd, "[ȯ¿µ]À̶ó°í Ä¡½Ã¸é Ãʺ¸ÀÚ ºÐµé¿¡°Ô µµ¿òÀÌ µÇ´Â ¸¹Àº Á¤º¸¸¦ ¾òÀ»¼ö ÀÖ½À´Ï´Ù.\n"); - print(fd, "·¹º§ 5 °¡ µÇÁö ¾ÊÀ¸¸é ¾ÆÀ̵𰡠»èÁ¦µÉ ¼öµµ ÀÖ½À´Ï´Ù.\n"); + print(fd, "[환ì˜�]ì�´ë�¼ê³  치시면 초보ìž� 분들ì—�게 ë�„움ì�´ ë�˜ëŠ” ë§Žì�€ 정보를 ì–»ì�„수 있습니다.\n"); + print(fd, "레벨 5 ê°€ ë�˜ì§€ 않으면 ì•„ì�´ë””ê°€ ì‚­ì œë�  수ë�„ 있습니다.\n"); RETURN(fd, command, 1); } @@ -458,8 +498,8 @@ logn("all_cmd","\n%s-%d (%d): %s\n",Ply[fd].ply->name,fd,Ply[fd].ply->rom_num,st lowercize(str, 0); parse(str, &cmnd); n = 0; - /* ÆÄ¼­ ºÐ¼® ½ÃÇè¿ë.. */ -/* print(fd,"ÆÄ¼­ ºÐ¼®....\n"); + /* 파서 ë¶„ì„� 시험용.. */ +/* print(fd,"파서 ë¶„ì„�....\n"); for(i=0;iname,fd,Ply[fd].ply->rom_num,st n = PROMPT; if(n == DISCONNECT) { - scwrite(fd, "¾È³çÈ÷ °¡½Ê½Ã¿ä!\n\n\n", 19); + scwrite(fd, "안녕히 가십시요!\n\n\n", 19); disconnect(fd); return; } else if(n == PROMPT) { if(F_ISSET(Ply[fd].ply, PPROMP)) - sprintf(str, "(%d ü·Â %d µµ·Â): ", + sprintf(str, "(%d ì²´ë ¥ %d ë�„ë ¥): ", Ply[fd].ply->hpcur, Ply[fd].ply->mpcur); else strcpy(str, ": "); @@ -512,7 +552,7 @@ cmd *cmnd; /* include for processing hangul command */ if(j!=0) if(str[j-1]==' ' || str[j-1]=='.' || str[j-1]=='!' || str[j-1]=='?') { - strncpy(cmnd->str[n++],"¸»",20); + strncpy(cmnd->str[n++],"ë§�",20); cmnd->val[m] = 1L; } else { @@ -609,13 +649,13 @@ cmd *cmnd; if(match == 0 || (cmnd->str[0][0]=='*' && (Ply[fd].ply->classclass!=ZONEMAKER))) { - print(fd, "\"%s\": ÀÌ·± ¸í·É¾î´Â ¾ø³×¿ä.", + print(fd, "\"%s\": ì�´ëŸ° 명령어는 없네요.", cmnd->str[0]); Ply[fd].io->fn = command; Ply[fd].io->fnparam = 1; return(0); } -/* °¡Àå ºñ½ÁÇÑ ¸í·É¾î¸¦ ¾²±â À§ÇØ ¼öÁ¤.. ¿©·¯ ³¹¸»ÀÌ ³ª¿Ã°æ¿ì ¿¡·¯Ã³¸®=>»ç¿ë +/* 가장 비슷한 명령어를 쓰기 위해 수정.. 여러 낱ë§�ì�´ 나올경우 ì—�러처리=>사용 else if(match > 1) { - print(fd, "¸í·ÉÀ» Àß ¸ð¸£°Ú³×¿ä."); + print(fd, "명령ì�„ 잘 모르겠네요."); RETURN(fd, command, 1); } */ @@ -690,39 +730,70 @@ char *str; int index; int ishan(str) unsigned char *str; { - int i; - for(i=0;i 0xD7A3UL) + return 0; + i += c; } + return 1; } int is_hangul(str) unsigned char *str; /* one character */ { - /* ¼ø¼öÇÑ ÇѱÛÀÎÁö °Ë»ç */ - if(str[0]>=0xb0 && str[0]<=0xc8 && str[1]>=0xa1 && str[1]<=0xfe) return 1; - return 0; + unsigned long c, cp, n; + + if(!str) + return 0; + + n = (unsigned long)strlen((char *)str); + if(!utf8_next_codepoint(str, n, &c, &cp)) + return 0; + if(cp < 0xAC00UL || cp > 0xD7A3UL) + return 0; + + return 1; } int under_han(str) unsigned char *str; { - unsigned char high,low; - int len; + unsigned char tmp[512]; + unsigned long len; + char *p; - len=strlen(str); - if(len<2) return 0; - if(str[len-1]==')') while(str[len]!='(') len--; + if(!str) + return 0; - high=str[len-2]; - low=str[len-1]; + len = (unsigned long)strlen((char *)str); + if(len == 0) + return 0; + if(len >= sizeof(tmp)) + len = sizeof(tmp) - 1; - if(!is_hangul(&str[len-2])) return 0; + memcpy(tmp, str, len); + tmp[len] = 0; - high=KStbl[(high-0xb0)*94+low-0xa1] & 0x1f; - if(high<2 || high>28) return 0; - return 1; + if(len > 0 && tmp[len - 1] == ')') { + p = strrchr((char *)tmp, '('); + if(p) + *p = 0; + } + + return utf8_has_jongseong_last(tmp); } @@ -733,15 +804,15 @@ unsigned char *str; int len,i; char *p = "temp"; static unsigned char *exam[]={ - "°¡", "°¡", "³ª", "´Ù", "´Ù", - "¶ó", "¸¶", "¹Ù", "¹Ù", "»ç", - "»ç", "¾Æ", "ÀÚ", "ÀÚ", "Â÷", - "Ä«", "Ÿ", "ÆÄ", "ÇÏ", "" }; + "ê°€", "ê°€", "나", "다", "다", + "ë�¼", "마", "ë°”", "ë°”", "사", + "사", "ì•„", "ìž�", "ìž�", "ì°¨", + "ì¹´", "타", "파", "하", "" }; static unsigned char *johab_exam[]={ - "ˆa", "Œa", "�a", "”a", "˜a", - "œa", " a", "¤a", "¨a", "¬a", - "°a", "´a", "¸a", "¼a", "Àa", - "Äa", "?a", "?a", "?a", "" }; + "ëŠ�", "똞", "륾", "ë´ž", "ì��", + "ì�¿", "쟞", "쨅", "쮉", "ì´¡", + "캻", "í�‘", "퇫", "펈", "픞", + "í›�", "?a", "?a", "?a", "" }; len=strlen(str); if(len<2) return p; @@ -780,12 +851,12 @@ cmd *cmnd; fd=ply_ptr->fd; if(ply_is_attacking(ply_ptr,cmnd)) { - print(fd,"´ç½ÅÀº ½Î¿ì°í ÀÖ´Â ÁßÀÔ´Ï´Ù!!"); + print(fd,"당신ì�€ 싸우고 있는 중입니다!!"); return 0; } if(rom_ply->rom_num==1001) { - print(fd,"´ç½ÅÀº ÀÌ¹Ì ±¤Àå¿¡ ¿Í ÀÖ½À´Ï´Ù!"); + print(fd,"당신ì�€ ì�´ë¯¸ 광장ì—� 와 있습니다!"); return 0; } @@ -796,12 +867,12 @@ cmd *cmnd; cp = ply_ptr->first_fol; } if(cp){ - print(fd,"¸ÕÀú ±×·ì¿¡¼­ ³ª¿À¼¼¿ä."); + print(fd,"먼저 그룹ì—�서 나오세요."); return(0); } if(ply_ptr->level>20 && ply_ptr->classmpcur = 0; /* ply_ptr->experience -= (ply_ptr->experience)/100000; @@ -809,8 +880,8 @@ cmd *cmnd; } - print(fd, "´ç½ÅÀÌ \"±Íȯ!\"À̶ó°í ¿ÜÄ¡ÀÚ ÀÌ»óÇÑ Èû¿¡ ÀÇÇØ ¾îµò°¡·Î »¡·Áµé¾î°©´Ï´Ù."); - if(!F_ISSET(ply_ptr,PDMINV)) broadcast_rom(fd,ply_ptr->rom_num,"\n%m´ÔÀÌ °©Àڱ⠻ç¶óÁý´Ï´Ù!",ply_ptr); + print(fd, "당신ì�´ \"귀환!\"ì�´ë�¼ê³  외치ìž� ì�´ìƒ�한 힘ì—� ì�˜í•´ 어딘가로 빨려들어갑니다."); + if(!F_ISSET(ply_ptr,PDMINV)) broadcast_rom(fd,ply_ptr->rom_num,"\n%m님ì�´ ê°‘ìž�기 사ë�¼ì§‘니다!",ply_ptr); del_ply_rom(ply_ptr,rom_ply); if(!F_ISSET(ply_ptr,PFRTUN)) @@ -818,7 +889,7 @@ cmd *cmnd; else load_rom(3300 + ply_ptr->daily[DL_EXPND].max, &rom_ply); add_ply_rom(ply_ptr,rom_ply); - if(!F_ISSET(ply_ptr,PDMINV)) broadcast_rom(fd,ply_ptr->rom_num, "\n%m´ÔÀÌ °©ÀÚ±â ÀÚ¿íÇÑ ¿¬±â¿Í ÇÔ²² ³ªÅ¸³µ½À´Ï´Ù!",ply_ptr); + if(!F_ISSET(ply_ptr,PDMINV)) broadcast_rom(fd,ply_ptr->rom_num, "\n%m님ì�´ ê°‘ìž�기 ìž�욱한 연기와 함께 나타났습니다!",ply_ptr); return 0; } @@ -843,15 +914,35 @@ cmd *cmnd; int str_compare(str1,str2) unsigned char *str1,*str2; { - int i=0; + unsigned long i, j, n1, n2, c1, c2, cp1, cp2; + + n1 = (unsigned long)strlen((char *)str1); + n2 = (unsigned long)strlen((char *)str2); + if(!utf8_validate(str1, n1) || !utf8_validate(str2, n2)) { + i = 0; + while(str1[i] != 0 && str2[i] != 0 && str1[i] == str2[i]) + i++; + if(str1[i] != 0) + return 0; + return (int)i; + } - while(str1[i]!=0 && str2[i]!=0) { - if(str1[i]==str2[i] && str1[i+1]==str2[i+1]) i+=2; - else if(str1[i]==str2[i] && str1[i]<128) i++; - else break; + i = 0; + j = 0; + while(i < n1 && j < n2) { + if(!utf8_next_codepoint(str1 + i, n1 - i, &c1, &cp1)) + break; + if(!utf8_next_codepoint(str2 + j, n2 - j, &c2, &cp2)) + break; + if(cp1 != cp2) + break; + i += c1; + j += c2; } - if(str1[i]!=0) return 0; - return i; + + if(i != n1) + return 0; + return (int)i; } char *cut_space(str) @@ -868,9 +959,3 @@ char *str; return buf; } - - - - - - diff --git a/src/command10.c b/src/command10.c index 671d456f..1f80623e 100644 --- a/src/command10.c +++ b/src/command10.c @@ -30,17 +30,17 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != ASSASSIN && ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "µµµÏ°ú ÀÚ°´¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "ë�„ë‘‘ê³¼ ìž�ê°�ë§Œ 사용할 수 있는 기술입니다.\n"); return(0); } if(!F_ISSET(ply_ptr, PHIDDN)){ - print(fd, "¸ÕÀú ¼û¾î¾ß ÀÌ ±â¼úÀ» ¾µ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "먼저 숨어야 ì�´ 기술ì�„ 쓸 수 있습니다.\n"); return(0); } if(cmnd->num < 2) { - print(fd, "¾îµð·Î ¸ô·¡ °¡½Ã·Á±¸¿ä?\n"); + print(fd, "어디로 몰래 가시려구요?\n"); return(0); } @@ -48,37 +48,37 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "±× ÂÊ¿¡´Â Ãⱸ°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "ê·¸ 쪽ì—�는 출구가 없습니다.\n"); return(0); } if(F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±× Ãⱸ´Â Àá°ÜÁ® ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 출구는 잠겨져 있습니다.\n"); return(0); } else if(F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "¸ÕÀú ¹®À» ¿­¾î¾ß °Ú±º¿ä.\n"); + print(fd, "먼저 문ì�„ 열어야 ê² êµ°ìš”.\n"); return(0); } if(F_ISSET(ext_ptr, XFLYSP) && !F_ISSET(ply_ptr, PFLYSP)) { - print(fd, "±× ÂÊ¿¡´Â ³¯¾Æ¼­¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 쪽ì—�는 날아서만 ê°ˆ 수 있습니다.\n"); return(0); } if(F_ISSET(ext_ptr, XNAKED) && weight_ply(ply_ptr)) { - print(fd, "±× ÂÊÀ¸·Î´Â ¹» µé°í´Â °¥ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ê·¸ 쪽으로는 ë­˜ 들고는 ê°ˆ 수 없습니다.\n"); return(0); } t = Time%24L; if(F_ISSET(ext_ptr, XNGHTO) && (t>6 && t < 20)) { - print(fd, "±× Ãⱸ´Â ¹ã¿¡¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 출구는 ë°¤ì—�ë§Œ ê°ˆ 수 있습니다.\n"); return(0); } if(F_ISSET(ext_ptr, XDAYON) && (t<6 || t > 20)) { - print(fd, "±× Ãⱸ´Â ³·¿¡¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 출구는 ë‚®ì—�ë§Œ ê°ˆ 수 있습니다.\n"); return(0); } @@ -87,11 +87,11 @@ cmd *cmnd; while(cp) { if(F_ISSET(cp->crt, MPGUAR)) { if(!F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < CARETAKER){ - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» °¡·Î¸·½À´Ï´Ù.\n", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 가로막습니다.\n", cp->crt,"1"); return(0); } if(F_ISSET(cp->crt, MDINVI) && ply_ptr->class < CARETAKER) { - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» °¡·Î¸·½À´Ï´Ù.\n", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 가로막습니다.\n", cp->crt,"1"); return(0); } } @@ -100,11 +100,11 @@ cmd *cmnd; } if(F_ISSET(ext_ptr, XFEMAL) && F_ISSET(ply_ptr, PMALES)){ - print(fd, "±× ÂÊÀ¸·Î´Â ¿©¼º¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 쪽으로는 여성만 ê°ˆ 수 있습니다.\n"); return(0); } if(F_ISSET(ext_ptr, XMALES) && !F_ISSET(ply_ptr, PMALES)){ - print(fd, "±× ÂÊÀ¸·Î´Â ³²¼º¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 쪽으로는 남성만 ê°ˆ 수 있습니다.\n"); return(0); } @@ -116,21 +116,21 @@ cmd *cmnd; if(mrand(1,100) < fall) { dmg = mrand(5, 15+fall/10); if(ply_ptr->hpcur <= dmg){ - print(fd, "´ç½ÅÀº ±íÀº ±¸µ¢ÀÌ¿¡ ºüÁ³½À´Ï´Ù..\n"); + print(fd, "당신ì�€ 깊ì�€ 구ë�©ì�´ì—� 빠졌습니다..\n"); ply_ptr->hpcur=0; - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ±¸µ¢ÀÌ¿¡ ºüÁ®¼­ Á×¾ú½À´Ï´Ù.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 구ë�©ì�´ì—� 빠져서 죽었습니다.\n"); die(ply_ptr, ply_ptr); return(0); } ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº ¶³¾îÁ®¼­ %d¸¸Å­ÀÇ »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", + print(fd, "당신ì�€ 떨어져서 %dë§Œí�¼ì�˜ ìƒ�처를 입었습니다.\n", dmg); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ±¸µ¢ÀÌ¿¡ ºüÁ³½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 구ë�©ì�´ì—� 빠졌습니다.", ply_ptr); if(ply_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº Á×¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 죽었습니다.\n"); die(ply_ptr, ply_ptr); } @@ -152,7 +152,7 @@ cmd *cmnd; if(mrand(1,100) > chance) { - print(fd,"´ç½ÅÀº Àº½Å¼úÀ» »ç¿ëÇϴµ¥ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì�€ì‹ ìˆ ì�„ 사용하는ë�° 실패하였습니다.\n"); F_CLR(ply_ptr, PHIDDN); cp = rom_ptr->first_mon; @@ -160,7 +160,7 @@ cmd *cmnd; if(F_ISSET(cp->crt, MBLOCK) && is_enm_crt(ply_ptr->name, cp->crt) && !F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < CARETAKER) { - print(fd, "%M°¡ ´ç½ÅÀÇ ±æÀ» °¡·Î¸·½À´Ï´Ù.\n", cp->crt); + print(fd, "%Mê°€ 당신ì�˜ 길ì�„ 가로막습니다.\n", cp->crt); return(0); } cp = cp->next_tag; @@ -175,51 +175,51 @@ cmd *cmnd; load_rom(ext_ptr->room, &rom_ptr); if(rom_ptr == old_rom_ptr) { - print(fd, "±×ÂÊÀ¸·Î´Â Áöµµ°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "그쪽으로는 ì§€ë�„ê°€ 없습니다.\n"); return(0); } n = count_vis_ply(rom_ptr); if(rom_ptr->lolevel > ply_ptr->level && ply_ptr->class < INVINCIBLE/*CARETAKER*/) { - print(fd, "±×ÂÊÀ¸·Î´Â ·¹º§ %dÀÌ»ó¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n", + print(fd, "그쪽으로는 레벨 %dì�´ìƒ�ë§Œ ê°ˆ 수 있습니다.\n", rom_ptr->lolevel); return(0); } else if(ply_ptr->level > rom_ptr->hilevel && rom_ptr->hilevel && ply_ptr->class < CARETAKER) { - print(fd, "±×ÂÊÀ¸·Î´Â ·¹º§ %dÀÌÇϸ¸ °¥ ¼ö ÀÖ½À´Ï´Ù.\n", + print(fd, "그쪽으로는 레벨 %dì�´í•˜ë§Œ ê°ˆ 수 있습니다.\n", rom_ptr->hilevel+1); return(0); } else if((F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || (F_ISSET(rom_ptr, RTHREE) && n > 2)) { - print(fd, "±× ¹æ¿¡´Â Á¤¿øÀÌ °¡µæ á½À´Ï´Ù.\n"); + print(fd, "ê·¸ ë°©ì—�는 ì •ì›�ì�´ ê°€ë“� 찼습니다.\n"); return(0); } else if(F_ISSET(rom_ptr, RFAMIL) && !F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "±×°÷¿¡´Â ÆÐ°Å¸® °¡ÀÔÀÚ¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "그곳ì—�는 패거리 가입ìž�ë§Œ ê°ˆ 수 있습니다."); return(0); } else if(ply_ptr->class < DM && F_ISSET(rom_ptr, RONFML) && (ply_ptr->daily[DL_EXPND].max != rom_ptr->special)) { - print(fd, "±×°÷Àº ´ç½ÅÀÌ °¥ ¼ö ¾ø´Â °÷ÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 당신ì�´ ê°ˆ 수 없는 곳입니다."); return(0); } else if(ply_ptr->class < DM && F_ISSET(rom_ptr, RONMAR) && (ply_ptr->daily[DL_MARRI].max != rom_ptr->special)) { - print(fd, "±×°÷Àº »çÀ¯ÁöÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 사유지입니다."); return(0); } if(!F_ISSET(ply_ptr, PHIDDN)) - if(strcmp(ext_ptr->name, "À§") && strcmp(ext_ptr->name, "¹Ø") - && strcmp(ext_ptr->name, "¹Û") && !F_ISSET(ply_ptr, PDMINV)) { - broadcast_rom(fd, old_rom_ptr->rom_num, "%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + if(strcmp(ext_ptr->name, "위") && strcmp(ext_ptr->name, "ë°‘") + && strcmp(ext_ptr->name, "ë°–") && !F_ISSET(ply_ptr, PDMINV)) { + broadcast_rom(fd, old_rom_ptr->rom_num, "%Mì�´ %s쪽으로 갔습니다.", ply_ptr, ext_ptr->name); } else if(!F_ISSET(ply_ptr, PDMINV)) { - broadcast_rom(fd, old_rom_ptr->rom_num, "%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + broadcast_rom(fd, old_rom_ptr->rom_num, "%Mì�´ %s쪽으로 갔습니다.", ply_ptr, ext_ptr->name); } @@ -264,18 +264,18 @@ if(ply_ptr->following) } if(!cp) { - print(fd, "´ç½ÅÀº ±×·ì¿¡ ¼ÓÇØÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그룹ì—� ì†�해있지 않습니다.\n"); return(0); } len = found = cut_command(cmnd->fullstr); cmnd->fullstr[255] = 0; if(len==0) { - print(fd, "±×·ì¿øµé¿¡°Ô ¹«½¼¸»À» ÇϽ÷Á±¸¿ä?\n"); + print(fd, "그룹ì›�들ì—�게 무슨ë§�ì�„ 하시려구요?\n"); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "ÀÔÀÌ ¸·Çô ¸»ÀÌ ³ª¿ÀÁú ¾Ê½À´Ï´Ù.\n"); + print(fd, "ìž…ì�´ 막혀 ë§�ì�´ 나오질 않습니다.\n"); return(0); } @@ -284,10 +284,10 @@ if(ply_ptr->following) while(cp) { if((F_ISSET(cp->crt, PIGNOR) && (ply_ptr->class < CARETAKER)) && !F_ISSET(cp->crt,PDMINV)) - print(fd, "%s´Â À̾߱⠵è±â °ÅºÎ »óÅÂÀÔ´Ï´Ù.\n", cp->crt->name); + print(fd, "%s는 ì�´ì•¼ê¸° 듣기 ê±°ë¶€ ìƒ�태입니다.\n", cp->crt->name); else ANSI(fd, MAGENTA); - print(cp->crt->fd, "%MÀÌ ±×·ì¿øµé¿¡°Ô \"%s\"¶ó°í ¸»ÇÕ´Ï´Ù.\n", + print(cp->crt->fd, "%Mì�´ 그룹ì›�들ì—�게 \"%s\"ë�¼ê³  ë§�합니다.\n", ply_ptr, &cmnd->fullstr[0]); ANSI(fd, WHITE); if (!F_ISSET(cp->crt,PDMINV)) @@ -296,21 +296,21 @@ if(ply_ptr->following) } if(!found) { - print(fd, "´ç½ÅÀº ±×·ì¿¡ ¼ÓÇØÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그룹ì—� ì†�해있지 않습니다.\n"); return(0); } if((F_ISSET(leader, PIGNOR) && (ply_ptr->class < CARETAKER)) && !F_ISSET(leader,PDMINV)) - print(fd, "%s´ÔÀº À̾߱⠵è±â °ÅºÎ »óÅÂÀÔ´Ï´Ù.\n", leader->name); + print(fd, "%s님ì�€ ì�´ì•¼ê¸° 듣기 ê±°ë¶€ ìƒ�태입니다.\n", leader->name); else ANSI(fd, MAGENTA); - print(leader->fd, "%MÀÌ ±×·ì¿øµé¿¡°Ô \"%s\"¶ó°í ¸»ÇÕ´Ï´Ù.\n", + print(leader->fd, "%Mì�´ 그룹ì›�들ì—�게 \"%s\"ë�¼ê³  ë§�합니다.\n", ply_ptr, &cmnd->fullstr[0]); ANSI(fd, WHITE); if (found) - broadcast_eaves("# %s´ÔÀÌ ±×·ì¿øµé¿¡°Ô \"%s\"¶ó°í ¸»ÇÕ´Ï´Ù.", ply_ptr->name, + broadcast_eaves("# %s님ì�´ 그룹ì›�들ì—�게 \"%s\"ë�¼ê³  ë§�합니다.", ply_ptr->name, &cmnd->fullstr[0]); return(0); @@ -469,9 +469,9 @@ creature *crt_ptr; if(n) { if(!F_ISSET(ply_ptr->ready[n-1], ONEWEV)) { - broadcast_rom(ply_ptr->fd,ply_ptr->rom_num,"%M°¡ %m´ÔÀÇ %s¸¦ ºÎ½¤¹ö¸³´Ï´Ù.", + broadcast_rom(ply_ptr->fd,ply_ptr->rom_num,"%Mê°€ %m님ì�˜ %s를 부숴버립니다.", crt_ptr, ply_ptr, ply_ptr->ready[n-1]->name); - print(ply_ptr->fd,"%M°¡ ´ç½ÅÀÇ %s¸¦ ºÎ½¤¹ö¸³´Ï´Ù.\n",crt_ptr, + print(ply_ptr->fd,"%Mê°€ 당신ì�˜ %s를 부숴버립니다.\n",crt_ptr, ply_ptr->ready[n-1]->name); free_obj(ply_ptr->ready[n-1]); ply_ptr->ready[n-1] = 0; @@ -504,12 +504,12 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ±¸ÀÔÇϽ÷Á±¸¿ä?\n"); + print(fd, "무엇ì�„ 구입하시려구요?\n"); return(0); } if(cmnd->num < 3 ) { - print(fd, "»ç¿ë¹ý: <±«¹°À̸§> <¹°°Ç> ±¸ÀÔ\n"); + print(fd, "사용법: <괴물ì�´ë¦„> <물건> 구입\n"); return(0); } @@ -517,12 +517,12 @@ cmd *cmnd; cmnd->val[1]); if(!crt_ptr) { - print(fd, "±×°ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그것ì�€ 여기 없습니다.\n"); return(0); } if (!F_ISSET(crt_ptr,MPURIT)){ - print(fd, "´ç½ÅÀº %m¿¡°Ô¼­ ¹°°ÇÀ» ±¸ÀÔÇÒ ¼ö ¾ø½À´Ï´Ù.\n",crt_ptr); + print(fd, "당신ì�€ %mì—�게서 물건ì�„ 구입할 수 없습니다.\n",crt_ptr); return(0); } @@ -539,7 +539,7 @@ cmd *cmnd; } if (!maxitem){ - print(fd, "%M%j ÆÈ ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù.\n",crt_ptr, "0"); + print(fd, "%M%j 팔 물건ì�„ ê°–ê³  있지 않습니다.\n",crt_ptr, "0"); return(0); } @@ -557,7 +557,7 @@ cmd *cmnd; } if(!found){ - print(fd, "%M%j \"¹Ì¾ÈÇÕ´Ï´Ù. ±×·± ¹°°ÇÀº °®°í ÀÖÁö ¾Ê½À´Ï´Ù.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n", crt_ptr, "1"); + print(fd, "%M%j \"미안합니다. 그런 물건ì�€ ê°–ê³  있지 않습니다.\"ë�¼ê³  ë§�합니다.\n", crt_ptr, "1"); return(0); } @@ -565,7 +565,7 @@ cmd *cmnd; if((weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr)) || cnt>150) { - print(fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다.\n"); return(0); } @@ -573,12 +573,12 @@ cmd *cmnd; amt = MAX(10,obj_ptr->value*1); if(ply_ptr->gold < amt){ print(fd, - "%M%j \"%d³ÉÀÔ´Ï´Ù. ±ð¾ÆÁÙ¼ø ¾ø½À´Ï´Ù.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n",crt_ptr,"1", amt); + "%M%j \"%d냥입니다. 깎아줄순 없습니다.\"ë�¼ê³  ë§�합니다.\n",crt_ptr,"1", amt); } else { - print(fd, "´ç½ÅÀº %m¿¡°Ô %d³ÉÀ» ÁÝ´Ï´Ù.\n",crt_ptr,amt); - print(fd, "%M%j \"°í¸¿½À´Ï´Ù. ¿©±â %s%j ÀÖ½À´Ï´Ù.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n",crt_ptr,"1", obj_ptr->name,"1"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ %m¿¡°Ô %i¸¦ ±¸ÀÔÇÒ µ· %d³ÉÀ» ÁÝ´Ï´Ù.\n", ply_ptr, crt_ptr, obj_ptr, amt); + print(fd, "당신ì�€ %mì—�게 %d냥ì�„ ì¤�니다.\n",crt_ptr,amt); + print(fd, "%M%j \"고맙습니다. 여기 %s%j 있습니다.\"ë�¼ê³  ë§�합니다.\n",crt_ptr,"1", obj_ptr->name,"1"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ %mì—�게 %i를 구입할 ë�ˆ %d냥ì�„ ì¤�니다.\n", ply_ptr, crt_ptr, obj_ptr, amt); ply_ptr->gold -= amt; add_obj_crt(obj_ptr, ply_ptr); } @@ -608,7 +608,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "´©±¸ÀÇ ¹°°ÇÀ» º¾´Ï±î?\n"); + print(fd, "누구ì�˜ 물건ì�„ 봅니까?\n"); return(0); } @@ -617,12 +617,12 @@ cmd *cmnd; cmnd->val[1]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷Àº ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사람ì�€ 없습니다.\n"); return(0); } if(!F_ISSET(crt_ptr,MPURIT)){ - print(fd, "%M´Â ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù.\n",crt_ptr); + print(fd, "%M는 아무것ë�„ 없습니다.\n",crt_ptr); return(0); } @@ -640,16 +640,16 @@ cmd *cmnd; } if(!maxitem){ - print(fd, "%MÀº ÆÈ ¹°°ÇÀÌ ¾ø½À´Ï´Ù.\n",crt_ptr); + print(fd, "%Mì�€ 팔 물건ì�´ 없습니다.\n",crt_ptr); return(0); } - print(fd, "%MÀÇ ¹°°Çµé:\n",crt_ptr); + print(fd, "%Mì�˜ 물건들:\n",crt_ptr); for (i=0;icarry[i], &(obj_ptr[i])) < 0) || (crt_ptr->carry[i] == 0)) - print(fd,"%d) º ¸ÅÁø.\n",i+1); + print(fd,"%d) � 매진.\n",i+1); else - print(fd,"%d) %-22s %ld³É\n",i+1, + print(fd,"%d) %-22s %ld냥\n",i+1, (obj_ptr[i])->name,MAX(10,((obj_ptr[i])->value))); print(fd,"\n"); return(0); @@ -675,12 +675,12 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "´©±¸¿Í ±³È¯ÇϽ÷Á±¸¿ä?\n"); + print(fd, "누구와 êµ�환하시려구요?\n"); return(0); } if(cmnd->num < 3) { - print(fd, "»ç¿ë¹ý: <¹°°Ç> <±«¹°À̸§> ±³È¯\n"); + print(fd, "사용법: <물건> <괴물ì�´ë¦„> êµ�환\n"); return(0); } @@ -688,12 +688,12 @@ cmd *cmnd; cmnd->val[2]); if(!crt_ptr) { - print(fd, "±×°ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그것ì�€ 여기 없습니다.\n"); return(0); } if(!F_ISSET(crt_ptr,MTRADE)){ - print(fd, "´ç½ÅÀº %M%j ±³¿ªÇÒ ¼ö ¾ø½À´Ï´Ù.\n",crt_ptr, "2"); + print(fd, "당신ì�€ %M%j êµ�ì—­í•  수 없습니다.\n",crt_ptr, "2"); print(fd, "%x %d %d %d\n",crt_ptr->flags[4],F_ISSET(crt_ptr,36),F_ISSET(crt_ptr,37),F_ISSET(crt_ptr,38)); return(0); } @@ -702,12 +702,12 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그런 물건ì�„ ê°–ê³  있지 않습니다.\n"); return(0); } if(F_ISSET(obj_ptr, ONAMED)) { - print(fd, "±³¿ªÇÒ ¼ö ÀÖ´Â ¹°°ÇÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "êµ�ì—­í•  수 있는 물건ì�´ 아닙니다.\n"); return(0); } @@ -726,7 +726,7 @@ cmd *cmnd; } if(!maxitem){ - print(fd, "%M%j ±³¿ªÇÒ ¹°°ÇÀ» °®°íÀÖÁö ¾Ê½À´Ï´Ù.\n",crt_ptr,"0"); + print(fd, "%M%j êµ�ì—­í•  물건ì�„ 갖고있지 않습니다.\n",crt_ptr,"0"); return(0); } @@ -741,45 +741,45 @@ cmd *cmnd; } if(!found || ((obj_ptr->shotscur <= obj_ptr->shotsmax/10)&&(obj_ptr->type != MISC))) - print(fd,"%M%j \"³­ ±×·±°Å ÇÊ¿ä¾ø¾î¿ä!\"¶ó°í ¸»ÇÕ´Ï´Ù.\n",crt_ptr,"1"); + print(fd,"%M%j \"난 그런거 필요없어요!\"ë�¼ê³  ë§�합니다.\n",crt_ptr,"1"); else{ if (crt_ptr->carry[found+4] == 0){ del_obj_crt(obj_ptr, ply_ptr); - /* ±³È¯ÇÑ ¹°°ÇÀ» ¸÷ÀÌ °¡Áö°í ÀÖÀ» ÀÌÀ¯ ¾øÀ½ */ + /* êµ�환한 물건ì�„ 몹ì�´ 가지고 있ì�„ ì�´ìœ  ì—†ì�Œ */ /* add_obj_crt(obj_ptr, crt_ptr); */ - print(fd, "%M%j \"°í¸¿½À´Ï´Ù! %i%j ÇÊ¿äÇߴµ¥ ÀߵƱº¿ä.\n", + print(fd, "%M%j \"고맙습니다! %i%j 필요했는ë�° 잘ë��êµ°ìš”.\n", crt_ptr,"1",obj_ptr,"1"); - print(fd, "±×·±µ¥ ´ç½Å¿¡°Ô ÁÙ°Ô ¾ø´Âµ¥..\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num,"%MÀÌ %m¿¡°Ô %i¸¦ ±³È¯ÇÕ´Ï´Ù.\n", + print(fd, "그런ë�° 당신ì—�게 줄게 없는ë�°..\"ë�¼ê³  ë§�합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num,"%Mì�´ %mì—�게 %i를 êµ�환합니다.\n", ply_ptr,crt_ptr,obj_ptr); } else if(!(load_obj((obj_list[found-1][1]), &trd_ptr) < 0)){ if(trd_ptr->questnum && Q_ISSET(ply_ptr, trd_ptr->questnum-1)) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì ÀÓ¹«¸¦ ¿Ï¼öÇß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì�´ë¯¸ 임무를 완수했습니다.\n"); return(0); } del_obj_crt(obj_ptr, ply_ptr); - /* ±³È¯ÇÑ ¹°°ÇÀ» ¸÷ÀÌ °¡Áö°í ÀÖÀ» ÀÌÀ¯ ¾øÀ½ */ + /* êµ�환한 물건ì�„ 몹ì�´ 가지고 있ì�„ ì�´ìœ  ì—†ì�Œ */ /* add_obj_crt(obj_ptr, crt_ptr); */ add_obj_crt(trd_ptr, ply_ptr); - print(fd,"%M°¡ \"°í¸¿½À´Ï´Ù. Àý À§ÇØ %i¸¦ ã¾ÆÁֽôٴÏ..\n", + print(fd,"%Mê°€ \"고맙습니다. ì ˆ 위해 %i를 찾아주시다니..\n", crt_ptr,obj_ptr); - print(fd,"´ç½Å¿¡°Ô %i·Î º¸´äÀ» Çϰí½Í½À´Ï´Ù.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n",trd_ptr); - print(fd,"%M°¡ ´ç½Å¿¡°Ô %i¸¦ ÁÝ´Ï´Ù.\n",crt_ptr,trd_ptr); - broadcast_rom(fd, ply_ptr->rom_num,"%MÀÌ %m¿¡°Ô %i¸¦ ±³È¯ÇÕ´Ï´Ù.\n", + print(fd,"당신ì—�게 %i로 보답ì�„ 하고싶습니다.\"ë�¼ê³  ë§�합니다.\n",trd_ptr); + print(fd,"%Mê°€ 당신ì—�게 %i를 ì¤�니다.\n",crt_ptr,trd_ptr); + broadcast_rom(fd, ply_ptr->rom_num,"%Mì�´ %mì—�게 %i를 êµ�환합니다.\n", ply_ptr,crt_ptr,obj_ptr); - /* broadcast_rom(fd, ply_ptr->rom_num,"%MÀÌ %m¿¡°Ô %i¸¦ ÁÝ´Ï´Ù.\n", */ + /* broadcast_rom(fd, ply_ptr->rom_num,"%Mì�´ %mì—�게 %i를 ì¤�니다.\n", */ /* ply_ptr,crt_ptr,obj_ptr); */ /* if return object is a quest item */ if(trd_ptr->questnum) { - print(fd, "ÀÓ¹«¸¦ ¿Ï¼öÇß½À´Ï´Ù! ¹ö¸®Áö ¸¶½Ê½Ã¿ä!\n"); - print(fd, "´ç½ÅÀº ¹ö¸®¸é ±×°É ´Ù½Ã ÁÖ¿ï ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "임무를 완수했습니다! 버리지 마십시요!\n"); + print(fd, "당신ì�€ 버리면 그걸 다시 주울 수 없습니다.\n"); Q_SET(ply_ptr, trd_ptr->questnum-1); ply_ptr->experience += quest_exp[trd_ptr->questnum-1]; - print(fd, "´ç½ÅÀº °æÇèÄ¡ %ld ¸¦ ¾ò¾ú½À´Ï´Ù.\n", + print(fd, "당신ì�€ 경험치 %ld 를 얻었습니다.\n", quest_exp[trd_ptr->questnum-1]); add_prof(ply_ptr,quest_exp[trd_ptr->questnum-1]); } diff --git a/src/command11.c b/src/command11.c index 4b3f5aba..da0358fe 100644 --- a/src/command11.c +++ b/src/command11.c @@ -50,24 +50,24 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(len==0) { - print(fd, "¹«½¼¸»À» Ç¥ÇöÇϽ÷Á±¸¿ä?\n"); + print(fd, "무슨ë§�ì�„ 표현하시려구요?\n"); return(0); } if(F_ISSET(ply_ptr, PSILNC)){ - print(fd, "´ç½ÅÀº Áö±Ý´çÀå ±×°ÍÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 지금당장 그것ì�„ í•  수 없습니다.\n"); return(0); } F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PLECHO)){ ANSI(fd, CYAN); - print(fd, ":%MÀÌ %s.", ply_ptr, &cmnd->fullstr[index]); + print(fd, ":%Mì�´ %s.", ply_ptr, &cmnd->fullstr[index]); ANSI(fd, NORMAL); ANSI(fd, WHITE); } else - print(fd, "¿¹. ÁÁ½À´Ï´Ù.\n"); + print(fd, "예. 좋습니다.\n"); - broadcast_rom(fd, rom_ptr->rom_num, "\n:%MÀÌ %s.", + broadcast_rom(fd, rom_ptr->rom_num, "\n:%Mì�´ %s.", ply_ptr, &cmnd->fullstr[index]); paste_command(cmnd->fullstr,len); @@ -115,43 +115,43 @@ char *str; output_buf(); switch (param) { case 0: - print(fd,"ÇöÀç ¾ÏÈ£¸¦ ÀÔ·ÂÇϽʽÿä: "); + print(fd,"현재 암호를 입력하십시요: "); output_buf(); Ply[fd].io->intrpt &= ~1; RETURN(fd,chpasswd,1); break; case 1: if (!strcmp(ply_ptr->password,str)){ - print(fd,"\n»õ ¾ÏÈ£¸¦ ÀÔ·ÂÇϽʽÿä: "); + print(fd,"\n새 암호를 입력하십시요: "); /* output_buf(); Ply[fd].io->intrpt &= ~1; */ RETURN(fd,chpasswd,2); } else { print(fd, "%c%c%c\n\r", 255, 252, 1); - print(fd,"¾ÏÈ£°¡ Ʋ·È½À´Ï´Ù.\n"); - print(fd,"¾ÏÈ£°¡ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù.\n"); + print(fd,"암호가 틀렸습니다.\n"); + print(fd,"암호가 변경ë�˜ì§€ 않았습니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } case 2: if (strlen(str) <3){ print(fd, "%c%c%c\n\r", 255, 252, 1); - print(fd,"¾ÏÈ£°¡ ³Ê¹« ª½À´Ï´Ù.\n"); - print(fd,"¾ÏÈ£°¡ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù.\n"); + print(fd,"암호가 너무 짧습니다.\n"); + print(fd,"암호가 변경ë�˜ì§€ 않았습니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } else if (strlen(str) > 14){ print(fd, "%c%c%c\n\r", 255, 252, 1); - print(fd,"¾ÏÈ£°¡ ³Ê¹« ±é´Ï´Ù.\n"); - print(fd,"¾ÏÈ£°¡ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù..\n"); + print(fd,"암호가 너무 ê¹�니다.\n"); + print(fd,"암호가 변경ë�˜ì§€ 않았습니다..\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } else{ strcpy(Ply[fd].extr->tempstr[1], str); - print(fd,"\n»õ ¾ÏÈ£¸¦ ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä: "); + print(fd,"\n새 암호를 다시 넣으십시요: "); /* output_buf(); Ply[fd].io->intrpt &= ~1; */ RETURN(fd,chpasswd,3); @@ -161,15 +161,15 @@ char *str; if(!strcmp(Ply[fd].extr->tempstr[1],str)){ strcpy(ply_ptr->password,str); print(fd, "%c%c%c\n\r", 255, 252, 1); - print(fd,"¾ÏÈ£°¡ º¯°æµÇ¾ú½À´Ï´Ù.\n"); + print(fd,"암호가 변경ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); F_CLR(Ply[fd].ply, PREADI); save_ply(ply_ptr->name,ply_ptr); RETURN(fd, command, 1); } else{ print(fd, "%c%c%c\n\r", 255, 252, 1); - print(fd,"¾ÏÈ£°¡ ¼­·Î Ʋ¸³´Ï´Ù.\n"); - print(fd,"¾ÏÈ£°¡ º¯°æµÇÁö ¾Ê¾Ò½À´Ï´Ù.\n"); + print(fd,"암호가 서로 틀립니다.\n"); + print(fd,"암호가 변경ë�˜ì§€ 않았습니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } @@ -196,24 +196,24 @@ extern void vote_cmnd(); str[0] = 0; if(((18 + ply_ptr->lasttime[LT_HOURS].interval/86400L) < 21) && ply_ptr->class < INVINCIBLE) { - print(fd, "´ç½ÅÀº ÅõÇ¥ÇÒ ³ªÀ̰¡ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "당신ì�€ 투표할 나ì�´ê°€ 아닙니다.\n"); return(0); } if (!F_ISSET(ply_ptr->parent_rom,RELECT)){ - print(fd,"ÅõÇ¥¼Ò°¡ ¾Æ´Õ´Ï´Ù.\n"); + print(fd,"투표소가 아닙니다.\n"); return(0); } sprintf(Ply[fd].extr->tempstr[0],"%s/ISSUE",POSTPATH); fp = fopen(Ply[fd].extr->tempstr[0],"r"); if(!fp){ - print(fd,"ÅõÇ¥ÇÒ ¾È°ÇÀÌ ¾ø³×¿ä.\n"); + print(fd,"투표할 안건ì�´ 없네요.\n"); return(0); } fgets(tmp, 256,fp); if (feof(fp)) { - print(fd,"ÇöÀç ÅõÇ¥ÇÒ ¾È°ÇÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd,"현재 투표할 안건ì�´ 없습니다.\n"); return(0); } fclose(fp); @@ -223,7 +223,7 @@ extern void vote_cmnd(); lowercize(str,1); /* if (n <1){ - print(fd,"ÅõÇ¥½Ã°£ÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd,"투표시간ì�´ 아닙니다.\n"); return(0); } else if (n == 2 && str){ for (i=1;itempstr[1][1] = 1; @@ -287,8 +287,8 @@ char *str; } else { fclose(fp); - print(fd,"´ç½ÅÀº ÀÌ¹Ì ÅõÇ¥¸¦ Çß½À´Ï´Ù.\n"); - print(fd,"´ç½ÅÀÇ ¼±ÅÃÀ» ¹Ù²Ù½Ã°Ú½À´Ï±î? (y/n): "); + print(fd,"당신ì�€ ì�´ë¯¸ 투표를 했습니다.\n"); + print(fd,"당신ì�˜ ì„ íƒ�ì�„ 바꾸시겠습니까? (y/n): "); output_buf(); Ply[fd].io->intrpt &= ~1; RETURN(fd,vote_cmnd,1); @@ -310,14 +310,14 @@ char *str; tmp[1023] = 0; fclose(fp); print(fd,"\n%s",tmp); - print(fd,"´ç½ÅÀÇ ¼±ÅÃÀº? : "); + print(fd,"당신ì�˜ ì„ íƒ�ì�€? : "); output_buf(); Ply[fd].extr->tempstr[1][1] = 1; Ply[fd].io->intrpt &= ~1; RETURN(fd,vote_cmnd,2); } - print(fd,"Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd,"중단합니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); @@ -325,7 +325,7 @@ char *str; case 2: c = low(str[0]); if (c != 'a' && c != 'b' && c != 'c' && c != 'd' && c != 'e' && c != 'f' && c != 'g'){ - print(fd,"À߸øµÈ ¼±ÅÃÀÔ´Ï´Ù. Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd,"잘못ë�œ ì„ íƒ�입니다. 중단합니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } @@ -357,7 +357,7 @@ char *str; break; } print(fd,"\n%s",tmp); - print(fd,"´ç½ÅÀÇ ¼±ÅÃÀº? : "); + print(fd,"당신ì�˜ ì„ íƒ�ì�€? : "); output_buf(); Ply[fd].extr->tempstr[1][1] = n; @@ -381,7 +381,7 @@ char *str; write(i,Ply[fd].extr->tempstr[2],n); close(i); - print(fd,"ÅõÇ¥¸¦ ÇÏ¿´½À´Ï´Ù.\n"); + print(fd,"투표를 하였습니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); break; @@ -398,12 +398,12 @@ cmd *cmnd; struct stat f_stat; creature *player; - char tmp[80]; + char tmp[256]; int fd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "´©±¸ÀÇ Á¤º¸¸¦ º¸°í ½ÍÀ¸¼¼¿ä?\n"); + print(fd, "누구ì�˜ 정보를 ë³´ê³  싶으세요?\n"); return(0); } cmnd->str[1][0] = up(cmnd->str[1][0]); @@ -412,26 +412,25 @@ cmd *cmnd; if (!player){ if(load_ply(cmnd->str[1], &player) < 0){ - print(fd,"±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + print(fd,"그런 사용ìž�는 없습니다.\n"); return (0); } if (ply_ptr->class < DM && player->class == DM) { - print(fd,"´ç½ÅÀº ±× »ç¿ëÀÚÀÇ Á¤º¸¸¦ º¼ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ê·¸ 사용ìž�ì�˜ 정보를 ë³¼ 수 없습니다.\n"); return (0); } - sprintf(tmp,"%s/%s/%s",PLAYERPATH,first_han(cmnd->str[1]), cmnd->str[1]); - if (stat(tmp,&f_stat)){ - print(fd,"±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + if(player_path_from_name(cmnd->str[1], tmp, sizeof(tmp)) < 0 || stat(tmp,&f_stat)){ + print(fd,"그런 사용ìž�는 없습니다.\n"); return (0); } print(fd,"%s %+25s %s\n",player->name, race_str[player->race],class_str[player->class] ); - print(fd,"¸¶Áö¸· Á¢¼Ó½Ã°£: %s",ctime(&f_stat.st_ctime)); + print(fd,"마지막 ì ‘ì†�시간: %s",ctime(&f_stat.st_ctime)); if(F_ISSET(player, SUICD)) { - print(fd, "±× »ç¿ëÀÚ´Â ÀÚ»ì½ÅûÇÑ »ç¿ëÀÚÀÔ´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 ìž�살신청한 사용ìž�입니다.\n"); } free_crt(player); } @@ -439,36 +438,36 @@ cmd *cmnd; if(ply_ptr->class < SUB_DM && F_ISSET(player, PDMINV) && (player->class == SUB_DM)) { print(fd,"%s %+25s %s\n",player->name, race_str[player->race],class_str[player->class] ); - print(fd,"¸¶Áö¸· Á¢¼Ó½Ã°£: %s",ctime(&f_stat.st_ctime)); + print(fd,"마지막 ì ‘ì†�시간: %s",ctime(&f_stat.st_ctime)); return(0); } if (F_ISSET(player, PDMINV) && (ply_ptr->class < SUB_DM || (ply_ptr->class == SUB_DM && player->class == DM))) { - print(fd,"´ç½ÅÀº ±× »ç¿ëÀÚÀÇ Á¤º¸¸¦ º¼ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ê·¸ 사용ìž�ì�˜ 정보를 ë³¼ 수 없습니다.\n"); return (0); } print(fd,"%s %+25s %s\n",player->name, race_str[player->race], class_str[player->class]); - print(fd,"ÇöÀç Á¢¼Ó Áß ÀÔ´Ï´Ù.\n"); + print(fd,"현재 ì ‘ì†� 중 입니다.\n"); } sprintf(tmp,"%s/%s",POSTPATH,cmnd->str[1]); if (stat(tmp,&f_stat)){ - print(fd,"¹ÞÀº ÆíÁö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd,"ë°›ì�€ 편지가 없습니다.\n"); return (0); } if (f_stat.st_atime > f_stat.st_ctime) - print(fd,"ÀÐÁö ¾ÊÀº ÆíÁö°¡ µµÂøÇÑ ³¯Â¥: %s",ctime(&f_stat.st_atime)); + print(fd,"ì�½ì§€ 않ì�€ 편지가 ë�„착한 ë‚ ì§œ: %s",ctime(&f_stat.st_atime)); else - print(fd,"»õ ÆíÁö°¡ µµÂøÇÑ ³¯Â¥: %s",ctime(&f_stat.st_ctime)); + print(fd,"새 편지가 ë�„착한 ë‚ ì§œ: %s",ctime(&f_stat.st_ctime)); } /****************************************************************************** -* ÆÐ°Å¸® +* 패거리 ******************************************************************************/ int load_family() @@ -505,13 +504,13 @@ extern void add_family(); F_SET(ply_ptr, PREADI); if(F_ISSET(ply_ptr, PFAMIL)) { - print(fd,"´ç½ÅÀº ÀÌ¹Ì ÆÐ°Å¸®¿¡ °¡ÀÔÀÌ µÇ¾îÀÖ½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì�´ë¯¸ 패거리ì—� 가입ì�´ ë�˜ì–´ìžˆìŠµë‹ˆë‹¤.\n"); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } if(F_ISSET(ply_ptr, PRDFML)) { - print(fd,"´ç½ÅÀº ÀÌ¹Ì °¡ÀÔ½ÅûÀ» ÇØµÎ°í ÀÖ½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì�´ë¯¸ 가입신청ì�„ í•´ë‘�ê³  있습니다.\n"); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } @@ -536,49 +535,49 @@ char *str; #endif switch(param) { case 0 : - print(fd, "´ÙÀ½°ú °°Àº ÆÐ°Å¸®°¡ ÀÖ½À´Ï´Ù.\n"); - print(fd, "\n%-20s %-20s\n\n","ÆÐ°Å¸®À̸§","µÎ¸ñ À̸§"); + print(fd, "다ì�Œê³¼ ê°™ì�€ 패거리가 있습니다.\n"); + print(fd, "\n%-20s %-20s\n\n","패거리ì�´ë¦„","ë‘�목 ì�´ë¦„"); for(num = 1; num < ftotal; num++) { print(fd,"%-20s %-20s\n",family_str[num], fmboss_str[num]); } - print(fd,"\n´ç½ÅÀº ¾î¶² ÆÐ°Å¸®¿¡ °¡ÀÔÀ» ¿øÇϽʴϱî? "); - print(fd, "\nÆÐ°Å¸®ÀÇ À̸§À» ÀÔ·ÂÇØ Áֽʽÿä. "); + print(fd,"\n당신ì�€ ì–´ë–¤ 패거리ì—� 가입ì�„ ì›�하십니까? "); + print(fd, "\n패거리ì�˜ ì�´ë¦„ì�„ 입력해 주십시요. "); RETURN(fd,add_family,1); case 1 : for(num = 0; num < ftotal; num++){ if(!strcmp(str, family_str[num])) { - if(!strcmp(fmboss_str[num], "*ÇØÃ¼*")) { - print(fd, "ÇØÃ¼µÈ ÆÐ°Å¸®ÀÔ´Ï´Ù."); + if(!strcmp(fmboss_str[num], "*í•´ì²´*")) { + print(fd, "í•´ì²´ë�œ 패거리입니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } crt_ptr = find_who(fmboss_str[num]); if(!crt_ptr) { - print(fd, "ÆÐ°Å¸®ÀÇ µÎ¸ñÀÎ %s´ÔÀÌ ÇöÀç ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù.",fmboss_str[num]); + print(fd, "패거리ì�˜ ë‘�목ì�¸ %s님ì�´ 현재 ì�´ìš©ì¤‘ì�´ 아닙니다.",fmboss_str[num]); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } ply_ptr->daily[DL_EXPND].max = family_num[num]; - print(fd, "%s¿¡ °¡ÀÔÀ» ÇϽðڽÀ´Ï±î? (¿¹/¾Æ´Ï¿À) ",family_str[num]); + print(fd, "%sì—� 가입ì�„ 하시겠습니까? (예/아니오) ",family_str[num]); RETURN(fd, add_family, 2); } } - print(fd,"\nÀ߸øµÈ ¼±ÅÃÀÔ´Ï´Ù.\n"); + print(fd,"\n잘못ë�œ ì„ íƒ�입니다.\n"); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); case 2 : - if(strcmp(str, "¿¹")) { - print(fd,"\n°¡ÀÔ ½ÅûÀ» Ãë¼ÒÇÕ´Ï´Ù."); + if(strcmp(str, "예")) { + print(fd,"\n가입 ì‹ ì²­ì�„ 취소합니다."); ply_ptr->daily[DL_EXPND].max = 0; F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } crt_ptr = find_who(fmboss_str[(ply_ptr->daily[DL_EXPND].max)] ) ; - print(crt_ptr->fd, "\n>>> %s´ÔÀÌ ´ç½ÅÀÇ ÆÐ°Å¸®¿¡ °¡ÀÔÇϱ⸦ ¿øÇÕ´Ï´Ù.", ply_ptr->name ); + print(crt_ptr->fd, "\n>>> %s님ì�´ 당신ì�˜ 패거리ì—� 가입하기를 ì›�합니다.", ply_ptr->name ); F_SET(ply_ptr, PRDFML); - print(fd,"\n°¡ÀÔ ½ÅûÀ» ÇÏ¿´½À´Ï´Ù. \n"); - print(fd,"ÆÐ°Å¸® µÎ¸ñÀÇ Çã°¡¸¦ ±â´Ù¸®½Ê½Ã¿ä."); + print(fd,"\n가입 ì‹ ì²­ì�„ 하였습니다. \n"); + print(fd,"패거리 ë‘�목ì�˜ 허가를 기다리십시요."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } @@ -602,11 +601,11 @@ cmd *cmnd; #endif if(!F_ISSET(ply_ptr, PFMBOS)) { - print(fd, "ÆÐ°Å¸®ÀÇ µÎ¸ñ¸¸ÀÌ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "패거리ì�˜ ë‘�목만ì�´ 가능합니다."); RETURN(fd, command, 1); } if(cmnd->num < 2) { - print(fd, "´©±¸ÀÇ °¡ÀÔÀ» Çã°¡ ÇϽðڽÀ´Ï±î?"); + print(fd, "누구ì�˜ 가입ì�„ 허가 하시겠습니까?"); RETURN(fd, command,1 ); } @@ -616,20 +615,20 @@ cmd *cmnd; if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || F_ISSET(ply_ptr, PBLIND) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd,"ÇöÀç ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd,"현재 ì�´ìš©ì¤‘ì�´ 아닙니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } if(!F_ISSET(crt_ptr, PRDFML) || (ply_ptr->daily[DL_EXPND].max != crt_ptr->daily[DL_EXPND].max) || F_ISSET(crt_ptr, PFAMIL)) { - print(fd,"´ç½ÅÀÇ ÆÐ°Å¸®¿¡ °¡ÀÔ½ÅûÀ» ÇÑ »ç¶÷ÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd,"당신ì�˜ 패거리ì—� 가입신청ì�„ 한 사람ì�´ 아닙니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } num = ply_ptr->daily[DL_EXPND].max ; if(ply_ptr->gold < family_gold[num]*10000) { - print(fd, "´ç½ÅÀÇ ÀڱݻçÁ¤À¸·Î´Â ÆÐ°Å¸®¿øÀ» ¹ÞÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ ìž�금사정으로는 패거리ì›�ì�„ ë°›ì�„수 없습니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } @@ -639,12 +638,12 @@ cmd *cmnd; edit_member(crt_ptr->name, crt_ptr->class, ply_ptr->daily[DL_EXPND].max, 1); crt_ptr->gold += family_gold[num] * 10000; ply_ptr->gold -= family_gold[num] * 10000; - print(fd,"%s´ÔÀÇ ÆÐ°Å¸® °¡ÀÔÀ» Çã°¡ÇÏ¿´½À´Ï´Ù.\n",crt_ptr->name); - print(fd,"%s´Ô¿¡°Ô °¡ÀÔÃàÇϱÝÀ» Áö±ÞÇÏ¿´½À´Ï´Ù.",crt_ptr->name); - broadcast_all("\n### %s´ÔÀÌ %s¿¡ °¡ÀÔÀ» ÇÏ¿´½À´Ï´Ù.",crt_ptr->name, + print(fd,"%s님ì�˜ 패거리 가입ì�„ 허가하였습니다.\n",crt_ptr->name); + print(fd,"%s님ì—�게 가입축하금ì�„ 지급하였습니다.",crt_ptr->name); + broadcast_all("\n### %s님ì�´ %sì—� 가입ì�„ 하였습니다.",crt_ptr->name, family_str[ply_ptr->daily[DL_EXPND].max ]); - print(crt_ptr->fd, "\n´ç½ÅÀº ´ç½ÅÀÇ ÆÐ°Å¸®·ÎºÎÅÍ °¡ÀÔÃàÇϱÝÀ» ¹Þ¾Ò½À´Ï´Ù."); - print(crt_ptr->fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °®°í ÀÖ½À´Ï´Ù.",crt_ptr->gold); + print(crt_ptr->fd, "\n당신ì�€ 당신ì�˜ 패거리로부터 가입축하금ì�„ 받았습니다."); + print(crt_ptr->fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ ê°–ê³  있습니다.",crt_ptr->gold); F_CLR(ply_ptr,PREADI); return(0); } @@ -680,45 +679,45 @@ char *str; #endif if(F_ISSET(ply_ptr, PFMBOS)) { - print(fd, "ÆÐ°Å¸®ÀÇ µÎ¸ñÀº Å»Å𸦠ÇÒ¼ö ¾ø½À´Ï´Ù."); + print(fd, "패거리ì�˜ ë‘�목ì�€ 탈퇴를 할수 없습니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } if(F_ISSET(ply_ptr, PRDFML)) { - print(fd, "ÆÐ°Å¸® °¡ÀÔ½ÅûÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd, "패거리 가입신청ì�„ 취소합니다."); F_CLR(ply_ptr, PRDFML); ply_ptr->daily[DL_EXPND].max = 0; F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } if(!F_ISSET(ply_ptr, PFAMIL) && !F_ISSET(ply_ptr, PRDFML)) { - print(fd, "´ç½ÅÀº ¾î¶² ÆÐ°Å¸®¿¡µµ °¡ÀÔÀÌ µÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ ì–´ë–¤ 패거리ì—�ë�„ 가입ì�´ ë�˜ì–´ 있지 않습니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } switch(param) { case 0 : - print(fd,"´ç½ÅÀº Áö±Ý ÇöÀçÀÇ ÆÐ°Å¸®¸¦ Å»ÅðÇÏ½Ç »ý°¢ÀԴϱî? (¿¹/¾Æ´Ï¿À) "); + print(fd,"당신ì�€ 지금 현재ì�˜ 패거리를 탈퇴하실 ìƒ�ê°�입니까? (예/아니오) "); RETURN(fd, exit_family, 1); case 1 : - if(strcmp(str, "¿¹")) { - print(fd, "ÆÐ°Å¸®¸¦ Å»ÅðÇÏÁö ¾Ê¾Ò½À´Ï´Ù."); + if(strcmp(str, "예")) { + print(fd, "패거리를 탈퇴하지 않았습니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } else { if(ply_ptr->gold < family_gold[ply_ptr->daily[DL_EXPND].max ] * 20000 ) { - print(fd, "´ç½ÅÀÌ °¡Áø µ·À¸·Î´Â ÆÐ°Å¸®Å»Åðºñ¸¦ ³¾¼ö ¾ø½À´Ï´Ù.\n"); - print(fd, "ÆÐ°Å¸®¸¦ Å»ÅðÇÏÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "당신ì�´ 가진 ë�ˆìœ¼ë¡œëŠ” 패거리탈퇴비를 낼수 없습니다.\n"); + print(fd, "패거리를 탈퇴하지 않았습니다."); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } - print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡¼­ Å»Å𸦠ÇÏ¿´½À´Ï´Ù.\n"); - broadcast_all("\n### %s´ÔÀÌ %s¿¡¼­ Å»Å𸦠ÇÏ¿´½À´Ï´Ù.",ply_ptr->name, + print(fd, "당신ì�€ 패거리ì—�서 탈퇴를 하였습니다.\n"); + broadcast_all("\n### %s님ì�´ %sì—�서 탈퇴를 하였습니다.",ply_ptr->name, family_str[ply_ptr->daily[DL_EXPND].max]); ply_ptr->gold -= family_gold[ply_ptr->daily[DL_EXPND].max] * 20000 ; - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °®°í ÀÖ½À´Ï´Ù.",ply_ptr->gold); + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ ê°–ê³  있습니다.",ply_ptr->gold); edit_member(ply_ptr->name, ply_ptr->class, ply_ptr->daily[DL_EXPND].max, 2); F_CLR(ply_ptr, PFAMIL); ply_ptr->daily[DL_EXPND].max = 0; @@ -743,11 +742,11 @@ cmd *cmnd; #endif if(!F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡ ¼ÓÇØÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 패거리ì—� ì†�해있지 않습니다."); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "ÀÔÀÌ ¸·Çô ¸»ÀÌ ³ª¿ÀÁú ¾Ê½À´Ï´Ù."); + print(fd, "ìž…ì�´ 막혀 ë§�ì�´ 나오질 않습니다."); return(0); } @@ -755,7 +754,7 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(len == 0) { - print(fd, "ÆÐ°Å¸®¿øµé¿¡°Ô ¹«½¼ ¸»À» ÇϽ÷Á°í¿ä?"); + print(fd, "패거리ì›�들ì—�게 무슨 ë§�ì�„ 하시려고요?"); return(0); } @@ -767,7 +766,7 @@ cmd *cmnd; "33", ply_ptr->name, &cmnd->fullstr[0], "37"); } } - broadcast_eaves("\n>>> %s´ÔÀÌ [%s]¿¡°Ô \"%s\" ¶ó°í À̾߱âÇÕ´Ï´Ù.", + broadcast_eaves("\n>>> %s님ì�´ [%s]ì—�게 \"%s\" ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", ply_ptr->name, family_str[num], &cmnd->fullstr[0]); return(0); } @@ -788,7 +787,7 @@ cmd *cmnd; total = 0; if(F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!"); return(0); } @@ -797,32 +796,32 @@ cmd *cmnd; crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || F_ISSET(ply_ptr, PBLIND) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd,"ÇöÀç ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd,"현재 ì�´ìš©ì¤‘ì�´ 아닙니다."); RETURN(fd, command, 1); } if(!F_ISSET(crt_ptr, PFAMIL) && !F_ISSET(crt_ptr, PRDFML)) { - print(fd, "%s´ÔÀº ¾î¶² ÆÐ°Å¸®¿¡µµ ¼Ò¼ÓµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì�€ ì–´ë–¤ 패거리ì—�ë�„ 소ì†�ë�˜ì–´ 있지 않습니다.", crt_ptr->name); RETURN(fd, command, 1); } if(F_ISSET(crt_ptr, PRDFML)) { - print(fd, "%s´ÔÀº [%s] ÆÐ°Å¸®¿¡ °¡ÀÔÀ» ½ÅûÁßÀÔ´Ï´Ù.", crt_ptr->name, family_str[crt_ptr->daily[DL_EXPND].max]); + print(fd, "%s님ì�€ [%s] 패거리ì—� 가입ì�„ 신청중입니다.", crt_ptr->name, family_str[crt_ptr->daily[DL_EXPND].max]); RETURN(fd, command, 1); } - print(fd, "%s´ÔÀº [%s] ÆÐ°Å¸®¿¡ ¼ÓÇØÀÖ½À´Ï´Ù.",crt_ptr->name, family_str[crt_ptr->daily[DL_EXPND].max]); + print(fd, "%s님ì�€ [%s] 패거리ì—� ì†�해있습니다.",crt_ptr->name, family_str[crt_ptr->daily[DL_EXPND].max]); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) && !F_ISSET(ply_ptr, PRDFML)) { - print(fd, "´ç½ÅÀº ¾î¶² ÆÐ°Å¸®¿¡µµ ¼Ò¼ÓµÇ¾î ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ ì–´ë–¤ 패거리ì—�ë�„ 소ì†�ë�˜ì–´ 있지 않습니다."); return(0); } if(F_ISSET(ply_ptr, PRDFML)) { - print(fd, "´ç½ÅÀº [%s] ÆÐ°Å¸®¿¡ °¡ÀÔÀ» ½ÅûÁßÀÔ´Ï´Ù.\n\n",family_str[num]); + print(fd, "당신ì�€ [%s] 패거리ì—� 가입ì�„ 신청중입니다.\n\n",family_str[num]); } else { - print(fd, "´ç½ÅÀº [%s] ÆÐ°Å¸®¿¡ ¼Ò¼ÓµÇ¾î ÀÖ½À´Ï´Ù.\n\n",family_str[num]); + print(fd, "당신ì�€ [%s] 패거리ì—� 소ì†�ë�˜ì–´ 있습니다.\n\n",family_str[num]); } for(i = 0; i < Tablesize; i++) { @@ -842,7 +841,7 @@ cmd *cmnd; print(fd, "\n"); } if(total % 3 != 0) print(fd, "\n"); - print(fd, "\nÃÑ %d¸íÀÇ ÆÐ°Å¸®¿øµéÀÌ ÀÌ¿ëÁßÀÔ´Ï´Ù.", total); + print(fd, "\nì´� %d명ì�˜ 패거리ì›�들ì�´ ì�´ìš©ì¤‘입니다.", total); return(0); } @@ -857,21 +856,21 @@ cmd *cmnd; ftotal = load_family(); F_SET(ply_ptr, PREADI); - print(fd, "´ÙÀ½°ú °°Àº ÆÐ°Å¸®°¡ ÀÖ½À´Ï´Ù.\n"); - print(fd, "%-14s %-14s \n", "ÆÐ°Å¸®À̸§", "µÎ¸ñÀ̸§"); + print(fd, "다ì�Œê³¼ ê°™ì�€ 패거리가 있습니다.\n"); + print(fd, "%-14s %-14s \n", "패거리ì�´ë¦„", "ë‘�목ì�´ë¦„"); print(fd, "--------------------------------------------\n"); for(i = 1; i < ftotal; i++) { print(fd, "%-14s %-14s \n", family_str[i], fmboss_str[i]); } - print(fd, "\nÃÑ %d °³ÀÇ ÆÐ°Å¸®°¡ Ȱµ¿Áß¿¡ ÀÖ½À´Ï´Ù.", ftotal-1 ); + print(fd, "\nì´� %d ê°œì�˜ 패거리가 활ë�™ì¤‘ì—� 있습니다.", ftotal-1 ); F_CLR(ply_ptr, PREADI); return(0); } /*************************************************************************** -* °æÇèÄ¡ Àü¼ö..(ÃÊÀÎ ÀÌ»ó, ÆÐ°Å¸®¸¸ °¡´É) +* 경험치 전수..(ì´ˆì�¸ ì�´ìƒ�, 패거리만 가능) **************************************************************************/ -/* ÀÏ´ÜÀº ·çƾ¸¸ ÀÖ°í.. »ç¿ëÀº ÇÏÁö ¾Ê´Âµ¥.. ÇÊ¿äÇϸé È£ÃâÇØ¼­ »ç¿ë°¡´É. */ +/* ì�¼ë‹¨ì�€ 루틴만 있고.. 사용ì�€ 하지 않는ë�°.. 필요하면 호출해서 사용가능. */ /*************************************************************************/ int trans_exp(ply_ptr, cmnd) @@ -889,56 +888,56 @@ cmd *cmnd; amt = atol(cmnd->str[1]); if(ply_ptr->class < CARETAKER) { - print(fd, "´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â »ç¿ëÇÒ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 능력으로는 사용할수 없습니다."); return(0); } if(!F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "ÆÐ°Å¸® °¡ÀÔÀÚ¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "패거리 가입ìž�ë§Œ 가능합니다."); return(0); } if(cmnd->num < 3) { - print(fd, "´©±¸¿¡°Ô °æÇèÄ¡¸¦ Àü¼öÇϽ÷Á°í¿ä?"); + print(fd, "누구ì—�게 경험치를 전수하시려고요?"); return(0); } if((amt < 1) || (amt > 100000)) { - print(fd, "1¿¡¼­ 100000Á¡ »çÀ̸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "1ì—�서 100000ì � 사ì�´ë§Œ 가능합니다."); return(0); } crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr || crt_ptr == ply_ptr) { - print(fd, "±×·± »ç¶÷Àº ¿©±â ¾ø¾î¿ä!"); + print(fd, "그런 사람ì�€ 여기 없어요!"); return(0); } if(!F_ISSET(crt_ptr, PFAMIL) || (ply_ptr->daily[DL_EXPND].max != crt_ptr->daily[DL_EXPND].max)) { - print(fd, "´ç½ÅÀÇ ÆÐ°Å¸®»ç¶÷¿¡°Ô¸¸ °æÇèÄ¡Àü¼ö°¡ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "당신ì�˜ 패거리사람ì—�게만 경험치전수가 가능합니다."); return(0); } if(crt_ptr->level > 50 || crt_ptr->class == INVINCIBLE ) { - print(fd, "´ç½ÅÀº ±×»ç¶÷¿¡°Ô °æÇèÄ¡¸¦ ÁÙ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그사람ì—�게 경험치를 줄 수 없습니다."); return(0); } if(ply_ptr->experience < 100000) { - print(fd, "´ç½ÅÀº ³²¿¡°Ô ÁÙ¸¸Å­ÀÇ °æÇèÄ¡¸¦ °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 남ì—�게 줄만í�¼ì�˜ 경험치를 가지고 있지 않습니다."); return(0); } ply_ptr->experience -= amt; crt_ptr->experience += amt/20; - print(fd, "´ç½ÅÀº %s´Ô¿¡°Ô ÀÚ½ÅÀÇ °æÇèÄ¡ %ldÁ¡À» ³ª´²ÁÖ¾ú½À´Ï´Ù.", crt_ptr->name, amt); - print(crt_ptr->fd, "\n$$$ %s´ÔÀÌ ´ç½Å¿¡°Ô °æÇèÄ¡ %ldÁ¡À» ³ª´²ÁÖ¾ú½À´Ï´Ù.\n", ply_ptr->name, amt/10); + print(fd, "당신ì�€ %s님ì—�게 ìž�ì‹ ì�˜ 경험치 %ldì �ì�„ 나눠주었습니다.", crt_ptr->name, amt); + print(crt_ptr->fd, "\n$$$ %s님ì�´ 당신ì—�게 경험치 %ldì �ì�„ 나눠주었습니다.\n", ply_ptr->name, amt/10); return(0); } /**************************************************************************** -* ÃÊÀÎÀÇ Ã¼·Â µµ·Â ±¸ÀÔ * +* ì´ˆì�¸ì�˜ ì²´ë ¥ ë�„ë ¥ 구입 * ****************************************************************************/ int buy_states(ply_ptr, cmnd) @@ -951,30 +950,30 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != CARETAKER) { - print(fd, "ÃÊÀθ¸ÀÌ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "ì´ˆì�¸ë§Œì�´ 가능합니다."); return(0); } if(cmnd->num < 2) { - print(fd, "\"ü·Â\" °ú \"µµ·Â\" Áß ¾î´À °ÍÀ» ¿Ã¸®½Ã·Á°í¿ä?"); + print(fd, "\"ì²´ë ¥\" ê³¼ \"ë�„ë ¥\" 중 ì–´ëŠ� 것ì�„ 올리시려고요?"); return(0); } amt = (ply_ptr->experience - 100000000L) / 1000000L; if(amt < 1) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡ Çâ»óÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치 í–¥ìƒ�ì�„ í•  수 없습니다."); return(0); } if(ply_ptr->gold < amt*1000000L) { - print(fd, "´ç½ÅÀÌ °¡Áø µ·À¸·Î´Â ´É·ÂÄ¡ Çâ»óÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�´ 가진 ë�ˆìœ¼ë¡œëŠ” 능력치 í–¥ìƒ�ì�„ í•  수 없습니다."); return(0); } - if(!strcmp(cmnd->str[1], "ü·Â")) { + if(!strcmp(cmnd->str[1], "ì²´ë ¥")) { if(ply_ptr->hpmax >= 2000 && ply_ptr->level < 128) { - print(fd, "´õÀÌ»óÀº ü·ÂÀ» ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ�ì�€ ì²´ë ¥ì�„ 올릴수 없습니다."); return(0); } ply_ptr->experience -= amt*1000000L; @@ -991,9 +990,9 @@ cmd *cmnd; ply_ptr->hpcur = ply_ptr->hpmax; } - else if(!strcmp(cmnd->str[1], "µµ·Â")) { + else if(!strcmp(cmnd->str[1], "ë�„ë ¥")) { if(ply_ptr->mpmax >= 2000 && ply_ptr->level < 128) { - print(fd, "´õÀÌ»óÀº µµ·ÂÀ» ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ�ì�€ ë�„ë ¥ì�„ 올릴수 없습니다."); return(0); } ply_ptr->experience -= amt*1000000L; @@ -1010,13 +1009,13 @@ cmd *cmnd; ply_ptr->mpcur = ply_ptr->mpmax; } - else if(!strcmp(cmnd->str[1], "Èû")) { + else if(!strcmp(cmnd->str[1], "힘")) { if(ply_ptr->experience - 100000000L < 2000000L) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡¸¦ ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치를 올릴수 없습니다."); return(0); } if(ply_ptr->strength > 44) { - print(fd, "´õÀÌ»ó ¿Ã¸±¼ö ¾ø´Â ´É·ÂÄ¡ÀÔ´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 올릴수 없는 능력치입니다."); return(0); } ply_ptr->experience -= 2000000L; @@ -1027,13 +1026,13 @@ cmd *cmnd; else ply_ptr->mpmax += 3; } - else if(!strcmp(cmnd->str[1], "¹Îø")) { + else if(!strcmp(cmnd->str[1], "민첩")) { if(ply_ptr->experience - 100000000L < 2000000L) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡¸¦ ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치를 올릴수 없습니다."); return(0); } if(ply_ptr->dexterity > 44) { - print(fd, "´õÀÌ»ó ¿Ã¸±¼ö ¾ø´Â ´É·ÂÄ¡ÀÔ´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 올릴수 없는 능력치입니다."); return(0); } ply_ptr->experience -= 2000000L; @@ -1044,13 +1043,13 @@ cmd *cmnd; else ply_ptr->mpmax += 3; } - else if(!strcmp(cmnd->str[1], "¸ËÁý")) { + else if(!strcmp(cmnd->str[1], "ë§·ì§‘")) { if(ply_ptr->experience - 100000000L < 2000000L) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡¸¦ ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치를 올릴수 없습니다."); return(0); } if(ply_ptr->constitution > 44) { - print(fd, "´õÀÌ»ó ¿Ã¸±¼ö ¾ø´Â ´É·ÂÄ¡ÀÔ´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 올릴수 없는 능력치입니다."); return(0); } ply_ptr->experience -= 2000000L; @@ -1061,13 +1060,13 @@ cmd *cmnd; else ply_ptr->mpmax += 3; } - else if(!strcmp(cmnd->str[1], "Áö½Ä")) { + else if(!strcmp(cmnd->str[1], "ì§€ì‹�")) { if(ply_ptr->experience - 100000000L < 2000000L) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡¸¦ ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치를 올릴수 없습니다."); return(0); } if(ply_ptr->intelligence > 44) { - print(fd, "´õÀÌ»ó ¿Ã¸±¼ö ¾ø´Â ´É·ÂÄ¡ÀÔ´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 올릴수 없는 능력치입니다."); return(0); } ply_ptr->experience -= 2000000L; @@ -1078,13 +1077,13 @@ cmd *cmnd; else ply_ptr->mpmax += 3; } - else if(!strcmp(cmnd->str[1], "½Å¾Ó½É")) { + else if(!strcmp(cmnd->str[1], "신앙심")) { if(ply_ptr->experience - 100000000L < 2000000L) { - print(fd, "´ç½ÅÀÇ °æÇèÄ¡·Î´Â ´É·ÂÄ¡¸¦ ¿Ã¸±¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 경험치로는 능력치를 올릴수 없습니다."); return(0); } if(ply_ptr->piety > 44) { - print(fd, "´õÀÌ»ó ¿Ã¸±¼ö ¾ø´Â ´É·ÂÄ¡ÀÔ´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 올릴수 없는 능력치입니다."); return(0); } ply_ptr->experience -= 2000000L; @@ -1096,19 +1095,19 @@ cmd *cmnd; } else { - print(fd, "¾î¶² ´É·ÂÄ¡¸¦ ¿Ã¸®½Ã·Á°í¿ä?"); + print(fd, "ì–´ë–¤ 능력치를 올리시려고요?"); return(0); } ply_ptr->ndice = 4; ply_ptr->sdice = 4; if(!F_ISSET(ply_ptr, PUPDMG)) ply_ptr->pdice = 4; - broadcast_all("\n### %s´ÔÀÇ ´É·ÂÄ¡°¡ Çâ»óÀÌ µÇ¾ú½À´Ï´Ù!", ply_ptr->name); - print(fd, "\nÃàÇÏÇÕ´Ï´Ù! ´ç½ÅÀÇ ´É·ÂÄ¡°¡ ¿Ã¶ú½À´Ï´Ù!"); + broadcast_all("\n### %s님ì�˜ 능력치가 í–¥ìƒ�ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤!", ply_ptr->name); + print(fd, "\n축하합니다! 당신ì�˜ 능력치가 올ëž�습니다!"); return(0); } /**************************************************************************** -* °áÈ¥ * +* 결혼 * ****************************************************************************/ int marriage(ply_ptr, cmnd) @@ -1129,56 +1128,56 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RMARRI)) { - print(fd, "À̰÷Àº °áÈ¥½ÄÀåÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "ì�´ê³³ì�€ 결혼ì‹�장ì�´ 아닙니다."); return(0); } if((18 + ply_ptr->lasttime[LT_HOURS].interval / 86400L) < 25) { - print(fd, "´ç½ÅÀº °áÈ¥ÇÒ ¼ö ÀÖ´Â ³ªÀ̰¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "당신ì�€ 결혼할 수 있는 나ì�´ê°€ 아닙니다."); return(0); } if(F_ISSET(ply_ptr, PRDMAR)) { - print(fd, "°áÈ¥ ½ÅûÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd, "결혼 ì‹ ì²­ì�„ 취소합니다."); F_CLR(ply_ptr, PRDMAR); return(0); } if(F_ISSET(ply_ptr, PMARRI)) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì °áÈ¥ÇßÀݾƿä!"); + print(fd, "당신ì�€ ì�´ë¯¸ 결혼했잖아요!"); return(0); } if(cmnd->num < 2) { - print(fd, "´©±¸¿Í °áÈ¥À» ÇϽ÷Á°í¿ä?"); + print(fd, "누구와 결혼ì�„ 하시려고요?"); return(0); } crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || F_ISSET(ply_ptr, PBLIND) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "±×·± »ç¶÷À» ãÀ» ¼ö°¡ ¾ø±º¿ä."); + print(fd, "그런 사람ì�„ ì°¾ì�„ 수가 없군요."); return(0); } if(F_ISSET(ply_ptr, PMALES) && F_ISSET(crt_ptr, PMALES)) { - print(fd, "³²ÀÚ³¢¸® °áÈ¥ÇϽ÷Á°í¿ä?"); + print(fd, "남ìž�ë�¼ë¦¬ 결혼하시려고요?"); return(0); } if(!F_ISSET(ply_ptr, PMALES) && !F_ISSET(crt_ptr, PMALES)) { - print(fd, "¿©ÀÚ³¢¸® °áÈ¥ÇϽ÷Á°í¿ä?"); + print(fd, "ì—¬ìž�ë�¼ë¦¬ 결혼하시려고요?"); return(0); } if((18 + crt_ptr->lasttime[LT_HOURS].interval / 86400L) < 25) { - print(fd, "±×»ç¶÷Àº ¾ÆÁ÷ °áÈ¥ÇÒ ³ªÀ̰¡ µÇÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "그사람ì�€ ì•„ì§� 결혼할 나ì�´ê°€ ë�˜ì§€ 않았습니다."); return(0); } if(F_ISSET(crt_ptr, PMARRI)) { - print(fd, "±×»ç¶÷Àº ÀÌ¹Ì °áÈ¥ÇÑ »ç¶÷ÀÔ´Ï´Ù."); + print(fd, "그사람ì�€ ì�´ë¯¸ 결혼한 사람입니다."); return(0); } if(!F_ISSET(crt_ptr, PRDMAR)) { - print(fd, "´ç½ÅÀº %s´Ô¿¡°Ô °áÈ¥À» ½ÅûÇÏ¿´½À´Ï´Ù.", crt_ptr->name); + print(fd, "당신ì�€ %s님ì—�게 결혼ì�„ 신청하였습니다.", crt_ptr->name); F_SET(ply_ptr, PRDMAR); /* sprintf(file, "%s/marriage/%s", PLAYERPATH, ply_ptr->name); @@ -1187,7 +1186,7 @@ cmd *cmnd; */ sprintf(mstr, "m%s", crt_ptr->name); strcpy(ply_ptr->key[2], mstr); - print(crt_ptr->fd, "\n%C%s´ÔÀÌ ´ç½Å¿¡°Ô °áÈ¥À» ½ÅûÇÕ´Ï´Ù.%D", + print(crt_ptr->fd, "\n%C%s님ì�´ 당신ì—�게 결혼ì�„ 신청합니다.%D", "36", ply_ptr->name, "37"); // fclose(fp); return(0); @@ -1203,8 +1202,8 @@ cmd *cmnd; sprintf(str, "%s", &crt_ptr->key[2][1]); if(!strcmp(ply_ptr->name, str)) { - print(fd, "´ç½ÅÀº %s´ÔÀÇ °áÈ¥½ÅûÀ» ¹Þ¾ÆµéÀÔ´Ï´Ù.\n", crt_ptr->name); - print(crt_ptr->fd, "\n%s´ÔÀÌ ´ç½ÅÀÇ °áÈ¥½ÅûÀ» ¹Þ¾Æµé¿´½À´Ï´Ù.", + print(fd, "당신ì�€ %s님ì�˜ 결혼신청ì�„ 받아들입니다.\n", crt_ptr->name); + print(crt_ptr->fd, "\n%s님ì�´ 당신ì�˜ 결혼신청ì�„ 받아들였습니다.", ply_ptr->name); F_CLR(ply_ptr, PRDMAR); F_CLR(crt_ptr, PRDMAR); @@ -1213,7 +1212,7 @@ cmd *cmnd; // sprintf(file, "%s/marriage/%s", PLAYERPATH, ply_ptr->name); // fp = fopen(file, "w+"); // fprintf(fp, "%s\n", crt_ptr->name); - broadcast_all("\n### %s´Ô°ú %s´ÔÀÌ °áÈ¥À» ÇÏ¿´½À´Ï´Ù.", crt_ptr->name, ply_ptr->name); + broadcast_all("\n### %s님과 %s님ì�´ 결혼ì�„ 하였습니다.", crt_ptr->name, ply_ptr->name); // sprintf(mstr, "m%s", ply_ptr->name); // strcpy(crt_ptr->key[2], mstr); sprintf(mstr, "m%s", crt_ptr->name); @@ -1222,7 +1221,7 @@ cmd *cmnd; // fclose(fp2); } else { - print(fd, "±×»ç¶÷Àº ´Ù¸¥ »ç¶÷°ú °áÈ¥À» ÁغñÁßÀÔ´Ï´Ù."); + print(fd, "그사람ì�€ 다른 사람과 결혼ì�„ 준비중입니다."); // fclose(fp2); return(0); } @@ -1231,7 +1230,7 @@ cmd *cmnd; } /***************************************************************************** - m_send(°áÈ¥ÇÑ »ç¶÷³¢¸®ÀÇ ´ëÈ­) + m_send(결혼한 사람ë�¼ë¦¬ì�˜ 대화) *****************************************************************************/ int m_send(ply_ptr, cmnd) @@ -1246,37 +1245,37 @@ cmd *cmnd; fd = ply_ptr->fd; if(!F_ISSET(ply_ptr, PMARRI)) { - print(fd, "´ç½ÅÀº °áÈ¥ÇÏÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "당신ì�€ 결혼하지 않았습니다."); return(0); } sprintf(str, "%s", &ply_ptr->key[2][1]); crt_ptr = find_who(str); if(!crt_ptr) { - print(fd, "´ç½ÅÀÇ ¹è¿ìÀÚ´Â Áö±Ý ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "당신ì�˜ ë°°ìš°ìž�는 지금 ì�´ìš©ì¤‘ì�´ 아닙니다."); return(0); } len = cut_command(cmnd->fullstr); cmnd->fullstr[255] = 0; if(len == 0) { - print(fd, "¹«½¼ ¸»À» ÀüÇϽ÷Á°í¿ä?"); + print(fd, "무슨 ë§�ì�„ 전하시려고요?"); return(0); } if(F_ISSET(ply_ptr, PLECHO)){ - print(fd, "´ç½ÅÀº %M¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", crt_ptr, + print(fd, "당신ì�€ %Mì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr, &cmnd->fullstr[0]); } else - print(fd, "%s´Ô¿¡°Ô ¸»À» Àü´ÞÇÏ¿´½À´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì—�게 ë§�ì�„ 전달하였습니다.", crt_ptr->name); - print(crt_ptr->fd, "\n%C%M%j ´ç½Å¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.%D", + print(crt_ptr->fd, "\n%C%M%j 당신ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.%D", "34", ply_ptr, "1", &cmnd->fullstr[0], "37"); return(0); } -/* ÀÌÈ¥ */ +/* ì�´í˜¼ */ int divorce(ply_ptr, cmnd) creature *ply_ptr; @@ -1289,16 +1288,16 @@ cmd *cmnd; fd = ply_ptr->fd; if(F_ISSET(ply_ptr, PRDMAR) && !F_ISSET(ply_ptr, PMARRI)) { - print(fd, "°áÈ¥ ½ÅûÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd, "결혼 ì‹ ì²­ì�„ 취소합니다."); F_CLR(ply_ptr, PRDMAR); return(0); } if(!F_ISSET(ply_ptr, PMARRI)) { - print(fd, "´ç½ÅÀº °áÈ¥ÇÏÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "당신ì�€ 결혼하지 않았습니다."); return(0); } if(F_ISSET(ply_ptr, PRDDIV)) { - print(fd, "ÀÌÈ¥ ½ÅûÀ» Ãë¼ÒÇÕ´Ï´Ù."); + print(fd, "ì�´í˜¼ ì‹ ì²­ì�„ 취소합니다."); F_CLR(ply_ptr, PRDDIV); return(0); } @@ -1308,25 +1307,25 @@ cmd *cmnd; if(!crt_ptr) { if(load_ply(str, &crt_ptr) < 0) { - print(fd, "´ç½ÅÀÇ ¹è¿ìÀÚ´Â Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�˜ ë°°ìš°ìž�는 존재하지 않습니다."); F_CLR(ply_ptr, PMARRI); ply_ptr->key[2][0] = 0; return(0); } - print(fd, "´ç½ÅÀÇ ¹è¿ìÀÚ°¡ ÇöÀç Á¢¼ÓÁßÀÌÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�˜ ë°°ìš°ìž�ê°€ 현재 ì ‘ì†�중ì�´ì§€ 않습니다."); return(0); } if(!F_ISSET(crt_ptr, PRDDIV)) { - print(fd, "´ç½ÅÀº ´ç½ÅÀÇ ¹è¿ìÀÚ¿¡°Ô ÀÌÈ¥½ÅûÀ» ÇÏ¿´½À´Ï´Ù."); + print(fd, "당신ì�€ 당신ì�˜ ë°°ìš°ìž�ì—�게 ì�´í˜¼ì‹ ì²­ì�„ 하였습니다."); F_SET(ply_ptr, PRDDIV); - print(crt_ptr->fd, "\n%C%s´ÔÀÌ ´ç½Å¿¡°Ô ÀÌÈ¥½ÅûÀ» ÇÏ¿´½À´Ï´Ù.%D", + print(crt_ptr->fd, "\n%C%s님ì�´ 당신ì—�게 ì�´í˜¼ì‹ ì²­ì�„ 하였습니다.%D", "36", ply_ptr->name, "37"); return(0); } else { - print(fd, "´ç½ÅÀº %s´ÔÀÇ ÀÌÈ¥½ÅûÀ» ¹Þ¾ÆµéÀÔ´Ï´Ù.", crt_ptr->name); - print(crt_ptr->fd, "\n%s´ÔÀÌ ´ç½ÅÀÇ ÀÌÈ¥½ÅûÀ» ¹Þ¾Æµé¿´½À´Ï´Ù.", + print(fd, "당신ì�€ %s님ì�˜ ì�´í˜¼ì‹ ì²­ì�„ 받아들입니다.", crt_ptr->name); + print(crt_ptr->fd, "\n%s님ì�´ 당신ì�˜ ì�´í˜¼ì‹ ì²­ì�„ 받아들였습니다.", ply_ptr->name); F_CLR(ply_ptr, PRDMAR); F_CLR(ply_ptr, PMARRI); @@ -1334,7 +1333,7 @@ cmd *cmnd; F_CLR(crt_ptr, PRDMAR); F_CLR(crt_ptr, PMARRI); F_CLR(crt_ptr, PRDDIV); - broadcast("\n### %s´Ô°ú %s´ÔÀÌ ÀÌÈ¥À» ÇÏ¿´½À´Ï´Ù.", + broadcast("\n### %s님과 %s님ì�´ ì�´í˜¼ì�„ 하였습니다.", ply_ptr->name, crt_ptr->name); return(0); } @@ -1371,6 +1370,5 @@ cmd *cmnd; - diff --git a/src/command12.c b/src/command12.c index 2a95713b..7b73eef1 100644 --- a/src/command12.c +++ b/src/command12.c @@ -14,7 +14,7 @@ #endif /****************************************************************** - ºñ±³ + 비êµ� ******************************************************************/ int obj_compare(ply_ptr, cmnd) @@ -28,14 +28,14 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ºñ±³ÇϽ÷Á°í¿ä?"); + print(fd, "무엇ì�„ 비êµ�하시려고요?"); return(0); } obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± °ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런 것ì�„ ê°–ê³  있지 않습니다."); return(0); } if(obj_ptr->type == ARMOR) { @@ -44,10 +44,10 @@ cmd *cmnd; else check_ac = obj_ptr->armor * 5; if(check_ac > 29) { - print(fd, "%I%j %d ·¹º§ºÎÅÍ ÀÔÀ» ¼ö ÀÖ½À´Ï´Ù.", obj_ptr, + print(fd, "%I%j %d 레벨부터 ìž…ì�„ 수 있습니다.", obj_ptr, "0", check_ac); } - else print(fd, "%I%j ´©±¸³ª ÀÔÀ» ¼ö ÀÖ½À´Ï´Ù.", obj_ptr, "0"); + else print(fd, "%I%j 누구나 ìž…ì�„ 수 있습니다.", obj_ptr, "0"); return(0); } else if(obj_ptr->type < ARMOR) { @@ -60,22 +60,22 @@ cmd *cmnd; if(ply_ptr->class >= INVINCIBLE) { if(check_dmg > 15) { - print(fd, "%I%j °Ë»ç´Â %d·¹º§, ÀÚ°´ µµµÏÀº %d·¹º§, ¹«»ç Æ÷Á¹Àº %d·¹º§,\n", + print(fd, "%I%j 검사는 %d레벨, ìž�ê°� ë�„ë‘‘ì�€ %d레벨, 무사 í�¬ì¡¸ì�€ %d레벨,\n", obj_ptr, "0", (check_dmg-7)*3, (check_dmg-3)*3, (check_dmg-2)*3); - print(fd, "±Ç¹ý°¡ ºÒÁ¦ÀÚ µµ¼ú»ç´Â %d·¹º§ºÎÅÍ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.", check_dmg*3); + print(fd, "권법가 불제ìž� ë�„술사는 %d레벨부터 사용할 수 있습니다.", check_dmg*3); } - else print(fd, "%I%j ´©±¸³ª ¹«ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.", obj_ptr, "0"); + else print(fd, "%I%j 누구나 무장할 수 있습니다.", obj_ptr, "0"); return(0); } if(check_dmg > 15) { - print(fd, "%I%j %d ·¹º§ºÎÅÍ ¹«ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.", + print(fd, "%I%j %d 레벨부터 무장할 수 있습니다.", obj_ptr, "0", check_dmg*3); } - else print(fd, "%I%j ´©±¸³ª ¹«ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.", obj_ptr, "0"); + else print(fd, "%I%j 누구나 무장할 수 있습니다.", obj_ptr, "0"); return(0); } else { - print(fd, "¹«±â³ª ¹æ¾î±¸¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "무기나 방어구만 가능합니다."); return(0); } } @@ -85,7 +85,7 @@ int memo(ply_ptr, cmnd) creature *ply_ptr; cmd *cmnd; { - char file[80], file2[80]; + char file[256], file2[80]; char str[50], str2[71], str3[71]; int fd, fp, ff; int len, space=0, i; @@ -94,22 +94,25 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 3) { - print(fd, "´©±¸¿¡°Ô ¾î¶² ¸Þ¸ð¸¦ ³²±â½Ã·Á°í¿ä?\n"); + print(fd, "누구ì—�게 ì–´ë–¤ 메모를 남기시려고요?\n"); return(0); } cmnd->str[1][0] = up(cmnd->str[1][0]); - sprintf(file, "%s/%s/%s", PLAYERPATH, first_han(cmnd->str[1]), cmnd->str[1]); + if(player_path_from_name(cmnd->str[1], file, sizeof(file)) < 0) { + print(fd, "그런 사용ìž�는 없습니다.\n"); + return(0); + } ff = open(file, O_RDONLY, 0); if(ff < 0) { - print(fd, "±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사용ìž�는 없습니다.\n"); return(0); } close(ff); len = cut_command(cmnd->fullstr); if(len > 80) { - print(fd, "¸Þ¸ðÀÇ ³»¿ëÀÌ ³Ê¹« ±é´Ï´Ù."); + print(fd, "메모ì�˜ ë‚´ìš©ì�´ 너무 ê¹�니다."); return(0); } @@ -128,7 +131,7 @@ cmd *cmnd; } cmnd->fullstr[255] = 0; if(space < 1 || strlen(&cmnd->fullstr[i+1]) < 1) { - print(fd, "¹«½¼ ¸»À» ³²±â½Ã·Á°í¿ä?"); + print(fd, "무슨 ë§�ì�„ 남기시려고요?"); return(0); } @@ -137,14 +140,14 @@ cmd *cmnd; str[strlen(str)-1] = 0; write(fp, str, strlen(str)); - sprintf(str2, " ¿¡ [%s] ´ÔÀÌ ³²±â½Å ¸Þ¸ð : \n", ply_ptr->name); + sprintf(str2, " ì—� [%s] 님ì�´ 남기신 메모 : \n", ply_ptr->name); write(fp, str2, strlen(str2)); write(fp, ">>>>> ", strlen(">>>>> ")); write(fp, &cmnd->fullstr[i+1], strlen(&cmnd->fullstr[i+1])); strcpy(str3, "\n"); write(fp, str3, strlen(str3)); close(fp); - print(fd, "¸Þ¸ð¸¦ ³²°å½À´Ï´Ù."); + print(fd, "메모를 남겼습니다."); return(0); } @@ -156,7 +159,7 @@ cmd *cmnd; creature *player; int fd; int ftotal; - char tmp[80]; + char tmp[256]; fd = ply_ptr->fd; #ifdef CHECKFAMILY @@ -167,47 +170,46 @@ cmd *cmnd; #endif if(!F_ISSET(ply_ptr, PFMBOS)) { - print(fd, "ÆÐ°Å¸®ÀÇ µÎ¸ñ¸¸ÀÌ »ç¿ë°¡´ÉÇÑ ¸í·ÉÀÔ´Ï´Ù.\n"); + print(fd, "패거리ì�˜ ë‘�목만ì�´ 사용가능한 명령입니다.\n"); return(0); } if(cmnd->num < 2) { - print(fd, "´©±¸¸¦ ÆÐ°Å¸®¿¡¼­ ÂѾƳ»½Ã·Á°í¿ä?\n"); + print(fd, "누구를 패거리ì—�서 쫓아내시려고요?\n"); return(0); } cmnd->str[1][0] = up(cmnd->str[1][0]); player = find_who(cmnd->str[1]); if(ply_ptr == player) { - print(fd, "ÀÚ±â ÀÚ½ÅÀ» Ãß¹æÇÏ·Á°í¿ä?"); + print(fd, "ìž�기 ìž�ì‹ ì�„ 추방하려고요?"); return(0); } if(!player) { if(load_ply(cmnd->str[1], &player) < 0) { - print(fd, "±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사용ìž�는 없습니다.\n"); return(0); } - sprintf(tmp, "%s/%s/%s", PLAYERPATH, first_han(cmnd->str[1]), cmnd->str[1]); - if(stat(tmp, &f_stat)) { - print(fd, "±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + if(player_path_from_name(cmnd->str[1], tmp, sizeof(tmp)) < 0 || stat(tmp, &f_stat)) { + print(fd, "그런 사용ìž�는 없습니다.\n"); return(0); } if(F_ISSET(player, PFAMIL)) { if(ply_ptr->daily[DL_EXPND].max == player->daily[DL_EXPND].max) { player->daily[DL_EXPND].max = 0; F_CLR(player, PFAMIL); - print(fd, "%s´ÔÀ» ÆÐ°Å¸®¿¡¼­ Ãß¹æÇÏ¿´½À´Ï´Ù.\n", player->name); + print(fd, "%s님ì�„ 패거리ì—�서 추방하였습니다.\n", player->name); edit_member(player->name, player->class, ply_ptr->daily[DL_EXPND].max, 2); save_ply(player->name, player); free_crt(player); return(0); } else { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀÇ ÆÐ°Å¸®¿øÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ê·¸ 사람ì�€ 당신ì�˜ 패거리ì›�ì�´ 아닙니다.\n"); free_crt(player); return(0); } } else { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀÇ ÆÐ°Å¸®¿øÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ê·¸ 사람ì�€ 당신ì�˜ 패거리ì›�ì�´ 아닙니다.\n"); free_crt(player); return(0); } @@ -218,17 +220,17 @@ cmd *cmnd; player->daily[DL_EXPND].max = 0; F_CLR(player, PFAMIL); edit_member(player->name, player->class, ply_ptr->daily[DL_EXPND].max, 2); - print(fd, "%s´ÔÀ» ÆÐ°Å¸®¿¡¼­ Ãß¹æÇÏ¿´½À´Ï´Ù.\n", player->name); - print(player->fd, "\n´ç½ÅÀº ÆÐ°Å¸®¿¡¼­ Ãß¹æµÇ¾ú½À´Ï´Ù.\n"); + print(fd, "%s님ì�„ 패거리ì—�서 추방하였습니다.\n", player->name); + print(player->fd, "\n당신ì�€ 패거리ì—�서 추방ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(0); } else { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀÇ ÆÐ°Å¸®¿øÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ê·¸ 사람ì�€ 당신ì�˜ 패거리ì›�ì�´ 아닙니다.\n"); return(0); } } else { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀÇ ÆÐ°Å¸®¿øÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ê·¸ 사람ì�€ 당신ì�˜ 패거리ì›�ì�´ 아닙니다.\n"); return(0); } } @@ -256,7 +258,7 @@ int param; fclose(fp); switch(param) { - case 1: /* °¡ÀÔ */ + case 1: /* 가입 */ cnum[count] = class; strcpy(str[count], name); cnum[count+1] = 0; @@ -267,7 +269,7 @@ int param; } fclose(fp); break; - case 2: /* Å»Åð & Ãß¹æ */ + case 2: /* 탈퇴 & 추방 */ for(i=0; i< count+1; i++) { if(!strcmp(name, str[i])) { cnum[i] = -1; @@ -281,7 +283,7 @@ int param; } fclose(fp); break; - case 3: /* ¼öÁ¤ */ + case 3: /* 수정 */ for(i=0; i< count+1; i++) { if(!strcmp(name, str[i])) { cnum[i] = class; @@ -309,7 +311,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(!F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡ °¡ÀԵǾî ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 패거리ì—� 가입ë�˜ì–´ 있지 않습니다."); return(0); } num = ply_ptr->daily[DL_EXPND].max; @@ -323,14 +325,14 @@ cmd *cmnd; break; } } - print(fd, "´ç½ÅÀº [%s] ÆÐ°Å¸®¿¡ °¡ÀԵǾî ÀÖ½À´Ï´Ù.\n", family_str[num]); + print(fd, "당신ì�€ [%s] 패거리ì—� 가입ë�˜ì–´ 있습니다.\n", family_str[num]); for(i=0; iparent_rom, RONMAR)) { - print(fd, "´ç½ÅÀÇ Áý¿¡¼­¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "당신ì�˜ ì§‘ì—�서만 가능합니다."); return(0); } if(cmnd->num != 2) { if(!file_exists(file)) { - print(fd, "ÃÊ´ëÇÑ »ç¶÷ÀÌ ¾ø½À´Ï´Ù."); + print(fd, "초대한 사람ì�´ 없습니다."); return(0); } fp = fopen(file, "r"); - print(fd, "´ç½ÅÀÌ ÃÊ´ëÇÑ »ç¶÷µé : \n"); + print(fd, "당신ì�´ 초대한 사람들 : \n"); for(i=0; i<10; i++) { fscanf(fp, "%s", str[i]); if(str[i][0] == '0') break; @@ -370,8 +372,8 @@ cmd *cmnd; return(0); } - if(!ishan(cmnd->str[1])) { - print(fd, "»ç¶÷ÀÇ À̸§Àº Çѱ۷ΠÀû¾î¾ß ÇÕ´Ï´Ù."); + if(!player_name_is_valid((unsigned char *)cmnd->str[1], 1, 12)) { + print(fd, "ì�´ë¦„ 형ì‹�ì�´ 잘못ë�˜ì—ˆìŠµë‹ˆë‹¤."); return(0); } @@ -380,7 +382,7 @@ cmd *cmnd; fprintf(fp, "%s\n", cmnd->str[1]); fprintf(fp, "0"); fclose(fp); - print(fd, "ÃÊ´ë ´ë»ó¿¡ Ãß°¡Çß½À´Ï´Ù.\n"); + print(fd, "초대 대ìƒ�ì—� 추가했습니다.\n"); return(0); } @@ -407,7 +409,7 @@ cmd *cmnd; count++; } fprintf(fp, "0"); - print(fd, "ÃÊ´ë ´ë»ó¿¡¼­ »èÁ¦ÇÏ¿´½À´Ï´Ù.\n"); + print(fd, "초대 대ìƒ�ì—�서 삭제하였습니다.\n"); if(count < 1) unlink(file); fclose(fp); @@ -421,7 +423,7 @@ cmd *cmnd; } fprintf(fp, "%s\n", cmnd->str[1]); fprintf(fp, "0"); - print(fd, "ÃÊ´ë ´ë»ó¿¡ Ãß°¡ÇÏ¿´½À´Ï´Ù.\n"); + print(fd, "초대 대ìƒ�ì—� 추가하였습니다.\n"); fclose(fp); } return(0); @@ -479,13 +481,13 @@ cmd *cmnd; } if(!len || index == -1) { - print(fd, "´ç½ÅÀº ¼­ ÀÖ½À´Ï´Ù."); + print(fd, "당신ì�€ 서 있습니다."); ply_ptr->description[0] = 0; return(0); } if(len > 31) { - print(fd, "¹¦»ç°¡ ³Ê¹« ±é´Ï´Ù."); + print(fd, "묘사가 너무 ê¹�니다."); return(0); } @@ -493,7 +495,7 @@ cmd *cmnd; strcat(ply_ptr->description, " "); ply_ptr->description[len+1] = 0; paste_command(cmnd->fullstr, index); - print(fd, "´ç½ÅÀº ÀÌÁ¦ºÎÅÍ %s¼­ ÀÖ½À´Ï´Ù.", ply_ptr->description); + print(fd, "당신ì�€ ì�´ì œë¶€í„° %s서 있습니다.", ply_ptr->description); return(0); } @@ -510,22 +512,22 @@ cmd *cmnd; crt_ptr = find_who(Ply[fd].extr->talksend); if(!crt_ptr) { - print(fd, "´©±¸¿¡°Ô ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "누구ì—�게 ë§�ì�„ 전하시려구요?"); return(0); } if(ply_ptr->class < DM && (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr,PDINVI))) { - print(fd, "´©±¸¿¡°Ô ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "누구ì—�게 ë§�ì�„ 전하시려구요?"); return(0); } if(F_ISSET(crt_ptr, PIGNOR) && (ply_ptr->class < DM )) { - print(fd, "%s´ÔÀº À̾߱⠵è±â °ÅºÎ »óÅÂÀÔ´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì�€ ì�´ì•¼ê¸° 듣기 ê±°ë¶€ ìƒ�태입니다.", crt_ptr->name); return(0); } ign = Ply[crt_ptr->fd].extr->first_ignore; while(ign) { if(!strcmp(ign->enemy, ply_ptr->name)) { - print(fd, "%s´ÔÀº À̾߱⠰źÎÁßÀÔ´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì�€ ì�´ì•¼ê¸° 거부중입니다.", crt_ptr->name); return(0); } ign = ign->next_tag; @@ -535,21 +537,21 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(len == 0) { - print(fd, "¹«½¼ ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "무슨 ë§�ì�„ 전하시려구요?"); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "´ç½ÅÀº ¸»À» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ë§�ì�„ í•  수 없습니다."); return(0); } if(F_ISSET(ply_ptr, PLECHO)){ - print(fd, "´ç½ÅÀº %M¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %Mì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr,&cmnd->fullstr[0]); } else - print(fd, "%s´Ô¿¡°Ô ¸»À» ÀüÇÏ¿´½À´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì—�게 ë§�ì�„ 전하였습니다.", crt_ptr->name); - print(crt_ptr->fd, "\n%C%M%j ´ç½Å¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.%D", "31", + print(crt_ptr->fd, "\n%C%M%j 당신ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.%D", "31", ply_ptr, "1", &cmnd->fullstr[0],"37"); strcpy(Ply[crt_ptr->fd].extr->talksend, ply_ptr->name); paste_command(cmnd->fullstr,len); @@ -567,4 +569,3 @@ cmd *cmnd; - diff --git a/src/command2.c b/src/command2.c index b7c3c869..60faaa00 100644 --- a/src/command2.c +++ b/src/command2.c @@ -24,6 +24,9 @@ extern long login_time[PMAX]; +#define UTF8_PREFIX_ALL "모든" +#define UTF8_PREFIX_ALL_LEN ((int)(sizeof(UTF8_PREFIX_ALL) - 1)) + /**********************************************************************/ /* look */ /**********************************************************************/ @@ -54,7 +57,7 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, BOLD); ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!"); ANSI(fd, WHITE); ANSI(fd, NORMAL); return(0); @@ -64,21 +67,21 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(ext_ptr) { if(F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "±× Ãⱸ´Â ´ÝÇô ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 닫혀 있습니다."); return(0); } sprintf(file, "%s/r%02d/r%05d", ROOMPATH,ext_ptr->room/1000, ext_ptr->room); if(!file_exists(file)) { - print(fd, "Áöµµ°¡ ¾ø½À´Ï´Ù."); + print(fd, "ì§€ë�„ê°€ 없습니다."); return(0); } load_rom(ext_ptr->room, &new_rom); if(!new_rom || rom_ptr == new_rom) { - print(fd, "Áöµµ°¡ ¾ø½À´Ï´Ù."); + print(fd, "ì§€ë�„ê°€ 없습니다."); return(0); } if(F_ISSET(new_rom, RONMAR) || F_ISSET(new_rom, RONFML)) { - print(fd, "±× ¹æÀº º¼ ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ ë°©ì�€ ë³¼ 수가 없습니다."); return(0); } display_rom(ply_ptr, new_rom); @@ -121,17 +124,17 @@ cmd *cmnd; if(obj_ptr->description[0]) print(fd, "%s\n", obj_ptr->description); else - print(fd, "Ưº°ÇÑ Á¡ÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "특별한 ì �ì�´ 없습니다.\n"); if(F_ISSET(ply_ptr, PKNOWA)) { if(F_ISSET(obj_ptr, OGOODO)) - print(fd, "Ǫ¸¥ ±¤Ã¤°¡ »¸¾î ³ª¿À°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "푸른 광채가 ë»—ì–´ 나오고 있습니다.\n"); if(F_ISSET(obj_ptr, OEVILO)) - print(fd, "ºÓÀº ±¤Ã¤°¡ »¸¾î ³ª¿À°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "붉ì�€ 광채가 ë»—ì–´ 나오고 있습니다.\n"); } if(F_ISSET(obj_ptr, OCONTN)) { - strcpy(str, "³»¿ë¹°: "); + strcpy(str, "내용물: "); n = list_obj(&str[8], ply_ptr, obj_ptr->first_obj); if(n) print(fd, "%s.\n", str); @@ -140,11 +143,11 @@ cmd *cmnd; if(obj_ptr->type <= MISSILE) { print(fd, "%I%j ", obj_ptr,"0"); switch(obj_ptr->type) { - case SHARP: print(fd, "¸Å¿ì ³¯Ä«·Î¿î 'µµ'ÀÔ´Ï´Ù.\n"); break; - case THRUST: print(fd, "¸Å¿ì °ø°ÝÀûÀÎ '°Ë'ÀÔ´Ï´Ù.\n"); break; - case POLE: print(fd, "³¯ÀÌ ¹Ù¦ ¼± 'â'ÀÔ´Ï´Ù.\n"); break; - case BLUNT: print(fd, "¸Å¿ì À§·ÂÀûÀÎ 'ºÀ'ÀÔ´Ï´Ù.\n"); break; - case MISSILE: print(fd, "¸Å¿ì °­·ÂÇÏ°Ô º¸ÀÌ´Â '±Ã'ÀÔ´Ï´Ù.\n"); break; + case SHARP: print(fd, "매우 날카로운 'ë�„'입니다.\n"); break; + case THRUST: print(fd, "매우 공격ì �ì�¸ 'ê²€'입니다.\n"); break; + case POLE: print(fd, "ë‚ ì�´ ë°”ì§� ì„  'ì°½'입니다.\n"); break; + case BLUNT: print(fd, "매우 위력ì �ì�¸ 'ë´‰'입니다.\n"); break; + case MISSILE: print(fd, "매우 강력하게 ë³´ì�´ëŠ” 'ê¶�'입니다.\n"); break; } } @@ -152,77 +155,77 @@ cmd *cmnd; obj_ptr->type == LIGHTSOURCE || obj_ptr->type == WAND || obj_ptr->type == KEY) { if(obj_ptr->shotscur < 1) - print(fd, "±×°ÍÀº ºÎ¼­Á® ¹ö·È°Å³ª ´Ù ½á¹ö·È½À´Ï´Ù.\n"); + print(fd, "그것ì�€ 부서져 버렸거나 다 ì�¨ë²„렸습니다.\n"); else if(obj_ptr->shotscur <= obj_ptr->shotsmax/10) - print(fd, "±×°ÍÀº °ð ºÎ¼­Áú°Í °°½À´Ï´Ù.\n"); + print(fd, "그것ì�€ ê³§ 부서질것 같습니다.\n"); } return(0); } - if(!strcmp(cmnd->str[1],"³ª")) crt_ptr=ply_ptr; + if(!strcmp(cmnd->str[1],"나")) crt_ptr=ply_ptr; else crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, cmnd->str[1], cmnd->val[1]); if(crt_ptr) { if(!strncmp(crt_ptr->name, ply_ptr->name, strlen(crt_ptr->name))) { - print(fd,"´ç½ÅÀº °Å¿ïÀ» µé°í ÀÚ½ÅÀ» º¾´Ï´Ù.\n"); + print(fd,"당신ì�€ 거울ì�„ 들고 ìž�ì‹ ì�„ 봅니다.\n"); broadcast_rom(fd,rom_ptr->rom_num, - "\n%M%j °Å¿ïÀ» µé°í ÀÚ½ÅÀ» ¹Ù¶ó º¾´Ï´Ù.",ply_ptr,"1"); + "\n%M%j 거울ì�„ 들고 ìž�ì‹ ì�„ ë°”ë�¼ 봅니다.",ply_ptr,"1"); } else { - print(fd, "´ç½ÅÀº %1M%j º¾´Ï´Ù.\n", crt_ptr,"3"); + print(fd, "당신ì�€ %1M%j 봅니다.\n", crt_ptr,"3"); broadcast_rom(fd,rom_ptr->rom_num, - "\n%M%j %M%j º¾´Ï´Ù.",ply_ptr,"1",crt_ptr,"3"); + "\n%M%j %M%j 봅니다.",ply_ptr,"1",crt_ptr,"3"); } if(crt_ptr->type == PLAYER && F_ISSET(crt_ptr, PMARRI)) { - print(fd, "%s´Â %s´Ô°ú °áÈ¥ÇÑ ±âÈ¥ÀÚÀÔ´Ï´Ù.\n", - F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à", &crt_ptr->key[2][1]); + print(fd, "%s는 %s님과 결혼한 기혼ìž�입니다.\n", + F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀", &crt_ptr->key[2][1]); } if(crt_ptr->type != PLAYER) { if(crt_ptr->description[0]) print(fd, "%s\n", crt_ptr->description); else - print(fd, "Ưº°ÇÑ °ÍÀº º¸ÀÌÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "특별한 것ì�€ ë³´ì�´ì§€ 않습니다.\n"); } else { - print(fd, "%s´Â %s¼­ ÀÖ½À´Ï´Ù.\n", F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à", + print(fd, "%s는 %s서 있습니다.\n", F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀", crt_ptr->description); } if(F_ISSET(ply_ptr, PKNOWA) && crt_ptr->alignment!=0) { - print(fd, "%s¿¡°Ô¼­ ", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%sì—�게서 ", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->alignment < 0) - print(fd, "ºÓÀº ±¤Ã¤"); - else print(fd, "Ǫ¸¥ ±¤Ã¤"); - print(fd, "°¡ »¸¾î ³ª¿À°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "붉ì�€ 광채"); + else print(fd, "푸른 광채"); + print(fd, "ê°€ ë»—ì–´ 나오고 있습니다.\n"); } if(crt_ptr->hpcur < (crt_ptr->hpmax*9)/10 && (crt_ptr->hpcur > (crt_ptr->hpmax*8)/10) ) - print(fd, "%s´Â °¡º­¿î »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 가벼운 ìƒ�처를 입었습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->hpcur < (crt_ptr->hpmax*8)/10 && (crt_ptr->hpcur > (crt_ptr->hpmax*6)/10) ) - print(fd, "%s´Â ¿©·¯±ºµ¥ »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 여러군ë�° ìƒ�처를 입었습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->hpcur < (crt_ptr->hpmax*6)/10 && (crt_ptr->hpcur > (crt_ptr->hpmax*4)/10) ) - print(fd, "%s´Â ¸¹Àº »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 ë§Žì�€ ìƒ�처를 입었습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->hpcur < (crt_ptr->hpmax*4)/10 && (crt_ptr->hpcur > (crt_ptr->hpmax*2)/10) ) - print(fd, "%s´Â ½É°¢ÇÑ »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 심ê°�한 ìƒ�처를 입었습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->hpcur < (crt_ptr->hpmax*2)/10) - print(fd, "%s´Â Á×±â Á÷ÀüÀÔ´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 죽기 ì§�전입니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(is_enm_crt(ply_ptr->name, crt_ptr)) - print(fd, "%s´Â ´ç½Å¿¡°Ô ¸Å¿ì È­°¡ ³­°Í °°½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 당신ì—�게 매우 화가 난것 같습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->first_enm) { if(!strcmp(crt_ptr->first_enm->enemy, ply_ptr->name)) - print(fd, "%s´Â ´ç½Å°ú ½Î¿ì°í ÀÖ½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 당신과 싸우고 있습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); else - print(fd, "%s´Â %S%j ½Î¿ì°í ÀÖ½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à", + print(fd, "%s는 %S%j 싸우고 있습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀", crt_ptr->first_enm->enemy,"2"); } consider(ply_ptr, crt_ptr); @@ -235,39 +238,39 @@ cmd *cmnd; cmnd->val[1]); if(crt_ptr) { - print(fd, "´ç½ÅÀº %M%j º¾´Ï´Ù.\n",crt_ptr,"3"); - broadcast_rom(fd,rom_ptr->rom_num,"\n%M%j %M%j º¾´Ï´Ù.",ply_ptr,"1",crt_ptr,"3"); + print(fd, "당신ì�€ %M%j 봅니다.\n",crt_ptr,"3"); + broadcast_rom(fd,rom_ptr->rom_num,"\n%M%j %M%j 봅니다.",ply_ptr,"1",crt_ptr,"3"); if(crt_ptr->type == PLAYER && F_ISSET(crt_ptr, PMARRI)) { - print(fd, "%s´Â %s´Ô°ú °áÈ¥ÇÑ ±âÈ¥ÀÚÀÔ´Ï´Ù.\n", - F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à", &crt_ptr->key[2][1]); + print(fd, "%s는 %s님과 결혼한 기혼ìž�입니다.\n", + F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀", &crt_ptr->key[2][1]); } if(crt_ptr->type != PLAYER) { if(crt_ptr->description[0]) print(fd, "%s\n", crt_ptr->description); else - print(fd, "Ưº°ÇÑ °ÍÀº º¸ÀÌÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "특별한 것ì�€ ë³´ì�´ì§€ 않습니다.\n"); } else { - print(fd, "%s´Â %s¼­ ÀÖ½À´Ï´Ù.\n", F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à", + print(fd, "%s는 %s서 있습니다.\n", F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀", crt_ptr->description); } if(F_ISSET(ply_ptr, PKNOWA) && crt_ptr->alignment>=-100 && crt_ptr->alignment<101) { - print(fd, "%s¿¡°Ô¼­ ", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%sì—�게서 ", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); if(crt_ptr->alignment < -100) - print(fd, "ºÓÀº ±¤Ã¤"); - else print(fd, "Ǫ¸¥ ±¤Ã¤"); - print(fd, "°¡ »¸¾î ³ª¿À°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "붉ì�€ 광채"); + else print(fd, "푸른 광채"); + print(fd, "ê°€ ë»—ì–´ 나오고 있습니다.\n"); } if(crt_ptr->hpcur < (crt_ptr->hpmax*3)/10) - print(fd, "%s´Â °¡º­¿î »óó¸¦ ÀÔ¾ú½À´Ï´Ù.\n", - F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à"); + print(fd, "%s는 가벼운 ìƒ�처를 입었습니다.\n", + F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀"); equip_list(fd, crt_ptr); return(0); } else - print(fd, "±×·± °Ç º¸ÀÌÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "그런 ê±´ ë³´ì�´ì§€ 않습니다.\n"); return(0); @@ -303,8 +306,8 @@ cmd *cmnd; t=time(0); -/* À̵¿ µô·¹ÀÌ ¾ø¾Ú. - = »þ(0); +/* ì�´ë�™ 딜레ì�´ 없앰. + = 샤(0); if(ply_ptr->lasttime[LT_MOVED].ltime == t) { if(++ply_ptr->lasttime[LT_MOVED].misc > 2) { please_wait(fd, 1); @@ -326,22 +329,22 @@ cmd *cmnd; */ /* - if(!strcmp(str,"¤¤¤µ") || !strcmp(str,"¤µ¤¤") || !strcmp(str,"24") || !strcmp(str,"42") || !strcmp(str,"¼­³²")) - strcpy(tempstr, "³²¼­"); - else if(!strcmp(str,"¤²¤µ") || !strcmp(str,"¤µ¤²") || !strcmp(str,"84") || !strcmp(str,"48") || !strcmp(str,"¼­ºÏ")) - strcpy(tempstr, "ºÏ¼­"); - else if(!strcmp(str,"¤¤¤§") || !strcmp(str,"¤§¤¤") || !strcmp(str,"26") || !strcmp(str,"62") || !strcmp(str,"µ¿³²")) - strcpy(tempstr, "³²µ¿"); - else if(!strcmp(str,"¤²¤§") || !strcmp(str,"¤§¤²") || !strcmp(str,"86") || !strcmp(str,"68") || !strcmp(str,"µ¿ºÏ")) - strcpy(tempstr, "ºÏµ¿"); + if(!strcmp(str,"ã„´ã……") || !strcmp(str,"ã……ã„´") || !strcmp(str,"24") || !strcmp(str,"42") || !strcmp(str,"서남")) + strcpy(tempstr, "남서"); + else if(!strcmp(str,"ã…‚ã……") || !strcmp(str,"ã……ã…‚") || !strcmp(str,"84") || !strcmp(str,"48") || !strcmp(str,"서ë¶�")) + strcpy(tempstr, "ë¶�서"); + else if(!strcmp(str,"ã„´ã„·") || !strcmp(str,"ã„·ã„´") || !strcmp(str,"26") || !strcmp(str,"62") || !strcmp(str,"ë�™ë‚¨")) + strcpy(tempstr, "남ë�™"); + else if(!strcmp(str,"ã…‚ã„·") || !strcmp(str,"ã„·ã…‚") || !strcmp(str,"86") || !strcmp(str,"68") || !strcmp(str,"ë�™ë¶�")) + strcpy(tempstr, "ë¶�ë�™"); else */ - if(str[0]=='2' || !strcmp(str,"É¥£¢") || !strcmp(str,"¤¤")) strcpy(tempstr, "³²"); - else if(str[0]=='4' || !strcmp(str,"ɬ£¢") || !strcmp(str,"¤µ")) strcpy(tempstr, "¼­"); - else if(str[0]=='6' || !strcmp(str,"ɦ£¢") || !strcmp(str,"¤§")) strcpy(tempstr, "µ¿"); - else if(str[0]=='8' || !strcmp(str,"ɪ£¢") || !strcmp(str,"¤²")) strcpy(tempstr, "ºÏ"); - else if(str[0]=='3' || !strcmp(str,"É©£¢") || !strcmp(str,"¤±")) strcpy(tempstr, "¹Ø"); - else if(str[0]=='9' || !strcmp(str,"É®£¢") || !strcmp(str,"¤·")) strcpy(tempstr, "À§"); - else if(!strcmp(str,"³ª°¡")) strcpy(tempstr, "¹Û"); + if(str[0]=='2' || !strcmp(str,"�ⅲ�") || !strcmp(str,"ã„´")) strcpy(tempstr, "남"); + else if(str[0]=='4' || !strcmp(str,"�В�") || !strcmp(str,"ã……")) strcpy(tempstr, "서"); + else if(str[0]=='6' || !strcmp(str,"�┌�") || !strcmp(str,"ã„·")) strcpy(tempstr, "ë�™"); + else if(str[0]=='8' || !strcmp(str,"�ã�ƒï¿½") || !strcmp(str,"ã…‚")) strcpy(tempstr, "ë¶�"); + else if(str[0]=='3' || !strcmp(str,"�ð�") || !strcmp(str,"ã…�")) strcpy(tempstr, "ë°‘"); + else if(str[0]=='9' || !strcmp(str,"��"") || !strcmp(str,"ã…‡")) strcpy(tempstr, "위"); + else if(!strcmp(str,"나가")) strcpy(tempstr, "ë°–"); else strcpy(tempstr, str); xp = rom_ptr->first_ext; @@ -355,17 +358,17 @@ cmd *cmnd; } if(!found) { - print(fd, "±æÀÌ ¸·Çô ÀÖ½À´Ï´Ù."); + print(fd, "길ì�´ 막혀 있습니다."); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "´ç½ÅÀº ¿òÁ÷Àϼö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 움ì§�ì�¼ìˆ˜ 없습니다."); return(0); } if(ply_is_attacking(ply_ptr, cmnd)) { - print(fd, "½Î¿ì´Â Áß¿¡´Â À̵¿ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "싸우는 중ì—�는 ì�´ë�™í•  수 없습니다."); return(0); } @@ -378,33 +381,33 @@ cmd *cmnd; if(dmg==30 || dmg==93 || dmg==75 || dmg==100 || dmg==150 || dmg==200 || dmg == 120 || dmg == 4 || dmg == 8 || dmg== 105 || dmg == 127) { - print(fd, "µ¹¿¡ °É·Á ³Ñ¾îÁ³½À´Ï´Ù. Äô!"); + print(fd, "ë�Œì—� 걸려 넘어졌습니다. 쿵!"); return(0); } */ if(F_ISSET(xp->ext, XLOCKD)) { - print(fd, "¹®ÀÌ Àá°Ü ÀÖ½À´Ï´Ù."); + print(fd, "문ì�´ 잠겨 있습니다."); return(0); } else if(F_ISSET(xp->ext, XCLOSD)) { - print(fd, "¹®ÀÌ ´ÝÇô ÀÖ½À´Ï´Ù."); + print(fd, "문ì�´ 닫혀 있습니다."); return(0); } if(F_ISSET(xp->ext, XFLYSP) && !F_ISSET(ply_ptr, PFLYSP)) { - print(fd, "±× ÂÊÀ¸·Î´Â ³¯¾Æ¼­ °¡¾ß µÉ°Í °°±º¿ä."); + print(fd, "ê·¸ 쪽으로는 날아서 가야 ë� ê²ƒ 같군요."); return(0); } t = Time%24L; if(F_ISSET(xp->ext, XNGHTO) && (t>6 && t < 20)) { - print(fd, "±× Ãⱸ´Â ¹ã¿¡¸¸ ¿­·Á ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 ë°¤ì—�ë§Œ ì—´ë ¤ 있습니다."); return(0); } if(F_ISSET(xp->ext, XDAYON) && (t<6 || t > 20)){ - print(fd, "±× Ãⱸ´Â ¹ã¿¡´Â ´ÝÇô ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 ë°¤ì—�는 닫혀 있습니다."); return(0); } @@ -413,11 +416,11 @@ cmd *cmnd; while(cp) { if(F_ISSET(cp->crt, MPGUAR)) { if(!F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < SUB_DM) { - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» ¸·½À´Ï´Ù.", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 막습니다.", cp->crt,"1"); return(0); } if(F_ISSET(cp->crt, MDINVI) && ply_ptr->class < SUB_DM) { - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» ¸·½À´Ï´Ù.", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 막습니다.", cp->crt,"1"); return(0); } } @@ -426,17 +429,17 @@ cmd *cmnd; } if(F_ISSET(xp->ext, XFEMAL) && F_ISSET(ply_ptr, PMALES)){ - print(fd, "¿©¼º¸¸ µé¾î°¥¼ö ÀÖ½À´Ï´Ù. ¿©ÅÁÀΰ¡~~"); + print(fd, "여성만 들어갈수 있습니다. 여탕ì�¸ê°€~~"); return(0); } if(F_ISSET(xp->ext, XMALES) && !F_ISSET(ply_ptr, PMALES)){ - print(fd, "³²¼º¸¸ µé¾î°¥¼ö ÀÖ½À´Ï´Ù."); + print(fd, "남성만 들어갈수 있습니다."); return(0); } if(F_ISSET(xp->ext, XNAKED) && weight_ply(ply_ptr)) { - print(fd, "¹» °¡Áö°í´Â µé¾î°¥¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë­˜ 가지고는 들어갈수 없습니다."); return(0); } @@ -448,16 +451,16 @@ cmd *cmnd; if(mrand(1,100) < fall) { dmg = mrand(5,15+fall/10); if(ply_ptr->hpcur <= dmg){ - print(fd, "´ç½ÅÀº Á×À½ÀÌ ´Ù°¡¿À´Â°Í°°Àº ´À³¦ÀÌ µì´Ï´Ù."); + print(fd, "당신ì�€ 죽ì�Œì�´ 다가오는것같ì�€ ëŠ�낌ì�´ 듭니다."); ply_ptr->hpcur=0; - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j ±¸µ¢ÀÌ¿¡ ¶³¾îÁ®¼­ Á×¾ú½À´Ï´Ù.", ply_ptr,"1"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j 구ë�©ì�´ì—� 떨어져서 죽었습니다.", ply_ptr,"1"); die(ply_ptr, ply_ptr); return(0); } ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº ±¸µ¢ÀÌ¿¡ ¶³¾îÁ®¼­ %d ¸¸Å­ÀÇ »óó¸¦ ÀÔ¾ú½À´Ï´Ù", + print(fd, "당신ì�€ 구ë�©ì�´ì—� 떨어져서 %d ë§Œí�¼ì�˜ ìƒ�처를 입었습니다", dmg); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j ±¸µ¢ÀÌ¿¡ ¶³¾îÁ³½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j 구ë�©ì�´ì—� 떨어졌습니다.", ply_ptr,"1"); if(F_ISSET(xp->ext, XCLIMB)) return(0); @@ -474,7 +477,7 @@ cmd *cmnd; if(mrand(1,100) > chance) { - print(fd,"´ç½ÅÀº Àº½Å¼úÀ» »ç¿ëÇϴµ¥ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì�€ì‹ ìˆ ì�„ 사용하는ë�° 실패하였습니다.\n"); F_CLR(ply_ptr, PHIDDN); cp = rom_ptr->first_mon; @@ -482,7 +485,7 @@ cmd *cmnd; if(F_ISSET(cp->crt, MBLOCK) && is_enm_crt(ply_ptr->name, cp->crt) && F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < SUB_DM) { - print(fd, "%M°¡ ´ç½ÅÀÇ ±æÀ» °¡·Î¸·½À´Ï´Ù.\n", cp->crt); + print(fd, "%Mê°€ 당신ì�˜ 길ì�„ 가로막습니다.\n", cp->crt); return(0); } cp = cp->next_tag; @@ -500,35 +503,35 @@ cmd *cmnd; load_rom(xp->ext->room, &rom_ptr); if(rom_ptr == old_rom_ptr) { - print(fd, "±×ÂÊÀ¸·Î Áöµµ°¡ ¾ø½À´Ï´Ù. ½Å¿¡°Ô ¿¬¶ôÇØ ÁÖ¼¼¿ä."); + print(fd, "그쪽으로 ì§€ë�„ê°€ 없습니다. ì‹ ì—�게 ì—°ë�½í•´ 주세요."); return(0); } n = count_vis_ply(rom_ptr); if(rom_ptr->lolevel > ply_ptr->level && ply_ptr->class lolevel); return(0); } else if(ply_ptr->level > rom_ptr->hilevel && rom_ptr->hilevel && ply_ptr->class < CARETAKER) { - print(fd, "±×°÷À¸·Î °¥·Á¸é ·¹º§ %dÀÌÇÏ¿©¾ß¸¸ ÇÕ´Ï´Ù.", + print(fd, "그곳으로 갈려면 레벨 %dì�´í•˜ì—¬ì•¼ë§Œ 합니다.", rom_ptr->hilevel); return(0); } else if((F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || (F_ISSET(rom_ptr, RTHREE) && n > 2)) { - print(fd, "±× ¹æ¿¡ ÀÖ´Â »ç¿ëÀÚ°¡ ³Ê¹« ¸¹½À´Ï´Ù."); + print(fd, "ê·¸ ë°©ì—� 있는 사용ìž�ê°€ 너무 많습니다."); return(0); } else if((F_ISSET(rom_ptr, RFAMIL)) && !F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "±×°÷¿¡´Â ÆÐ°Å¸® °¡ÀÔÀÚ¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù. "); + print(fd, "그곳ì—�는 패거리 가입ìž�ë§Œ ê°ˆ 수 있습니다. "); return(0); } else if(ply_ptr->class < DM && (F_ISSET(rom_ptr, RONFML)) && (ply_ptr->daily[DL_EXPND].max != rom_ptr->special)) { - print(fd, "±×°÷Àº ´ç½ÅÀÌ °¥¼ö ¾ø´Â °÷ÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 당신ì�´ 갈수 없는 곳입니다."); return(0); } else if(ply_ptr->class < DM && (F_ISSET(rom_ptr, RONMAR)) && @@ -545,7 +548,7 @@ cmd *cmnd; } fclose(fp); } - print(fd, "±×°÷Àº »çÀ¯ÁöÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 사유지입니다."); return(0); } @@ -553,11 +556,11 @@ cmd *cmnd; if(t-login_time[fd]<120) login_time[fd]-=120; if(ply_ptr->class == DM && !F_ISSET(ply_ptr, PDMINV)){ - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%Mì�´ %s쪽으로 갔습니다.", ply_ptr, tempstr); } if(!F_ISSET(ply_ptr, PDMINV) && ply_ptr->class < DM) { - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%Mì�´ %s쪽으로 갔습니다.", ply_ptr, tempstr); } @@ -576,7 +579,7 @@ cmd *cmnd; move(cp->crt, cmnd); if(F_ISSET(cp->crt, MDMFOL) && cp->crt->rom_num == old_rom_num && cp->crt->type == MONSTER) { del_crt_rom(cp->crt, old_rom_ptr); - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", cp->crt, tempstr); + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%Mì�´ %s쪽으로 갔습니다.", cp->crt, tempstr); add_crt_rom(cp->crt, rom_ptr, 1); add_active(cp->crt); } @@ -587,7 +590,7 @@ cmd *cmnd; cp = old_rom_ptr->first_mon; while(cp) { if(!F_ISSET(cp->crt, MFOLLO) || F_ISSET(cp->crt, MDMFOL)) { - /* Åõ¸íÀ϶§´Â ¾Èµû¶ó°¡°Ô..*/ + /* 투명ì�¼ë•ŒëŠ” 안따ë�¼ê°€ê²Œ..*/ if((!F_ISSET(cp->crt,MDINVI) && F_ISSET(ply_ptr,PINVIS)) || F_ISSET(ply_ptr,PDMINV)) { cp = cp->next_tag; @@ -607,8 +610,8 @@ cmd *cmnd; cp = cp->next_tag; continue; } - print(fd, "\n%M%j ´ç½ÅÀ» µû¶ó¿É´Ï´Ù.", cp->crt,"1"); - broadcast_rom(fd, old_rom_num, "\n%M%j %M%j µû¶ó°©´Ï´Ù.", + print(fd, "\n%M%j 당신ì�„ ë”°ë�¼ì˜µë‹ˆë‹¤.", cp->crt,"1"); + broadcast_rom(fd, old_rom_num, "\n%M%j %M%j ë”°ë�¼ê°‘니다.", cp->crt, "1", ply_ptr,"3"); temp = cp->next_tag; crt_ptr = cp->crt; @@ -635,7 +638,7 @@ cmd *cmnd; /* in the first parameter to say something to all the other people in */ /* the room. */ -/* say = ¸» */ +/* say = ë§� */ int say(ply_ptr, cmnd) creature *ply_ptr; cmd *cmnd; @@ -661,22 +664,22 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(index == -1 || strlen(&cmnd->fullstr[0]) ==0) { - print(fd, "¹» ¸»ÇÏ°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "ë­˜ ë§�하고 싶으세요?"); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "¸»À» ÇØ º¸¾ÒÁö¸¸ ÀÌ ¹æ ¹ÛÀÇ »ç¶÷µéÀº µé¸®Áö ¾Ê´Âµí Çϱº¿ä."); + print(fd, "ë§�ì�„ í•´ 보았지만 ì�´ ë°© ë°–ì�˜ 사람들ì�€ 들리지 않는듯 하군요."); return(0); } F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PLECHO)){ - print(fd, "´ç½ÅÀº \"%s\"¶ó°í ¸»ÇÕ´Ï´Ù.", &cmnd->fullstr[0]); + print(fd, "당신ì�€ \"%s\"ë�¼ê³  ë§�합니다.", &cmnd->fullstr[0]); } else - print(fd, "¿¹. ÁÁ½À´Ï´Ù."); + print(fd, "예. 좋습니다."); - broadcast_rom(fd, rom_ptr->rom_num, "\n%C%M%j \"%s\"¶ó°í ¸»ÇÕ´Ï´Ù.%D", + broadcast_rom(fd, rom_ptr->rom_num, "\n%C%M%j \"%s\"ë�¼ê³  ë§�합니다.%D", "36",ply_ptr,"1", &cmnd->fullstr[0],"37"); cmnd->fullstr[index]=' '; @@ -704,7 +707,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹» ÁÖ¿ì½Ã°Ô¿ä?"); + print(fd, "ë­˜ 주우시게요?"); return(0); } @@ -726,28 +729,28 @@ cmd *cmnd; obj_temp=NULL; obj_temp = find_obj(ply_ptr, rom_ptr->first_obj, - "ÃÊÀÎÀÇ µ¹", cmnd->val[1]); + "ì´ˆì�¸ì�˜ ë�Œ", cmnd->val[1]); if(obj_temp && ply_ptr->class < CARETAKER) { if(obj_temp->value == 1001) { - print(fd, "ÃÊÀÎÀÇ µ¹ÀÇ ÈûÀÌ ´ç½ÅÀÌ ¹«¾ð°¡¸¦ Áݴ°ÍÀ» ¹æÇØÇÕ´Ï´Ù."); + print(fd, "ì´ˆì�¸ì�˜ ë�Œì�˜ 힘ì�´ 당신ì�´ 무언가를 ì¤�는것ì�„ 방해합니다."); return(0); } } if(cp && ply_ptr->class < CARETAKER) { - print(fd, "%M%j ´ç½ÅÀÌ ¾î¶²°ÍÀ» ÁÝ´Â °ÍÀ» ¹æÇØÇÕ´Ï´Ù.", cp->crt,"1"); + print(fd, "%M%j 당신ì�´ 어떤것ì�„ ì¤�는 것ì�„ 방해합니다.", cp->crt,"1"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { - print(fd, "±×·± °Ç º¸ÀÌÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 ê±´ ë³´ì�´ì§€ 않습니다."); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { get_all_rom(ply_ptr,cmnd->str[1]); return(0); } - if(!strncmp(cmnd->str[1], "¸ðµç",4)) { - get_all_rom(ply_ptr,cmnd->str[1]+4); + if(!strncmp(cmnd->str[1], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + get_all_rom(ply_ptr, cmnd->str[1] + UTF8_PREFIX_ALL_LEN); return(0); } @@ -755,29 +758,29 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "±×·±°Ç ¿©±â ¾ø¾î¿ä."); + print(fd, "그런건 여기 없어요."); return(0); } if(F_ISSET(obj_ptr, OINVIS)) { - print(fd, "±×·±°Ç ¿©±â ¾ø¾î¿ä."); + print(fd, "그런건 여기 없어요."); return(0); } if(F_ISSET(obj_ptr, ONOTAK) || F_ISSET(obj_ptr, OSCENE)) { - print(fd, "ÁÖÀ» ¼ö ÀÖ´Â ¹°°ÇÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "주ì�„ 수 있는 물건ì�´ 아닙니다."); return(0); } if(weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr) || cnt>150) { - print(fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다.\n"); return(0); } if(obj_ptr->questnum && Q_ISSET(ply_ptr, obj_ptr->questnum-1)) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» ÁÖ¿ï¼ö ¾ø½À´Ï´Ù. %s.", - "ÀÌ¹Ì ´ç½ÅÀº ÀÓ¹«¸¦ ¿Ï¼öÇÏ¿´½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 주울수 없습니다. %s.", + "ì�´ë¯¸ 당신ì�€ 임무를 완수하였습니다."); return(0); } @@ -791,23 +794,23 @@ cmd *cmnd; F_CLR(obj_ptr, OHIDDN); del_obj_rom(obj_ptr, rom_ptr); - print(fd, "´ç½ÅÀº %1i%j ÁݽÀ´Ï´Ù.", obj_ptr,"3"); + print(fd, "당신ì�€ %1i%j ì¤�습니다.", obj_ptr,"3"); if(obj_ptr->questnum) { - print(fd, "ÀÓ¹«¸¦ ¿Ï¼öÇÏ¿´½À´Ï´Ù. ¹ö¸®Áö ¸¶½Ê½Ã¿ä!."); - print(fd, "¹ö¸®¸é ´Ù½Ã´Â ÁÖ¿ï ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "임무를 완수하였습니다. 버리지 마십시요!."); + print(fd, "버리면 다시는 주울 수가 없습니다."); Q_SET(ply_ptr, obj_ptr->questnum-1); ply_ptr->experience += quest_exp[obj_ptr->questnum-1]; - print(fd, "´ç½ÅÀº °æÇèÄ¡ %ld¸¦ ¹Þ¾Ò½À´Ï´Ù.", + print(fd, "당신ì�€ 경험치 %ld를 받았습니다.", quest_exp[obj_ptr->questnum-1]); add_prof(ply_ptr,quest_exp[obj_ptr->questnum-1]); } - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ÁݽÀ´Ï´Ù.", + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ì¤�습니다.", ply_ptr, "1", obj_ptr,"3"); if(obj_ptr->type == MONEY) { ply_ptr->gold += obj_ptr->value; free_obj(obj_ptr); - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °®°í ÀÖ½À´Ï´Ù.", + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ ê°–ê³  있습니다.", ply_ptr->gold); } else @@ -838,34 +841,34 @@ cmd *cmnd; } if(!cnt_ptr) { - print(fd, "±×·±°ÍÀº º¸ÀÌÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런것ì�€ ë³´ì�´ì§€ 않습니다."); return(0); } if(!F_ISSET(cnt_ptr, OCONTN)) { - print(fd, "±×°ÍÀº ´ã´Â Á¾·ù°¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "그것ì�€ 담는 종류가 아닙니다."); return(0); } - if(!strcmp(cmnd->str[2], "¸ðµÎ")) { + if(!strcmp(cmnd->str[2], "모ë‘�")) { get_all_obj(ply_ptr, cnt_ptr,cmnd->str[2]); return(0); } - if(!strncmp(cmnd->str[2], "¸ðµç",4)) { - get_all_obj(ply_ptr, cnt_ptr,cmnd->str[2]+4); + if(!strncmp(cmnd->str[2], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + get_all_obj(ply_ptr, cnt_ptr, cmnd->str[2] + UTF8_PREFIX_ALL_LEN); return(0); } obj_ptr = find_obj(ply_ptr, cnt_ptr->first_obj, cmnd->str[2], cmnd->val[2]); if(!obj_ptr) { - print(fd, "±× ¾È¿¡ ±×·±°ÍÀº ¾ø¾î¿ä."); + print(fd, "ê·¸ 안ì—� 그런것ì�€ 없어요."); return(0); } if((weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr) && cnt_ptr->parent_rom) || cnt>150) { - print(fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다."); return(0); } @@ -874,8 +877,8 @@ cmd *cmnd; cnt_ptr->shotscur--; del_obj_obj(obj_ptr, cnt_ptr); - print(fd, "´ç½ÅÀº %1i¿¡¼­ %1i%j ²¨³À´Ï´Ù.", cnt_ptr, obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %1i¿¡¼­ %1i%j ²¨³À´Ï´Ù.", + print(fd, "당신ì�€ %1iì—�서 %1i%j 꺼냅니다.", cnt_ptr, obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %1iì—�서 %1i%j 꺼냅니다.", ply_ptr, cnt_ptr, obj_ptr,"3"); if(F_ISSET(cnt_ptr, OPERMT)) { @@ -888,7 +891,7 @@ cmd *cmnd; if(obj_ptr->type == MONEY) { ply_ptr->gold += obj_ptr->value; free_obj(obj_ptr); - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù.", + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ 가지고 있습니다.", ply_ptr->gold); } else @@ -923,7 +926,7 @@ char *part_obj; cnt += count_inv(ply_ptr, -1); - if(!strcmp(part_obj,"¸ðµÎ")) { + if(!strcmp(part_obj,"모ë‘�")) { index=0; } last_obj = 0; str[0] = 0; @@ -969,12 +972,12 @@ char *part_obj; F_CLR(obj_ptr, OHIDDN); cnt++; if(obj_ptr->questnum) { - print(fd,"ÀÓ¹«¸¦ ¿Ï¼öÇÏ¿´½À´Ï´Ù! ¹ö¸®Áö ¸¶½Ê½Ã¿ä!.\n"); - print(fd,"¹ö¸®¸é ´Ù½Ã ÁÖ¿ï ¼ö ¾ø½À´Ï´Ù."); + print(fd,"임무를 완수하였습니다! 버리지 마십시요!.\n"); + print(fd,"버리면 다시 주울 수 없습니다."); Q_SET(ply_ptr, obj_ptr->questnum-1); ply_ptr->experience += quest_exp[obj_ptr->questnum-1]; - print(fd, "\n´ç½ÅÀº °æÇèÄ¡ %ld À» ¹Þ¾Ò½À´Ï´Ù.", + print(fd, "\n당신ì�€ 경험치 %ld ì�„ 받았습니다.", quest_exp[obj_ptr->questnum-1]); add_prof(ply_ptr,quest_exp[obj_ptr->questnum-1]); } @@ -1007,7 +1010,7 @@ char *part_obj; if(found && last_obj) strcat(str, obj_str(last_obj, n, 0)); else if(!found) { - print(fd, "¿©±â¿¡´Â ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù."); + print(fd, "여기ì—�는 아무것ë�„ 없습니다."); return; } @@ -1015,16 +1018,16 @@ char *part_obj; str[strlen(str)-2] = 0; if(heavy) { - print(fd, "°¡Áö°í Àִ°ÍÀÌ ³Ê¹« ¹«°Å¿ö ´õÀÌ»ó °¡Áú ¼ö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "가지고 있는것ì�´ 너무 무거워 ë�”ì�´ìƒ� 가질 수가 없습니다.\n"); if(heavy == found) return; } if(!strlen(str)) return; - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %S%j ÁݽÀ´Ï´Ù.", ply_ptr, "1",str,"3"); - print(fd, "´ç½ÅÀº %S%j ÁݽÀ´Ï´Ù.", str,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %S%j ì¤�습니다.", ply_ptr, "1",str,"3"); + print(fd, "당신ì�€ %S%j ì¤�습니다.", str,"3"); if(dogoldmsg) - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù.", + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ 가지고 있습니다.", ply_ptr->gold); } @@ -1054,7 +1057,7 @@ char *part_obj; if(ply_ptr->ready[i]) cnt++; cnt += count_inv(ply_ptr, -1); - if(!strcmp(part_obj,"¸ðµÎ")) { + if(!strcmp(part_obj,"모ë‘�")) { index=0; } last_obj = 0; str[0] = 0; @@ -1106,7 +1109,7 @@ char *part_obj; ply_ptr->gold += obj_ptr->value; free_obj(obj_ptr); last_obj = 0; - print(fd, "\n´ç½ÅÀº ÀÌÁ¦ %ld³ÉÀ» °¡Áö°í ÀÖ½À´Ï´Ù.", + print(fd, "\n당신ì�€ ì�´ì œ %ld냥ì�„ 가지고 있습니다.", ply_ptr->gold); } else { @@ -1121,20 +1124,20 @@ char *part_obj; if(found && last_obj) strcat(str, obj_str(last_obj, n, 0)); else if(!found) { - print(fd, "±× ¾È¿¡´Â ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 안ì—�는 아무것ë�„ 없습니다."); return; } if(heavy) { - print(fd, "°¡Áö°í ÀÖ´Â ¹°°ÇÀÌ ³Ê¹« ¹«°Å¿ö µé ¼ö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "가지고 있는 물건ì�´ 너무 무거워 들 수가 없습니다.\n"); if(heavy == found) return; } if(!strlen(str)) return; - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i¿¡¼­ %S%j ²¨³À´Ï´Ù.", + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1iì—�서 %S%j 꺼냅니다.", ply_ptr, "1",cnt_ptr, str,"3"); - print(fd, "´ç½ÅÀº %1i¿¡¼­ %S%j ²¨³À´Ï´Ù.", cnt_ptr, str,"3"); + print(fd, "당신ì�€ %1iì—�서 %S%j 꺼냅니다.", cnt_ptr, str,"3"); if(F_ISSET(cnt_ptr, OPERMT)) { resave_rom(rom_ptr->rom_num); #ifdef NODUPLE @@ -1202,7 +1205,7 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, BLUE); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î¼­ ¾Æ¹«°Íµµ º¼ ¼ö°¡ ¾ø½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어서 아무것ë�„ ë³¼ 수가 없습니다!"); ANSI(fd, WHITE); return(0); } @@ -1212,9 +1215,9 @@ cmd *cmnd; flags |= MAG; op = ply_ptr->first_obj; n=0; str[0]=0; - strcat(str, "¼ÒÁöǰ:\n "); + strcat(str, "소지품:\n "); if(!op) { - strcat(str, "¾øÀ½."); + strcat(str, "ì—†ì�Œ."); print(fd, "%s", str); return(0); } @@ -1265,12 +1268,11 @@ cmd *cmnd; otag *otag_ptr; object *obj_ptr, *cnt_ptr; int fd, n, match=0; - int len; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ¹ö¸®½Ç·Á±¸¿ä?"); + print(fd, "무엇ì�„ 버리실려구요?"); return(0); } @@ -1279,17 +1281,16 @@ cmd *cmnd; if(cmnd->num == 2) { - len=strlen(cmnd->str[1]); - if(len>2 && !strcmp(&cmnd->str[1][len-2],"³É")) { + if(utf8_ends_with((unsigned char *)cmnd->str[1], (unsigned char *)"냥")) { drop_money(ply_ptr, cmnd); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { drop_all_rom(ply_ptr,cmnd->str[1]); return(0); } - if(!strncmp(cmnd->str[1], "¸ðµç",4)) { - drop_all_rom(ply_ptr,cmnd->str[1]+4); + if(!strncmp(cmnd->str[1], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + drop_all_rom(ply_ptr, cmnd->str[1] + UTF8_PREFIX_ALL_LEN); return(0); } @@ -1297,28 +1298,28 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } -/* ÀÓ¹«¾ÆÀÌÅÛ ¹ö¸®Áö ¸øÇÏ°Ô ÇÔ */ +/* 임무아ì�´í…œ 버리지 못하게 함 */ if(obj_ptr->questnum && ply_ptr->classclass < DM) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀº ¹ö¸®Áö ¸øÇÕ´Ï´Ù."); + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�€ 버리지 못합니다."); return(0); } if(obj_ptr->first_obj) { for(otag_ptr=obj_ptr->first_obj; otag_ptr; otag_ptr=otag_ptr->next_tag) { if(otag_ptr->obj->questnum && ply_ptr->classobj, ONEWEV) && ply_ptr->class < DM) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀÌ µé¾îÀÖÀ¸¸é ¹ö¸®Áö ¸øÇÕ´Ï´Ù."); + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�´ 들어있으면 버리지 못합니다."); return(0); } } @@ -1328,8 +1329,8 @@ cmd *cmnd; #ifdef NODUPLE savegame_nomsg(ply_ptr); #endif - print(fd, "´ç½ÅÀº %1i%j ¹ö·È½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¹ö·È½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 버렸습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 버렸습니다.", ply_ptr,"1", obj_ptr,"3"); if(!F_ISSET(rom_ptr, RDUMPR)) add_obj_rom(obj_ptr, rom_ptr); @@ -1337,7 +1338,7 @@ cmd *cmnd; free_obj(obj_ptr); ply_ptr->gold += 10; ply_ptr->experience += 2; - print(fd, "\n´ç½ÅÀÇ ¹°°ÇÀ» Á¦¹°·Î ¹ÙÃÆ½À´Ï´Ù.\n´ç½ÅÀº ¾à°£ÀÇ »ó±Ý°ú °æÇèÀ» ¹Þ¾Ò½À´Ï´Ù."); + print(fd, "\n당신ì�˜ 물건ì�„ 제물로 바쳤습니다.\n당신ì�€ 약간ì�˜ ìƒ�금과 경험ì�„ 받았습니다."); } return(0); } @@ -1346,7 +1347,7 @@ cmd *cmnd; cnt_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[2], cmnd->val[2]); -/**** ¼öÁ¤¿ä±¸ÇÔ ****/ +/**** 수정요구함 ****/ if(!cnt_ptr) cnt_ptr = find_obj(ply_ptr, rom_ptr->first_obj, cmnd->str[2], cmnd->val[2]); @@ -1365,21 +1366,21 @@ cmd *cmnd; } if(!cnt_ptr) { - print(fd, "±×·± ¹°°ÇÀº ¾ø½À´Ï´Ù."); + print(fd, "그런 물건ì�€ 없습니다."); return(0); } if(!F_ISSET(cnt_ptr, OCONTN)) { - print(fd, "±×°ÍÀº ´ãÀ»¼ö Àִ°ÍÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "그것ì�€ ë‹´ì�„수 있는것ì�´ 아닙니다."); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { drop_all_obj(ply_ptr, cnt_ptr,cmnd->str[1]); return(0); } - if(!strncmp(cmnd->str[1], "¸ðµç",4)) { - drop_all_obj(ply_ptr, cnt_ptr,cmnd->str[1]+4); + if(!strncmp(cmnd->str[1], UTF8_PREFIX_ALL, UTF8_PREFIX_ALL_LEN)) { + drop_all_obj(ply_ptr, cnt_ptr, cmnd->str[1] + UTF8_PREFIX_ALL_LEN); return(0); } @@ -1387,36 +1388,36 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } if(obj_ptr == cnt_ptr) { - print(fd, "±×°ÍÀ» ±×°Í ÀÚ½ÅÇÑÅ×´Â ³ÖÀ»¼ö ¾ø½À´Ï´Ù."); + print(fd, "그것ì�„ 그것 ìž�신한테는 ë„£ì�„수 없습니다."); return(0); } if(obj_ptr->questnum && ply_ptr->classclass < DM) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀº ¹ö¸®Áö ¸øÇÕ´Ï´Ù."); + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�€ 버리지 못합니다."); return(0); } if(cnt_ptr->shotscur >= cnt_ptr->shotsmax) { - print(fd, "%I¾È¿¡ ´õÀÌ»ó ³ÖÀ» ¼ö ¾ø½À´Ï´Ù.\n", cnt_ptr); + print(fd, "%I안ì—� ë�”ì�´ìƒ� ë„£ì�„ 수 없습니다.\n", cnt_ptr); return(0); } if(F_ISSET(obj_ptr, OCONTN)) { - print(fd, "´ãÀ»¼ö ÀÖ´Â ¹°°Ç ¾È¿¡ ´ãÀ» ¼ö ÀÖ´Â ¹°°ÇÀº ³ÖÀ» ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ë‹´ì�„수 있는 물건 안ì—� ë‹´ì�„ 수 있는 물건ì�€ ë„£ì�„ 수 없습니다.\n"); } if(F_ISSET(cnt_ptr, OCNDES)) { - print(fd, "%1i%j %1i%j »ïÄÑ ¹ö·Á ÈçÀûµµ ¾øÀÌ »ç¶óÁý´Ï´Ù!\n", obj_ptr, "3",cnt_ptr,"1"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %1i%j %1i¿¡ ³Ö½À´Ï´Ù.\n", + print(fd, "%1i%j %1i%j 삼켜 버려 í�”ì �ë�„ ì—†ì�´ 사ë�¼ì§‘니다!\n", obj_ptr, "3",cnt_ptr,"1"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %1i%j %1iì—� 넣습니다.\n", ply_ptr, obj_ptr,"3", cnt_ptr); del_obj_crt(obj_ptr, ply_ptr); free(obj_ptr); @@ -1426,8 +1427,8 @@ cmd *cmnd; del_obj_crt(obj_ptr, ply_ptr); add_obj_obj(obj_ptr, cnt_ptr); cnt_ptr->shotscur++; - print(fd, "´ç½ÅÀº %1i%j %1i ¾È¿¡ ³Ö½À´Ï´Ù.\n", obj_ptr,"3", cnt_ptr); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j %1i¾È¿¡ ³Ö¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j %1i 안ì—� 넣습니다.\n", obj_ptr,"3", cnt_ptr); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j %1i안ì—� 넣었습니다.", ply_ptr, "1", obj_ptr,"3", cnt_ptr); if(F_ISSET(cnt_ptr, OPERMT) && F_ISSET(ply_ptr->parent_rom, RBANK)) { resave_rom(rom_ptr->rom_num); @@ -1456,16 +1457,16 @@ cmd *cmnd; amt = atol(cmnd->str[1]); if(amt < 1) { - print(fd, "µ·ÀÇ ´ÜÀ§´Â À½¼ö°¡ µÉ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�ˆì�˜ 단위는 ì�Œìˆ˜ê°€ ë� ìˆ˜ 없습니다."); return; } if(amt > ply_ptr->gold) { - print(fd, "´ç½ÅÀº ±×¸¸Å­ÀÇ µ·À» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그만í�¼ì�˜ ë�ˆì�„ 가지고 있지 않습니다."); return; } load_obj(0, &obj_ptr); - sprintf(obj_ptr->name, "%d³É", amt); + sprintf(obj_ptr->name, "%d냥", amt); obj_ptr->value = amt; add_obj_rom(obj_ptr, ply_ptr->parent_rom); @@ -1475,10 +1476,10 @@ cmd *cmnd; #endif - print(fd, "´ç½ÅÀº %ld³ÉÀ» ¹ö·È½À´Ï´Ù.\n",amt); + print(fd, "당신ì�€ %ld냥ì�„ 버렸습니다.\n",amt); broadcast_rom2(fd, ply_ptr->fd, ply_ptr->rom_num, - "\n%M%j %ld³ÉÀ» ¹ö·È½À´Ï´Ù.", ply_ptr,"1", amt); + "\n%M%j %ld냥ì�„ 버렸습니다.", ply_ptr,"1", amt); } @@ -1500,7 +1501,7 @@ char *part_obj; int fd, n=1,found=0; int index=1; - if(!strcmp(part_obj,"¸ðµÎ")) index=0; + if(!strcmp(part_obj,"모ë‘�")) index=0; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; @@ -1508,7 +1509,7 @@ char *part_obj; str[0]=0; if(check_event_obj(ply_ptr)) { - print(fd, "ÀÓ¹« ¾ÆÀÌÅÛÀÌ ÀÖ¾î ¸ðµÎ ¹ö¸± ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "임무 ì•„ì�´í…œì�´ 있어 모ë‘� 버릴 수 없습니다.\n"); return; } @@ -1558,7 +1559,7 @@ char *part_obj; if(F_ISSET(rom_ptr, RDUMPR)) free_obj(last_obj); } else { - print(fd, "´ç½ÅÀº ¾Æ¹«°Íµµ °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 아무것ë�„ 가지고 있지 않습니다."); return; } @@ -1566,11 +1567,11 @@ char *part_obj; savegame_nomsg(ply_ptr); #endif - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %S%j ¹ö·È½À´Ï´Ù.", ply_ptr, str,"3"); - print(fd, "´ç½ÅÀº %S%j ¹ö·È½À´Ï´Ù.", str,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %S%j 버렸습니다.", ply_ptr, str,"3"); + print(fd, "당신ì�€ %S%j 버렸습니다.", str,"3"); if(F_ISSET(rom_ptr, RDUMPR)) - print(fd, "\n´ç½ÅÀÇ ¹°°ÇÀ» Á¦¹°·Î ¹ÙÃÆ½À´Ï´Ù.\n´ç½ÅÀº ¾à°£ÀÇ »ó±ÝÀ» ¹Þ¾Ò½À´Ï´Ù."); + print(fd, "\n당신ì�˜ 물건ì�„ 제물로 바쳤습니다.\n당신ì�€ 약간ì�˜ ìƒ�금ì�„ 받았습니다."); } /**********************************************************************/ @@ -1593,7 +1594,7 @@ char *part_obj; int fd, n = 1, found = 0, full = 0; int index=1; - if(!strcmp(part_obj,"¸ðµÎ")) { + if(!strcmp(part_obj,"모ë‘�")) { index=0; } fd = ply_ptr->fd; @@ -1657,12 +1658,12 @@ char *part_obj; if(found && last_obj) strcat(str, obj_str(last_obj, n, 0)); else { - print(fd, "´ç½ÅÀº ±×°Í ¾È¿¡ ³ÖÀ» ¹°°ÇÀ» ¾Æ¹«°Íµµ °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그것 안ì—� ë„£ì�„ 물건ì�„ 아무것ë�„ ê°–ê³  있지 않습니다."); return; } if(full) - print(fd, "%I¾È¿¡ ´õÀÌ»ó ¹°°ÇÀ» ³ÖÀ» ¼ö ¾ø½À´Ï´Ù.", cnt_ptr); + print(fd, "%I안ì—� ë�”ì�´ìƒ� 물건ì�„ ë„£ì�„ 수 없습니다.", cnt_ptr); if(full == found) return; #ifdef NODUPLE @@ -1670,9 +1671,9 @@ char *part_obj; #endif - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %S%j %1i¾È¿¡ ³Ö½À´Ï´Ù.", ply_ptr,"1", + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %S%j %1i안ì—� 넣습니다.", ply_ptr,"1", str,"3",cnt_ptr); - print(fd, "´ç½ÅÀº %S%j %1i¾È¿¡ ³Ö½À´Ï´Ù.", str,"3", cnt_ptr); + print(fd, "당신ì�€ %S%j %1i안ì—� 넣습니다.", str,"3", cnt_ptr); if(F_ISSET(cnt_ptr, OPERMT)) { resave_rom(rom_ptr->rom_num); #ifdef NODUPLE @@ -1683,10 +1684,10 @@ char *part_obj; } /**********************************************************************/ -/* burnÅ¿ö */ +/* burn태워 */ /**********************************************************************/ -/* Á¦»çÀåÀÌ ¾Æ´Ñ°÷¿¡¼­µµ ¼Ò°¢ÇÒ¼ö ÀÖ°ÔÇÏ´Â ¸í·ÉÀÌ´Ù */ +/* 제사장ì�´ 아닌곳ì—�서ë�„ 소ê°�할수 있게하는 명령ì�´ë‹¤ */ long ply_burn_time[PMAX]; int burn(ply_ptr, cmnd) @@ -1701,7 +1702,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» Å¿ì½Ã·Á±¸¿ä?"); + print(fd, "무엇ì�„ 태우시려구요?"); return(0); } t=time(0); @@ -1718,33 +1719,33 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } if(F_ISSET(obj_ptr, ONOBUN)) { - print(fd, "¼Ò°¢ÇÒ¼ö ¾ø´Â ¾ÆÀÌÅÛÀÔ´Ï´Ù."); + print(fd, "소ê°�할수 없는 ì•„ì�´í…œìž…니다."); return(0); } -/* ÀÓ¹«¾ÆÀÌÅÛ ¹ö¸®Áö ¸øÇÏ°Ô ÇÔ */ +/* 임무아ì�´í…œ 버리지 못하게 함 */ if(obj_ptr->questnum && ply_ptr->classshotscur > 0) { - print(fd, "ÀÓ¹« ¾ÆÀÌÅÛÀº Å¿ìÁö ¸øÇÕ´Ï´Ù."); + print(fd, "임무 ì•„ì�´í…œì�€ 태우지 못합니다."); return(0); } if(F_ISSET(obj_ptr, ONEWEV) && ply_ptr->class < SUB_DM && obj_ptr->shotscur > 0) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀº ¼Ò°¢ÇÒ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�€ 소ê°�할수 없습니다."); return(0); } del_obj_crt(obj_ptr, ply_ptr); - print(fd, "´ç½ÅÀº %1i%j Å¿ü½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j Å¿ü½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 태웠습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 태웠습니다.", ply_ptr,"1", obj_ptr,"3"); free_obj(obj_ptr); ply_ptr->gold += 4; ply_ptr->experience += 1; - print(fd, "\n´ç½ÅÀº ¾à°£ÀÇ »ó±Ý°ú °æÇèÀ» ¹Þ¾Ò½À´Ï´Ù."); + print(fd, "\n당신ì�€ 약간ì�˜ ìƒ�금과 경험ì�„ 받았습니다."); if(((time(0)+mrand(1,100))%250)==9) { - print(fd,"\n½ÅÀÌ ´ç½ÅÀÇ Á¤¼ºÀÌ °¼¸¤Çؼ­ °æÇèÄ¡¿Í µ·º­¶ôÀ» ³»¸³´Ï´Ù."); - broadcast_rom(fd,rom_ptr->rom_num,"\n½ÅÀÌ %M¿¡°Ô °æÇèÄ¡¿Í µ·º­¶ôÀ» ³»¸³´Ï´Ù.",ply_ptr); + print(fd,"\nì‹ ì�´ 당신ì�˜ 정성ì�´ 갸륵해서 경험치와 ë�ˆë²¼ë�½ì�„ 내립니다."); + broadcast_rom(fd,rom_ptr->rom_num,"\nì‹ ì�´ %Mì—�게 경험치와 ë�ˆë²¼ë�½ì�„ 내립니다.",ply_ptr); ply_ptr->gold+=100000; ply_ptr->experience+=10; } @@ -1757,7 +1758,7 @@ cmd *cmnd; /* auto_search */ /**********************************************************************/ -/* ÀÚµ¿ ¼ö»ö */ +/* ìž�ë�™ 수색 */ int auto_search(ply_ptr) creature *ply_ptr; @@ -1785,7 +1786,7 @@ creature *ply_ptr; if((!F_ISSET(xp->ext, XINVIS) || F_ISSET(ply_ptr,PDINVI)) && !F_ISSET(xp->ext, XNOSEE)){ found++; - print(fd, "\nÃⱸ¸¦ ã¾Ò½À´Ï´Ù: %s.", xp->ext->name); + print(fd, "\n출구를 찾았습니다: %s.", xp->ext->name); } xp = xp->next_tag; } @@ -1795,7 +1796,7 @@ creature *ply_ptr; if(F_ISSET(op->obj, OHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(op->obj, OINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº %1i%j ã¾Ò½À´Ï´Ù.", op->obj,"3"); + print(fd, "\n당신ì�€ %1i%j 찾았습니다.", op->obj,"3"); } op = op->next_tag; } @@ -1806,7 +1807,7 @@ creature *ply_ptr; mrand(1,100) <= chance) if(!F_ISSET(cp->crt, PINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %S%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt->name,"3"); + print(fd, "\n당신ì�€ 숨어있는 %S%j 찾아내었습니다.", cp->crt->name,"3"); } cp = cp->next_tag; } @@ -1816,17 +1817,15 @@ creature *ply_ptr; if(F_ISSET(cp->crt, MHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(cp->crt, MINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %1M%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt,"3"); + print(fd, "\n당신ì�€ 숨어있는 %1M%j 찾아내었습니다.", cp->crt,"3"); } cp = cp->next_tag; } if(found) - broadcast_rom(fd, ply_ptr->rom_num, "\n%s°¡ ¹» ¹ß°ßÇÑ°Í °°±º¿ä!", - F_ISSET(ply_ptr, MMALES) ? "±×":"±×³à"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%sê°€ ë­˜ 발견한것 같군요!", + F_ISSET(ply_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } - - diff --git a/src/command3.c b/src/command3.c index c6cb2879..319a4665 100644 --- a/src/command3.c +++ b/src/command3.c @@ -30,7 +30,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹» ÀÔÀ¸½Ç·Á±¸¿ä?\n"); + print(fd, "ë­˜ 입으실려구요?\n"); return(0); } @@ -39,7 +39,7 @@ cmd *cmnd; if(cmnd->num > 1) { - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { wear_all(ply_ptr); return(0); } @@ -48,31 +48,31 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº %S%j °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù.",cmnd->str[1],"3"); + print(fd, "당신ì�€ %S%j 가지고 있지 않습니다.",cmnd->str[1],"3"); return(0); } if(!obj_ptr->wearflag || obj_ptr->wearflag == WIELD || obj_ptr->wearflag == HELD) { - print(fd, "%I%j ÀÔ´Â ¹°°ÇÀÌ ¾Æ´Õ´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j 입는 물건ì�´ 아닙니다.",obj_ptr,"0"); return(0); } if(obj_ptr->type == ARMOR && F_ISSET(obj_ptr, ONOMAG) && (ply_ptr->class == MAGE || ply_ptr->class == CLERIC)) { - print(fd, "µµ¼ú»ç, ºÒÁ¦ÀÚµéÀº »ç¿ëÇÒ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�„술사, 불제ìž�들ì�€ 사용할수 없습니다."); return(0); } if(obj_ptr->type == ARMOR && F_ISSET(obj_ptr, ONOFEM) && !F_ISSET(ply_ptr,PMALES)) { - print(fd, "%I%j ³²Àڵ鸸 ÀÔÀ» ¼ö ÀÖ½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j 남ìž�들만 ìž…ì�„ 수 있습니다.",obj_ptr,"0"); return(0); } if(obj_ptr->type == ARMOR && F_ISSET(obj_ptr, ONOMAL) && F_ISSET(ply_ptr,PMALES)) { - print(fd, "%I%j ¿©Àڵ鸸 ÀÔÀ» ¼ö ÀÖ½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j ì—¬ìž�들만 ìž…ì�„ 수 있습니다.",obj_ptr,"0"); return(0); } @@ -80,7 +80,7 @@ cmd *cmnd; if(obj_ptr->questnum == 0) { del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); - print(fd, "Ǫ¸¥ ¿¬±â¿Í ÇÔ²² »ç¶óÁ³½À´Ï´Ù."); + print(fd, "푸른 연기와 함께 사ë�¼ì¡ŒìŠµë‹ˆë‹¤."); return(0); } } @@ -91,26 +91,26 @@ cmd *cmnd; if(check_ac > 151 && obj_ptr->questnum == 0) { del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); - print(fd, "Ǫ¸¥ ¿¬±â¿Í ÇÔ²² »ç¶óÁ³½À´Ï´Ù."); + print(fd, "푸른 연기와 함께 사ë�¼ì¡ŒìŠµë‹ˆë‹¤."); return(0); } if(check_ac < 30) check_ac = 0; if(ply_ptr->class < INVINCIBLE && obj_ptr->questnum == 0 && !F_ISSET(obj_ptr, ONEWEV) && ply_ptr->level < check_ac) { - print(fd, "´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â »ç¿ëÇÒ ¼ö ¾ø´Â ¹°°ÇÀÔ´Ï´Ù."); + print(fd, "당신ì�˜ 능력으로는 사용할 수 없는 물건입니다."); return(0); } if(obj_ptr->type == ARMOR && F_ISSET(obj_ptr, OMARRI) && !F_ISSET(ply_ptr, PMARRI)) { - print(fd, "%I%j °áÈ¥ÇÑ »ç¶÷µé¸¸ ÀÔÀ» ¼ö ÀÖ½À´Ï´Ù.", obj_ptr, "0"); + print(fd, "%I%j 결혼한 사람들만 ìž…ì�„ 수 있습니다.", obj_ptr, "0"); return(0); } if(obj_ptr->wearflag == NECK && ply_ptr->ready[NECK1-1] && ply_ptr->ready[NECK2-1]) { - print(fd, "´õÀÌ»ó ¸ñ¿¡ °É ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� 목ì—� 걸 수 없습니다."); return(0); } @@ -119,7 +119,7 @@ cmd *cmnd; ply_ptr->ready[FINGER4-1] && ply_ptr->ready[FINGER5-1] && ply_ptr->ready[FINGER6-1] && ply_ptr->ready[FINGER7-1] && ply_ptr->ready[FINGER8-1]) { - print(fd, "´õÀÌ»ó ¼Õ°¡¶ô¿¡ ³¥ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�”ì�´ìƒ� ì†�ê°€ë�½ì—� ë‚„ 수 없습니다."); return(0); } @@ -127,32 +127,32 @@ cmd *cmnd; ply_ptr->ready[obj_ptr->wearflag-1]) { switch(obj_ptr->wearflag) { case HEAD: - print(fd, "´ç½ÅÀº ÀÌ¹Ì %I%j ¸Ó¸®¿¡ ¾²°í ÀÖ½À´Ï´Ù.",ply_ptr->ready[obj_ptr->wearflag-1],"3"); + print(fd, "당신ì�€ ì�´ë¯¸ %I%j 머리ì—� ì“°ê³  있습니다.",ply_ptr->ready[obj_ptr->wearflag-1],"3"); return(0); default: - print(fd, "´ç½ÅÀº ÀÌ¹Ì %I%j ÀÔ°í ÀÖ½À´Ï´Ù.",ply_ptr->ready[obj_ptr->wearflag-1],"3"); + print(fd, "당신ì�€ ì�´ë¯¸ %I%j ìž…ê³  있습니다.",ply_ptr->ready[obj_ptr->wearflag-1],"3"); return(0); } } if(obj_ptr->shotscur < 1) { - print(fd, "%I%j ºÎ¼­Á®¼­ ÀÔÀ» ¼ö ¾ø°Ô µÇ¾ú½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j 부서져서 ìž…ì�„ 수 없게 ë�˜ì—ˆìŠµë‹ˆë‹¤.",obj_ptr,"0"); return(0); } if(F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -50) { - print(fd, "%I%j ´ç½Å ¸ö¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¹Ù´Ú¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신 몸ì—�서 튕겨져 나가 바닥ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_crt(obj_ptr, ply_ptr); return(0); } if(F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 50) { - print(fd, "%I%j ´ç½Å ¸ö¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¹Ù´Ú¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신 몸ì—�서 튕겨져 나가 바닥ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_crt(obj_ptr, ply_ptr); return(0); @@ -161,7 +161,7 @@ switch(obj_ptr->wearflag) { if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < INVINCIBLE)){ - print(fd, "%i%j ´ç½ÅÀÇ Á÷¾÷¿¡ ¸ÂÁö ¾Ê½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%i%j 당신ì�˜ ì§�ì—…ì—� ë§žì§€ 않습니다.",obj_ptr,"0"); return(0); } @@ -186,7 +186,7 @@ switch(obj_ptr->wearflag) { } if(cantwear && ply_ptr->class < INVINCIBLE) { - print(fd, "%I%j ´ç½Å ¸ö¿¡ ¸ÂÁö ¾Ê½À´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신 몸ì—� ë§žì§€ 않습니다.", obj_ptr,"1"); return(0); } @@ -224,49 +224,49 @@ switch(obj_ptr->wearflag) { compute_ac(ply_ptr); switch(obj_ptr->wearflag) { case BODY: - print(fd, "´ç½ÅÀº %1i%j ÀÔ¾ú½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ÀÔ¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 입었습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 입었습니다.", ply_ptr, "1",obj_ptr,"3"); break; case FEET: - print(fd, "´ç½ÅÀº %1i%j ½Å¾ú½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ½Å¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 신었습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 신었습니다.", ply_ptr, "1",obj_ptr,"3"); break; case SHIELD: - print(fd, "´ç½ÅÀº %1i%j ¹æÆÐ·Î »ï½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¹æÆÐ·Î »ï½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 방패로 삼습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 방패로 삼습니다.", ply_ptr, "1",obj_ptr,"3"); break; case ARMS: - print(fd, "´ç½ÅÀº %1i%j ÆÈ¿¡ ÀåÂøÇÕ´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ÆÈ¿¡ ÀåÂøÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 팔ì—� 장착합니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 팔ì—� 장착합니다.", ply_ptr, "1",obj_ptr,"3"); break; case HEAD: - print(fd, "´ç½ÅÀº %1i%j ¸Ó¸®¿¡ ¾¹´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¸Ó¸®¿¡ ¾¹´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 머리ì—� ì”�니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 머리ì—� ì”�니다.", ply_ptr, "1",obj_ptr,"3"); break; case NECK: - print(fd, "´ç½ÅÀº %1i%j ¸ñ¿¡ µÎ¸¨´Ï´Ù.",obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¸ñ¿¡ °Ì´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 목ì—� ë‘�릅니다.",obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 목ì—� ê²�니다.", ply_ptr, "1",obj_ptr,"3");break; case HANDS: - print(fd, "´ç½ÅÀº %1i%j ¼Õ¿¡ ³¢¿ó´Ï´Ù.",obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¼Õ¿¡ ³¢¿ó´Ï´Ù.", + print(fd, "당신ì�€ %1i%j ì†�ì—� ë�¼ì›�니다.",obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ì†�ì—� ë�¼ì›�니다.", ply_ptr, "1",obj_ptr,"3");break; case LEGS: - print(fd, "´ç½ÅÀº %1i%j ÀÔ½À´Ï´Ù.",obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ÀÔ½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 입습니다.",obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 입습니다.", ply_ptr, "1",obj_ptr,"3");break; case FACE: - print(fd, "´ç½ÅÀº %1i%j ¾ó±¼¿¡ ¾¹´Ï´Ù.",obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¾ó±¼¿¡ ¾¹´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 얼굴ì—� ì”�니다.",obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 얼굴ì—� ì”�니다.", ply_ptr, "1",obj_ptr,"3");break; case FINGER: - print(fd, "´ç½ÅÀº %1i%j ¼Õ°¡¶ô¿¡ ³¢¿ó´Ï´Ù.",obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ¼Õ°¡¶ô¿¡ ³¢¿ó´Ï´Ù.", + print(fd, "당신ì�€ %1i%j ì†�ê°€ë�½ì—� ë�¼ì›�니다.",obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ì†�ê°€ë�½ì—� ë�¼ì›�니다.", ply_ptr, "1",obj_ptr,"3");break; default: - print(fd, "´ç½ÅÀº %1i%j ÀÔ¾ú½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j ÀÔ¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 입었습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %1i%j 입었습니다.", ply_ptr, "1",obj_ptr,"3"); } if(obj_ptr->use_output[0]) @@ -467,12 +467,12 @@ creature *ply_ptr; if(found) { compute_ac(ply_ptr); str[strlen(str)-2] = 0; - print(fd, "´ç½ÅÀº %S%j ÀÔ¾ú½À´Ï´Ù.", str,"3"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %S%j ÀÔ¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %S%j 입었습니다.", str,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %S%j 입었습니다.", ply_ptr, str,"3"); } else - print(fd, "´ç½ÅÀº ÀÔÀ» ¹°°ÇÀ» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ ìž…ì�„ 물건ì�„ 가지고 있지 않습니다."); } @@ -496,7 +496,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹» ¹þ°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "ë­˜ ë²—ê³  싶으세요?"); return(0); } @@ -506,7 +506,7 @@ cmd *cmnd; i = 0; if(cmnd->num > 1) { - if(!strcmp(cmnd->str[1], "¸ðµÎ")) { + if(!strcmp(cmnd->str[1], "모ë‘�")) { remove_all(ply_ptr); return(0); } @@ -530,12 +530,12 @@ cmd *cmnd; } if(!found) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» ÀÔ°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ ìž…ê³  있지 않습니다."); return(0); } if(F_ISSET(obj_ptr, OCURSE)) { - print(fd, "ÀÌÄí! ±×°ÍÀÌ ¸ö¿¡¼­ ¶³¾îÁöÁö ¾Ê½À´Ï´Ù! ÀúÁÖ¹ÞÀº ¹°°Ç °°±º¿ä."); + print(fd, "ì�´ì¿ ! 그것ì�´ 몸ì—�서 떨어지지 않습니다! 저주받ì�€ 물건 같군요."); return(0); } @@ -544,8 +544,8 @@ cmd *cmnd; compute_ac(ply_ptr); compute_thaco(ply_ptr); - print(fd, "´ç½ÅÀº %1i%j ¹þ¾ú½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ %1i%j ¹þ¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 벗었습니다.", obj_ptr,"3"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ %1i%j 벗었습니다.", ply_ptr, obj_ptr,"3"); F_CLR(obj_ptr, OWEARS); } @@ -583,7 +583,7 @@ creature *ply_ptr; } if(!found) { - print(fd,"´ç½ÅÀº °ÉÄ¡°í ÀÖ´Â°Ô ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù."); + print(fd,"당신ì�€ 걸치고 있는게 아무것ë�„ 없습니다."); return; } @@ -591,8 +591,8 @@ creature *ply_ptr; compute_thaco(ply_ptr); str[strlen(str)-2] = 0; - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %S%j ¹þ¾ú½À´Ï´Ù.", ply_ptr, str,"3"); - print(fd, "´ç½ÅÀº %S%j ¹þ¾ú½À´Ï´Ù.", str,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %S%j 벗었습니다.", ply_ptr, str,"3"); + print(fd, "당신ì�€ %S%j 벗었습니다.", str,"3"); } @@ -615,16 +615,16 @@ cmd *cmnd; found = 1; if(!found) { - print(fd, "´ç½ÅÀº °ÉÄ¡°í ÀÖ´Â°Ô ¾Æ¹«°Íµµ ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 걸치고 있는게 아무것ë�„ 없습니다."); return(0); } if(F_ISSET(crt_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "´ç½ÅÀº ¾Æ¹«°Íµµ º¼¼ö°¡ ¾ø½À´Ï´Ù. ´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù."); + print(fd, "당신ì�€ 아무것ë�„ 볼수가 없습니다. 당신ì�€ 눈ì�´ 멀어 있습니다."); ANSI(fd, WHITE); return(0); } - print(fd, "Âø¿ë Àåºñ:\n"); + print(fd, "ì°©ìš© 장비:\n"); equip_list(fd, crt_ptr); return(0); @@ -640,45 +640,45 @@ creature *crt_ptr; { if(crt_ptr->ready[HEAD-1]) - print(fd, "[ ¸Ó¸® ] %1i\n", crt_ptr->ready[HEAD-1]); + print(fd, "[ 머리 ] %1i\n", crt_ptr->ready[HEAD-1]); if(crt_ptr->ready[FACE-1]) - print(fd, "[ ¾ó±¼ ] %1i\n", crt_ptr->ready[FACE-1]); + print(fd, "[ 얼굴 ] %1i\n", crt_ptr->ready[FACE-1]); if(crt_ptr->ready[NECK1-1]) - print(fd, "[ ¸ñ ] %1i\n", crt_ptr->ready[NECK1-1]); + print(fd, "[ 목 ] %1i\n", crt_ptr->ready[NECK1-1]); if(crt_ptr->ready[NECK2-1]) - print(fd, "[ ¸ñ ] %1i\n", crt_ptr->ready[NECK2-1]); + print(fd, "[ 목 ] %1i\n", crt_ptr->ready[NECK2-1]); if(crt_ptr->ready[BODY-1]) - print(fd, "[ ¸ö ] %1i\n", crt_ptr->ready[BODY-1]); + print(fd, "[ 몸 ] %1i\n", crt_ptr->ready[BODY-1]); if(crt_ptr->ready[ARMS-1]) - print(fd, "[ ÆÈ ] %1i\n", crt_ptr->ready[ARMS-1]); + print(fd, "[ 팔 ] %1i\n", crt_ptr->ready[ARMS-1]); if(crt_ptr->ready[HANDS-1]) - print(fd, "[ ¼Õ ] %1i\n", crt_ptr->ready[HANDS-1]); + print(fd, "[ ì†� ] %1i\n", crt_ptr->ready[HANDS-1]); if(crt_ptr->ready[FINGER1-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER1-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER1-1]); if(crt_ptr->ready[FINGER2-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER2-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER2-1]); if(crt_ptr->ready[FINGER3-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER3-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER3-1]); if(crt_ptr->ready[FINGER4-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER4-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER4-1]); if(crt_ptr->ready[FINGER5-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER5-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER5-1]); if(crt_ptr->ready[FINGER6-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER6-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER6-1]); if(crt_ptr->ready[FINGER7-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER7-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER7-1]); if(crt_ptr->ready[FINGER8-1]) - print(fd, "[¼Õ°¡¶ô] %1i\n", crt_ptr->ready[FINGER8-1]); + print(fd, "[ì†�ê°€ë�½] %1i\n", crt_ptr->ready[FINGER8-1]); if(crt_ptr->ready[LEGS-1]) - print(fd, "[ ´Ù¸® ] %1i\n", crt_ptr->ready[LEGS-1]); + print(fd, "[ 다리 ] %1i\n", crt_ptr->ready[LEGS-1]); if(crt_ptr->ready[FEET-1]) - print(fd, "[ ¹ß ] %1i\n", crt_ptr->ready[FEET-1]); + print(fd, "[ ë°œ ] %1i\n", crt_ptr->ready[FEET-1]); if(crt_ptr->ready[HELD-1]) - print(fd, "[Áå¹°°Ç] %1i\n", crt_ptr->ready[HELD-1]); + print(fd, "[쥔물건] %1i\n", crt_ptr->ready[HELD-1]); if(crt_ptr->ready[SHIELD-1]) - print(fd, "[ ¹æÆÐ ] %1i\n", crt_ptr->ready[SHIELD-1]); + print(fd, "[ 방패 ] %1i\n", crt_ptr->ready[SHIELD-1]); if(crt_ptr->ready[WIELD-1]) - print(fd, "[ ¹«±â ] %1i\n", crt_ptr->ready[WIELD-1]); + print(fd, "[ 무기 ] %1i\n", crt_ptr->ready[WIELD-1]); } /**********************************************************************/ @@ -700,7 +700,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ¹«ÀåÇϽ÷Á±¸¿ä?"); + print(fd, "무엇ì�„ 무장하시려구요?"); return(0); } @@ -712,12 +712,12 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± ¹°°ÇÀ» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런 물건ì�„ 가지고 있지 않습니다."); return(0); } if(obj_ptr->wearflag != WIELD) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» ¹«ÀåÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 무장할 수 없습니다."); return(0); } @@ -725,47 +725,47 @@ cmd *cmnd; (obj_ptr->questnum == 0 ) && !F_ISSET(obj_ptr, ONEWEV) && (obj_ptr->ndice*obj_ptr->sdice+obj_ptr->pdice ) > 14 && (ply_ptr->class == MAGE || ply_ptr->class == CLERIC )) { - print(fd, "µµ¼ú»ç, ºÒÁ¦ÀÚ´Â »ç¿ëÇÒ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë�„술사, 불제ìž�는 사용할수 없습니다."); return(0); } if((obj_ptr->type == SHARP || obj_ptr->type == THRUST) && F_ISSET(obj_ptr, ONOFEM) && !F_ISSET(ply_ptr,PMALES)) { - print(fd, "%I%j ³²Àڵ鸸 ¹«ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j 남ìž�들만 무장할 수 있습니다.",obj_ptr,"0"); return(0); } if((obj_ptr->type == SHARP || obj_ptr->type == THRUST) && F_ISSET(obj_ptr, ONOMAL) && F_ISSET(ply_ptr,PMALES)) { - print(fd, "%I%j ¿©Àڵ鸸 ¹«ÀåÇÒ ¼ö ÀÖ½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%I%j ì—¬ìž�들만 무장할 수 있습니다.",obj_ptr,"0"); return(0); } if(ply_ptr->ready[WIELD-1]) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì %I%j ¹«ÀåÇϰí ÀÖ½À´Ï´Ù.",ply_ptr->ready[WIELD-1],"3"); + print(fd, "당신ì�€ ì�´ë¯¸ %I%j 무장하고 있습니다.",ply_ptr->ready[WIELD-1],"3"); return(0); } if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < INVINCIBLE)){ - print(fd, "%i%j ´ç½ÅÀÇ Á÷¾÷¿¡ ¸ÂÁö ¾Ê½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%i%j 당신ì�˜ ì§�ì—…ì—� ë§žì§€ 않습니다.",obj_ptr,"0"); return(0); } if(F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -50) { - print(fd, "%I%j ´ç½ÅÀÇ ¸ö¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¹Ù´Ú¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신ì�˜ 몸ì—�서 튕겨져 나가 바닥ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); } if(F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 50) { - print(fd, "%I%j ´ç½ÅÀÇ ¸ö¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¹Ù´Ú¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신ì�˜ 몸ì—�서 튕겨져 나가 바닥ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -792,7 +792,7 @@ cmd *cmnd; } if(cantwear && ply_ptr->class < INVINCIBLE) { - print(fd, "%I%j ´ç½ÅÀÇ ¸ö Å©±â¿Í ¸ÂÁö ¾Ê½À´Ï´Ù.", + print(fd, "%I%j 당신ì�˜ 몸 í�¬ê¸°ì™€ ë§žì§€ 않습니다.", obj_ptr,"0"); return(0); } @@ -801,20 +801,20 @@ cmd *cmnd; if(obj_ptr->questnum == 0 && !F_ISSET(obj_ptr, ONEWEV)) { del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); - print(fd,"´ç½ÅÀÌ ¹«±â¸¦ ÁãÀÚ Çª¸¥ ºûÀ» ³»¸ç »ç¶óÁý´Ï´Ù."); + print(fd,"당신ì�´ 무기를 ì¥�ìž� 푸른 ë¹›ì�„ ë‚´ë©° 사ë�¼ì§‘니다."); return(0); } } if(!F_ISSET(obj_ptr, ONEWEV) && (obj_ptr->shotsmax > 600 || obj_ptr->shotscur > 600)) { del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); - print(fd,"´ç½ÅÀÌ ¹«±â¸¦ ÁãÀÚ Çª¸¥ ºûÀ» ³»¸ç »ç¶óÁý´Ï´Ù."); + print(fd,"당신ì�´ 무기를 ì¥�ìž� 푸른 ë¹›ì�„ ë‚´ë©° 사ë�¼ì§‘니다."); return(0); } if(F_ISSET(obj_ptr, ONSHAT) && F_ISSET(obj_ptr, OALCRT)) { del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); - print(fd,"´ç½ÅÀÌ ¹«±â¸¦ ÁãÀÚ Çª¸¥ ºûÀ» ³»¸ç »ç¶óÁý´Ï´Ù."); + print(fd,"당신ì�´ 무기를 ì¥�ìž� 푸른 ë¹›ì�„ ë‚´ë©° 사ë�¼ì§‘니다."); return(0); } check_dmg = obj_ptr->ndice * obj_ptr->sdice + obj_ptr->pdice; @@ -825,11 +825,11 @@ cmd *cmnd; check_dmg -= 2; if(ply_ptr->class < INVINCIBLE && check_dmg > 15 && !F_ISSET(obj_ptr, ONEWEV) && ply_ptr->level < (check_dmg * 3) && obj_ptr->questnum == 0) { - print(fd, "´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â »ç¿ëÇÒ ¼ö ¾ø´Â ¹«±âÀÔ´Ï´Ù."); + print(fd, "당신ì�˜ 능력으로는 사용할 수 없는 무기입니다."); return(0); } if(F_ISSET(obj_ptr, ONEWEV) && strcmp(obj_ptr->key[2], ply_ptr->name)) { - print(fd, "´Ù¸¥ »ç¶÷ÀÇ ¹°°ÇÀº »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "다른 사람ì�˜ 물건ì�€ 사용할 수 없습니다."); return(0); } @@ -837,8 +837,8 @@ cmd *cmnd; compute_thaco(ply_ptr); del_obj_crt(obj_ptr, ply_ptr); - print(fd, "´ç½ÅÀº %1i%j ÀüÅõż¼¸¦ ÃëÇÕ´Ï´Ù.", obj_ptr,"4"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1I%j ¹«ÀåÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 전투태세를 취합니다.", obj_ptr,"4"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1I%j 무장합니다.", ply_ptr, "1", obj_ptr,"4"); if(obj_ptr->use_output[0]) @@ -868,7 +868,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» Áã½Ç·Á±¸¿ä?"); + print(fd, "무엇ì�„ ì¥�실려구요?"); return(0); } @@ -880,29 +880,29 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± °ÍÀ» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런 것ì�„ 가지고 있지 않습니다."); return(0); } if(obj_ptr->wearflag != HELD && obj_ptr->wearflag != WIELD) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» Áæ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 쥘 수 없습니다."); return(0); } if(F_ISSET(obj_ptr, OEVENT) || obj_ptr->questnum > 0) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» Áæ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 쥘 수 없습니다."); return(0); } if(F_ISSET(obj_ptr, ONEWEV) || obj_ptr->questnum > 0) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» Áæ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 쥘 수 없습니다."); return(0); } if(ply_ptr->ready[HELD-1]) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì ´Ù¸¥°ÍÀ» Áã°í ÀÖ½À´Ï´Ù."); + print(fd, "당신ì�€ ì�´ë¯¸ 다른것ì�„ ì¥�ê³  있습니다."); return(0); } if(obj_ptr->ndice * obj_ptr->sdice + obj_ptr->pdice > 100) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» Áæ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 쥘 수 없습니다."); return(0); } @@ -910,23 +910,23 @@ cmd *cmnd; if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < INVINCIBLE)){ - print(fd, "%i%j ´ç½ÅÀÇ Á÷¾÷¿¡ ¸ÂÁö ¾Ê½À´Ï´Ù.",obj_ptr,"0"); + print(fd, "%i%j 당신ì�˜ ì§�ì—…ì—� ë§žì§€ 않습니다.",obj_ptr,"0"); return(0); } if(F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -50) { - print(fd, "%I%j ´ç½ÅÀÇ ¼Õ¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¶¥¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신ì�˜ ì†�ì—�서 튕겨져 나가 ë•…ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); } if(F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 50) { - print(fd, "%I%j ´ç½ÅÀÇ ¼Õ¿¡¼­ ƨ°ÜÁ® ³ª°¡ ¶¥¿¡ ¶³¾îÁý´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 당신ì�˜ ì†�ì—�서 튕겨져 나가 ë•…ì—� 떨어집니다.", obj_ptr,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M¿¡°Ô¼­ %i%j ƨ°ÜÁ® ³ª°©´Ï´Ù.", ply_ptr, obj_ptr,"1"); + "\n%Mì—�게서 %i%j 튕겨져 나갑니다.", ply_ptr, obj_ptr,"1"); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -935,8 +935,8 @@ cmd *cmnd; ply_ptr->ready[HELD-1] = obj_ptr; del_obj_crt(obj_ptr, ply_ptr); - print(fd, "´ç½ÅÀº %1i%j Áã¾ú½À´Ï´Ù.", obj_ptr,"3"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %1i%j Áã¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j ì¥�었습니다.", obj_ptr,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %1i%j ì¥�었습니다.", ply_ptr, obj_ptr,"3"); if(obj_ptr->use_output[0] && obj_ptr->type != POTION) print(fd, "\n%s", obj_ptr->use_output); @@ -953,7 +953,7 @@ cmd *cmnd; /* info_obj */ /************************************************************************/ -/* µµµÏÀÇ ¹°°Ç »ìÆìº¸´Â ·çƾ. */ +/* ë�„ë‘‘ì�˜ 물건 살펴보는 루틴. */ int info_obj(ply_ptr, cmnd) creature *ply_ptr; @@ -968,12 +968,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "µµµÏ¸¸ ¹°°ÇÀ» °¨Á¤ÇÒ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ë�„ë‘‘ë§Œ 물건ì�„ ê°�정할수 있습니다."); return(0); } if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» °¨Á¤ÇϽǷÁ±¸¿ä?"); + print(fd, "무엇ì�„ ê°�정하실려구요?"); return(0); } @@ -982,27 +982,27 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } - print(fd, "À̸§: %s\n", obj_ptr->name); + print(fd, "ì�´ë¦„: %s\n", obj_ptr->name); - print(fd, "»ç¿ëȸ¼ö %d\n", obj_ptr->shotscur); + print(fd, "사용회수 %d\n", obj_ptr->shotscur); - print(fd, "Á¾·ù: "); + print(fd, "종류: "); if(obj_ptr->type <= MISSILE) { switch(obj_ptr->type) { - case SHARP: print(fd, "µµ"); break; - case THRUST: print(fd, "°Ë"); break; - case BLUNT: print(fd, "ºÀ"); break; - case POLE: print(fd, "â"); break; - case MISSILE: print(fd, "±Ã"); break; + case SHARP: print(fd, "ë�„"); break; + case THRUST: print(fd, "ê²€"); break; + case BLUNT: print(fd, "ë´‰"); break; + case POLE: print(fd, "ì°½"); break; + case MISSILE: print(fd, "ê¶�"); break; } - print(fd, " ¹«±â.\n"); - print(fd, "Ÿ°ÝÄ¡: %d¸é%d±¼¸² ´õÇϱâ %d", obj_ptr->sdice, obj_ptr->ndice, + print(fd, " 무기.\n"); + print(fd, "타격치: %dë©´%d굴림 ë�”하기 %d", obj_ptr->sdice, obj_ptr->ndice, obj_ptr->pdice); if(obj_ptr->adjustment) print(fd, " (+%d)\n", obj_ptr->adjustment); @@ -1012,26 +1012,26 @@ cmd *cmnd; } else { switch(obj_ptr->type) { - case ARMOR: print(fd, "¹æ¾î±¸"); - print(fd, "\n¹æ¾î·Â: %2.2d", obj_ptr->armor); break; - case POTION: print(fd, "¾à"); break; - case SCROLL: print(fd, "ÁÖ¹®¼­"); break; - case WAND: print(fd, "ÁÖ¹®°É¸° ¹°°Ç"); break; - case CONTAINER: print(fd, "´ã´Â Á¾·ù"); break; - case KEY: print(fd, "¿­¼è"); break; - case LIGHTSOURCE: print(fd, "±¤¿ø"); break; - case MISC: print(fd, "¸ð¸£°ÚÀ½"); break; + case ARMOR: print(fd, "방어구"); + print(fd, "\në°©ì–´ë ¥: %2.2d", obj_ptr->armor); break; + case POTION: print(fd, "약"); break; + case SCROLL: print(fd, "주문서"); break; + case WAND: print(fd, "주문걸린 물건"); break; + case CONTAINER: print(fd, "담는 종류"); break; + case KEY: print(fd, "열쇠"); break; + case LIGHTSOURCE: print(fd, "ê´‘ì›�"); break; + case MISC: print(fd, "모르겠ì�Œ"); break; } print(fd,"\n"); } - strcpy(str, "Ư¼º : "); - if(F_ISSET(obj_ptr, ONOMAG)) strcat(str, "µµ¼ú»ç ºÒÁ¦ÀÚ °ÅºÎ, "); - if(F_ISSET(obj_ptr, OGOODO)) strcat(str, "¼±ÇÑ »ç¶÷¿ë, "); - if(F_ISSET(obj_ptr, OEVILO)) strcat(str, "¾ÇÇÑ »ç¶÷¿ë, "); - if(F_ISSET(obj_ptr, OENCHA)) strcat(str, "ºùÀÇ µÇÀÖÀ½, "); - if(F_ISSET(obj_ptr, ONOMAL)) strcat(str, "³²¼º ±ÝÁö, "); - if(F_ISSET(obj_ptr, ONOFEM)) strcat(str, "¿©¼º ±ÝÁö, "); + strcpy(str, "특성 : "); + if(F_ISSET(obj_ptr, ONOMAG)) strcat(str, "ë�„술사 불제ìž� ê±°ë¶€, "); + if(F_ISSET(obj_ptr, OGOODO)) strcat(str, "선한 사람용, "); + if(F_ISSET(obj_ptr, OEVILO)) strcat(str, "악한 사람용, "); + if(F_ISSET(obj_ptr, OENCHA)) strcat(str, "ë¹™ì�˜ ë�˜ìžˆì�Œ, "); + if(F_ISSET(obj_ptr, ONOMAL)) strcat(str, "남성 금지, "); + if(F_ISSET(obj_ptr, ONOFEM)) strcat(str, "여성 금지, "); if(strlen(str) > 11) { @@ -1039,7 +1039,7 @@ cmd *cmnd; str[strlen(str)-1] = 0; } else - strcat(str, "Ư¼º ¾øÀ½."); + strcat(str, "특성 ì—†ì�Œ."); print(fd, "%s\n", str); } diff --git a/src/command4.c b/src/command4.c index 796096e1..4930ea74 100644 --- a/src/command4.c +++ b/src/command4.c @@ -58,40 +58,40 @@ cmd *cmnd; ANSI(fd, RED); ANSI(fd, BOLD); ANSI(fd, BLINK); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!"); ANSI(fd, NORMAL); ANSI(fd, WHITE); return(0); } ANSI(fd, WHITE); - print(fd, "%s : %s (·¹º§ %d)", ply_ptr->name, + print(fd, "%s : %s (레벨 %d)", ply_ptr->name, title_ply(ply_ptr,ply_ptr), ply_ptr->level); if(F_ISSET(ply_ptr, PHIDDN)) { ANSI(fd, CYAN); - print(fd, " *Àº½Å* "); + print(fd, " *ì�€ì‹ * "); } if(F_ISSET(ply_ptr, PPOISN)) { ANSI(fd, BLINK); ANSI(fd, GREEN); - print(fd, " *Áßµ¶* "); + print(fd, " *중ë�…* "); ANSI(fd, NORMAL); } if(F_ISSET(ply_ptr, PCHARM)) { ANSI(fd, BOLD); ANSI(fd, CYAN); - print(fd, " *ÃÖ¸é* "); + print(fd, " *최면* "); ANSI(fd, NORMAL); } if(F_ISSET(ply_ptr, PSILNC)) { ANSI(fd, BLINK); ANSI(fd, MAGENTA); - print(fd, " *º¡¾î¸®* "); + print(fd, " *벙어리* "); ANSI(fd, NORMAL); } if(F_ISSET(ply_ptr, PDISEA)) { ANSI(fd, BLINK); ANSI(fd, RED); - print(fd," *Áúº´* "); + print(fd," *질병* "); ANSI(fd, NORMAL); } if(ply_ptr->level < MAXALVL) @@ -101,26 +101,26 @@ cmd *cmnd; ANSI(fd, GREEN); sprintf(str,"%d/%d",ply_ptr->hpcur, ply_ptr->hpmax); - print(fd, "\n [ü ·Â] %-16s",str); + print(fd, "\n [ì²´ ë ¥] %-16s",str); sprintf(str,"%d/%d",ply_ptr->mpcur, ply_ptr->mpmax); - print(fd, " [µµ ·Â] %-16s",str); + print(fd, " [ë�„ ë ¥] %-16s",str); ANSI(fd, RED); - print(fd, "[¹æ¾î·Â]: %d\n", (100-ply_ptr->armor)); + print(fd, "[ë°©ì–´ë ¥]: %d\n", (100-ply_ptr->armor)); ANSI(fd, YELLOW); if (ply_ptr->class == 10) { - print(fd, " [Çâ»óÄ¡] %-16lu [ µ· ] %ld³É", + print(fd, " [í–¥ìƒ�치] %-16lu [ ë�ˆ ] %ld냥", MAX(0,ply_ptr->experience-100000000), ply_ptr->gold); } else { - print(fd, " [¸ñǥġ] %-16lu [ µ· ] %ld³É", + print(fd, " [목표치] %-16lu [ ë�ˆ ] %ld냥", MAX(0,expneeded-ply_ptr->experience), ply_ptr->gold); } ANSI(fd, NORMAL); ANSI(fd, WHITE); - print(fd, "\n ´ç½ÅÀº %s¼­ ÀÖ½À´Ï´Ù.", ply_ptr->description); + print(fd, "\n 당신ì�€ %s서 있습니다.", ply_ptr->description); return(0); } @@ -148,13 +148,13 @@ cmd *cmnd; view_file_resolved(fd, file); return(DOPROMPT); } - if(!strcmp(cmnd->str[1], "ÁÖ¼ú")) { + if(!strcmp(cmnd->str[1], "주술")) { strcat(file, "/spellfile"); view_file_resolved(fd, file); return(DOPROMPT); } - if(!strcmp(cmnd->str[1], "Á¤Ã¥")) { + if(!strcmp(cmnd->str[1], "ì •ì±…")) { strcat(file, "/policy"); view_file_resolved(fd, file); return(DOPROMPT); @@ -182,7 +182,7 @@ cmd *cmnd; return(DOPROMPT); } else if(match > 1) { - print(fd, "¸í·ÉÀ» Àß ¸ð¸£°Ú³×¿ä."); + print(fd, "명령ì�„ 잘 모르겠네요."); return(0); } @@ -204,12 +204,12 @@ cmd *cmnd; } while(spllist[c].splno != -1); if(match == 0) { - print(fd, "±× ¸í·É¾î¿¡ ´ëÇÑ µµ¿ò¸»Àº ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 명령어ì—� 대한 ë�„움ë§�ì�€ 없습니다."); return(0); } /* else if(match > 1) { - print(fd, "ÁÖ¼ú À̸§À» À߸𸣰ڳ׿ä."); + print(fd, "주술 ì�´ë¦„ì�„ 잘모르겠네요."); return(0); } */ @@ -266,60 +266,60 @@ cmd *cmnd; expneeded = needed_exp[MAXALVL-2]+(ply_ptr->level-MAXALVL+1)*5000000; if(ply_ptr->alignment < -100) - strcpy(alstr, " (¾ÇÇÕ´Ï´Ù)"); + strcpy(alstr, " (악합니다)"); else if(ply_ptr->alignment < 101) - strcpy(alstr, " (Æò¹üÇÕ´Ï´Ù)"); + strcpy(alstr, " (í�‰ë²”합니다)"); else - strcpy(alstr, " (¼±ÇÕ´Ï´Ù) "); + strcpy(alstr, " (선합니다) "); for(lv=0,cnt=0; lvready[lv]) cnt++; cnt += count_inv(ply_ptr, -1); - print(fd, "\n[ÀÌ ¸§] %s [Ī È£] %s\n\n", ply_ptr->name, title_ply(ply_ptr,ply_ptr)); + print(fd, "\n[ì�´ 름] %s [ì¹­ 호] %s\n\n", ply_ptr->name, title_ply(ply_ptr,ply_ptr)); - print(fd, "[·¹ º§] %-20d [Á¾ Á·] %s\n", + print(fd, "[ë ˆ 벨] %-20d [종 족] %s\n", ply_ptr->level, race_str[ply_ptr->race]); - print(fd, "[Á÷ ¾÷] %-20s [¼º Çâ] %s %s\n", + print(fd, "[ì§� ì—…] %-20s [성 í–¥] %s %s\n", class_str[ply_ptr->class], - F_ISSET(ply_ptr, PCHAOS) ? "¾Ç":"¼±", alstr); + F_ISSET(ply_ptr, PCHAOS) ? "ì•…":"ì„ ", alstr); #define INTERVAL ply_ptr->lasttime[LT_HOURS].interval - print(fd, "Á¢¼Ó½Ã°£ : "); + print(fd, "ì ‘ì†�시간 : "); if(INTERVAL > 86400L) - print(fd, "%dÀÏ ", INTERVAL/86400L); + print(fd, "%dì�¼ ", INTERVAL/86400L); if(INTERVAL > 3600L) - print(fd, "%d½Ã°£ ", (INTERVAL % 86400L)/3600L); - print(fd, "%dºÐ\n\n", (INTERVAL % 3600L)/60L); + print(fd, "%d시간 ", (INTERVAL % 86400L)/3600L); + print(fd, "%dë¶„\n\n", (INTERVAL % 3600L)/60L); - print(fd, "[ Èû ] %-2d [¹Î ø] %-2d [¸Ë Áý] %-2d\n", + print(fd, "[ 힘 ] %-2d [민 첩] %-2d [ë§· ì§‘] %-2d\n", ply_ptr->strength, ply_ptr->dexterity, ply_ptr->constitution); - print(fd, "[Áö ½Ä] %-2d [½Å¾Ó½É] %-2d\n\n", + print(fd, "[ì§€ ì‹�] %-2d [신앙심] %-2d\n\n", ply_ptr->intelligence, ply_ptr->piety); print(fd, - "[ü ·Â] %-5d/%-5d [°æÇèÄ¡] %lu ( %luÀÇ °æÇèÄ¡°¡ ÇÊ¿äÇÕ´Ï´Ù. )\n", + "[ì²´ ë ¥] %-5d/%-5d [경험치] %lu ( %luì�˜ 경험치가 필요합니다. )\n", ply_ptr->hpcur, ply_ptr->hpmax, ply_ptr->experience, MAX(0, expneeded-ply_ptr->experience)); - print(fd, "[µµ ·Â] %-5d/%-5d [ µ· ] %-7lu\n", + print(fd, "[ë�„ ë ¥] %-5d/%-5d [ ë�ˆ ] %-7lu\n", ply_ptr->mpcur, ply_ptr->mpmax, ply_ptr->gold); - print(fd, "[¹æ¾î·Â] %-5d [¼ÒÁöǰ ¹«°Ô] %d ±Ù (ÃÑ %d°³).\n\n", + print(fd, "[ë°©ì–´ë ¥] %-5d [소지품 무게] %d ê·¼ (ì´� %dê°œ).\n\n", (100-ply_ptr->armor), weight_ply(ply_ptr), cnt); - print(fd, "## ¹«±â»ç¿ë´É·Â ##\n"); - print(fd, "\n[ µµ ] %2d%% [ °Ë ] %2d%% [ ºÀ ] %2d%%\n", + print(fd, "## 무기사용능력 ##\n"); + print(fd, "\n[ ë�„ ] %2d%% [ ê²€ ] %2d%% [ ë´‰ ] %2d%%\n", profic(ply_ptr, SHARP), profic(ply_ptr, THRUST), profic(ply_ptr, BLUNT)); - print(fd, "[ â ] %2d%% [ ±Ã ] %2d%%\n\n", + print(fd, "[ ì°½ ] %2d%% [ ê¶� ] %2d%%\n\n", profic(ply_ptr, POLE), profic(ply_ptr, MISSILE)); - print(fd, "## ÁÖ ¼ú °è ¿­ ##:\n"); + print(fd, "## 주 술 계 ì—´ ##:\n"); print(fd, - "[ ¶¥ ] %2d%% [¹Ù¶÷] %2d%% [ ºÒ ] %2d%% [ ¹° ] %2d%%\n\n", + "[ ë•… ] %2d%% [바람] %2d%% [ 불 ] %2d%% [ 물 ] %2d%%\n\n", mprofic(ply_ptr, EARTH), mprofic(ply_ptr, WIND), mprofic(ply_ptr, FIRE), mprofic(ply_ptr, WATER)); F_SET(ply_ptr, PREADI); - print(fd, "[¿£ÅÍ]¸¦ ´©¸£¼¼¿ä. ±×¸¸º¸½Ã·Á¸é [.]À» Ä¡¼¼¿ä: "); + print(fd, "[엔터]를 누르세요. 그만보시려면 [.]ì�„ 치세요: "); output_buf(); Ply[fd].io->intrpt &= ~1; Ply[fd].io->fn = info_2; @@ -345,18 +345,18 @@ char *instr; ply_ptr = Ply[fd].ply; if(instr[0]=='.') { - print(fd, "ÁߴܵǾú½À´Ï´Ù.\n"); + print(fd, "중단ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); F_CLR(ply_ptr, PREADI); RETURN(fd, command, 1); } - strcpy(str, "\nÁÖ¹®: "); + strcpy(str, "\n주문: "); for(i=0,j=0; i<56; i++) if(S_ISSET(ply_ptr, i)) strcpy(spl[j++], spllist[i].splstr); if(!j) - strcat(str, "¾øÀ½."); + strcat(str, "ì—†ì�Œ."); else { qsort((void *)spl, j, 20, spell_name_cmp); for(i=0; ifd; if(cmnd->num < 2) { - print(fd, "´©±¸¿¡°Ô ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "누구ì—�게 ë§�ì�„ 전하시려구요?"); return 0; } @@ -436,15 +436,15 @@ cmd *cmnd; break; } if(!crt_ptr) { - print(fd, "´©±¸¿¡°Ô ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "누구ì—�게 ë§�ì�„ 전하시려구요?"); return(0); } if(ply_ptr->class < DM && (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "´©±¸¿¡°Ô ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "누구ì—�게 ë§�ì�„ 전하시려구요?"); return(0); } if(F_ISSET(crt_ptr, PIGNOR) && (ply_ptr->class < DM )) { - print(fd, "%s´ÔÀº À̾߱⠵è±â °ÅºÎ »óÅÂÀÔ´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì�€ ì�´ì•¼ê¸° 듣기 ê±°ë¶€ ìƒ�태입니다.", crt_ptr->name); return(0); } @@ -467,20 +467,20 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(spaces < 1 || strlen(&cmnd->fullstr[i+1]) < 1) { - print(fd, "¹«½¼ ¸»À» ÀüÇϽ÷Á±¸¿ä?"); + print(fd, "무슨 ë§�ì�„ 전하시려구요?"); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "´ç½ÅÀº ¸»À» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ë§�ì�„ í•  수 없습니다."); return(0); } if(F_ISSET(ply_ptr, PLECHO)){ - print(fd, "´ç½ÅÀº %M¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", crt_ptr,&cmnd->fullstr[i+1]); + print(fd, "당신ì�€ %Mì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr,&cmnd->fullstr[i+1]); } else - print(fd, "%s´Ô¿¡°Ô ¸»À» Àü´ÞÇÏ¿´½À´Ï´Ù.", crt_ptr->name); + print(fd, "%s님ì—�게 ë§�ì�„ 전달하였습니다.", crt_ptr->name); - print(crt_ptr->fd, "\n%C%M%j ´ç½Å¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.%D", "31",ply_ptr,"1", + print(crt_ptr->fd, "\n%C%M%j 당신ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.%D", "31",ply_ptr,"1", &cmnd->fullstr[i+1],"37"); strcpy(Ply[crt_ptr->fd].extr->talksend, ply_ptr->name); @@ -488,7 +488,7 @@ cmd *cmnd; if(ply_ptr->class > CARETAKER || crt_ptr->class > CARETAKER) return(0); - broadcast_eaves("\n--- %s´ÔÀÌ %s´Ô¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", ply_ptr->name, + broadcast_eaves("\n--- %s님ì�´ %s님ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", ply_ptr->name, crt_ptr->name, &cmnd->fullstr[i+1]); paste_command(cmnd->fullstr,len); @@ -525,7 +525,7 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(len==0) { - print(fd, "¹«½¼ ¸»À» ÇϽ÷Á±¸¿ä?"); + print(fd, "무슨 ë§�ì�„ 하시려구요?"); return(0); } @@ -534,18 +534,18 @@ cmd *cmnd; if(t>10 && F_ISSET(ply_ptr, PBRSND) && ply_ptr->classdaily[DL_BROAD])) { - print(fd,"´ç½ÅÀº ¿À´Ã Àâ´ãÀÇ ÇѰ踦 ³Ñ°å½À´Ï´Ù."); + print(fd,"당신ì�€ 오늘 잡담ì�˜ 한계를 넘겼습니다."); return(0); } } if(F_ISSET(ply_ptr, PSILNC) && ply_ptr->classlevel < 20 && ply_ptr->class < CARETAKER) { - print(fd, "´ç½ÅÀÇ ·¹º§·Î´Â Àâ´ãÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 레벨로는 잡담ì�„ í•  수 없습니다."); return(0); } @@ -558,7 +558,7 @@ cmd *cmnd; discount += discount*(ply_ptr->level)/60; if(ply_ptr->hpcur<=discount && ply_ptr->classclasshpcur-=discount; @@ -588,7 +588,7 @@ cmd *cmnd; cmnd->fullstr[255] = 0; if(len==0) { - print(fd, "¹«½¼ ¸»À» ÇϽ÷Á±¸¿ä?"); + print(fd, "무슨 ë§�ì�„ 하시려구요?"); return(0); } @@ -597,18 +597,18 @@ cmd *cmnd; if(t>10 && F_ISSET(ply_ptr, PBRSND) && ply_ptr->classdaily[DL_BROAD])) { - print(fd,"´ç½ÅÀº ¿À´Ã Àâ´ãÀÇ ÇѰ踦 ³Ñ°å½À´Ï´Ù."); + print(fd,"당신ì�€ 오늘 잡담ì�˜ 한계를 넘겼습니다."); return(0); } } if(F_ISSET(ply_ptr, PSILNC) && ply_ptr->classlevel < 20 && ply_ptr->class < CARETAKER) { - print(fd, "´ç½ÅÀÇ ·¹º§·Î´Â ȯȣ¸¦ ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 레벨로는 환호를 í•  수 없습니다."); return(0); } @@ -621,13 +621,13 @@ cmd *cmnd; discount += discount*(ply_ptr->level)/60; if(ply_ptr->hpcur<=discount && ply_ptr->classclasshpcur-=discount; broad_time[fd]=tt; - broadcast2("\n%C%s´ÔÀÌ \"%s\"¶ó°í ȯȣ¸¦ ÇÕ´Ï´Ù.%D", "32",ply_ptr->name, &cmnd->fullstr[0],"37"); + broadcast2("\n%C%s님ì�´ \"%s\"ë�¼ê³  환호를 합니다.%D", "32",ply_ptr->name, &cmnd->fullstr[0],"37"); return(0); } @@ -652,37 +652,37 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; - /* Àá½Ã »ç¿ëÁßÁö */ -/* print(fd,"¹ö±×°¡ Àִ°ü°è·Î »ç¿ëÀ» ±ÝÁöÇÕ´Ï´Ù."); + /* 잠시 사용중지 */ +/* print(fd,"버그가 있는관계로 사용ì�„ 금지합니다."); return; */ if(cmnd->num < 2) { - print(fd, "´©±¸¸¦ µû¶ó °¡½Ã°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "누구를 ë”°ë�¼ 가시고 싶으세요?"); return(0); } F_CLR(ply_ptr, PHIDDN); - if(!strcmp(cmnd->str[1],"³ª")) new_ptr=ply_ptr; + if(!strcmp(cmnd->str[1],"나")) new_ptr=ply_ptr; else new_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[1], cmnd->val[1]); if(!new_ptr) { - print(fd, "±×·± »ç¶÷Àº ¿©±â ¾ø½À´Ï´Ù."); + print(fd, "그런 사람ì�€ 여기 없습니다."); return(0); } if(new_ptr == ply_ptr && !ply_ptr->following) { - print(fd, "ÀÚ±âÀÚ½ÅÀ» µû¶ó °¥¼ø ¾ø½À´Ï´Ù."); + print(fd, "ìž�기ìž�ì‹ ì�„ ë”°ë�¼ 갈순 없습니다."); return(0); } if(new_ptr->following == ply_ptr) { - print(fd, "ÀÌ¹Ì %s´Â ´ç½ÅÀ» µû¶ó´Ù´Ï°í ÀÖ½À´Ï´Ù.", - F_ISSET(new_ptr, PMALES) ? "±×":"±×³à"); + print(fd, "ì�´ë¯¸ %s는 당신ì�„ ë”°ë�¼ë‹¤ë‹ˆê³  있습니다.", + F_ISSET(new_ptr, PMALES) ? "ê·¸":"그녀"); return(0); } - if(ply_ptr->following) { /* µû¶ó°¡°í ÀÖ´Â »ç¶÷ÀÌ ÀÖ´Ù¸é... */ + if(ply_ptr->following) { /* ë”°ë�¼ê°€ê³  있는 사람ì�´ 있다면... */ old_ptr = ply_ptr->following; cp = old_ptr->first_fol; if(cp->crt == ply_ptr) { @@ -699,9 +699,9 @@ cmd *cmnd; cp = cp->next_tag; } ply_ptr->following = 0; - print(fd, "´ç½ÅÀº %s´ÔÀ» ±×¸¸ µû¶ó ´Ù´Ï±â·Î ÇÏ¿´½À´Ï´Ù.\n", old_ptr->name); + print(fd, "당신ì�€ %s님ì�„ 그만 ë”°ë�¼ 다니기로 하였습니다.\n", old_ptr->name); if(!F_ISSET(ply_ptr, PDMINV)) - print(old_ptr->fd, "\n%MÀº ÀÌÁ¦ ´ç½ÅÀ» µû¶ó´Ù´ÏÁö ¾Ê½À´Ï´Ù.", + print(old_ptr->fd, "\n%Mì�€ ì�´ì œ 당신ì�„ ë”°ë�¼ë‹¤ë‹ˆì§€ 않습니다.", ply_ptr); } @@ -723,11 +723,11 @@ cmd *cmnd; new_ptr->first_fol = pp; } - print(fd, "´ç½ÅÀº ÀÌÁ¦ºÎÅÍ %s´ÔÀ» µû¶ó´Ù´Õ´Ï´Ù.", new_ptr->name); + print(fd, "당신ì�€ ì�´ì œë¶€í„° %s님ì�„ ë”°ë�¼ë‹¤ë‹™ë‹ˆë‹¤.", new_ptr->name); if(!F_ISSET(ply_ptr, PDMINV)) { - print(new_ptr->fd, "\n%MÀÌ ÀÌÁ¦ºÎÅÍ ´ç½ÅÀ» µû¶ó´Ù´Õ´Ï´Ù.", ply_ptr); + print(new_ptr->fd, "\n%Mì�´ ì�´ì œë¶€í„° 당신ì�„ ë”°ë�¼ë‹¤ë‹™ë‹ˆë‹¤.", ply_ptr); broadcast_rom2(fd, new_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ ÀÌÁ¦ºÎÅÍ %MÀ» µû¶ó´Ù´Õ´Ï´Ù.", ply_ptr, new_ptr); + "\n%Mì�´ ì�´ì œë¶€í„° %Mì�„ ë”°ë�¼ë‹¤ë‹™ë‹ˆë‹¤.", ply_ptr, new_ptr); } return(0); @@ -755,7 +755,7 @@ cmd *cmnd; if(cmnd->num == 1) { if (ply_ptr->following == 0){ - print(fd, "´ç½ÅÀº ´©±¸¸¦ µû¶ó´Ù´Ï°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 누구를 ë”°ë�¼ë‹¤ë‹ˆê³  있지 않습니다."); return(0); } @@ -775,9 +775,9 @@ if(cmnd->num == 1) { cp = cp->next_tag; } ply_ptr->following = 0; - print(fd,"´ç½ÅÀº %MÀ» ±×¸¸ µû¶ó´Ù´Ï±â·Î ÇÏ¿´½À´Ï´Ù.\n",crt_ptr); + print(fd,"당신ì�€ %Mì�„ 그만 ë”°ë�¼ë‹¤ë‹ˆê¸°ë¡œ 하였습니다.\n",crt_ptr); if (!F_ISSET(ply_ptr,PDMINV)) - print(crt_ptr->fd,"\n%MÀº ÀÌÁ¦ ´ç½ÅÀ» µû¶ó ´Ù´ÏÁö ¾Ê½À´Ï´Ù.",ply_ptr); + print(crt_ptr->fd,"\n%Mì�€ ì�´ì œ 당신ì�„ ë”°ë�¼ 다니지 않습니다.",ply_ptr); return(0); } @@ -788,12 +788,12 @@ if(cmnd->num == 1) { cmnd->str[1], cmnd->val[1]); if(!crt_ptr) { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀ» µû¶ó´Ù´Ï°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "ê·¸ 사람ì�€ 당신ì�„ ë”°ë�¼ë‹¤ë‹ˆê³  있지 않습니다."); return(0); } if(crt_ptr->following != ply_ptr) { - print(fd, "±× »ç¶÷Àº ´ç½ÅÀ» µû¶ó´Ù´Ï°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "ê·¸ 사람ì�€ 당신ì�„ ë”°ë�¼ë‹¤ë‹ˆê³  있지 않습니다."); return(0); } @@ -813,10 +813,10 @@ if(cmnd->num == 1) { } crt_ptr->following = 0; - print(fd, "´ç½ÅÀº %MÀÌ ´ç½ÅÀ» ¸øµû¶ó ¿Àµµ·Ï ÇÏ¿´½À´Ï´Ù.", crt_ptr); + print(fd, "당신ì�€ %Mì�´ 당신ì�„ 못따ë�¼ 오ë�„ë¡� 하였습니다.", crt_ptr); if(!F_ISSET(ply_ptr, PDMINV)) { - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÌ ¸øµû¶ó ¿Àµµ·Ï ÇÏ¿´½À´Ï´Ù.", ply_ptr); - broadcast_rom2(fd, crt_ptr->fd, "\n%MÀÌ %MÀ» ¸øµû¶ó ¿Àµµ·Ï ÇÏ¿´½À´Ï´Ù.", + print(crt_ptr->fd, "\n%Mì�´ 당신ì�´ 못따ë�¼ 오ë�„ë¡� 하였습니다.", ply_ptr); + broadcast_rom2(fd, crt_ptr->fd, "\n%Mì�´ %Mì�„ 못따ë�¼ 오ë�„ë¡� 하였습니다.", ply_ptr, crt_ptr); } @@ -843,8 +843,8 @@ cmd *cmnd; fd = ply_ptr->fd; - /* Àá½Ã »ç¿ëÁßÁö */ -/* print(fd,"¹ö±×°¡ ÀÖ´Â °ü°è·Î »ç¿ëÀ» ±ÝÁöÇÕ´Ï´Ù."); + /* 잠시 사용중지 */ +/* print(fd,"버그가 있는 관계로 사용ì�„ 금지합니다."); return; */ if(ply_ptr->following) { @@ -855,19 +855,19 @@ cmd *cmnd; cp = ply_ptr->first_fol; leader=ply_ptr; if(!cp) { - print(fd,"´ç½ÅÀº ±×·ì¿¡ ¼ÓÇØ ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd,"당신ì�€ 그룹ì—� ì†�í•´ 있지 않습니다."); return(0); } } - strcpy(str, "±×·ì¿ø:\n"); - sprintf(str2, " %14s ü·Â:%4d µµ·Â:%4d (´ëÀå)\n", + strcpy(str, "그룹ì›�:\n"); + sprintf(str2, " %14s ì²´ë ¥:%4d ë�„ë ¥:%4d (대장)\n", crt_str(leader,0,2),leader->hpcur,leader->mpcur); strcat(str,str2); while(cp) { if(!F_ISSET(cp->crt, PDMINV)) { - sprintf(str2, " %14s ü·Â:%4d µµ·Â:%4d\n", + sprintf(str2, " %14s ì²´ë ¥:%4d ë�„ë ¥:%4d\n", crt_str(cp->crt,0,2),cp->crt->hpcur,cp->crt->mpcur); strcat(str, str2); found = 1; @@ -876,7 +876,7 @@ cmd *cmnd; } if(!found) { - print(fd, "´ç½ÅÀº ±×·ì¿¡ ¼ÓÇØ ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그룹ì—� ì†�í•´ 있지 않습니다."); return(0); } @@ -905,7 +905,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != RANGER && ply_ptr->class < INVINCIBLE) { - print(fd, "Æ÷Á¹¸¸ ¾µ¼ö ÀÖ´Â ¸í·ÉÀÔ´Ï´Ù."); + print(fd, "í�¬ì¡¸ë§Œ 쓸수 있는 명령입니다."); return(0); } @@ -923,24 +923,24 @@ cmd *cmnd; ply_ptr->lasttime[LT_TRACK].interval = 5 - bonus[ply_ptr->dexterity]; if(F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù. µµÀúÈ÷ ÃßÀûÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다. ë�„저히 ì¶”ì �ì�„ í•  수 없습니다."); return(0); } chance = 25 + (bonus[ply_ptr->dexterity] + ((ply_ptr->level+3)/4))*5; if(mrand(1,100) > chance) { - print(fd, "ÃßÀû ½ÇÆÐ!"); + print(fd, "ì¶”ì � 실패!"); return(0); } if(!ply_ptr->parent_rom->track[0]) { - print(fd, "¾Æ¹«·± ÈçÀûÀÌ ³²¾ÆÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "아무런 í�”ì �ì�´ 남아있지 않습니다."); return(0); } - print(fd, "%sÂÊÀ¸·Î ÈçÀûÀÌ ³ª ÀÖ½À´Ï´Ù.", + print(fd, "%s쪽으로 í�”ì �ì�´ 나 있습니다.", ply_ptr->parent_rom->track); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÀûÀÌ Áö³ª°£ ÈçÀûÀ» ã¾Ò½À´Ï´Ù.", ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ì �ì�´ 지나간 í�”ì �ì�„ 찾았습니다.", ply_ptr); return(0); @@ -969,18 +969,18 @@ cmd *cmnd; str[0] = 0; if(cmnd->num < 2) { - print(fd, "´©±¸ÀÇ ¼ÒÁöǰÀ» º¸·Á±¸¿ä?"); + print(fd, "누구ì�˜ 소지품ì�„ 보려구요?"); return(0); } if(ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "´ç½Å Á÷¾÷À¸·Î´Â ´Ù¸¥»ç¶÷ÀÇ ¼ÒÁöǰÀ» º¼ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신 ì§�업으로는 다른사람ì�˜ 소지품ì�„ ë³¼ 수 없습니다."); return(0); } if(F_ISSET(ply_ptr, PBLIND)){ ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!"); ANSI(fd, WHITE); return(0); } @@ -994,7 +994,7 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷ ¾ø¾î¿ä!"); + print(fd, "그런 사람 없어요!"); return(0); } } @@ -1011,7 +1011,7 @@ cmd *cmnd; ply_ptr->lasttime[LT_PEEKS].interval = 5; if((F_ISSET(crt_ptr, MUNSTL) || F_ISSET(crt_ptr, MTRADE) || F_ISSET(crt_ptr, MPURIT)) && ply_ptr->class < DM) { - print(fd, "´ç½ÅÀº ´Ù¸¥»ç¶÷ÀÇ ¼ÒÁöǰÀ» º¼ ¼ö ¾ø½À´Ï´Ù.\n´Ù¸¥»ç¶÷ÀÌ ´ç½Åº¸°í µµµÏÀ̶ó°í »ý°¢ÇÒ °ÍÀÔ´Ï´Ù."); + print(fd, "당신ì�€ 다른사람ì�˜ 소지품ì�„ ë³¼ 수 없습니다.\n다른사람ì�´ 당신보고 ë�„ë‘‘ì�´ë�¼ê³  ìƒ�ê°�í•  것입니다."); return(0); } @@ -1019,26 +1019,26 @@ cmd *cmnd; if (chance<0) chance=0; if (ply_ptr->class >= CARETAKER) chance=100; if(mrand(1,100) > chance) { - print(fd, "½ÇÆÐÇÏ¿´½À´Ï´Ù!"); + print(fd, "실패하였습니다!"); return(0); } chance = MIN(90, 15 + ((ply_ptr->level+3)/4)*5); if(mrand(1,100) > chance && ply_ptr->class < CARETAKER) { - print(crt_ptr->fd, "%s´ÔÀÌ ´ç½ÅÀÇ ¼ÒÁöǰÀ» ½½Â½ ¿³º¾´Ï´Ù.", ply_ptr); + print(crt_ptr->fd, "%s님ì�´ 당신ì�˜ 소지품ì�„ 슬ì©� 엿봅니다.", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¼ÒÁöǰÀ» ½½Â½ ¿³º¾´Ï´Ù.", + "\n%Mì�´ %Mì�˜ 소지품ì�„ 슬ì©� 엿봅니다.", ply_ptr, crt_ptr); } - sprintf(str, "%sÀÇ ¼ÒÁöǰ: ", F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à"); + sprintf(str, "%sì�˜ 소지품: ", F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀"); n = strlen(str); if(list_obj(&str[n], ply_ptr, crt_ptr->first_obj) > 0) print(fd, "%s", str); else - print(fd, "%s´Â ¾Æ¹«°Íµµ µé°í ÀÖÁö ¾Ê½À´Ï´Ù.", - F_ISSET(crt_ptr, PMALES) ? "±×":"±×³à"); + print(fd, "%s는 아무것ë�„ 들고 있지 않습니다.", + F_ISSET(crt_ptr, PMALES) ? "ê·¸":"그녀"); return(0); diff --git a/src/command5.c b/src/command5.c index c4aea9c4..0c11a748 100644 --- a/src/command5.c +++ b/src/command5.c @@ -48,7 +48,7 @@ cmd *cmnd; i = LT(ply_ptr, LT_ATTCK); if(ply_ptr->class==0) { - print(fd,"´ç½ÅÀº ÀüÅõ°¡ ±ÝÁöµÈ Á÷¾÷À» °®°í ÀÖ½À´Ï´Ù."); + print(fd,"당신ì�€ 전투가 금지ë�œ ì§�ì—…ì�„ ê°–ê³  있습니다."); return 0; } if(t < i) { @@ -57,14 +57,14 @@ cmd *cmnd; } if(cmnd->num < 2 || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´©±¸¸¦ °ø°ÝÇϽ÷Á±¸¿ä?"); + print(fd, "누구를 공격하시려구요?"); return(0); } rom_ptr = ply_ptr->parent_rom; if(ply_is_attacking(ply_ptr,cmnd)) { - print(fd, "´ç½ÅÀº Áö±Ý ½Î¿ì°í ÀÖÀݾƿä!"); + print(fd, "당신ì�€ 지금 싸우고 있잖아요!"); return(0); } @@ -77,7 +77,7 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[1]) < 2) { - print(fd, "±×·±°Ç ¿©±â ¾ø½À´Ï´Ù."); + print(fd, "그런건 여기 없습니다."); return(0); } @@ -120,7 +120,7 @@ creature *crt_ptr; return(0); if (crt_ptr->type != MONSTER) { if(is_charm_crt(ply_ptr->name, crt_ptr) && F_ISSET(ply_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %S%j ³Ê¹« ÁÁ¾ÆÇؼ­ ±×·²¼ö ¾ø½À´Ï´Ù.", crt_ptr->name,"3"); + print(fd, "당신ì�€ %S%j 너무 좋아해서 그럴수 없습니다.", crt_ptr->name,"3"); return(0); } else @@ -130,8 +130,8 @@ creature *crt_ptr; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³µ½À´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³µ½À´Ï´Ù.", + print(fd, "\n당신ì�˜ 모습ì�´ 서서히 드러났습니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러났습니다.", ply_ptr); } @@ -145,27 +145,27 @@ creature *crt_ptr; } if(crt_ptr->type == MONSTER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥ ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 í•´ì¹  수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(add_enm_crt(ply_ptr->name, crt_ptr) < 0) { - print(fd, "´ç½ÅÀº %M%j °ø°ÝÇÕ´Ï´Ù.", crt_ptr,"3"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j °ø°ÝÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %M%j 공격합니다.", crt_ptr,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j 공격합니다.", ply_ptr, "1",crt_ptr,"3"); } if(F_ISSET(crt_ptr, MMGONL)) { - print(fd, "\n´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.", + print(fd, "\n당신ì�˜ 무기는 %Mì—�게 아무 소용ì�´ 없는듯 합니다.", crt_ptr); return(0); } if(F_ISSET(crt_ptr, MENONL) && ply_ptr->class < CARETAKER) { if(!ply_ptr->ready[WIELD-1] || ply_ptr->ready[WIELD-1]->adjustment < 1) { - print(fd, "\n´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.", + print(fd, "\n당신ì�˜ 무기는 %Mì—�게 아무 소용ì�´ 없는듯 합니다.", crt_ptr); return(0); } @@ -173,35 +173,35 @@ creature *crt_ptr; } else { if(F_ISSET(ply_ptr->parent_rom, RNOKIL)) { - print(fd, "ÀÌ °÷¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì�´ ê³³ì—�서는 싸울 수 없습니다."); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && ply_ptr->level < 128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±ÇÏ´Ù´Â°É ¾Æ¼¼¿ä."); + print(fd, "당신ì�€ 선하다는걸 아세요."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && ply_ptr->level <128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 공격할 수 없습니다."); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && ply_ptr->level < 128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±ÇÏ´Ù´Â°É ¾Æ¼¼¿ä."); + print(fd, "당신ì�€ 선하다는걸 아세요."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && ply_ptr->level <128 && !F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 공격할 수 없습니다."); return (0); } } ply_ptr->lasttime[LT_ATTCK].interval += 3; - print(crt_ptr->fd, "\n%M%j ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù!", ply_ptr,"1"); + print(crt_ptr->fd, "\n%M%j 당신ì�„ 공격합니다!", ply_ptr,"1"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j °ø°ÝÇÕ´Ï´Ù!", ply_ptr, "1",crt_ptr,"3"); + "\n%M%j %M%j 공격합니다!", ply_ptr, "1",crt_ptr,"3"); } count = 1; @@ -218,9 +218,9 @@ creature *crt_ptr; if(ply_ptr->ready[WIELD-1]) { if(ply_ptr->ready[WIELD-1]->shotscur < 1) { - print(fd, "\n%S%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + print(fd, "\n%S%j 부서져 버렸습니다.", ply_ptr->ready[WIELD-1]->name,"1"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ %S%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ %S%j 부서져 버렸습니다.", ply_ptr, ply_ptr->ready[WIELD-1]->name,"1"); add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; @@ -233,7 +233,7 @@ creature *crt_ptr; if (F_ISSET(ply_ptr, PFEARS)) n += 2; if (F_ISSET(ply_ptr, PBLIND)) n += 5; - if(mrand(1,30) >= n) { /* ¿ø·¡°ª 20 */ + if(mrand(1,30) >= n) { /* ì›�래값 20 */ if(ply_ptr->ready[WIELD-1]) { n = mdice(ply_ptr->ready[WIELD-1]) + bonus[(int)ply_ptr->strength] + @@ -268,11 +268,11 @@ creature *crt_ptr; if(ply_ptr->class == PALADIN) { if(ply_ptr->alignment < 0) { n /= 2; - print(fd, "\n´ç½ÅÀÇ ¾ÇÇàÀÌ ¾ç½ÉÀ» ±«·ÓÈü´Ï´Ù."); + print(fd, "\n당신ì�˜ ì•…í–‰ì�´ 양심ì�„ 괴롭힙니다."); } else if(ply_ptr->alignment > 250) { n += mrand(1,3); - print(fd, "\n´ç½ÅÀÇ ¼±ÇàÀÌ ´É·ÂÀ» ¹è°¡½Ãŵ´Ï´Ù."); + print(fd, "\n당신ì�˜ ì„ í–‰ì�´ 능력ì�„ 배가시킵니다."); } } @@ -281,18 +281,18 @@ creature *crt_ptr; (ply_ptr->ready[WIELD-1] && F_ISSET(ply_ptr->ready[WIELD-1],OALCRT))) { ANSI(fd, GREEN); - print(fd, "\n´ç½ÅÀº %M¿¡°Ô Ä¡¸íŸ¸¦ ³¯·È½À´Ï´Ù.",crt_ptr); + print(fd, "\n당신ì�€ %Mì—�게 치명타를 날렸습니다.",crt_ptr); ANSI(fd, WHITE); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Ä¡¸íŸ¸¦ ³¯·È½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 치명타를 날렸습니다.", ply_ptr); n *= mrand(3,6); if(ply_ptr->ready[WIELD-1] && (!F_ISSET(ply_ptr->ready[WIELD-1], ONSHAT)) && ((mrand(1,100) < 3) || (F_ISSET(ply_ptr->ready[WIELD-1],OALCRT)))) { if(!F_ISSET(ply_ptr->ready[WIELD-1], ONEWEV)) { - print(fd, "\n%S%j »ê»êÈ÷ ºÎ¼­Áý´Ï´Ù.", + print(fd, "\n%S%j 산산히 부서집니다.", ply_ptr->ready[WIELD-1]->name,"1"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%sÀÇ %S%j »ê»êÈ÷ ºÎ¼­Áý´Ï´Ù.", - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à", + "\n%sì�˜ %S%j 산산히 부서집니다.", + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀", ply_ptr->ready[WIELD-1]->name,"1"); free_obj(ply_ptr->ready[WIELD-1]); ply_ptr->ready[WIELD-1] = 0; @@ -302,19 +302,19 @@ creature *crt_ptr; else if(mrand(1,100) <= (5-p) && ply_ptr->ready[WIELD-1] && !F_ISSET(ply_ptr->ready[WIELD-1], OCURSE)) { ANSI(fd, GREEN); - print(fd, "\n´ç½ÅÀº ¹«±â¸¦ ¶³¾î¶ß·È½À´Ï´Ù."); + print(fd, "\n당신ì�€ 무기를 떨어뜨렸습니다."); ANSI(fd, WHITE); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¹«±â¸¦ ¶³¾î¶ß·È½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 무기를 떨어뜨렸습니다.", ply_ptr); n = 0; add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; compute_thaco(ply_ptr); } - print(fd, "\n´ç½ÅÀº %M¿¡°Ô %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.", crt_ptr, n); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔÈü´Ï´Ù.",ply_ptr, "1",crt_ptr,"3",n); - print(crt_ptr->fd, "\n´ç½ÅÀº %M¿¡°Ô¼­ %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.", + print(fd, "\n당신ì�€ %Mì—�게 %d ë§Œí�¼ì�˜ 피해를 주었습니다.", crt_ptr, n); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %M%j %dë§Œí�¼ì�˜ 피해를 입힙니다.",ply_ptr, "1",crt_ptr,"3",n); + print(crt_ptr->fd, "\n당신ì�€ %Mì—�게서 %d ë§Œí�¼ì�˜ 피해를 입었습니다.", ply_ptr, n); if(ply_ptr->ready[WIELD-1] && !mrand(0,3)) @@ -339,9 +339,9 @@ creature *crt_ptr; } if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.", crt_ptr,"3"); + print(fd, "\n당신ì�€ %M%j 죽였습니다.", crt_ptr,"3"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", crt_ptr,"3"); + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); return(1); } @@ -349,8 +349,8 @@ creature *crt_ptr; check_for_flee(ply_ptr, crt_ptr); } else { - print(fd, "\nÇã°øÀ» ÃÆ½À´Ï´Ù."); - print(crt_ptr->fd, "\n%M%j Çã°øÀ» ÃÆ½À´Ï´Ù.", ply_ptr,"1"); + print(fd, "\n허공ì�„ 쳤습니다."); + print(crt_ptr->fd, "\n%M%j 허공ì�„ 쳤습니다.", ply_ptr,"1"); } } return(0); @@ -377,7 +377,7 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PBLIND)){ ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 눈ì�´ 멀어 있습니다!\n"); ANSI(fd, WHITE); return(0); } @@ -388,8 +388,8 @@ cmd *cmnd; } if((sum > 30) && !((cmnd->num == 2) && !strcmp(cmnd->str[1], "l"))) { - print(fd, "%-14s [·¹º§ Á÷¾÷]", "»ç¿ëÀÚ"); - print(fd, " %-14s [·¹º§ Á÷¾÷]\n", "»ç¿ëÀÚ"); + print(fd, "%-14s [레벨 ì§�ì—…]", "사용ìž�"); + print(fd, " %-14s [레벨 ì§�ì—…]\n", "사용ìž�"); print(fd, "-------------------------------"); print(fd, "-----------------------------\n"); for(i=0; iclass < SUB_DM) - if(Ply[i].ply!=ply_ptr) continue; /* Åõ¸íµÇ¾îµµ ÀÚ½ÅÀº ³ª¿Àµµ·Ï... */ + if(Ply[i].ply!=ply_ptr) continue; /* 투명ë�˜ì–´ë�„ ìž�ì‹ ì�€ 나오ë�„ë¡�... */ total++; ANSI(fd, WHITE); print(fd, "%-13s%s ", Ply[i].ply->name, @@ -443,7 +443,7 @@ cmd *cmnd; ANSI(fd, GREEN); print(fd, "[%s%02d ] ", (Ply[i].ply->level>=100)? "" : " ", Ply[i].ply->level); - /* ºÒ»çÀÌ»ó »¡°­»ö */ + /* 불사ì�´ìƒ� 빨강색 */ /* if(Ply[i].ply->class>=CARETAKER) { ANSI(fd,BOLD); ANSI(fd,RED); @@ -473,7 +473,7 @@ cmd *cmnd; } else { ANSI(fd, BLUE); - print(fd, "[Á߸³] "); + print(fd, "[중립] "); } ANSI(fd, WHITE); title_cut_index[fd]=1; @@ -483,11 +483,11 @@ cmd *cmnd; #endif } } - if(total!=1) print(fd, "\nÃÑ %d¸íÀÇ »ç¿ëÀÚ°¡ ¹«ÇÑ´ëÀüÀ» ÀÌ¿ëÇϰí ÀÖ½À´Ï´Ù.",total); - else print(fd, "\n´ç½Å È¥ÀÚ¼­ ¿Ü·ÎÀÌ ¹«ÇÑ´ëÀüÀ» ÀÌ¿ëÇϰí ÀÖ½À´Ï´Ù."); + if(total!=1) print(fd, "\nì´� %d명ì�˜ 사용ìž�ê°€ 무한대전ì�„ ì�´ìš©í•˜ê³  있습니다.",total); + else print(fd, "\n당신 혼ìž�서 외로ì�´ 무한대전ì�„ ì�´ìš©í•˜ê³  있습니다."); if(AT_WAR) - print(fd, "\n%s ÆÐ°Å¸®¿Í %s ÆÐ°Å¸®°¡ ÀüÀïÁßÀÔ´Ï´Ù.", + print(fd, "\n%s 패거리와 %s 패거리가 ì „ìŸ�중입니다.", family_str[AT_WAR/16], family_str[AT_WAR%16]); return(0); @@ -510,7 +510,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "´©±¸¸¦ °Ë»öÇϽ÷Á±¸¿ä?"); + print(fd, "누구를 검색하시려구요?"); return(0); } @@ -519,16 +519,16 @@ cmd *cmnd; if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || F_ISSET(ply_ptr, PBLIND) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "ÇöÀç ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "현재 ì�´ìš©ì¤‘ì�´ 아닙니다."); return(0); } ANSI(fd, YELLOW); - print(fd, "%-18s %-4s [·¹º§] %-4s %-20s %-4s %-10s\n", "»ç¿ëÀÚ", "¼ºº°", "Á÷¾÷", "Īȣ", "³ªÀÌ", "Á¾Á·"); + print(fd, "%-18s %-4s [레벨] %-4s %-20s %-4s %-10s\n", "사용ìž�", "성별", "ì§�ì—…", "칭호", "나ì�´", "종족"); print(fd, "----------------------------------------------------------------------------\n"); print(fd, "%-18s %-4s [ %02d ] %-4.4s %-20s %-4d ", crt_ptr->name, - F_ISSET(crt_ptr, PMALES) ? " ³²":" ¿©", + F_ISSET(crt_ptr, PMALES) ? " 남":" ì—¬", crt_ptr->level, class_str[(int)crt_ptr->class], title_ply(ply_ptr,crt_ptr), @@ -594,7 +594,7 @@ cmd *cmnd; if((!F_ISSET(xp->ext, XINVIS) || F_ISSET(ply_ptr,PDINVI)) && !F_ISSET(xp->ext, XNOSEE)){ found++; - print(fd, "\nÃⱸ¸¦ ã¾Ò½À´Ï´Ù: %s.", xp->ext->name); + print(fd, "\n출구를 찾았습니다: %s.", xp->ext->name); } xp = xp->next_tag; } @@ -604,7 +604,7 @@ cmd *cmnd; if(F_ISSET(op->obj, OHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(op->obj, OINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº %1i%j ã¾Ò½À´Ï´Ù.", op->obj,"3"); + print(fd, "\n당신ì�€ %1i%j 찾았습니다.", op->obj,"3"); } op = op->next_tag; } @@ -615,7 +615,7 @@ cmd *cmnd; mrand(1,100) <= chance) if(!F_ISSET(cp->crt, PINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %S%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt->name,"3"); + print(fd, "\n당신ì�€ 숨어있는 %S%j 찾아내었습니다.", cp->crt->name,"3"); } cp = cp->next_tag; } @@ -625,18 +625,18 @@ cmd *cmnd; if(F_ISSET(cp->crt, MHIDDN) && mrand(1,100) <= chance) if(!F_ISSET(cp->crt, MINVIS) || F_ISSET(ply_ptr,PDINVI)) { found++; - print(fd, "\n´ç½ÅÀº ¼û¾îÀÖ´Â %1M%j ã¾Æ³»¾ú½À´Ï´Ù.", cp->crt,"3"); + print(fd, "\n당신ì�€ 숨어있는 %1M%j 찾아내었습니다.", cp->crt,"3"); } cp = cp->next_tag; } - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖº¯À» »ô»ôÀÌ µÚÁ®º¾´Ï´Ù.", ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주변ì�„ 샅샅ì�´ 뒤져봅니다.", ply_ptr); if(found) - broadcast_rom(fd, ply_ptr->rom_num, "\n%s°¡ ¹» ¹ß°ßÇÑ°Í °°±º¿ä!", - F_ISSET(ply_ptr, MMALES) ? "±×":"±×³à"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%sê°€ ë­˜ 발견한것 같군요!", + F_ISSET(ply_ptr, MMALES) ? "ê·¸":"그녀"); else - print(fd, "´ç½ÅÀº ¾Æ¹«°Íµµ ãÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 아무것ë�„ 찾지 못했습니다.\n"); return(0); @@ -681,8 +681,8 @@ char *str; case 1: ANSI(fd, BOLD); ANSI(fd, RED); - print(fd, "´ç½Å¿¡ °üÇÑ µ¥ÀÌÅ͸¦ ¿ÏÀüÈ÷ »èÁ¦ÇÕ´Ï´Ù.\n"); - print(fd, "´ç½ÅÀÇ ÇöÀç ¾ÏÈ£¸¦ ³Ö¾îÁֽʽÿä : "); + print(fd, "당신ì—� 관한 ë�°ì�´í„°ë¥¼ 완전히 삭제합니다.\n"); + print(fd, "당신ì�˜ 현재 암호를 넣어주십시요 : "); ANSI(fd, NORMAL); ANSI(fd, WHITE); F_SET(Ply[fd].ply,PREADI); @@ -690,23 +690,26 @@ char *str; case 2: F_CLR(Ply[fd].ply,PREADI); if(!strcmp(ply_ptr->password, str)) { - print(fd, "ÂðÂ¥·Î? (ÂðÂ¥·Î/»½À¸·Î)"); + print(fd, "ì°�짜로? (ì°�짜로/뻥으로)"); F_SET(Ply[fd].ply,PREADI); RETURN(fd, suicide, 3); } else { - print(fd, "¾ÏÈ£°¡ Ʋ¸³´Ï´Ù.\n»èÁ¦µÇÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "암호가 틀립니다.\nì‚­ì œë�˜ì§€ 않았습니다."); RETURN(fd, command, 1); } case 3: F_CLR(Ply[fd].ply,PREADI); - if(!strcmp(str,"ÂðÂ¥·Î")) { + if(!strcmp(str,"ì°�짜로")) { if(F_ISSET(ply_ptr, PFAMIL)) { edit_member(ply_ptr->name, ply_ptr->class, ply_ptr->daily[DL_EXPND].max, 2); } - broadcast_all("\n### %s´ÔÀÌ ÀÚ»ì½ÅûÀ» ÇÏ¿´½À´Ï´Ù.\n", Ply[fd].ply->name); + broadcast_all("\n### %s님ì�´ ìž�ì‚´ì‹ ì²­ì�„ 하였습니다.\n", Ply[fd].ply->name); all_broad_time=time(0); - sprintf(file, "%s/%s/%s", PLAYERPATH,first_han(Ply[fd].ply->name), Ply[fd].ply->name); + if(player_path_from_name(Ply[fd].ply->name, file, sizeof(file)) < 0) { + print(fd, "플레ì�´ì–´ 경로를 만들 수 없습니다."); + RETURN(fd, command, 1); + } sprintf(file2,"%s/alias/%s",PLAYERPATH,Ply[fd].ply->name); sprintf(file3,"%s/bank/%s",PLAYERPATH,Ply[fd].ply->name); sprintf(temp, "mv %s %s/suic/%s", file, PLAYERPATH, Ply[fd].ply->name); @@ -716,7 +719,7 @@ char *str; t = time(0); strcpy(buf,ctime(&t)); buf[strlen(buf)-1] = 0; - logn("SUICIDE","%s : %s (%s)´ÔÀÌ ÀÚ»ì½ÅûÀ» ÇÏ¿´½À´Ï´Ù.\n", buf,Ply[fd].ply->name, Ply[fd].io->address); + logn("SUICIDE","%s : %s (%s)님ì�´ ìž�ì‚´ì‹ ì²­ì�„ 하였습니다.\n", buf,Ply[fd].ply->name, Ply[fd].io->address); #endif disconnect(fd); system(temp); @@ -725,7 +728,7 @@ char *str; return; } else { - print(fd, "»èÁ¦µÇÁö ¾Ê¾Ò½À´Ï´Ù."); + print(fd, "ì‚­ì œë�˜ì§€ 않았습니다."); RETURN(fd, command, 1); } } @@ -774,21 +777,21 @@ cmd *cmnd; chance = MIN(90, 5 + 2*((ply_ptr->level+3)/4) + 3*bonus[(int)ply_ptr->dexterity]); - print(fd, "´ç½ÅÀº ¾Ö½á ¼û¾îº¸·Á°í ÇÕ´Ï´Ù."); + print(fd, "당신ì�€ ì• ì�¨ 숨어보려고 합니다."); if(F_ISSET(ply_ptr, PBLIND)) chance = MIN(chance, 20); if(mrand(1,100) <= chance) { F_SET(ply_ptr, PHIDDN); - print(fd, "\n´ç½ÅÀº ¼º°øÀûÀ¸·Î ¼û¾ú½À´Ï´Ù."); + print(fd, "\n당신ì�€ 성공ì �으로 숨었습니다."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j ±×¸²ÀÚ »çÀÌ·Î ¼û¾ú½À´Ï´Ù.", ply_ptr,"1"); + "\n%M%j 그림ìž� 사ì�´ë¡œ 숨었습니다.", ply_ptr,"1"); } else { F_CLR(ply_ptr, PHIDDN); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j ¾Ö½á ¼û¾îº¸·Á°í ÇÕ´Ï´Ù.", ply_ptr,"1"); + "\n%M%j ì• ì�¨ 숨어보려고 합니다.", ply_ptr,"1"); } @@ -800,12 +803,12 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "±×·±°ÍÀº ¿©±â ¾ø¾î¿ä."); + print(fd, "그런것ì�€ 여기 없어요."); return(0); } if(F_ISSET(obj_ptr,ONOTAK)){ - print(fd,"´ç½ÅÀº ±×°ÍÀ» ¼û±æ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"당신ì�€ 그것ì�„ 숨길 수 없습니다."); return (0); } if(ply_ptr->class == THIEF || ply_ptr->class == ASSASSIN) @@ -818,14 +821,14 @@ cmd *cmnd; chance = MIN(90, 5 + 3*((ply_ptr->level+3)/4) + 3*bonus[(int)ply_ptr->dexterity]); - print(fd, "´ç½ÅÀº ±×°ÍÀ» ¼û°Üº¸·Á°í ÇÕ´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j ¼û°Üº¸·Á°í ÇÕ´Ï´Ù.", + print(fd, "당신ì�€ 그것ì�„ 숨겨보려고 합니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j 숨겨보려고 합니다.", ply_ptr, "1",obj_ptr,"3"); if(mrand(1,100) <= chance) { F_SET(obj_ptr, OHIDDN); - print(fd, "\n´ç½ÅÀº ¼º°øÀûÀ¸·Î ¼û°å½À´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j ¾îµò°¡ ¼û±é´Ï´Ù.", + print(fd, "\n당신ì�€ 성공ì �으로 숨겼습니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%M%j %1i%j 어딘가 숨ê¹�니다.", ply_ptr, "1", obj_ptr,"3"); } else @@ -848,37 +851,37 @@ cmd *cmnd; fd = ply_ptr->fd; - print(fd,"ÇöÀç ¼³Á¤ »óÅÂ:\n"); - print(fd," À̾߱âµè±â: %s\n", F_ISSET(ply_ptr, PIGNOR) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," Àâ´ãµè±â : %s\n", F_ISSET(ply_ptr, PNOBRD) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," ȯȣµè±â : %s\n", F_ISSET(ply_ptr, PNOBR2) ? "¹Ì¼³Á¤" : " ¼³Á¤ "); - print(fd," ¹¦»çº¸±â : %s\n", F_ISSET(ply_ptr, PDSCRP) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," ¼Òȯ : %s\n", F_ISSET(ply_ptr, PNOSUM) ? " ºÒ°¡ " : " °¡´É "); - print(fd," µµ¸Á¼öÄ¡ : "); + print(fd,"현재 설정 ìƒ�태:\n"); + print(fd," ì�´ì•¼ê¸°ë“£ê¸°: %s\n", F_ISSET(ply_ptr, PIGNOR) ? "미설정" : " 설정 "); + print(fd," 잡담듣기 : %s\n", F_ISSET(ply_ptr, PNOBRD) ? "미설정" : " 설정 "); + print(fd," 환호듣기 : %s\n", F_ISSET(ply_ptr, PNOBR2) ? "미설정" : " 설정 "); + print(fd," 묘사보기 : %s\n", F_ISSET(ply_ptr, PDSCRP) ? " 설정 " : "미설정"); + print(fd," 소환 : %s\n", F_ISSET(ply_ptr, PNOSUM) ? " 불가 " : " 가능 "); + print(fd," ë�„ë§�수치 : "); if(F_ISSET(ply_ptr, PWIMPY)) print(fd, "%-6d\n", ply_ptr->WIMPYVALUE); - else print(fd, "¹Ì¼³Á¤\n"); - print(fd," Çà»ðÀÔ : %s\n", F_ISSET(ply_ptr, PNOCMP) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," »óÅ : %s\n", F_ISSET(ply_ptr, PPROMP) ? " Ãâ·Â " : "¹Ì¼³Á¤"); - print(fd," ¹ÝÇâ : %s\n", F_ISSET(ply_ptr, PLECHO) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); - print(fd," »ö : %s\n", F_ISSET(ply_ptr, PANSIC) ? " »ç¿ë " : "¹Ì»ç¿ë"); - print(fd," ¹àÀº»ö : %s\n", F_ISSET(ply_ptr, PBRIGH) ? " »ç¿ë " : "¹Ì»ç¿ë"); - print(fd," ¹æÀ̸§ : %s\n", F_ISSET(ply_ptr, PNORNM) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," ªÀº¼³¸í : %s\n", F_ISSET(ply_ptr, PNOSDS) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," ±ä¼³¸í : %s\n", F_ISSET(ply_ptr, PNOLDS) ? "¹Ì¼³Á¤" : " Ãâ·Â "); - print(fd," Ãⱸ : %s\n", F_ISSET(ply_ptr, PNOEXT) ? "±×·¡ÇÁ" : "ÅØ½ºÆ®"); - print(fd," ÆÐ°Å¸®±Íȯ: %s\n", F_ISSET(ply_ptr, PFRTUN) ? " ¼³Á¤ " : "¹Ì¼³Á¤"); + else print(fd, "미설정\n"); + print(fd," 행삽입 : %s\n", F_ISSET(ply_ptr, PNOCMP) ? " 설정 " : "미설정"); + print(fd," ìƒ�태 : %s\n", F_ISSET(ply_ptr, PPROMP) ? " 출력 " : "미설정"); + print(fd," 반향 : %s\n", F_ISSET(ply_ptr, PLECHO) ? " 설정 " : "미설정"); + print(fd," 색 : %s\n", F_ISSET(ply_ptr, PANSIC) ? " 사용 " : "미사용"); + print(fd," ë°�ì�€ìƒ‰ : %s\n", F_ISSET(ply_ptr, PBRIGH) ? " 사용 " : "미사용"); + print(fd," ë°©ì�´ë¦„ : %s\n", F_ISSET(ply_ptr, PNORNM) ? "미설정" : " 출력 "); + print(fd," ì§§ì�€ì„¤ëª… : %s\n", F_ISSET(ply_ptr, PNOSDS) ? "미설정" : " 출력 "); + print(fd," 긴설명 : %s\n", F_ISSET(ply_ptr, PNOLDS) ? "미설정" : " 출력 "); + print(fd," 출구 : %s\n", F_ISSET(ply_ptr, PNOEXT) ? "그래프" : "í…�스트"); + print(fd," 패거리귀환: %s\n", F_ISSET(ply_ptr, PFRTUN) ? " 설정 " : "미설정"); /* - if(F_ISSET(ply_ptr, PNOAAT)) strcat(str, "¼öµ¿°ø°ÝÀ¸·Î ÀüȯÇÕ´Ï´Ù.\n"); - if(F_ISSET(ply_ptr, PHASTE)) strcat(str, "Ȱº¸¹ýÀ¸·Î ±â¸¦ ¿îÇàÇϰí ÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PPRAYD)) strcat(str, "½ÅÀÇ º¸È£¸¦ ¹Þ°íÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PPOWER)) strcat(str, "±â°øÀ¸·Î ÈûÀ» ¸ðÀ¸°í ÀÖ½À´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PSLAYE)) strcat(str, "´ç½ÅÀÇ ¹«±â¿¡ »ì±â°¡ °¨µ½´Ï´Ù\n"); - if(F_ISSET(ply_ptr, PMEDIT)) strcat(str, "´ç½ÅÀº Âü¼±À¸·Î »ç¹°À» ²ç¶Ô¾îº¾´Ï´Ù\n"); + if(F_ISSET(ply_ptr, PNOAAT)) strcat(str, "수ë�™ê³µê²©ìœ¼ë¡œ 전환합니다.\n"); + if(F_ISSET(ply_ptr, PHASTE)) strcat(str, "활보법으로 기를 운행하고 있습니다\n"); + if(F_ISSET(ply_ptr, PPRAYD)) strcat(str, "ì‹ ì�˜ 보호를 받고있습니다\n"); + if(F_ISSET(ply_ptr, PPOWER)) strcat(str, "기공으로 힘ì�„ 모으고 있습니다\n"); + if(F_ISSET(ply_ptr, PSLAYE)) strcat(str, "당신ì�˜ 무기ì—� 살기가 ê°�ë�•니다\n"); + if(F_ISSET(ply_ptr, PMEDIT)) strcat(str, "당신ì�€ 참선으로 사물ì�„ 꿰뚤어봅니다\n"); print(fd,"%s\n",str); */ - print(fd, "[¼³Á¤ µµ¿ò¸»]À̶ó°í Ä¡½Ã¸é ÀÚ¼¼ÇÑ ¼³Á¤»çÇ×À» º¼ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "[설정 ë�„움ë§�]ì�´ë�¼ê³  치시면 ìž�세한 설정사항ì�„ ë³¼ 수 있습니다.\n"); return(0); } /**********************************************************************/ @@ -898,20 +901,20 @@ cmd *cmnd; char *str; int flags; } setkeys[]={ - { "À̾߱âµè±â", PIGNOR }, - { "Àâ´ãµè±â", PNOBRD }, - { "ȯȣµè±â", PNOBR2 }, - { "¹¦»çº¸±â", PDSCRP }, - { "¼Òȯ", PNOSUM }, - { "Çà»ðÀÔ", PNOCMP }, - { "»óÅÂ", PPROMP }, - { "¹ÝÇâ", PLECHO }, - { "»ö", PANSIC }, - { "¹àÀº»ö", PBRIGH }, - { "¹æÀ̸§", PNORNM }, - { "ªÀº¼³¸í", PNOSDS }, - { "±ä¼³¸í", PNOLDS }, - { "Ãⱸ", PNOEXT }, + { "ì�´ì•¼ê¸°ë“£ê¸°", PIGNOR }, + { "잡담듣기", PNOBRD }, + { "환호듣기", PNOBR2 }, + { "묘사보기", PDSCRP }, + { "소환", PNOSUM }, + { "행삽입", PNOCMP }, + { "ìƒ�태", PPROMP }, + { "반향", PLECHO }, + { "색", PANSIC }, + { "ë°�ì�€ìƒ‰", PBRIGH }, + { "ë°©ì�´ë¦„", PNORNM }, + { "ì§§ì�€ì„¤ëª…", PNOSDS }, + { "긴설명", PNOLDS }, + { "출구", PNOEXT }, { NULL, -1 }, }; @@ -934,18 +937,18 @@ cmd *cmnd; i++; } - if(!strcmp(cmnd->str[1], "µµ¸Á¼öÄ¡")) { + if(!strcmp(cmnd->str[1], "ë�„ë§�수치")) { F_SET(ply_ptr, PWIMPY); ply_ptr->WIMPYVALUE = cmnd->val[1] == 1L ? 10 : cmnd->val[1]; ply_ptr->WIMPYVALUE = MAX(ply_ptr->WIMPYVALUE, 2); if(ply_ptr->WIMPYVALUE==0) F_CLR(ply_ptr,PWIMPY); } - else if(!strcmp(cmnd->str[1], "ÆÐ°Å¸®±Íȯ")) { + else if(!strcmp(cmnd->str[1], "패거리귀환")) { if(F_ISSET(ply_ptr, PFAMIL)) { F_SET(ply_ptr, PFRTUN); - print(fd, "ÆÐ°Å¸® Á¸À¸·Î ±ÍȯÀ» ÇÕ´Ï´Ù.\n"); + print(fd, "패거리 존으로 귀환ì�„ 합니다.\n"); } - else print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡ °¡ÀԵǾî ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + else print(fd, "당신ì�€ 패거리ì—� 가입ë�˜ì–´ 있지 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "hexline")) { F_SET(ply_ptr, PHEXLN); @@ -959,9 +962,9 @@ cmd *cmnd; F_SET(ply_ptr, PROBOT); print(fd, "Robot mode on.\n"); } - else if(!strcmp(cmnd->str[1], "¼öµ¿°ø°Ý")) { + else if(!strcmp(cmnd->str[1], "수ë�™ê³µê²©")) { F_SET(ply_ptr, PNOAAT); - print(fd, "¼öµ¿À¸·Î °ø°ÝÇÕ´Ï´Ù.\n"); + print(fd, "수ë�™ìœ¼ë¡œ 공격합니다.\n"); } flag_list(ply_ptr,cmnd); @@ -986,80 +989,80 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num == 1) { - print(fd, "[ÇØÁ¦ µµ¿ò¸»]À̶ó°í Ä¡½Ã¸é ¸ðµç ¼³Á¤»çÇ×µéÀ» º¼ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "[í•´ì œ ë�„움ë§�]ì�´ë�¼ê³  치시면 모든 설정사항들ì�„ ë³¼ 수 있습니다.\n"); return(0); } - if(!strcmp(cmnd->str[1], "Àâ´ãµè±â°ÅºÎ")) { + if(!strcmp(cmnd->str[1], "잡담듣기거부")) { F_CLR(ply_ptr, PNOBRD); - print(fd, "ÀÌÁ¦ºÎÅÍ Àâ´ãÀ» µè½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 잡담ì�„ 듣습니다.\n"); } - else if(!strcmp(cmnd->str[1], "Çà»ðÀÔ")) { /* compact */ + else if(!strcmp(cmnd->str[1], "행삽입")) { /* compact */ F_CLR(ply_ptr, PNOCMP); - print(fd, "ÀÌÁ¦ºÎÅÍ ¸Þ¼¼Áö¸¦ Ãâ·ÂÇÒ¶§ ÇÑÇàÀ» »ðÀÔÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 메세지를 출력할때 한행ì�„ 삽입하지 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹ÝÇâ")) { + else if(!strcmp(cmnd->str[1], "반향")) { F_CLR(ply_ptr, PLECHO); - print(fd, "´ç½ÅÀÇ ¸Þ¼¼Áö°¡ ¹ÝÇâµÇÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�˜ 메세지가 반향ë�˜ì§€ 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹æÀ̸§")) { + else if(!strcmp(cmnd->str[1], "ë°©ì�´ë¦„")) { F_SET(ply_ptr, PNORNM); - print(fd, "ÀÌÁ¦ºÎÅÍ ¹æÀ̸§À» Ãâ·ÂÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ë°©ì�´ë¦„ì�„ 출력하지 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "°£´Ü")) { + else if(!strcmp(cmnd->str[1], "간단")) { F_SET(ply_ptr, PNOSDS); - print(fd, "¹æÀÇ °£´ÜÇÑ ¼³¸íÀ» º¸Áö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ë°©ì�˜ 간단한 설명ì�„ ë³´ì§€ 않습니다.\n"); } - else if(!strcmp(cmnd->str[1], "ÀϹÝ")) { + else if(!strcmp(cmnd->str[1], "ì�¼ë°˜")) { F_SET(ply_ptr, PNOLDS); - print(fd, "¹æÀÇ ÀÚ¼¼ÇÑ ¼³¸íÀ» º¸Áö ¾Ê½À´Ï´Ù.\n"); + print(fd, "ë°©ì�˜ ìž�세한 설명ì�„ ë³´ì§€ 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "hexline")) { F_CLR(ply_ptr, PHEXLN); print(fd, "Hex line disabled.\n"); } - else if(!strcmp(cmnd->str[1], "µµ¸Á¼öÄ¡")) { + else if(!strcmp(cmnd->str[1], "ë�„ë§�수치")) { F_CLR(ply_ptr, PWIMPY); - print(fd, "µµ¸Á¼öÄ¡ ¼³Á¤ÀÌ ÇØÁ¦µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "ë�„ë§�수치 설정ì�´ í•´ì œë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); } else if(!strcmp(cmnd->str[1], "eavesdropper")) { F_CLR(ply_ptr, PEAVES); print(fd, "Eavesdropper mode disabled.\n"); } - else if(!strcmp(cmnd->str[1], "»óÅÂ")) { + else if(!strcmp(cmnd->str[1], "ìƒ�태")) { F_CLR(ply_ptr, PPROMP); - print(fd, "´ç½ÅÀÇ »óŸ¦ º¸¿©ÁÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�˜ ìƒ�태를 보여주지 않습니다.\n"); } else if(!strcmp(cmnd->str[1], "~robot~")) { F_CLR(ply_ptr, PROBOT); print(fd, "Robot mode off.\n"); } - else if(!strcmp(cmnd->str[1], "»ö")) { + else if(!strcmp(cmnd->str[1], "색")) { F_CLR(ply_ptr, PANSIC); - print(fd, "ÀÌÁ¦ºÎÅÍ ¸Þ¼¼Áö°¡ ¸ðµÎ Èæ¹éÀ¸·Î Ãâ·ÂµË´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 메세지가 모ë‘� í�‘백으로 출력ë�©ë‹ˆë‹¤.\n"); } - else if(!strcmp(cmnd->str[1], "¼Òȯ°ÅºÎ")) { + else if(!strcmp(cmnd->str[1], "소환거부")) { F_CLR(ply_ptr, PNOSUM); - print(fd, "ÀÌÁ¦ºÎÅÍ ´Ù¸¥»ç¶÷ÀÌ ´ç½ÅÀ» ¼ÒȯÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° 다른사람ì�´ 당신ì�„ 소환할 수 있습니다.\n"); } - else if(!strcmp(cmnd->str[1], "À̾߱âµè±â°ÅºÎ")) { + else if(!strcmp(cmnd->str[1], "ì�´ì•¼ê¸°ë“£ê¸°ê±°ë¶€")) { F_CLR(ply_ptr, PIGNOR); - print(fd, "ÀÌÁ¦ºÎÅÍ °³ÀÎÀûÀÎ À̾߱⸦ µè½À´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ê°œì�¸ì �ì�¸ ì�´ì•¼ê¸°ë¥¼ 듣습니다.\n"); } - else if(!strcmp(cmnd->str[1], "¼öµ¿°ø°Ý")) { + else if(!strcmp(cmnd->str[1], "수ë�™ê³µê²©")) { F_CLR(ply_ptr, PNOAAT); - print(fd, "ÀÌÁ¦ºÎÅÍ ÀÚµ¿À¸·Î °ø°ÝÇÕ´Ï´Ù.\n"); + print(fd, "ì�´ì œë¶€í„° ìž�ë�™ìœ¼ë¡œ 공격합니다.\n"); } - else if(!strcmp(cmnd->str[1], "¹àÀº»ö")) { + else if(!strcmp(cmnd->str[1], "ë°�ì�€ìƒ‰")) { F_CLR(ply_ptr,PBRIGH); - print(fd,"¾îµÎ¿î »öÀ¸·Î Ãâ·ÂÇÕ´Ï´Ù.\n"); + print(fd,"ì–´ë‘�ìš´ 색으로 출력합니다.\n"); } - else if(!strcmp(cmnd->str[1], "ÆÐ°Å¸®±Íȯ")) { + else if(!strcmp(cmnd->str[1], "패거리귀환")) { F_CLR(ply_ptr, PFRTUN); - print(fd,"±¤ÀåÀ¸·Î ±ÍȯÇÕ´Ï´Ù.\n"); + print(fd,"광장으로 귀환합니다.\n"); } else - print(fd, "À߸ø ÁöÁ¤µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "잘못 지정ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(0); @@ -1093,4 +1096,3 @@ cmd *cmnd; update_ply(ply_ptr); return(DISCONNECT); } - diff --git a/src/command6.c b/src/command6.c index a10a9fbc..9c8bf95f 100644 --- a/src/command6.c +++ b/src/command6.c @@ -40,20 +40,20 @@ cmd *cmnd; str[256]=0; if(index == -1 || strlen(&cmnd->fullstr[index]) < 1) { - print(fd, "¹«½¼¸»À» ¿ÜÄ¡·Á±¸¿ä?"); + print(fd, "무슨ë§�ì�„ 외치려구요?"); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "´ç½ÅÀÇ ¸ñ¼Ò¸®°¡ ³Ê¹« ¾àÇØ¼­ ¿ÜÄ¥¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�˜ 목소리가 너무 약해서 외칠수 없습니다."); return(0); } F_CLR(ply_ptr, PHIDDN); - print(fd, "¿¹. ÁÁ½À´Ï´Ù."); + print(fd, "예. 좋습니다."); - broadcast_rom(fd, rom_ptr->rom_num, "\n%MÀÌ \"%s!\"¶ó°í ¿ÜĨ´Ï´Ù.", ply_ptr, + broadcast_rom(fd, rom_ptr->rom_num, "\n%Mì�´ \"%s!\"ë�¼ê³  외칩니다.", ply_ptr, &cmnd->fullstr[0]); - sprintf(str, "\n´©±º°¡°¡ \"%s!\"¶ó°í ¿ÜÃÆ½À´Ï´Ù.", &cmnd->fullstr[0]); + sprintf(str, "\n누군가가 \"%s!\"ë�¼ê³  외쳤습니다.", &cmnd->fullstr[0]); xp = rom_ptr->first_ext; while(xp) { @@ -92,7 +92,7 @@ cmd *cmnd; if(cmnd->num < 2) { - print(fd, "¾îµð·Î °¡°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "어디로 가고 싶으세요?"); return(0); } @@ -100,42 +100,42 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "±×·± Ãⱸ´Â ¾ø½À´Ï´Ù."); + print(fd, "그런 출구는 없습니다."); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { - print(fd, "´ç½ÅÀº ¿òÁ÷ÀÏ ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 움ì§�ì�¼ 수가 없습니다."); return(0); } if(ply_is_attacking(ply_ptr, cmnd)) { - print(fd, "½Î¿ì´Â Áß¿¡´Â À̵¿ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "싸우는 중ì—�는 ì�´ë�™í•  수 없습니다."); return(0); } if(F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±× Ãⱸ´Â Àá°Ü ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 잠겨 있습니다."); return(0); } else if(F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "±× Ãⱸ´Â ´ÝÇô ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 닫혀 있습니다."); return(0); } if(F_ISSET(ext_ptr, XFLYSP) && !F_ISSET(ply_ptr, PFLYSP)) { - print(fd, "±×°÷¿¡´Â ³¯¾Æ¼­¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "그곳ì—�는 날아서만 ê°ˆ 수 있습니다."); return(0); } t = Time%24L; if(F_ISSET(ext_ptr, XNGHTO) && (t>6 && t < 20)) { - print(fd, "±× Ãⱸ´Â ¹ã¿¡¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구는 ë°¤ì—�ë§Œ ê°ˆ 수 있습니다."); return(0); } if(F_ISSET(ext_ptr, XDAYON) && (t<6 || t > 20)) { - print(fd, "±× Ãⱸ·Î´Â ³·¿¡¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 출구로는 ë‚®ì—�ë§Œ ê°ˆ 수 있습니다."); return(0); } @@ -144,11 +144,11 @@ cmd *cmnd; while(cp) { if(F_ISSET(cp->crt, MPGUAR)) { if(!F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < SUB_DM) { - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» ¸·½À´Ï´Ù.", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 막습니다.", cp->crt,"1"); return(0); } if(F_ISSET(cp->crt, MDINVI) && ply_ptr->class < SUB_DM) { - print(fd, "%M%j ´ç½ÅÀÇ ±æÀ» ¸·½À´Ï´Ù.", cp->crt,"1"); + print(fd, "%M%j 당신ì�˜ 길ì�„ 막습니다.", cp->crt,"1"); return(0); } } @@ -157,17 +157,17 @@ cmd *cmnd; } if(F_ISSET(ext_ptr, XNAKED) && weight_ply(ply_ptr)) { - print(fd, "¹» °¡Áö°í´Â µé¾î°¥ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ë­˜ 가지고는 들어갈 수 없습니다."); return(0); } if(F_ISSET(ext_ptr, XFEMAL) && F_ISSET(ply_ptr, PMALES)){ - print(fd, "¿©¼º¸¸ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù. ¿©ÅÁÀΰ¡~~"); + print(fd, "여성만 들어갈 수 있습니다. 여탕ì�¸ê°€~~"); return(0); } if(F_ISSET(ext_ptr, XMALES) && !F_ISSET(ply_ptr, PMALES)){ - print(fd, "³²¼º¸¸ µé¾î°¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "남성만 들어갈 수 있습니다."); return(0); } @@ -179,21 +179,21 @@ cmd *cmnd; if(mrand(1,100) < fall) { dmg = mrand(5, 15+fall/10); if(ply_ptr->hpcur <= dmg){ - print(fd, "´ç½ÅÀº Á×À½ÀÌ ´Ù°¡¿À´Â°Í°°Àº ´À³¦ÀÌ µì´Ï´Ù."); + print(fd, "당신ì�€ 죽ì�Œì�´ 다가오는것같ì�€ ëŠ�낌ì�´ 듭니다."); ply_ptr->hpcur=0; - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ±¸µ¢ÀÌ¿¡ ¶³¾îÁ®¼­ Á×¾ú½À´Ï´Ù.", ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 구ë�©ì�´ì—� 떨어져서 죽었습니다.", ply_ptr); die(ply_ptr, ply_ptr); return(0); } ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº ±¸µ¢ÀÌ¿¡ ¶³¾îÁ®¼­ %d ¸¸Å­ÀÇ »óó¸¦ ÀÔ¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ 구ë�©ì�´ì—� 떨어져서 %d ë§Œí�¼ì�˜ ìƒ�처를 입었습니다.", dmg); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ±¸µ¢ÀÌ¿¡ ¶³¾îÁ³½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 구ë�©ì�´ì—� 떨어졌습니다.", ply_ptr); if(ply_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº Á×À½ÀÌ ´Ù°¡¿À´Â°Í °°Àº ´À³¦ÀÌ µì´Ï´Ù."); + print(fd, "당신ì�€ 죽ì�Œì�´ 다가오는것 ê°™ì�€ ëŠ�낌ì�´ 듭니다."); die(ply_ptr, ply_ptr); } if(F_ISSET(ext_ptr, XCLIMB)) @@ -219,7 +219,7 @@ cmd *cmnd; if(mrand(1,100) > chance) { - print(fd,"´ç½ÅÀº Àº½Å¼úÀ» »ç¿ëÇϴµ¥ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì�€ì‹ ìˆ ì�„ 사용하는ë�° 실패하였습니다.\n"); F_CLR(ply_ptr, PHIDDN); cp = rom_ptr->first_mon; @@ -227,7 +227,7 @@ cmd *cmnd; if(F_ISSET(cp->crt, MBLOCK) && is_enm_crt(ply_ptr->name, cp->crt) && F_ISSET(ply_ptr, PINVIS) && ply_ptr->class < SUB_DM) { - print(fd, "%M°¡ ´ç½ÅÀÇ ±æÀ» °¡·Î¸·½À´Ï´Ù.\n", cp->crt); + print(fd, "%Mê°€ 당신ì�˜ 길ì�„ 가로막습니다.\n", cp->crt); return(0); } cp = cp->next_tag; @@ -244,35 +244,35 @@ cmd *cmnd; load_rom(ext_ptr->room, &rom_ptr); if(rom_ptr == old_rom_ptr) { - print(fd, "±× ¹æÇâÀÇ Áöµµ°¡ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ ë°©í–¥ì�˜ ì§€ë�„ê°€ 없습니다."); return(0); } n = count_vis_ply(rom_ptr); if(rom_ptr->lolevel > ply_ptr->level && ply_ptr->class < INVINCIBLE/*CARETAKER*/) { - print(fd, "·¹º§ %d ÀÌ»óÀ̾î¾ß ±× °÷À¸·Î °¥ ¼ö ÀÖ½À´Ï´Ù.", + print(fd, "레벨 %d ì�´ìƒ�ì�´ì–´ì•¼ ê·¸ 곳으로 ê°ˆ 수 있습니다.", rom_ptr->lolevel); return(0); } else if(ply_ptr->level > rom_ptr->hilevel && rom_ptr->hilevel && ply_ptr->class < CARETAKER) { - print(fd, "±×°÷À¸·Î °¥·Á¸é ·¹º§ %dÀÌÇÏ¿©¾ß¸¸ ÇÕ´Ï´Ù.", + print(fd, "그곳으로 갈려면 레벨 %dì�´í•˜ì—¬ì•¼ë§Œ 합니다.", rom_ptr->hilevel+1); return(0); } else if((F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || (F_ISSET(rom_ptr, RTHREE) && n > 2)) { - print(fd, "±× ¹æ¿¡ ÀÖ´Â »ç¿ëÀÚ°¡ ³Ê¹« ¸¹½À´Ï´Ù."); + print(fd, "ê·¸ ë°©ì—� 있는 사용ìž�ê°€ 너무 많습니다."); return(0); } else if(F_ISSET(rom_ptr, RFAMIL) && !F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "±×°÷¿¡´Â ÆÐ°Å¸® °¡ÀÔÀÚ¸¸ °¥ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "그곳ì—�는 패거리 가입ìž�ë§Œ ê°ˆ 수 있습니다."); return(0); } else if(ply_ptr->class < DM && F_ISSET(rom_ptr, RONFML) && (ply_ptr->daily[DL_EXPND].max != rom_ptr->special)) { - print(fd, "±×°÷Àº ´ç½ÅÀÌ °¥ ¼ö ¾ø´Â °÷ÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 당신ì�´ ê°ˆ 수 없는 곳입니다."); return(0); } else if(ply_ptr->class < DM && F_ISSET(rom_ptr, RONMAR) && @@ -286,19 +286,19 @@ cmd *cmnd; } fclose(fp); } - print(fd, "±×°÷Àº »çÀ¯ÁöÀÔ´Ï´Ù."); + print(fd, "그곳ì�€ 사유지입니다."); return(0); } mmm: - if(strcmp(ext_ptr->name, "À§") && strcmp(ext_ptr->name, "¹Ø") - && strcmp(ext_ptr->name, "¹Û") && !F_ISSET(ply_ptr, PDMINV)) { - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + if(strcmp(ext_ptr->name, "위") && strcmp(ext_ptr->name, "ë°‘") + && strcmp(ext_ptr->name, "ë°–") && !F_ISSET(ply_ptr, PDMINV)) { + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%Mì�´ %s쪽으로 갔습니다.", ply_ptr, ext_ptr->name); } else if(!F_ISSET(ply_ptr, PDMINV)) { - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%MÀÌ %sÂÊÀ¸·Î °¬½À´Ï´Ù.", + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%Mì�´ %s쪽으로 갔습니다.", ply_ptr, ext_ptr->name); } @@ -311,7 +311,7 @@ cmd *cmnd; go(cp->crt, cmnd); if(F_ISSET(cp->crt, MDMFOL) && cp->crt->type == MONSTER) { del_crt_rom(cp->crt, old_rom_ptr); - broadcast_rom(fd, old_rom_ptr->rom_num, "\n%M%j ¹æÈ²ÇÏ´Ù %sÂÊÀ¸·Î °¬½À´Ï´Ù.", cp->crt,"1",ext_ptr->name); + broadcast_rom(fd, old_rom_ptr->rom_num, "\n%M%j 방황하다 %s쪽으로 갔습니다.", cp->crt,"1",ext_ptr->name); add_crt_rom(cp->crt, rom_ptr, 1); add_active(cp->crt); } @@ -338,8 +338,8 @@ cmd *cmnd; cp = cp->next_tag; continue; } - print(fd, "%M%j ´ç½ÅÀ» µû¶ó¿É´Ï´Ù.", cp->crt,"1"); - broadcast_rom(fd, old_rom_num, "\n%M%j %M%j µû¶ó°©´Ï´Ù.", + print(fd, "%M%j 당신ì�„ ë”°ë�¼ì˜µë‹ˆë‹¤.", cp->crt,"1"); + broadcast_rom(fd, old_rom_num, "\n%M%j %M%j ë”°ë�¼ê°‘니다.", cp->crt,"1", ply_ptr,"3"); temp = cp->next_tag; crt_ptr = cp->crt; @@ -374,7 +374,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ¿­°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "무엇ì�„ ì—´ê³  싶으세요?"); return(0); } @@ -382,17 +382,17 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "±×·± Ãⱸ´Â ¾ø½À´Ï´Ù."); + print(fd, "그런 출구는 없습니다."); return(0); } if(F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±×°ÍÀº Àá°ÜÁ® ÀÖ½À´Ï´Ù."); + print(fd, "그것ì�€ 잠겨져 있습니다."); return(0); } if(!F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "¹ú½á ¿­·ÁÁ® ÀÖ½À´Ï´Ù."); + print(fd, "벌ì�¨ 열려져 있습니다."); return(0); } @@ -401,8 +401,8 @@ cmd *cmnd; F_CLR(ext_ptr, XCLOSD); ext_ptr->ltime.ltime = time(0); - print(fd, "´ç½ÅÀº %sÂÊ Ãⱸ¸¦ ¿­¾ú½À´Ï´Ù.", ext_ptr->name); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %sÂÊ Ãⱸ¸¦ ¿­¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %s쪽 출구를 열었습니다.", ext_ptr->name); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %s쪽 출구를 열었습니다.", ply_ptr, ext_ptr->name); return(0); @@ -428,7 +428,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ´Ý°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "무엇ì�„ ë‹«ê³  싶으세요?"); return(0); } @@ -436,17 +436,17 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "±×·± Ãⱸ´Â ¾ø½À´Ï´Ù."); + print(fd, "그런 출구는 없습니다."); return(0); } if(F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "¹ú½á ´ÝÇôÁ® ÀÖ½À´Ï´Ù."); + print(fd, "벌ì�¨ 닫혀져 있습니다."); return(0); } if(!F_ISSET(ext_ptr, XCLOSS)) { - print(fd, "´ç½ÅÀº ±× Ãⱸ¸¦ ´ÝÀ» ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ê·¸ 출구를 ë‹«ì�„ 수 없습니다."); return(0); } @@ -454,8 +454,8 @@ cmd *cmnd; F_SET(ext_ptr, XCLOSD); - print(fd, "´ç½ÅÀº %sÂÊ Ãⱸ¸¦ ´Ý½À´Ï´Ù.", ext_ptr->name); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %sÂÊ Ãⱸ¸¦ ´Ý½À´Ï´Ù.", + print(fd, "당신ì�€ %s쪽 출구를 닫습니다.", ext_ptr->name); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %s쪽 출구를 닫습니다.", ply_ptr, ext_ptr->name); return(0); @@ -482,7 +482,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» Ç®°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "무엇ì�„ 풀고 싶으세요?"); return(0); } @@ -490,17 +490,17 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "¹«¾ùÀ» Ç®°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "무엇ì�„ 풀고 싶으세요?"); return(0); } if(!F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±×°ÍÀº Àá±ÅÁ® ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "그것ì�€ 잠궈져 있지 않습니다."); return(0); } if(cmnd->num < 3) { - print(fd, "¹» °¡Áö°í ¿­·Á±¸¿ä?"); + print(fd, "ë­˜ 가지고 열려구요?"); return(0); } @@ -508,22 +508,22 @@ cmd *cmnd; cmnd->str[2], cmnd->val[2]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다."); return(0); } if(obj_ptr->type != KEY) { - print(fd, "±×°ÍÀº ¿­¼è°¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "그것ì�€ 열쇠가 아닙니다."); return(0); } if(obj_ptr->shotscur < 1) { - print(fd, "%I%j ºÎ½¤Á® ¹ö·È½À´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 부숴져 버렸습니다.", obj_ptr,"1"); return(0); } if(obj_ptr->ndice != ext_ptr->key) { - print(fd, "¿­¼è°¡ ¸ÂÁö ¾Ê½À´Ï´Ù."); + print(fd, "열쇠가 ë§žì§€ 않습니다."); return(0); } @@ -536,8 +536,8 @@ cmd *cmnd; if(obj_ptr->use_output[0]) print(fd, "%s", obj_ptr->use_output); else - print(fd, "## ÂûĬ ##"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %sÂÊ Ãⱸ¸¦ Ç®¾ú½À´Ï´Ù.", + print(fd, "## ì°°ì¹µ ##"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %s쪽 출구를 풀었습니다.", ply_ptr, ext_ptr->name); return(0); @@ -563,7 +563,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» Àá±¼·Á±¸¿ä?"); + print(fd, "무엇ì�„ 잠굴려구요?"); return(0); } @@ -571,17 +571,17 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "¹«¾ùÀ» Àá±¼·Á±¸¿ä?"); + print(fd, "무엇ì�„ 잠굴려구요?"); return(0); } if(F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±×°ÍÀº ÀÌ¹Ì Àá±ÅÁ® ÀÖ½À´Ï´Ù."); + print(fd, "그것ì�€ ì�´ë¯¸ 잠궈져 있습니다."); return(0); } if(cmnd->num < 3) { - print(fd, "¹» °¡Áö°í Àᱸ·Á±¸¿ä?"); + print(fd, "ë­˜ 가지고 잠구려구요?"); return(0); } @@ -589,32 +589,32 @@ cmd *cmnd; cmnd->str[2], cmnd->val[2]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런것ì�„ 가지고 있지 않습니다."); return(0); } if(obj_ptr->type != KEY) { - print(fd, "%I%j ¿­¼è°¡ ¾Æ´Õ´Ï´Ù.", obj_ptr,"0"); + print(fd, "%I%j 열쇠가 아닙니다.", obj_ptr,"0"); return(0); } if(!F_ISSET(ext_ptr, XLOCKS)) { - print(fd, "´ç½ÅÀº ±×°ÍÀ» Àá±¼¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 그것ì�„ 잠굴수 없습니다."); return(0); } if(!F_ISSET(ext_ptr, XCLOSD)) { - print(fd, "¸ÕÀú ¹®À» ´Ý¾Æ¾ß µÉ°Í °°±º¿ä."); + print(fd, "먼저 문ì�„ 닫아야 ë� ê²ƒ 같군요."); return(0); } if(obj_ptr->shotscur < 1) { - print(fd, "%I%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", obj_ptr,"1"); + print(fd, "%I%j 부서져 버렸습니다.", obj_ptr,"1"); return(0); } if(obj_ptr->ndice != ext_ptr->key) { - print(fd, "¿­¼è°¡ ¸ÂÁö ¾Ê½À´Ï´Ù."); + print(fd, "열쇠가 ë§žì§€ 않습니다."); return(0); } @@ -622,8 +622,8 @@ cmd *cmnd; F_SET(ext_ptr, XLOCKD); - print(fd, "## ÂûĬ ##"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %sÂÊ Ãⱸ¸¦ Àá±É½À´Ï´Ù.", + print(fd, "## ì°°ì¹µ ##"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %s쪽 출구를 잠궜습니다.", ply_ptr, ext_ptr->name); return(0); @@ -651,12 +651,12 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "µµµÏ¸¸ ÀÚ¹°¼è¸¦ µþ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ë�„ë‘‘ë§Œ ìž�물쇠를 딸 수 있습니다."); return(0); } if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» µû½Ã·Á±¸¿ä?"); + print(fd, "무엇ì�„ 따시려구요?"); return(0); } @@ -664,15 +664,15 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!ext_ptr) { - print(fd, "±×·±°Ç ¿©±â ¾ø½À´Ï´Ù."); + print(fd, "그런건 여기 없습니다."); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ÀÖ¾î µþ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 눈ì�´ 멀어 있어 딸 수 없습니다."); return(0); } if(!F_ISSET(ext_ptr, XLOCKD)) { - print(fd, "±×°ÍÀº Àá±ÅÁ® ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "그것ì�€ 잠궈져 있지 않습니다."); return(0); } @@ -696,17 +696,17 @@ cmd *cmnd; if(F_ISSET(ext_ptr, XUNPCK)) chance = 0; - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %sÂÊ Ãⱸ¸¦ µû·Á°í ÇÕ´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %s쪽 출구를 따려고 합니다.", ply_ptr, ext_ptr->name); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº ¹®À» µû´Âµ¥ ¼º°øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ 문ì�„ 따는ë�° 성공했습니다."); F_CLR(ext_ptr, XLOCKD); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¹®À» ¶¤½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 문ì�„ 땄습니다.", ply_ptr); } else - print(fd, "½ÇÆÐÇÏ¿´½À´Ï´Ù!"); + print(fd, "실패하였습니다!"); return(0); @@ -735,17 +735,17 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ÈÉÄ¡·Á±¸¿ä?"); + print(fd, "무엇ì�„ 훔치려구요?"); return(0); } if(cmnd->num < 3) { - print(fd, "´©±¸ÇÑÅ×¼­ ÈÉÄ¡·Á±¸¿ä?"); + print(fd, "누구한테서 훔치려구요?"); return(0); } if(ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "µµµÏ¸¸ ÈÉÄ¥¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ë�„ë‘‘ë§Œ 훔칠수 있습니다."); return(0); } @@ -761,8 +761,8 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 서서히 드러납니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러납니다.", ply_ptr); } @@ -778,7 +778,7 @@ cmd *cmnd; cmnd->str[2], cmnd->val[2]); if(!crt_ptr || crt_ptr == ply_ptr || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "±×·±°Ç ¿©±â ¾ø½À´Ï´Ù."); + print(fd, "그런건 여기 없습니다."); return(0); } @@ -786,42 +786,42 @@ cmd *cmnd; if(crt_ptr->type == MONSTER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥¼ö ¾ø½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 해칠수 없습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(is_enm_crt(ply_ptr->name, crt_ptr)) { - print(fd, "%s´Â ½Î¿ì´Â ÁßÀÌ ¾Æ´Õ´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 싸우는 중ì�´ 아닙니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } } else { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd, "ÀÌ ¹æ¿¡¼­´Â ÈÉÄ¥ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì�´ ë°©ì—�서는 훔칠 수 없습니다."); return(0); } if(!F_ISSET(ply_ptr, PCHAOS) && ply_ptr->classclassfirst_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "%s´Â ±×·± ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "%s는 그런 물건ì�„ ê°–ê³  있지 않습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -852,7 +852,7 @@ cmd *cmnd; if(mrand(1,100) <= chance) { - print(fd, "ÈÉÃÆ½À´Ï´Ù."); + print(fd, "훔쳤습니다."); del_obj_crt(obj_ptr, crt_ptr); add_obj_crt(obj_ptr, ply_ptr); savegame_nomsg(ply_ptr); @@ -866,14 +866,14 @@ cmd *cmnd; } else { - print(fd, "½ÇÆÐÇÏ¿´½À´Ï´Ù.%s", crt_ptr->type == MONSTER ? - "\n±×°¡ ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù." : ""); + print(fd, "실패하였습니다.%s", crt_ptr->type == MONSTER ? + "\n그가 당신ì�„ 공격합니다." : ""); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô¼­ ¹°°ÇÀ» ÈÉÄ¡·Á°í ÇÕ´Ï´Ù.", + "\n%Mì�´ %Mì—�게서 물건ì�„ 훔치려고 합니다.", ply_ptr, crt_ptr); if(crt_ptr->type == PLAYER) - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô¼­ %1i%j ÈÉÄ¡·Á°í ÇÕ´Ï´Ù.", + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게서 %1i%j 훔치려고 합니다.", ply_ptr, obj_ptr,"3"); else add_enm_crt(ply_ptr->name, crt_ptr); diff --git a/src/command7.c b/src/command7.c index a0f926c9..4000f05f 100644 --- a/src/command7.c +++ b/src/command7.c @@ -65,9 +65,9 @@ cmd *cmnd; if(found) continue; } - /* ºñÀüÅõ½Ã µµ¸Áó¸® */ + /* 비전투시 ë�„ë§�처리 */ if (!ply_is_attacking(ply_ptr,cmnd)){ - print(fd,"´©±¸¿¡°Ô¼­ µµ¸Á°¡½Ã·Á±¸¿ä?"); + print(fd,"누구ì—�게서 ë�„ë§�가시려구요?"); return 0; } /* if(mrand(1,100) < 70) break; */ @@ -78,7 +78,7 @@ cmd *cmnd; if(xp && F_ISSET(xp->ext,52) && mrand(1,5) < 2 && !F_ISSET(ply_ptr, PFEARS)) xp = 0; if(!xp) { - print(fd, "\n´ç½ÅÀº °Ì¿¡ Áú·Á ´Ù¸®°¡ ¶³¾îÁöÁö ¾Ê½À´Ï´Ù!"); + print(fd, "\n당신ì�€ ê²�ì—� 질려 다리가 떨어지지 않습니다!"); return(0); } /* @@ -88,42 +88,42 @@ cmd *cmnd; ply_ptr->ready[WIELD-1] = 0; compute_thaco(ply_ptr); compute_ac(ply_ptr); - print(fd, "\n´ç½ÅÀº ¹«±â¸¦ ¹ö¸®°í ÁÙÇà¶ûÀ» Ĩ´Ï´Ù."); + print(fd, "\n당신ì�€ 무기를 버리고 줄행랑ì�„ 칩니다."); } else - */ print(fd, "\n´ç½ÅÀº ÁÙÇà¶ûÀ» Ĩ´Ï´Ù."); + */ print(fd, "\n당신ì�€ 줄행랑ì�„ 칩니다."); F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PFEARS)) { ANSI(fd, RED); - print(fd, "\n´ç½ÅÀº °Ì¿¡ Áú¸°µí ¾ó±¼ÀÌ Ã¢¹éÇÏ°Ô º¯ÇØ µµ¸ÁÀ» °©´Ï´Ù!"); + print(fd, "\n당신ì�€ ê²�ì—� 질린듯 얼굴ì�´ 창백하게 변해 ë�„ë§�ì�„ 갑니다!"); ANSI(fd, WHITE); } if(!F_ISSET(rom_ptr, RPTRAK)) strcpy(rom_ptr->track, xp->ext->name); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %sÂÊÀ¸·Î µµ¸ÁÀ» °©´Ï´Ù.", + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j %s쪽으로 ë�„ë§�ì�„ 갑니다.", ply_ptr, "1",xp->ext->name); if (ply_ptr->class == PALADIN) if (ply_ptr->level > 20) { n = ((ply_ptr->level+3)/4)*10; n = MIN(ply_ptr->experience, n); - print(fd,"´ç½ÅÀº µµ¸ÁÀ» °£ ´ñ°¡·Î %d ¸¸Å­ÀÇ °æÇèÄ¡¸¦ ÀÒ¾ú½À´Ï´Ù.",n); + print(fd,"당신ì�€ ë�„ë§�ì�„ ê°„ 댓가로 %d ë§Œí�¼ì�˜ 경험치를 잃었습니다.",n); ply_ptr->experience -= n; lower_prof(ply_ptr,n); } load_rom(xp->ext->room, &rom_ptr); if(rom_ptr->lolevel > ply_ptr->level || (ply_ptr->level > rom_ptr->hilevel && rom_ptr->hilevel)) { - print(fd, "¾î¶² Èû¿¡ ÀÇÇØ ´Ù½Ã µÇµ¹¾Æ ¿Ô½À´Ï´Ù."); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j µµÂøÇÏ¿´½À´Ï´Ù.",ply_ptr,"1"); + print(fd, "ì–´ë–¤ 힘ì—� ì�˜í•´ 다시 ë�˜ë�Œì•„ 왔습니다."); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j ë�„착하였습니다.",ply_ptr,"1"); return(0); } n = count_vis_ply(rom_ptr); if((F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || (F_ISSET(rom_ptr, RTHREE) && n > 2)) { - print(fd, "µµ¸Á°¥·Á´Â ¹æÀÇ Á¤¿øÀÌ °¡µæ á½À´Ï´Ù!"); - broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j µµÂøÇÏ¿´½À´Ï´Ù.",ply_ptr,"1"); + print(fd, "ë�„ë§�갈려는 ë°©ì�˜ ì •ì›�ì�´ ê°€ë“� 찼습니다!"); + broadcast_rom(fd, rom_ptr->rom_num, "\n%M%j ë�„착하였습니다.",ply_ptr,"1"); return(0); } del_ply_rom(ply_ptr, ply_ptr->parent_rom); @@ -147,19 +147,19 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(F_ISSET(rom_ptr, RSHOPP)) { if(load_rom(rom_ptr->rom_num+1, &dep_ptr) < 0) { - print(fd, "»ì ¹°°ÇÀÌ ¾ø½À´Ï´Ù."); + print(fd, "ì‚´ 물건ì�´ 없습니다."); return(0); } - print(fd, "»óǰµé:"); + print(fd, "ìƒ�품들:"); op = dep_ptr->first_obj; while(op) { - print(fd, "\n %-30s °¡°Ý: %ld", + print(fd, "\n %-30s 가격: %ld", obj_str(op->obj, 1, CAP), op->obj->value); op = op->next_tag; } } else - print(fd, "¿©±â´Â »óÁ¡ÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "여기는 ìƒ�ì �ì�´ 아닙니다."); return(0); } /**********************************************************************/ @@ -179,30 +179,30 @@ cmd *cmnd; if(ply_ptr->ready[i]) cnt++; cnt += count_inv(ply_ptr, 0); if(!F_ISSET(rom_ptr, RSHOPP)) { - print(fd, "¿©±â´Â »óÁ¡ÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "여기는 ìƒ�ì �ì�´ 아닙니다."); return(0); } if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» »ç½Ã·Á±¸¿ä?"); + print(fd, "무엇ì�„ 사시려구요?"); return(0); } if(load_rom(rom_ptr->rom_num+1, &dep_ptr) < 0) { - print(fd, "»ì ¹°°ÇÀÌ ¾ø½À´Ï´Ù."); + print(fd, "ì‚´ 물건ì�´ 없습니다."); return(0); } obj_ptr = find_obj(ply_ptr, dep_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "±×·± ¹°°ÇÀº ÆÈÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 물건ì�€ 팔지 않습니다."); return(0); } if(ply_ptr->gold < obj_ptr->value) { - print(fd, "µ·µµ ¾øÀ¸¸é¼­... ¿Ü»ó»çÀý!"); + print(fd, "ë�ˆë�„ 없으면서... 외ìƒ�사절!"); return(0); } if(weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr) || cnt>200) { - print(fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다."); return(0); } obj_ptr2 = (object *)malloc(sizeof(object)); @@ -215,8 +215,8 @@ cmd *cmnd; F_CLR(obj_ptr2, OTEMPP); add_obj_crt(obj_ptr2, ply_ptr); ply_ptr->gold -= obj_ptr2->value; - print(fd, "´ç½ÅÀº %1i%j »ò½À´Ï´Ù",obj_ptr2,"3"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %1i%j »ò½À´Ï´Ù.", + print(fd, "당신ì�€ %1i%j 샀습니다",obj_ptr2,"3"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %1i%j 샀습니다.", ply_ptr, obj_ptr2,"3"); return(0); } @@ -234,18 +234,18 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RPAWNS)) { - print(fd, "¿©±â´Â Àü´çÆ÷°¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "여기는 전당í�¬ê°€ 아닙니다."); return(0); } if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ÆÄ½Ã·Á±¸¿ä?"); + print(fd, "무엇ì�„ 파시려구요?"); return(0); } F_CLR(ply_ptr, PHIDDN); obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런 물건ì�„ ê°–ê³  있지 않습니다."); return(0); } gold = MIN(obj_ptr->value / 2, 100000); @@ -255,30 +255,30 @@ cmd *cmnd; if((obj_ptr->type == WAND || obj_ptr->type == KEY) && obj_ptr->shotscur < 1) poorquality = 1; if(gold < 20 || poorquality) { - print(fd, "Àü´çÆ÷ÁÖÀÎÀÌ \"±×·± ¾²·¹±â´Â ¾È»ç¿ä!\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "전당í�¬ì£¼ì�¸ì�´ \"그런 쓰레기는 안사요!\"ë�¼ê³  ë§�합니다."); return(0); } if(F_ISSET(obj_ptr, ONEWEV)) { - print(fd, "Àü´çÆ÷ÁÖÀÎÀÌ \"±×·±°Ç ¾È»ç¿ä!\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "전당í�¬ì£¼ì�¸ì�´ \"그런건 안사요!\"ë�¼ê³  ë§�합니다."); return(0); } if(obj_ptr->first_obj) { - print(fd, "Àü´çÆ÷ÁÖÀÎÀÌ \"±× ¾È¿¡ ¹º°¡°¡ µé¾îÀÖ±º¿ä.\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "전당í�¬ì£¼ì�¸ì�´ \"ê·¸ 안ì—� 뭔가가 들어있군요.\"ë�¼ê³  ë§�합니다."); return(0); } if(obj_ptr->type == SCROLL || obj_ptr->type == POTION) { - print(fd, "Àü´çÆ÷ÁÖÀÎÀÌ \"µÎ·ç¸¶±â³ª µ¶¾à°°Àº°ÍÀº ¾È»ç¿ä!\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "전당í�¬ì£¼ì�¸ì�´ \"ë‘�루마기나 ë�…약같ì�€ê²ƒì�€ 안사요!\"ë�¼ê³  ë§�합니다."); return(0); } if(((time(0)+mrand(1, 100))%250) == 9) { - print(fd, "Á¦°¡ %i%j »çÁÒ.\n ¿À´ÃÀº ±âºÐÀÌ ÁÁÀ¸´Ï µÎ¹è·Î µå¸®ÁÒ.\nÀü´çÆ÷ÁÖÀÎÀÌ ´ç½Å¿¡°Ô %d³ÉÀ» ÁÝ´Ï´Ù.", obj_ptr, "3",gold*2); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ Àü´çÆ÷ÁÖÀο¡°Ô %1i%j ÆË´Ï´Ù.", + print(fd, "제가 %i%j 사죠.\n 오늘ì�€ 기분ì�´ 좋으니 ë‘�배로 드리죠.\n전당í�¬ì£¼ì�¸ì�´ 당신ì—�게 %d냥ì�„ ì¤�니다.", obj_ptr, "3",gold*2); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 전당í�¬ì£¼ì�¸ì—�게 %1i%j íŒ�니다.", ply_ptr, obj_ptr, "3"); ply_ptr->gold += gold; } else { - print(fd, "Á¦°¡ %i%j »çÁÒ.\nÀü´çÆ÷ÁÖÀÎÀÌ ´ç½Å¿¡°Ô %d³ÉÀ» ÁÝ´Ï´Ù.", obj_ptr, "3",gold); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ Àü´çÆ÷ÁÖÀο¡°Ô %1i%j ÆË´Ï´Ù.", + print(fd, "제가 %i%j 사죠.\n전당í�¬ì£¼ì�¸ì�´ 당신ì—�게 %d냥ì�„ ì¤�니다.", obj_ptr, "3",gold); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 전당í�¬ì£¼ì�¸ì—�게 %1i%j íŒ�니다.", ply_ptr, obj_ptr,"3"); } ply_ptr->gold += gold; @@ -302,32 +302,32 @@ cmd *cmnd; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RPAWNS) && !F_ISSET(rom_ptr, RREPAI)) { - print(fd, "Àü´çÆ÷¿¡ °¡¼Å¼­ ¹°°ÇÀÇ °¡Ä¡¸¦ ¾Ë¾Æº¸¼¼¿ä."); + print(fd, "전당í�¬ì—� 가셔서 물건ì�˜ 가치를 알아보세요."); return(0); } if(cmnd->num < 2) { - print(fd, "¾î¶² ¹°°ÇÀÇ °¡Ä¡¸¦ ¾Ë°í ½ÍÀ¸¼¼¿ä?"); + print(fd, "ì–´ë–¤ 물건ì�˜ 가치를 알고 싶으세요?"); return(0); } F_CLR(ply_ptr, PHIDDN); obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 그런 물건ì�„ ê°–ê³  있지 않습니다."); return(0); } if(F_ISSET(rom_ptr, RPAWNS)) { value = MIN(obj_ptr->value / 2, 100000L); - print(fd, "»óÁ¡ÁÖÀÎÀÌ \"%IÀ̶ó¸é %ld³É Á¤µµ´Â µå¸± ¼ö ÀÖ¾î¿ä.\"¶ó°í ¸»ÇÕ´Ï´Ù.", + print(fd, "ìƒ�ì �주ì�¸ì�´ \"%Iì�´ë�¼ë©´ %ld냥 ì •ë�„는 드릴 수 있어요.\"ë�¼ê³  ë§�합니다.", obj_ptr, value); } else { value = obj_ptr->value / 4; print(fd, - "»óÁ¡ÁÖÀÎÀÌ \"%I%j ¼ö¸®Çϴµ¥ %ld³ÉÀÌ µì´Ï´Ù.\"¶ó°í ¸»ÇÕ´Ï´Ù.", + "ìƒ�ì �주ì�¸ì�´ \"%I%j 수리하는ë�° %ld냥ì�´ 듭니다.\"ë�¼ê³  ë§�합니다.", obj_ptr, "3",value); } - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %iÀÇ °¡Ä¡¸¦ ¾Ë¾Æº¾´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %iì�˜ 가치를 알아봅니다.", ply_ptr, obj_ptr); return(0); } @@ -351,16 +351,16 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->class != THIEF && ply_ptr->class != ASSASSIN && ply_ptr->class < INVINCIBLE) { - print(fd, "µµµÏ°ú ÀÚ°´¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù."); + print(fd, "ë�„ë‘‘ê³¼ ìž�ê°�ë§Œ 사용할 수 있는 기술입니다."); return(0); } if(cmnd->num < 2 || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´©±¸¸¦ ±â½ÀÇϽ÷Á±¸¿ä?"); + print(fd, "누구를 기습하시려구요?"); return(0); } if(!ply_ptr->ready[WIELD-1] || (ply_ptr->ready[WIELD-1]->type != SHARP && ply_ptr->ready[WIELD-1]->type != THRUST)) { - print(fd, "±â½ÀÀ» ÇϽ÷Á¸é µµ³ª °ËÁ¾·ùÀÇ ¹«±â°¡ ÇÊ¿äÇÕ´Ï´Ù."); + print(fd, "기습ì�„ 하시려면 ë�„나 검종류ì�˜ 무기가 필요합니다."); return(0); } t = time(0); @@ -376,59 +376,59 @@ cmd *cmnd; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[1]) < 2) { - print(fd, "±×·±°Ç ¿©±â ¾ø¾î¿ä."); + print(fd, "그런건 여기 없어요."); return(0); } } if(crt_ptr->type != PLAYER && is_enm_crt(ply_ptr->name, crt_ptr)) { - print(fd, "´ç½ÅÀº %s¿Í ½Î¿ï ¼ö ¾ø½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s와 싸울 수 없습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(crt_ptr->type == PLAYER) { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd, "ÀÌ ¹æ¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì�´ ë°©ì—�서는 싸울 수 없습니다."); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¶÷À» °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 선해서 다른 사람ì�„ 공격할 수 없습니다."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다."); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¶÷À» °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "당신ì�€ 선해서 다른 사람ì�„ 공격할 수 없습니다."); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다."); return (0); } } if(is_charm_crt(ply_ptr->name, crt_ptr) && F_ISSET(ply_ptr, PCHARM)){ - print (fd, "´ç½ÅÀº %S%j ¾Æ³¢±â ¶§¹®¿¡ ±×¸¦ ÇØÄ¥ ¼ö ¾ø½À´Ï´Ù.", crt_ptr->name,"3"); + print (fd, "당신ì�€ %S%j ì•„ë�¼ê¸° 때문ì—� 그를 í•´ì¹  수 없습니다.", crt_ptr->name,"3"); return(0); } - print(crt_ptr->fd, "\n%M%j ´ç½ÅÀÇ µÚ·Î ¸ô·¡ ±â¾î°¡ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù.", ply_ptr,"1"); + print(crt_ptr->fd, "\n%M%j 당신ì�˜ 뒤로 몰래 기어가 옆구리를 ì¿¡~ 찌릅니다.", ply_ptr,"1"); } else if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥¼ö ¾ø½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 해칠수 없습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(is_charm_crt(crt_ptr->name, ply_ptr) && F_ISSET(ply_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %s¸¦ ³Ê¹« ÁÁ¾ÆÇؼ­ ±×·¸°Ô ÇÒ ¿ë±â°¡ ³ªÁö ¾Ê´Â±º¿ä.",crt_ptr->name); + print(fd, "당신ì�€ %s를 너무 좋아해서 그렇게 í•  용기가 나지 않는군요.",crt_ptr->name); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 서서히 드러납니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러납니다.", ply_ptr); } ply_ptr->lasttime[LT_ATTCK].ltime = t; @@ -438,37 +438,37 @@ cmd *cmnd; ply_ptr->lasttime[LT_ATTCK].interval = 2; if(crt_ptr->type != PLAYER) { if(add_enm_crt(ply_ptr->name, crt_ptr) < 0) { - print(fd, "´ç½ÅÀº %MÀÇ µÚ·Î ¸ô·¡ ±â¾î°¡ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù.", crt_ptr); + print(fd, "당신ì�€ %Mì�˜ 뒤로 몰래 기어가 옆구리를 ì¿¡~ 찌릅니다.", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù.", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì�˜ 옆구리를 ì¿¡~ 찌릅니다.", ply_ptr, crt_ptr); if(F_ISSET(crt_ptr, MMGONL)) { - print(fd, "´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô´Â ¾Æ¹« ¼Ò¿ëÀÌ ¾ø½À´Ï´Ù.", crt_ptr); + print(fd, "당신ì�˜ 무기는 %Mì—�게는 아무 소용ì�´ 없습니다.", crt_ptr); return(0); } if(F_ISSET(crt_ptr, MENONL)) { if(!ply_ptr->ready[WIELD-1] || ply_ptr->ready[WIELD-1]->adjustment < 1) { - print(fd, "´ç½ÅÀÇ ¹«±â´Â %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø½À´Ï´Ù.", crt_ptr); + print(fd, "당신ì�˜ 무기는 %Mì—�게 아무 소용ì�´ 없습니다.", crt_ptr); return(0); } } } } else { - print(fd, "´ç½ÅÀº %MÀÇ µÚ·Î ¸ô·¡ ±â¾î°¡ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù.", crt_ptr); - print(crt_ptr->fd, "%MÀÌ ´ç½ÅÀÇ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ %Mì�˜ 뒤로 몰래 기어가 옆구리를 ì¿¡~ 찌릅니다.", crt_ptr); + print(crt_ptr->fd, "%Mì�´ 당신ì�˜ 옆구리를 ì¿¡~ 찌릅니다.", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¿·±¸¸®¸¦ Äî~ Â´Ï´Ù!", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì�˜ 옆구리를 ì¿¡~ 찌릅니다!", ply_ptr, crt_ptr); } if(ply_ptr->ready[WIELD-1]) { if(ply_ptr->ready[WIELD-1]->shotscur < 1) { - print(fd, "\n%S%j ºÎ¼­Á³½À´Ï´Ù.", + print(fd, "\n%S%j 부서졌습니다.", ply_ptr->ready[WIELD-1]->name,"1"); add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; broadcast_rom(fd, ply_ptr->rom_num, - "\n%s°¡ ±â½ÀÀ» ½ÃµµÇßÁö¸¸ »ó´ë¹æÀÌ ÇÇÇß½À´Ï´Ù.", - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à"); + "\n%sê°€ 기습ì�„ 시ë�„했지만 ìƒ�대방ì�´ 피했습니다.", + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀"); ply_ptr->lasttime[LT_ATTCK].interval *= 2; return(0); } @@ -499,12 +499,12 @@ cmd *cmnd; } if(crt_ptr->class > CARETAKER) n = 1; crt_ptr->hpcur -= n; - print(fd, "\n´ç½ÅÀº %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.", n); - print(crt_ptr->fd, "\n´ç½ÅÀº %M¿¡°Ô¼­ %d ¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.", ply_ptr, n); + print(fd, "\n당신ì�€ %d ë§Œí�¼ì�˜ 피해를 주었습니다.", n); + print(crt_ptr->fd, "\n당신ì�€ %Mì—�게서 %d ë§Œí�¼ì�˜ 피해를 입었습니다.", ply_ptr, n); if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.", crt_ptr,"3"); + print(fd, "\n당신ì�€ %M%j 죽였습니다.", crt_ptr,"3"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", crt_ptr,"3"); + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); if(ply_ptr->ready[WIELD-1]) ply_ptr->ready[WIELD-1]->shotscur--; die(crt_ptr, ply_ptr); @@ -513,9 +513,9 @@ cmd *cmnd; check_for_flee(ply_ptr, crt_ptr); } else { - print(fd, "\nÇã°øÀ» ÃÆ½À´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%s°¡ ±â½ÀÀ» ½ÃµµÇßÁö¸¸ »ó´ë¹æÀÌ ÇÇÇß½À´Ï´Ù.", - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à"); + print(fd, "\n허공ì�„ 쳤습니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%sê°€ 기습ì�„ 시ë�„했지만 ìƒ�대방ì�´ 피했습니다.", + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀"); ply_ptr->lasttime[LT_ATTCK].interval *= 3; } return(0); @@ -535,25 +535,25 @@ cmd *cmnd; int fd, i, fail = 0, bit[4]; int up_num=0; fd = ply_ptr->fd; - /* ÃÊÀÎ ¼ö·Ã ±ÝÁö */ + /* ì´ˆì�¸ 수련 금지 */ if(ply_ptr->class == CARETAKER) { - print(fd, "´ç½ÅÀº ¼ö·ÃÇÒ¼ö ¾ø´Â Á÷¾÷ÀÔ´Ï´Ù."); + print(fd, "당신ì�€ 수련할수 없는 ì§�업입니다."); /* ANSI(fd, RED); ply_ptr->mpmax = ply_ptr->mpmax + 10; ply_ptr->hpmax = ply_ptr->hpmax + 10; - print(fd, "´ç½ÅÀº ´«À» °¨°í ¼ö·ÃÀ» ÇÕ´Ï´Ù."); + print(fd, "당신ì�€ 눈ì�„ ê°�ê³  수련ì�„ 합니다."); ANSI(fd, WHITE); */ return(0); } if(F_ISSET(ply_ptr, PBLIND)){ ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ¼ö·ÃÇÒ ¼ö ¾ø½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 수련할 수 없습니다!"); ANSI(fd, WHITE); return(0); } - /* Àá·Â°Ý¹ß »ç¿ëÁß¿¡ ¼ö·Ã½Ã Àá·Â°Ý¹ß ÇØÁ¦ */ + /* 잠력격발 사용중ì—� 수련시 잠력격발 í•´ì œ */ if(F_ISSET(ply_ptr, PUPDMG)) { F_CLR(ply_ptr, PUPDMG); ply_ptr->pdice -= 5; @@ -564,7 +564,7 @@ cmd *cmnd; } rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RTRAIN)) { - print(fd, "ÀÌ °÷Àº ¼ö·ÃÇÒ ¼ö Àִ°÷ÀÌ ¾Æ´Õ´Ï´Ù!"); + print(fd, "ì�´ ê³³ì�€ 수련할 수 있는곳ì�´ 아닙니다!"); return(0); } @@ -583,7 +583,7 @@ cmd *cmnd; } if(ply_ptr->class>8) fail=0; if(fail) { - print(fd, "´ç½ÅÀÌ ¼ö·ÃÇϴ°÷Àº ¿©±â°¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "당신ì�´ 수련하는곳ì�€ 여기가 아닙니다."); return(0); } if(ply_ptr->level <= MAXALVL) @@ -594,16 +594,16 @@ cmd *cmnd; if(ply_ptr->level ply_ptr->experience) { - print(fd, "´ç½ÅÀº %ld ¸¸Å­ÀÇ °æÇèÄ¡°¡ ´õ ÇÊ¿äÇÕ´Ï´Ù.", + print(fd, "당신ì�€ %ld ë§Œí�¼ì�˜ 경험치가 ë�” 필요합니다.", expneeded - ply_ptr->experience); return(0); } if(goldneeded > ply_ptr->gold) { - print(fd, "µ·µµ ¾øÀ¸¸é¼­... µ· ¹ú¾î¿À¼¼¿ä.\n"); - print(fd, "´ç½ÅÀº ¼ö·ÃÇϴµ¥ %ld³ÉÀÌ µì´Ï´Ù.", goldneeded); + print(fd, "ë�ˆë�„ 없으면서... ë�ˆ 벌어오세요.\n"); + print(fd, "당신ì�€ 수련하는ë�° %ld냥ì�´ 듭니다.", goldneeded); return(0); } - /* ¹«Àû Àüȯ */ + /* 무ì � 전환 */ if((ply_ptr->level==100) && (ply_ptr->class < INVINCIBLE)) { ply_ptr->class = INVINCIBLE; if(F_ISSET(ply_ptr, PFAMIL)) { @@ -614,7 +614,7 @@ ply_ptr->daily[DL_EXPND].max, 3); ply_ptr->experience = 0; } - /* ÃÊÀÎÀüȯ */ + /* ì´ˆì�¸ì „환 */ if((ply_ptr->level>=127) && (ply_ptr->class == INVINCIBLE)) { ply_ptr->class = CARETAKER; ply_ptr->level = 127; @@ -628,8 +628,8 @@ ply_ptr->daily[DL_EXPND].max, 3); ply_ptr->ndice = 4; ply_ptr->sdice = 4; ply_ptr->pdice = 4; - broadcast_all("\n### %s´Ô²²¼­ ÃÊÀÎÀÌ µÇ¼Ì½À´Ï´Ù!!",ply_ptr->name); - print(fd,"\nÃàÇÏÇÕ´Ï´Ù! ´ç½ÅÀº ÃÊÀÎÀÌ µÇ¾ú½À´Ï´Ù!!"); + broadcast_all("\n### %s님께서 ì´ˆì�¸ì�´ ë�˜ì…¨ìŠµë‹ˆë‹¤!!",ply_ptr->name); + print(fd,"\n축하합니다! 당신ì�€ ì´ˆì�¸ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤!!"); all_broad_time=time(0); return(0); } @@ -650,21 +650,21 @@ ply_ptr->daily[DL_EXPND].max, 3); } while(expneeded <= ply_ptr->experience && goldneeded <= ply_ptr->gold); if(up_num<=1) - broadcast_all("\n### %s´ÔÀÌ %d·¹º§·Î ¿Ã¶ú½À´Ï´Ù!", + broadcast_all("\n### %s님ì�´ %d레벨로 올ëž�습니다!", ply_ptr->name,ply_ptr->level); else - broadcast_all("\n### %s´ÔÀÌ %d·¹º§·Î %d´Ü°è ¿Ã¶ú½À´Ï´Ù!", + broadcast_all("\n### %s님ì�´ %d레벨로 %d단계 올ëž�습니다!", ply_ptr->name,ply_ptr->level,up_num); - print(fd, "\nÃàÇÏÇÕ´Ï´Ù! ´ç½ÅÀÇ ·¹º§ÀÌ ¿Ã¶ú½À´Ï´Ù!"); + print(fd, "\n축하합니다! 당신ì�˜ 레벨ì�´ 올ëž�습니다!"); all_broad_time=time(0); return(0); } } /**********************************************************************/ -/* forgeÁ¦·Ã */ +/* forge제련 */ /**********************************************************************/ -/* »õ·Î¿î ÀڽŸ¸ÀÇ ¹«±â¸¦ Á¦ÀÛÇÏ´Â ·çƾÀÌ´Ù */ -/* ¾ÆÀÌÅÛ ¹øÈ£ 900¹øºÎÅÍ µµ °Ë ºÀ ⠱à ¼øÀ¸·Î ³ª°£´Ù */ +/* 새로운 ìž�ì‹ ë§Œì�˜ 무기를 제작하는 루틴ì�´ë‹¤ */ +/* ì•„ì�´í…œ 번호 900번부터 ë�„ ê²€ ë´‰ ì°½ ê¶� 순으로 나간다 */ void select_arm(); int forge(ply_ptr, cmnd) creature *ply_ptr; @@ -677,11 +677,11 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; /* - print(fd, "¹ö±×·Î Àá½Ã »ç¿ëÁßÁöÇÕ´Ï´Ù\n"); + print(fd, "버그로 잠시 사용중지합니다\n"); return(0); */ if(!F_ISSET(rom_ptr, RFORGE)) { - print(fd, "¿©±â´Â ´ëÀå°£ÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "여기는 대장간ì�´ 아닙니다."); return(0); } @@ -694,7 +694,7 @@ cmd *cmnd; /**********************************************************************/ /* select_arm */ /**********************************************************************/ -/* ¹«±âÀÇ Æ¯¼ºÀ» ¼³°èÇÏ´Â ºÎºÐÀÌ´Ù. */ +/* 무기ì�˜ 특성ì�„ 설계하는 부분ì�´ë‹¤. */ char forge1[PMAX][16]; char forge2[PMAX][16]; void select_arm(fd, param, str) @@ -711,7 +711,7 @@ char *str; switch(param) { case 1: print(fd,"\n\n"); - print(fd, "¾î¶² Á¾·ùÀÇ ¹«±â¸¦ ¿øÇϽʴϱî?\n1. µµ 2. °Ë 3. ºÀ 4. â 5. ±Ã ?\n:"); + print(fd, "ì–´ë–¤ 종류ì�˜ 무기를 ì›�하십니까?\n1. ë�„ 2. ê²€ 3. ë´‰ 4. ì°½ 5. ê¶� ?\n:"); F_SET(Ply[fd].ply,PREADI); output_buf(); Ply[fd].io->intrpt &= ~1; @@ -725,14 +725,14 @@ char *str; } } else { - print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 2); } - /* Æ÷ÀÎÅÍ obj_ptrÀ» longÇüÀ¸·Î ¹Ù²ã ÀúÀå. */ + /* í�¬ì�¸í„° obj_ptrì�„ long형으로 바꿔 저장. */ sprintf(forge1[fd],"%lu",(long)obj_ptr); - print(fd, "\nŸ°ÝÄ¡¿¡ ¿µÇâÀ» ÁÖ´Â Àç·á¸¦ ¼±ÅÃÇϽʽÿä.\n"); - print(fd, "1.°­ ö ¿À¸¸³É 2.±Í±Ý¼Ó À̽ʸ¸³É 3.±Ý°­¼® »ï½Ê¸¸³É\n:"); + print(fd, "\n타격치ì—� ì˜�í–¥ì�„ 주는 재료를 ì„ íƒ�하십시요.\n"); + print(fd, "1.ê°• ì²  오만냥 2.귀금ì†� ì�´ì‹­ë§Œëƒ¥ 3.금강ì„� 삼십만냥\n:"); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 3); case 3: @@ -749,8 +749,8 @@ char *str; break; case '3': if((ply_ptr->class == CLERIC)||(ply_ptr->class == PALADIN)||(ply_ptr->class == MAGE)) { - print(fd, "´ç½ÅÀº ÀÌ·± ¹«±â¸¦ »ç¿ëÇÒ ´É·ÂÀÌ ¾ø½À´Ï´Ù.\n"); - print(fd, "´Ù¸¥Àç·á¸¦ ¼±ÅÃÇϽʽÿä\n"); + print(fd, "당신ì�€ ì�´ëŸ° 무기를 사용할 능력ì�´ 없습니다.\n"); + print(fd, "다른재료를 ì„ íƒ�하십시요\n"); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 3); } @@ -763,13 +763,13 @@ char *str; obj_ptr->sdice = 5; sum = 300000; break; - default: print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + default: print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 3); } sprintf(forge2[fd],"%lu",sum); - print(fd, "\nÈǸ¢ÇÑ ¹«±â´Â ´ã±ÝÁú·Î ³»±¸·ÂÀÌ Çâ»óµË´Ï´Ù.\n¸î¹øÀÇ ´ã±ÝÁúÀ» ¿øÇմϱî?\n"); - print(fd, "1. 100¹ø ¿À¸¸³É 2. 200¹ø À̽ʸ¸³É 3. 300¹ø ¿À½Ê¸¸³É\n4. 400¹ø ¹é¸¸³É 5. 500¹ø À̹鸸³É\n"); + print(fd, "\n훌륭한 무기는 담금질로 내구력ì�´ í–¥ìƒ�ë�©ë‹ˆë‹¤.\n몇번ì�˜ 담금질ì�„ ì›�합니까?\n"); + print(fd, "1. 100번 오만냥 2. 200번 ì�´ì‹­ë§Œëƒ¥ 3. 300번 오십만냥\n4. 400번 백만냥 5. 500번 ì�´ë°±ë§Œëƒ¥\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 4); @@ -803,13 +803,13 @@ char *str; obj_ptr->shotscur = 500; sum += 2000000; break; - default: print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + default: print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 4); } sprintf(forge2[fd],"%lu",sum); - print(fd, "\n´ç½ÅÀÇ ¹«±âÀÇ À̸§À» ÁöÀ¸½Ê½Ã¿ä.\n"); - print(fd, "³ªÁß¿¡ À̸§À» °íÄ¥¼ö ¾øÀ¸´Ï Á¶½ÉÇØ¼­ ÁöÀ¸¼Å¾ß ÇÕ´Ï´Ù\n"); + print(fd, "\n당신ì�˜ 무기ì�˜ ì�´ë¦„ì�„ 지으십시요.\n"); + print(fd, "나중ì—� ì�´ë¦„ì�„ 고칠수 없으니 조심해서 지으셔야 합니다\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 5); @@ -817,20 +817,20 @@ char *str; F_CLR(Ply[fd].ply,PREADI); obj_ptr=(object *)atol(forge1[fd]); if(strchr(str,'(') || strchr(str,')')) { - print(fd,"À̸§¿¡´Â °ýÈ£°¡ µé¾î°¥¼ö ¾ø½À´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä:"); + print(fd,"ì�´ë¦„ì—�는 괄호가 들어갈수 없습니다.\nì�´ë¦„ì�„ 다시 넣으십시요:"); RETURN(fd,select_arm,5); } if(strlen(str) > 20) { - print(fd, "ÀÔ·ÂµÈ À̸§ÀÌ ³Ê¹« ±é´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 20ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ ì�´ë¦„ì�´ 너무 ê¹�니다.\nì�´ë¦„ì�„ 다시 넣으십시요(3ìž�ì�´ìƒ� 20ìž�ì�´í•˜): "); RETURN(fd, select_arm, 5); } if(strlen(str) < 3) { - print(fd, "ÀÔ·ÂµÈ À̸§ÀÌ ³Ê¹« ª½À´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 20ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ ì�´ë¦„ì�´ 너무 짧습니다.\nì�´ë¦„ì�„ 다시 넣으십시요(3ìž�ì�´ìƒ� 20ìž�ì�´í•˜): "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 5); } strncpy(obj_ptr->name, str, 20); - print(fd, "\n¸ðµç°Í¿¡ ¸¸Á·ÇϽʴϱî? (¿¹/¾Æ´Ï¿À)\n"); + print(fd, "\n모든것ì—� 만족하십니까? (예/아니오)\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_arm, 6); @@ -838,19 +838,19 @@ char *str; F_CLR(Ply[fd].ply,PREADI); obj_ptr=(object *)atol(forge1[fd]); sum=atol(forge2[fd]); - if(!strncmp(str,"¿¹",2)) { + if(!strncmp(str,"예",2)) { if (ply_ptr->gold < sum) { - print(fd, "\n´ç½ÅÀº ±× Á¶°ÇÀÇ ¹«±â¸¦ ¸¸µé ¸¸ÇÑ µ·ÀÌ ¾ø½À´Ï´Ù.\nÁÖÀÎÀÌ ´ç½Å¿¡°Ô \"¿Ü»óÀº ¾ÈµÇ¿ä~\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "\n당신ì�€ ê·¸ ì¡°ê±´ì�˜ 무기를 만들 만한 ë�ˆì�´ 없습니다.\n주ì�¸ì�´ 당신ì—�게 \"외ìƒ�ì�€ 안ë�˜ìš”~\"ë�¼ê³  ë§�합니다."); free(obj_ptr); break; } add_obj_crt(obj_ptr,ply_ptr); - print(fd, "\nÁÖÀÎÀÌ ´ç½Å¿¡°Ô »õ·Î Á¦ÀÛµÈ ¹«±â¸¦ °Ç³×ÁÝ´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¹«±â¸¦ Á¦·ÃÇÏ¿´½À´Ï´Ù.",ply_ptr); + print(fd, "\n주ì�¸ì�´ 당신ì—�게 새로 제작ë�œ 무기를 건네ì¤�니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 무기를 제련하였습니다.",ply_ptr); ply_ptr->gold -= sum; } else { - print(fd,"¹«±â Á¦·ÃÀ» Ãë¼ÒÇÏ¿´½À´Ï´Ù."); + print(fd,"무기 제련ì�„ 취소하였습니다."); free(obj_ptr); } break; @@ -862,10 +862,10 @@ char *str; *****/ /**********************************************************************/ -/* newforgeÁ¦·Ã */ +/* newforge제련 */ /**********************************************************************/ -/* »õ·Î¿î ÀڽŸ¸ÀÇ ¹«±â¸¦ Á¦ÀÛÇÏ´Â ·çƾÀÌ´Ù */ -/* ¾ÆÀÌÅÛ ¹øÈ£ 900¹øºÎÅÍ µµ °Ë ºÀ ⠱à ¼øÀ¸·Î ³ª°£´Ù */ +/* 새로운 ìž�ì‹ ë§Œì�˜ 무기를 제작하는 루틴ì�´ë‹¤ */ +/* ì•„ì�´í…œ 번호 900번부터 ë�„ ê²€ ë´‰ ì°½ ê¶� 순으로 나간다 */ void select_newarm(); int newforge(ply_ptr, cmnd) @@ -881,16 +881,16 @@ cmd *cmnd; /* - print(fd, "¹ö±×·Î Àá½Ã »ç¿ëÁßÁöÇÕ´Ï´Ù\n"); + print(fd, "버그로 잠시 사용중지합니다\n"); return(0); */ if(!F_ISSET(rom_ptr, RFORGE)) { - print(fd, "¿©±â´Â ´ëÀå°£ÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd, "여기는 대장간ì�´ 아닙니다."); return(0); } if(!(rom_ptr->rom_num == 611 )) { - print(fd, "¿©±â¼­´Â ¹«±â¸¦ ¸¸µé ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "여기서는 무기를 만들 수가 없습니다."); return(0); } @@ -907,7 +907,7 @@ cmd *cmnd; /* select_arm */ /**********************************************************************/ -/* ¹«±âÀÇ Æ¯¼ºÀ» ¼³°èÇÏ´Â ºÎºÐÀÌ´Ù. */ +/* 무기ì�˜ 특성ì�„ 설계하는 부분ì�´ë‹¤. */ char forge1[PMAX][16]; char forge2[PMAX][16]; @@ -926,7 +926,7 @@ char *str; switch(param) { case 1: print(fd,"\n\n"); - print(fd, "¾î¶² Á¾·ùÀÇ ¹«±â¸¦ ¿øÇϽʴϱî?\n1. µµ 2. °Ë 3. ºÀ 4. â 5. ±Ã ?\n:"); + print(fd, "ì–´ë–¤ 종류ì�˜ 무기를 ì›�하십니까?\n1. ë�„ 2. ê²€ 3. ë´‰ 4. ì°½ 5. ê¶� ?\n:"); F_SET(Ply[fd].ply,PREADI); output_buf(); Ply[fd].io->intrpt &= ~1; @@ -942,16 +942,16 @@ char *str; } } else { - print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_newarm, 2); } - /* Æ÷ÀÎÅÍ obj_ptrÀ» longÇüÀ¸·Î ¹Ù²ã ÀúÀå. */ + /* í�¬ì�¸í„° obj_ptrì�„ long형으로 바꿔 저장. */ sprintf(forge1[fd],"%lu",(long)obj_ptr); - print(fd, "\nŸ°ÝÄ¡¿¡ ¿µÇâÀ» ÁÖ´Â Àç·á¸¦ ¼±ÅÃÇϽʽÿä.\n"); - print(fd, "1.¿¡¸Þ¶öµå 100¸¸³É 2.ƼŸ´½ 200¸¸³É 3.ÀÏ·ç¼Ç 300¸¸³É\n:"); + print(fd, "\n타격치ì—� ì˜�í–¥ì�„ 주는 재료를 ì„ íƒ�하십시요.\n"); + print(fd, "1.ì—�메랄드 100만냥 2.티타늄 200만냥 3.ì�¼ë£¨ì…˜ 300만냥\n:"); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_newarm, 3); @@ -982,15 +982,15 @@ char *str; obj_ptr->pdice = 5; sum = 3000000; break; - default: print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + default: print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_newarm, 3); } sprintf(forge2[fd],"%lu",sum); - print(fd, "\nÈǸ¢ÇÑ ¹«±â´Â ´ã±ÝÁú·Î ³»±¸·ÂÀÌ Çâ»óµË´Ï´Ù.\n¸î¹øÀÇ ´ã±ÝÁúÀ» ¿øÇմϱî?\n"); - print(fd, "1. 100¹ø ¹é¸¸³É 2. 300¹ø 2¹é¸¸³É 3. 500¹ø 3¹é¸¸³É\n4. 700¹ø 4¹é¸¸³É 5. 900¹ø 5¹é¸¸³É\n"); + print(fd, "\n훌륭한 무기는 담금질로 내구력ì�´ í–¥ìƒ�ë�©ë‹ˆë‹¤.\n몇번ì�˜ 담금질ì�„ ì›�합니까?\n"); + print(fd, "1. 100번 백만냥 2. 300번 2백만냥 3. 500번 3백만냥\n4. 700번 4백만냥 5. 900번 5백만냥\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); @@ -1031,7 +1031,7 @@ char *str; sum += 5000000; break; - default: print(fd, "Çϳª¸¦ ¼±ÅÃÇϽÿÀ: "); + default: print(fd, "하나를 ì„ íƒ�하시오: "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_newarm, 4); @@ -1039,8 +1039,8 @@ char *str; sprintf(forge2[fd],"%lu",sum); - print(fd, "\n´ç½ÅÀÇ ¹«±âÀÇ À̸§À» ÁöÀ¸½Ê½Ã¿ä.\n"); - print(fd, "³ªÁß¿¡ À̸§À» °íÄ¥¼ö ¾øÀ¸´Ï Á¶½ÉÇØ¼­ ÁöÀ¸¼Å¾ß ÇÕ´Ï´Ù\n"); + print(fd, "\n당신ì�˜ 무기ì�˜ ì�´ë¦„ì�„ 지으십시요.\n"); + print(fd, "나중ì—� ì�´ë¦„ì�„ 고칠수 없으니 조심해서 지으셔야 합니다\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); @@ -1051,15 +1051,15 @@ char *str; obj_ptr=(object *)atol(forge1[fd]); if(strchr(str,'(') || strchr(str,')')) { - print(fd,"À̸§¿¡´Â °ýÈ£°¡ µé¾î°¥¼ö ¾ø½À´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä:"); + print(fd,"ì�´ë¦„ì—�는 괄호가 들어갈수 없습니다.\nì�´ë¦„ì�„ 다시 넣으십시요:"); RETURN(fd,select_newarm,5); } if(strlen(str) > 20) { - print(fd, "ÀÔ·ÂµÈ À̸§ÀÌ ³Ê¹« ±é´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 20ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ ì�´ë¦„ì�´ 너무 ê¹�니다.\nì�´ë¦„ì�„ 다시 넣으십시요(3ìž�ì�´ìƒ� 20ìž�ì�´í•˜): "); RETURN(fd, select_newarm, 5); } if(strlen(str) < 3) { - print(fd, "ÀÔ·ÂµÈ À̸§ÀÌ ³Ê¹« ª½À´Ï´Ù.\nÀ̸§À» ´Ù½Ã ³ÖÀ¸½Ê½Ã¿ä(3ÀÚÀÌ»ó 20ÀÚÀÌÇÏ): "); + print(fd, "ìž…ë ¥ë�œ ì�´ë¦„ì�´ 너무 짧습니다.\nì�´ë¦„ì�„ 다시 넣으십시요(3ìž�ì�´ìƒ� 20ìž�ì�´í•˜): "); F_SET(Ply[fd].ply,PREADI); RETURN(fd, select_newarm, 5); @@ -1067,7 +1067,7 @@ char *str; strncpy(obj_ptr->name, str, 20); - print(fd, "\n¸ðµç°Í¿¡ ¸¸Á·ÇϽʴϱî? (¿¹/¾Æ´Ï¿À)\n"); + print(fd, "\n모든것ì—� 만족하십니까? (예/아니오)\n"); print(fd, ": "); F_SET(Ply[fd].ply,PREADI); @@ -1079,21 +1079,21 @@ char *str; obj_ptr=(object *)atol(forge1[fd]); sum=atol(forge2[fd]); - if(!strncmp(str,"¿¹",2)) { + if(!strncmp(str,"예",2)) { if (ply_ptr->gold < sum) { - print(fd, "\n´ç½ÅÀº ±× Á¶°ÇÀÇ ¹«±â¸¦ ¸¸µé ¸¸ÇÑ µ·ÀÌ ¾ø½À´Ï´Ù.\nÁÖÀÎÀÌ ´ç½Å¿¡°Ô \"¿Ü»óÀº ¾ÈµÇ¿ä~\"¶ó°í ¸»ÇÕ´Ï´Ù."); + print(fd, "\n당신ì�€ ê·¸ ì¡°ê±´ì�˜ 무기를 만들 만한 ë�ˆì�´ 없습니다.\n주ì�¸ì�´ 당신ì—�게 \"외ìƒ�ì�€ 안ë�˜ìš”~\"ë�¼ê³  ë§�합니다."); free(obj_ptr); break; } add_obj_crt(obj_ptr,ply_ptr); - print(fd, "\nÁÖÀÎÀÌ ´ç½Å¿¡°Ô »õ·Î Á¦ÀÛµÈ ¹«±â¸¦ °Ç³×ÁÝ´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¹«±â¸¦ Á¦·ÃÇÏ¿´½À´Ï´Ù.",ply_ptr); + print(fd, "\n주ì�¸ì�´ 당신ì—�게 새로 제작ë�œ 무기를 건네ì¤�니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 무기를 제련하였습니다.",ply_ptr); ply_ptr->gold -= sum; } else { - print(fd,"¹«±â Á¦·ÃÀ» Ãë¼ÒÇÏ¿´½À´Ï´Ù."); + print(fd,"무기 제련ì�„ 취소하였습니다."); free(obj_ptr); } break; @@ -1118,12 +1118,12 @@ cmd *cmnd; rom_ptr=ply_ptr->parent_rom; if(F_ISSET(ply_ptr, PBLIND)){ ANSI(fd, RED); - print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î Á÷¾÷ÀüȯÀ» ÇÒ ¼ö ¾ø½À´Ï´Ù!"); + print(fd, "당신ì�€ 눈ì�´ 멀어 ì§�업전환ì�„ í•  수 없습니다!"); ANSI(fd, WHITE); return(0); } if(!F_ISSET(rom_ptr, RTRAIN)) { - print(fd, "ÀÌ °÷Àº ¼ö·ÃÀåÀÌ ¾Æ´Õ´Ï´Ù!"); + print(fd, "ì�´ ê³³ì�€ 수련장ì�´ 아닙니다!"); return(0); } for(i=0; i<3; i++) { @@ -1132,15 +1132,15 @@ cmd *cmnd; } new_class++; if(ply_ptr->class>8) { - print(fd,"´ç½ÅÀº Á÷¾÷ÀüȯÀ» ÇÒ ¼ö ¾ø´Â Á÷¾÷À» °®°í ÀÖ½À´Ï´Ù."); + print(fd,"당신ì�€ ì§�업전환ì�„ í•  수 없는 ì§�ì—…ì�„ ê°–ê³  있습니다."); return(0); } if(new_class==ply_ptr->class) { - print(fd, "Á÷¾÷ÀüȯÀ» ÇÏ·Á¸é ÀÚ½ÅÀÌ ¼ö·ÃÇϴ°÷¿¡¼­´Â ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "ì§�업전환ì�„ 하려면 ìž�ì‹ ì�´ 수련하는곳ì—�서는 í•  수 없습니다."); return(0); } if(ply_ptr->experience<100000) { - print(fd, "Á÷¾÷ÀüȯÀ» ÇÏ·Á¸é °æÇèÄ¡ 10¸¸ÀÌ ÇÊ¿äÇÕ´Ï´Ù."); + print(fd, "ì§�업전환ì�„ 하려면 경험치 10ë§Œì�´ 필요합니다."); return(0); } change_class_ok(ply_ptr->fd,1,""); @@ -1165,7 +1165,7 @@ creature *ply_ptr; n = exp_to_lev(ply_ptr->experience); while(ply_ptr->level > n) down_level(ply_ptr); - print(fd, "\n´ç½ÅÀÇ Á÷¾÷ÀÌ ÀüȯµÇ¾ú½À´Ï´Ù."); + print(fd, "\n당신ì�˜ ì§�ì—…ì�´ 전환ë�˜ì—ˆìŠµë‹ˆë‹¤."); if(F_ISSET(ply_ptr, PFAMIL)) { edit_member(ply_ptr->name, ply_ptr->class, ply_ptr->daily[DL_EXPND].max, 3); @@ -1179,26 +1179,26 @@ char *str; { switch(param) { case 1: - print(fd,"Á÷¾÷ÀüȯÀ» ÇÏ·Á¸é °æÇèÄ¡ 10¸¸ÀÌ ÇÊ¿äÇÕ´Ï´Ù.\n"); - print(fd,"Á¤¸»·Î Á÷¾÷ÀüȯÀ» ÇϽðڽÀ´Ï±î?(¿¹/¾Æ´Ï¿À): "); + print(fd,"ì§�업전환ì�„ 하려면 경험치 10ë§Œì�´ 필요합니다.\n"); + print(fd,"ì •ë§�로 ì§�업전환ì�„ 하시겠습니까?(예/아니오): "); F_SET(Ply[fd].ply,PREADI); output_buf(); Ply[fd].io->intrpt &= ~1; RETURN(fd,change_class_ok,2); case 2: F_CLR(Ply[fd].ply,PREADI); - if(!strncmp(str,"¿¹",2)) { + if(!strncmp(str,"예",2)) { chg_class_main(Ply[fd].ply); } else - print(fd,"Á÷¾÷ÀüȯÀÌ µÇÁö ¾Ê¾Ò½À´Ï´Ù"); + print(fd,"ì§�업전환ì�´ ë�˜ì§€ 않았습니다"); RETURN(fd,command,1); } } /**********************************************************************/ -/* magic_stop ( Ç÷µµºÀ¼â ) */ +/* magic_stop ( 혈ë�„봉쇄 ) */ /**********************************************************************/ -/* À̱â´ÉÀº ÀûÀÇ µµ·ÂÀ» ¸·´Â ·çƾÀÌ´Ù. */ +/* ì�´ê¸°ëŠ¥ì�€ ì �ì�˜ ë�„ë ¥ì�„ 막는 루틴ì�´ë‹¤. */ /* */ int magic_stop(ply_ptr, cmnd) creature *ply_ptr; @@ -1212,27 +1212,27 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { print(fd, - "\n´©±¸ÀÇ Ç÷µµ¸¦ ºÀ¼âÇϽǷÁ±¸¿ä?\n"); + "\n누구ì�˜ 혈ë�„를 봉쇄하실려구요?\n"); return(0); } if(ply_ptr->class != RANGER && ply_ptr->class < INVINCIBLE) { print(fd, - "\nÆ÷Á¹¸¸ÀÌ Ç÷µµºÀ¼â¸¦ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\ní�¬ì¡¸ë§Œì�´ 혈ë�„봉쇄를 사용할수 있습니다.\n"); return(0); } crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, cmnd->str[1], cmnd->val[1]); if(!crt_ptr) { print(fd, - "\n±×·± ±«¹°Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 괴물ì�€ 존재하지 않습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); print(fd, - "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ 모습ì�´ 나타나기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÇ ¸ð½ÀÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.", + "%Mì�˜ 모습ì�´ ë³´ì�´ê¸° 시작합니다.", ply_ptr); } i = LT(ply_ptr, LT_TURNS); @@ -1243,8 +1243,8 @@ cmd *cmnd; } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { print(fd, - "\n´ç½ÅÀº %sÀÇ Ç÷µµ¸¦ ºÀ¼âÇÒ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + "\n당신ì�€ %sì�˜ 혈ë�„를 봉쇄할수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } add_enm_crt(ply_ptr->name, crt_ptr); @@ -1257,31 +1257,31 @@ cmd *cmnd; if(ply_ptr->class == RANGER) chance += 10; if(mrand(1,100) > chance) { print(fd, - "\n´ç½ÅÀº ÀûÀÇ Ç÷µµ¸¦ À绡¸® ºÀ¼âÇß½À´Ï´Ù.\n±×·¯³ª ÀûÀÌ »ì¦ ÇÇÇØ ºø³ª°¬½À´Ï´Ù.\n", + "\n당신ì�€ ì �ì�˜ 혈ë�„를 재빨리 봉쇄했습니다.\n그러나 ì �ì�´ ì‚´ì§� 피해 빗나갔습니다.\n", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÀûÀÇ Ç÷µµ¸¦ À绡¸® ºÀ¼âÇß½À´Ï´Ù.\n±×·¯³ª %M°¡ »ì¦ ÇÇÇß½À´Ï´Ù.\n", + "\n%Mì�´ ì �ì�˜ 혈ë�„를 재빨리 봉쇄했습니다.\n그러나 %Mê°€ ì‚´ì§� 피했습니다.\n", ply_ptr, crt_ptr); return(0); } print(fd, - "\n´ç½ÅÀº ÀûÀÇ Ç÷µµ¸¦ À绡¸® ºÀ¼âÇß½À´Ï´Ù.\nÀûÀÇ Ç÷µµ¸¦ ¤¾î ÁÖ¹®À» ºÀ¼âÇß½À´Ï´Ù.\n ", + "\n당신ì�€ ì �ì�˜ 혈ë�„를 재빨리 봉쇄했습니다.\nì �ì�˜ 혈ë�„를 ì§šì–´ 주문ì�„ 봉쇄했습니다.\n ", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÀûÀÇ Ç÷µµ¸¦ À绡¸® ºÀ¼âÇß½À´Ï´Ù.\n%MÀÇ Ç÷µµ°¡ ¤Çô ÁÖ¹®ÀÌ ºÀ¼âµÇ¾ú½À´Ï´Ù.\n", + "\n%Mì�´ ì �ì�˜ 혈ë�„를 재빨리 봉쇄했습니다.\n%Mì�˜ 혈ë�„ê°€ 짚혀 주문ì�´ 봉쇄ë�˜ì—ˆìŠµë‹ˆë‹¤.\n", ply_ptr, crt_ptr); if (mrand(25,100) <= chance) { dmg = crt_ptr->hpcur /2; - print(fd,"%MÀÇ ±Þ¼Ò¸¦ ¤¾î¼­ %dÀÇ ÇÇÇØ¸¦ ÀÔÇû½À´Ï´Ù.\n", crt_ptr, dmg ); + print(fd,"%Mì�˜ 급소를 짚어서 %dì�˜ 피해를 입혔습니다.\n", crt_ptr, dmg ); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %mÀÇ ±Þ¼Ò¸¦ ¤¾î¼­ %dÀÇ ÇÇÇØ¸¦ ÀÔÇû½À´Ï´Ù.\n", ply_ptr, crt_ptr, dmg); + "%Mì�´ %mì�˜ 급소를 짚어서 %dì�˜ 피해를 입혔습니다.\n", ply_ptr, crt_ptr, dmg); crt_ptr->hpcur -= dmg; m = MIN(crt_ptr->hpcur, dmg); add_enm_dmg(ply_ptr->name, crt_ptr, m); if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.", crt_ptr,"3"); + print(fd, "\n당신ì�€ %M%j 죽였습니다.", crt_ptr,"3"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", crt_ptr,"3"); + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); } else @@ -1303,7 +1303,7 @@ cmd *cmnd; return(0); } /**********************************************************************/ -/* Áßµ¶ */ +/* 중ë�… */ /**********************************************************************/ int poison_mon(ply_ptr, cmnd) creature *ply_ptr; @@ -1317,12 +1317,12 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { print(fd, - "\n´©±¸¸¦ Áßµ¶½ÃŰ½Ã·Á°í¿ä?\n"); + "\n누구를 중ë�…시키시려고요?\n"); return(0); } if(ply_ptr->class != ASSASSIN && ply_ptr->class < INVINCIBLE) { print(fd, - "\nÀÚ°´¸¸ÀÌ °¡´ÉÇÕ´Ï´Ù.\n"); + "\nìž�ê°�ë§Œì�´ 가능합니다.\n"); return(0); } crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, @@ -1330,16 +1330,16 @@ cmd *cmnd; if(!crt_ptr) { print(fd, - "\n±×·± ±«¹°Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 괴물ì�€ 존재하지 않습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); print(fd, - "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ 모습ì�´ 나타나기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÇ ¸ð½ÀÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.", + "%Mì�˜ 모습ì�´ ë³´ì�´ê¸° 시작합니다.", ply_ptr); } i = LT(ply_ptr, LT_TURNS); @@ -1350,8 +1350,8 @@ cmd *cmnd; } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { print(fd, - "\n´ç½ÅÀº %s¸¦ Áßµ¶½Ãų¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + "\n당신ì�€ %s를 중ë�…시킬수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } add_enm_crt(ply_ptr->name, crt_ptr); @@ -1363,32 +1363,32 @@ cmd *cmnd; chance = MIN(chance, 80); if(mrand(1,100) > chance) { print(fd, - "\n´ç½ÅÀº Àû¿¡°Ô µ¶À» »Ñ·È½À´Ï´Ù.\n±×·¯³ª ÀûÀÌ »ì¦ ÇÇÇØ ½ÇÆÐÇß½À´Ï´Ù.\n", + "\n당신ì�€ ì �ì—�게 ë�…ì�„ 뿌렸습니다.\n그러나 ì �ì�´ ì‚´ì§� 피해 실패했습니다.\n", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Àû¿¡°Ô µ¶À» »Ñ·È½À´Ï´Ù.\n±×·¯³ª %M°¡ »ì¦ ÇÇÇß½À´Ï´Ù.\n", + "\n%Mì�´ ì �ì—�게 ë�…ì�„ 뿌렸습니다.\n그러나 %Mê°€ ì‚´ì§� 피했습니다.\n", ply_ptr, crt_ptr); return(0); } print(fd, - "\n´ç½ÅÀº Àû¿¡°Ô µ¶À» »Ñ·È½À´Ï´Ù.\n%MÀÇ ¸öÀÌ Áßµ¶µÇ¾ú½À´Ï´Ù.\n ", + "\n당신ì�€ ì �ì—�게 ë�…ì�„ 뿌렸습니다.\n%Mì�˜ 몸ì�´ 중ë�…ë�˜ì—ˆìŠµë‹ˆë‹¤.\n ", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Àû¿¡°Ô µ¶À» »Ñ·È½À´Ï´Ù.\n%MÀÇ ¸öÀÌ Áßµ¶µÇ¾ú½À´Ï´Ù.\n", + "\n%Mì�´ ì �ì—�게 ë�…ì�„ 뿌렸습니다.\n%Mì�˜ 몸ì�´ 중ë�…ë�˜ì—ˆìŠµë‹ˆë‹¤.\n", ply_ptr, crt_ptr); F_SET(crt_ptr, MPOISN); if (mrand(10,100) <= chance) { dmg = crt_ptr->hpmax /3 ; - print(fd,"%MÀ» Áßµ¶À» ½ÃÄѼ­ %dÀÇ ÇÇÇØ¸¦ ÀÔÇû½À´Ï´Ù.\n", crt_ptr, dmg ); + print(fd,"%Mì�„ 중ë�…ì�„ 시켜서 %dì�˜ 피해를 입혔습니다.\n", crt_ptr, dmg ); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %mÀ» Áßµ¶À» ½ÃÄѼ­ %dÀÇ ÇÇÇØ¸¦ ÀÔÇû½À´Ï´Ù.\n", ply_ptr, crt_ptr, dmg); + "%Mì�´ %mì�„ 중ë�…ì�„ 시켜서 %dì�˜ 피해를 입혔습니다.\n", ply_ptr, crt_ptr, dmg); crt_ptr->hpcur -= dmg; m = MIN(crt_ptr->hpcur, dmg); add_enm_dmg(ply_ptr->name, crt_ptr, m); if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.", crt_ptr,"3"); + print(fd, "\n당신ì�€ %M%j 죽였습니다.", crt_ptr,"3"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", crt_ptr,"3"); + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); } else diff --git a/src/command8.c b/src/command8.c index bdf9aae7..fb8b837f 100644 --- a/src/command8.c +++ b/src/command8.c @@ -36,18 +36,17 @@ cmd *cmnd; creature *crt_ptr; room *rom_ptr; int fd; - int len,cnt; + int cnt; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 3) { - print(fd, "´©±¸¿¡°Ô Áֽ÷Á±¸¿ä?\n"); + print(fd, "누구ì—�게 주시려구요?\n"); return(0); } - len=strlen(cmnd->str[1]); - if(len>2 && !strcmp(&cmnd->str[1][len-2],"³É")) { + if(utf8_ends_with((unsigned char *)cmnd->str[1], (unsigned char *)"냥")) { give_money(ply_ptr, cmnd); return(0); } @@ -56,7 +55,7 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·±°ÍÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그런것ì�„ ê°–ê³  있지 않습니다.\n"); return(0); } @@ -71,27 +70,27 @@ cmd *cmnd; crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷Àº ¿©±â ¾ø¾î¿ä!\n"); + print(fd, "그런 사람ì�€ 여기 없어요!\n"); return(0); } } if(crt_ptr == ply_ptr) { - print(fd, "Àڽſ¡°Ô´Â ¹°°ÇÀ» ÁÙ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ìž�ì‹ ì—�게는 물건ì�„ 줄 수 없습니다.\n"); return(0); } if(crt_ptr->type != PLAYER) { - print(fd, "±×·± »ç¶÷Àº ¿©±â ¾ø¾î¿ä!\n"); + print(fd, "그런 사람ì�€ 여기 없어요!\n"); return(0); } if(obj_ptr->questnum && ply_ptr->class < DM) { - print(fd, "ÀÓ¹«¿¡ °ü·ÃµÇ´Â ¹°°ÇÀº ŸÀο¡°Ô ÁÙ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "임무ì—� 관련ë�˜ëŠ” 물건ì�€ 타ì�¸ì—�게 줄 수 없습니다.\n"); return(0); } if(F_ISSET(obj_ptr, ONEWEV) && ply_ptr->class < DM) { - if(strcmp(obj_ptr->key[2], "À̺¥Æ®")) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀº ŸÀο¡°Ô ÁÙ ¼ö ¾ø½À´Ï´Ù.\n"); + if(strcmp(obj_ptr->key[2], "ì�´ë²¤íЏ")) { + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�€ 타ì�¸ì—�게 줄 수 없습니다.\n"); return(0); } } @@ -99,11 +98,11 @@ cmd *cmnd; if(obj_ptr->first_obj) { for(otag_ptr=obj_ptr->first_obj; otag_ptr; otag_ptr=otag_ptr->next_tag) { if(otag_ptr->obj->questnum && ply_ptr->class < DM) { - print(fd, "ÀÓ¹«¿¡ °ü·ÃµÇ´Â ¹°°ÇÀÌ µé¾îÀÖÀ¸¸é ŸÀο¡°Ô ÁÙ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "임무ì—� 관련ë�˜ëŠ” 물건ì�´ 들어있으면 타ì�¸ì—�게 줄 수 없습니다.\n"); return(0); } if(F_ISSET(otag_ptr->obj, ONEWEV) && ply_ptr->class < DM) { - print(fd, "À̺¥Æ® ¾ÆÀÌÅÛÀÌ µé¾îÀÖÀ¸¸é ŸÀο¡°Ô ÁÙ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ì�´ë²¤íЏ ì•„ì�´í…œì�´ 들어있으면 타ì�¸ì—�게 줄 수 없습니다.\n"); return(0); } } @@ -114,7 +113,7 @@ cmd *cmnd; if(crt_ptr->type == PLAYER && (weight_ply(crt_ptr) + weight_obj(obj_ptr) > max_weight(crt_ptr)) || cnt>150) { - print(fd, "%S%j ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù.\n", crt_ptr->name,"0"); + print(fd, "%S%j ë�”ì�´ìƒ� 가질 수 없습니다.\n", crt_ptr->name,"0"); return(0); } @@ -126,9 +125,9 @@ cmd *cmnd; if(crt_ptr->type==PLAYER) savegame_nomsg(crt_ptr); #endif - print(fd, "´ç½ÅÀº %M¿¡°Ô %1i%j ÁÝ´Ï´Ù.\n", crt_ptr, obj_ptr,"3"); - print(crt_ptr->fd, "\n%M%j ´ç½Å¿¡°Ô %1i%j ÁÝ´Ï´Ù.\n", ply_ptr, "1",obj_ptr,"3"); - broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, "\n%MÀÌ %M¿¡°Ô %1i%j ÁÝ´Ï´Ù.", + print(fd, "당신ì�€ %Mì—�게 %1i%j ì¤�니다.\n", crt_ptr, obj_ptr,"3"); + print(crt_ptr->fd, "\n%M%j 당신ì—�게 %1i%j ì¤�니다.\n", ply_ptr, "1",obj_ptr,"3"); + broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, "\n%Mì�´ %Mì—�게 %1i%j ì¤�니다.", ply_ptr, crt_ptr, obj_ptr,"3"); return(0); @@ -156,11 +155,11 @@ cmd *cmnd; amt = atol(cmnd->str[1]); if(amt < 1) { - print(fd, "µ·ÀÇ ´ÜÀ§´Â À½¼ö°¡ µÉ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ë�ˆì�˜ 단위는 ì�Œìˆ˜ê°€ ë� ìˆ˜ 없습니다.\n"); return; } if(amt > ply_ptr->gold) { - print(fd, "´ç½ÅÀº ±×¸¸Å­ÀÇ µ·À» °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그만í�¼ì�˜ ë�ˆì�„ 가지고 있지 않습니다.\n"); return; } @@ -173,7 +172,7 @@ cmd *cmnd; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷Àº ¿©±â ¾ø¾î¿ä!\n"); + print(fd, "그런 사람ì�€ 여기 없어요!\n"); return; } } @@ -185,12 +184,12 @@ cmd *cmnd; savegame_nomsg(ply_ptr); if(crt_ptr->type==PLAYER) savegame_nomsg(crt_ptr); #endif - print(fd, "´ç½ÅÀº %M¿¡°Ô %ld³ÉÀ» ÁÖ¾ú½À´Ï´Ù.\n",crt_ptr,amt); + print(fd, "당신ì�€ %Mì—�게 %ld냥ì�„ 주었습니다.\n",crt_ptr,amt); - print(crt_ptr->fd, "\n%M%j ´ç½Å¿¡°Ô %ld³ÉÀ» ÁÖ¾ú½À´Ï´Ù.\n", + print(crt_ptr->fd, "\n%M%j 당신ì—�게 %ld냥ì�„ 주었습니다.\n", ply_ptr, "1", amt); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M¿¡°Ô %ld³ÉÀ» ÁÖ¾ú½À´Ï´Ù.", ply_ptr,"1", crt_ptr, amt); + "\n%M%j %Mì—�게 %ld냥ì�„ 주었습니다.", ply_ptr,"1", crt_ptr, amt); } @@ -214,12 +213,12 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ¼ö¸®ÇϽ÷Á±¸¿ä?\n"); + print(fd, "무엇ì�„ 수리하시려구요?\n"); return(0); } if(!F_ISSET(rom_ptr, RREPAI)) { - print(fd, "¿©±â¼­´Â ¼ö¸®ÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "여기서는 수리할 수 없습니다.\n"); return(0); } @@ -227,49 +226,49 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) { - print(fd, "´ç½ÅÀº ±×·± ¹°°ÇÀ» °®°í ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 그런 물건ì�„ ê°–ê³  있지 않습니다.\n"); return(0); } F_CLR(ply_ptr, PHIDDN); if(F_ISSET(obj_ptr, ONOFIX)) { - print(fd, "±×°ÍÀº ¼ö¸®ÇÒ¼ö ¾ø´Â ¹°°ÇÀÔ´Ï´Ù.\n"); + print(fd, "그것ì�€ 수리할수 없는 물건입니다.\n"); return(0); } if(obj_ptr->type > MISSILE && obj_ptr->type != ARMOR) { - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ \"¹«±â³ª ¹æÈ£±¸¸¸ ¼ö¸®ÇÒ ¼ö ÀÖ³×.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); + print(fd, "수리ì � 주ì�¸ì�´ \"무기나 방호구만 수리할 수 있네.\"ë�¼ê³  ë§�합니다.\n"); return(0); } if(obj_ptr->shotscur > MAX(3, obj_ptr->shotsmax/10)) { - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ \"±×°Ç ¾ÆÁ÷ ¸ÖÂÄÇѵ¥...\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); + print(fd, "수리ì � 주ì�¸ì�´ \"그건 ì•„ì§� 멀쩡한ë�°...\"ë�¼ê³  ë§�합니다.\n"); return(0); } cost = obj_ptr->value / 4; if(ply_ptr->gold < cost) { - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ \"°øÂ¥·Î´Â ¼ö¸®ÇØÁÙ ¼ö ¾ø³×. µ·À» ´õ ¹ú¾î¿À°Ô³ª..\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); + print(fd, "수리ì � 주ì�¸ì�´ \"공짜로는 수리해줄 수 없네. ë�ˆì�„ ë�” 벌어오게나..\"ë�¼ê³  ë§�합니다.\n"); return(0); } - print(fd, "´ç½ÅÀº ¼ö¸®Á¡ ÁÖÀο¡°Ô ¼ö¸®ºñ %ld³ÉÀ» °Ç³×ÁÖ¾ú½À´Ï´Ù.\n", cost); + print(fd, "당신ì�€ 수리ì � 주ì�¸ì—�게 수리비 %ld냥ì�„ 건네주었습니다.\n", cost); ply_ptr->gold -= cost; - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¼ö¸®¸¦ À§ÇØ ¼ö¸®Á¡ ÁÖÀο¡°Ô %1i¸¦ °Ç³×ÁÖ¾ú½À´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 수리를 위해 수리ì � 주ì�¸ì—�게 %1i를 건네주었습니다.", ply_ptr, obj_ptr); broke = mrand(1,100) + bonus[ply_ptr->piety]; if((broke <= 15 && obj_ptr->shotscur < 1) || (broke <= 5 && obj_ptr->shotscur > 0)) { - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ \"ÀÌ·±~~! ¼ö¸®¸¦ ÇÏ´Ù ºÎ·¯¶ß·È³×. ¹Ì¾ÈÇϳ×\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "ÀÌ·± ÁÖÀÎÀÌ ½Ç¼ö¸¦ Çß½À´Ï´Ù."); + print(fd, "수리ì � 주ì�¸ì�´ \"ì�´ëŸ°~~! 수리를 하다 부러뜨렸네. 미안하네\"ë�¼ê³  ë§�합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "ì�´ëŸ° 주ì�¸ì�´ 실수를 했습니다."); /* if(obj_ptr->shotscur > 0) { */ - print(fd, "¼ö¸®Á¡ÁÖÀÎÀÌ ´ç½Å¿¡°Ô µ·À» µ¹·ÁÁÖ¾ú½À´Ï´Ù.\n"); + print(fd, "수리ì �주ì�¸ì�´ 당신ì—�게 ë�ˆì�„ ë�Œë ¤ì£¼ì—ˆìŠµë‹ˆë‹¤.\n"); ply_ptr->gold += cost; - /* } µ· µ¹·ÁÁÜ */ + /* } ë�ˆ ë�Œë ¤ì¤Œ */ del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); return(0); @@ -277,7 +276,7 @@ cmd *cmnd; if((F_ISSET(obj_ptr, OENCHA) || obj_ptr->adjustment) && mrand(1,50) > ply_ptr->piety) { - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ \"¼ö¸®°¡ ´ÙµÇ¾ú³×.\"¶ó°í ¸»ÇÕ´Ï´Ù.\n"); + print(fd, "수리ì � 주ì�¸ì�´ \"수리가 다ë�˜ì—ˆë„¤.\"ë�¼ê³  ë§�합니다.\n"); if(obj_ptr->type == ARMOR && obj_ptr->wearflag == BODY) obj_ptr->armor = MAX(obj_ptr->armor - obj_ptr->adjustment*2, 0); @@ -295,7 +294,7 @@ cmd *cmnd; obj_ptr->shotscur = (obj_ptr->shotsmax * mrand(5,9)) / 10; - print(fd, "¼ö¸®Á¡ ÁÖÀÎÀÌ ´ç½Å¿¡°Ô %i%j µÇµ¹·Á ÁÝ´Ï´Ù.\n±×°ÍÀº °ÅÀÇ »õ°Íó·³ º¸ÀÔ´Ï´Ù.\n", + print(fd, "수리ì � 주ì�¸ì�´ 당신ì—�게 %i%j ë�˜ë�Œë ¤ ì¤�니다.\n그것ì�€ ê±°ì�˜ 새것처럼 보입니다.\n", obj_ptr,"3"); return(0); @@ -318,15 +317,15 @@ creature *ply_ptr; fd = ply_ptr->fd; daytime = (int)(Time % 24L); - print(fd, "ÇöÀç ½Ã°£: %s %d½Ã.\n", - daytime > 11 ? "¿ÀÈÄ":"¿ÀÀü", + print(fd, "현재 시간: %s %d시.\n", + daytime > 11 ? "오후":"오전", daytime%12 == 0 ? 12 : daytime%12); t = time(0); str = ctime(&t); str[strlen(str)-1] = 0; - print(fd, "½ÇÁ¦ ½Ã°£: %s (PST).\n", str); + print(fd, "실제 시간: %s (PST).\n", str); return(0); @@ -352,17 +351,17 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "´©±¸¸¦ ±³¶õ½ÃŰ·Á±¸¿ä?\n"); + print(fd, "누구를 êµ�란시키려구요?\n"); return(0); } /* if(F_ISSET(ply_ptr, SLEEP)) { - print(fd, "\nÈÞ½ÄÀ» Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd, "\n휴ì‹�ì�„ 중단합니다.\n"); F_CLR(ply_ptr, SLEEP); } */ if(ply_ptr->class != FIGHTER && ply_ptr->class != BARBARIAN && ply_ptr->class < INVINCIBLE) { - print(fd, "±Ç¹ý°¡¿Í °Ë»ç¸¸ ¾µ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "권법가와 검사만 쓸수 있는 기술입니다.\n"); return(0); } @@ -375,39 +374,39 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[1]) < 2) { - print(fd, "±×·±°ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런것ì�€ 여기 없습니다.\n"); return(0); } } if(crt_ptr->type == PLAYER) { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd, "ÀÌ ¹æ¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ì�´ ë°©ì—�서는 싸울 수 없습니다.\n"); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } if(is_charm_crt(ply_ptr->name, crt_ptr) && F_ISSET(crt_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %s¸¦ ³Ê¹« ÁÁ¾ÆÇؼ­ ±×·¸°Ô ÇÒ ¼ö ¾ø½À´Ï´Ù.\n", crt_ptr->name); + print(fd, "당신ì�€ %s를 너무 좋아해서 그렇게 í•  수 없습니다.\n", crt_ptr->name); return(0); } @@ -424,8 +423,8 @@ cmd *cmnd; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 서서히 드러납니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러납니다.", ply_ptr); } @@ -439,8 +438,8 @@ cmd *cmnd; if(crt_ptr->type != PLAYER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 해칠수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } add_enm_crt(ply_ptr->name, crt_ptr); @@ -456,19 +455,19 @@ cmd *cmnd; if(crt_ptr->type == MONSTER) F_SET(crt_ptr, MBEFUD); - print(fd, "´ç½ÅÀº À̸®Àú¸® ¿Ô´Ù°¬´Ù Çϸ鼭 %M%j ±³¶õ½Ãŵ´Ï´Ù.\n", crt_ptr,"3"); + print(fd, "당신ì�€ ì�´ë¦¬ì €ë¦¬ 왔다갔다 하면서 %M%j êµ�란시킵니다.\n", crt_ptr,"3"); - print(crt_ptr->fd, "%MÀÌ ´ç½ÅÁÖÀ§¸¦ ¾îÁö·´°Ô µ¹¾Æ´Ù´Õ´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "%Mì�´ 당신주위를 어지럽게 ë�Œì•„다닙니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M ÁÖÀ§¸¦ ¹ð±Û¹ð±Û µ½´Ï´Ù.", ply_ptr, crt_ptr); + "\n%Mì�´ %M 주위를 뱅글뱅글 ë�•니다.", ply_ptr, crt_ptr); ply_ptr->lasttime[LT_ATTCK].interval = 2; } else { - print(fd, "´ç½ÅÀº ÀûÀ» ±³¶õ½Ã۴µ¥ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀ» ±³¶õ½ÃŰ·Á°í ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "당신ì�€ ì �ì�„ êµ�란시키는ë�° 실패하였습니다.\n"); + print(crt_ptr->fd, "\n%Mì�´ 당신ì�„ êµ�란시키려고 합니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M%j ±³¶õ½ÃŰ·Á°í ÇÕ´Ï´Ù.", ply_ptr, crt_ptr,"3"); + "\n%Mì�´ %M%j êµ�란시키려고 합니다.", ply_ptr, crt_ptr,"3"); ply_ptr->lasttime[LT_ATTCK].interval = 3; } @@ -499,17 +498,17 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2 || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´©±¼ ¶§¸³´Ï±î?\n"); + print(fd, "누굴 때립니까?\n"); return(0); } /* if(F_ISSET(ply_ptr, SLEEP)){ - print(fd, "\nÈÞ½ÄÀ» Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd, "\n휴ì‹�ì�„ 중단합니다.\n"); F_CLR(ply_ptr, SLEEP); } */ if(ply_ptr->class != FIGHTER && ply_ptr->class != BARBARIAN && ply_ptr->class < INVINCIBLE) { - print(fd, "±Ç¹ý°¡¿Í °Ë»ç¸¸ ¾µ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "권법가와 검사만 쓸수 있는 기술입니다.\n"); return(0); } @@ -522,45 +521,45 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[1])<2) { - print(fd, "±×·± °ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 것ì�€ 여기 없습니다.\n"); return(0); } } if(crt_ptr->type != PLAYER && is_enm_crt(ply_ptr->name, crt_ptr)) { - print(fd, "´ç½ÅÀº %s¿Í ½Î¿ì´Â ÁßÀÔ´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s와 싸우는 중입니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } else if(crt_ptr->type == PLAYER) { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd, "ÀÌ ¹æ¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ì�´ ë°©ì—�서는 싸울 수 없습니다.\n"); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV) ) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } if(is_charm_crt(ply_ptr->name, crt_ptr)&& F_ISSET(crt_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %S%j ³Ê¹« ÁÁ¾ÆÇØ ±×·¸°Ô ÇÒ ¼ö ¾ø½À´Ï´Ù.\n", crt_ptr->name,"3"); + print(fd, "당신ì�€ %S%j 너무 좋아해 그렇게 í•  수 없습니다.\n", crt_ptr->name,"3"); return(0); } @@ -580,26 +579,26 @@ cmd *cmnd; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 서서히 드러납니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러납니다.", ply_ptr); } if(crt_ptr->type != PLAYER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥ ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 í•´ì¹  수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(F_ISSET(crt_ptr, MMGONL)) { - print(fd, "´ç½ÅÀÇ ¹«±â°¡ %M¿¡°Ô ¾Æ¹«¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.\n", + print(fd, "당신ì�˜ 무기가 %Mì—�게 아무소용ì�´ 없는듯 합니다.\n", crt_ptr); return(0); } if(F_ISSET(crt_ptr, MENONL)) { if(!ply_ptr->ready[WIELD-1] || ply_ptr->ready[WIELD-1]->adjustment < 1) { - print(fd, "´ç½ÅÀÇ ¹«±â°¡ %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.\n", + print(fd, "당신ì�˜ 무기가 %Mì—�게 아무 소용ì�´ 없는듯 합니다.\n", crt_ptr); return(0); } @@ -619,7 +618,7 @@ cmd *cmnd; if(ply_ptr->ready[WIELD-1]) { if(ply_ptr->ready[WIELD-1]->shotscur < 1) { - print(fd, "\n%S%j ºÎ¼­Á® ¹ö·È½À´Ï´Ù.\n", + print(fd, "\n%S%j 부서져 버렸습니다.\n", ply_ptr->ready[WIELD-1]->name,"1"); add_obj_crt(ply_ptr->ready[WIELD-1], ply_ptr); ply_ptr->ready[WIELD-1] = 0; @@ -664,19 +663,19 @@ cmd *cmnd; crt_ptr->hpcur -= n; - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ¸Í°øÀ» °¡Çß½À´Ï´Ù.\n", n); + print(fd, "당신ì�€ %dì �ì�˜ 맹공ì�„ 가했습니다.\n", n); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %m¿¡°Ô ¸Í°øÀ» °¡ÇÕ´Ï´Ù.", ply_ptr, crt_ptr); - print(crt_ptr->fd, "%MÀÌ %dÁ¡ÀÇ ¸Í°øÀ» °¡Çß½À´Ï´Ù.\n", + "\n%Mì�´ %mì—�게 맹공ì�„ 가합니다.", ply_ptr, crt_ptr); + print(crt_ptr->fd, "%Mì�´ %dì �ì�˜ 맹공ì�„ 가했습니다.\n", ply_ptr, n); ply_ptr->lasttime[LT_ATTCK].interval = 1; if(crt_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.\n", crt_ptr,"3"); + print(fd, "당신ì�€ %M%j 죽였습니다.\n", crt_ptr,"3"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); @@ -685,19 +684,19 @@ cmd *cmnd; check_for_flee(ply_ptr, crt_ptr); } else { - print(fd, "´ç½ÅÀÇ ¸Í°øÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ¸Í°øÀ» °¡ÇÏ·Á ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "당신ì�˜ 맹공ì�´ 실패했습니다.\n"); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 맹공ì�„ 가하려 합니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¸Í°øÀ» °¡ÇÏ·Á ÇÕ´Ï´Ù.", ply_ptr, + "\n%Mì�´ %Mì—�게 맹공ì�„ 가하려 합니다.", ply_ptr, crt_ptr); } } else { - print(fd, "´ç½ÅÀÇ ¸Í°øÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); - print(crt_ptr->fd, "%MÀÌ ´ç½Å¿¡°Ô ¸Í°øÀ» °¡ÇÏ·Á ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "당신ì�˜ 맹공ì�´ 실패했습니다.\n"); + print(crt_ptr->fd, "%Mì�´ 당신ì—�게 맹공ì�„ 가하려 합니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¸Í°øÀ» °¡ÇÏ·Á ÇÕ´Ï´Ù.", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì—�게 맹공ì�„ 가하려 합니다.", ply_ptr, crt_ptr); } return(0); @@ -746,7 +745,7 @@ cmd *cmnd; free(dum_ptr); - print(ply_ptr->fd, "ÀúÀåÇÏ¿´½À´Ï´Ù.\n"); + print(ply_ptr->fd, "저장하였습니다.\n"); return(0); @@ -810,7 +809,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "´©±¸¿¡°Ô À̾߱âÇϽ÷Á±¸¿ä?\n"); + print(fd, "누구ì—�게 ì�´ì•¼ê¸°í•˜ì‹œë ¤êµ¬ìš”?\n"); return(0); } @@ -818,26 +817,26 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr) { - print(fd, "±×·± °ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 것ì�€ 여기 없습니다.\n"); return(0); } F_CLR(ply_ptr, PHIDDN); if(cmnd->num == 2 || !F_ISSET(crt_ptr, MTALKS)) { - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %M%j À̾߱⸦ ÇÕ´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %M%j ì�´ì•¼ê¸°ë¥¼ 합니다.", ply_ptr, crt_ptr,"2"); if(crt_ptr->talk[0]) { broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j %M¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", crt_ptr, "1", ply_ptr, + "\n%M%j %Mì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr, "1", ply_ptr, crt_ptr->talk); - print(fd, "\n%M%j ´ç½Å¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", crt_ptr,"1", + print(fd, "\n%M%j 당신ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr,"1", crt_ptr->talk); } else broadcast_rom(-1, ply_ptr->rom_num, - "\n%M%j ´ÜÁö ´ç½ÅÀ» ¸ÛÇÏ´Ï ¹Ù¶óº¾´Ï´Ù.", crt_ptr,"0"); + "\n%M%j 단지 당신ì�„ ë©�하니 ë°”ë�¼ë´…니다.", crt_ptr,"0"); if(F_ISSET(crt_ptr, MTLKAG)) add_enm_crt(ply_ptr->name, crt_ptr); } @@ -847,23 +846,23 @@ cmd *cmnd; if(!load_crt_tlk(crt_ptr)) return(PROMPT); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %M¿¡°Ô \"%s\"¿¡ °üÇØ ¹°¾îº¾´Ï´Ù.", + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %Mì—�게 \"%s\"ì—� 관해 물어봅니다.", ply_ptr, crt_ptr, cmnd->str[2]); tp = crt_ptr->first_tlk; while(tp) { if(!strcmp(cmnd->str[2], tp->key)) { broadcast_rom(fd, ply_ptr->rom_num, - "\n%M%j %M¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.", crt_ptr,"1", + "\n%M%j %Mì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.", crt_ptr,"1", ply_ptr, tp->response); - print(fd, "\n%M%j ´ç½Å¿¡°Ô \"%s\"¶ó°í À̾߱âÇÕ´Ï´Ù.\n", + print(fd, "\n%M%j 당신ì—�게 \"%s\"ë�¼ê³  ì�´ì•¼ê¸°í•©ë‹ˆë‹¤.\n", crt_ptr, "1",tp->response); talk_action(ply_ptr, crt_ptr, tp); return(0); } tp = tp->next_tag; } - broadcast_rom(-1, ply_ptr->rom_num, "\n%M%j ¾î±ú¸¦ À¸¾³ °Å¸³´Ï´Ù.", crt_ptr,"1"); + broadcast_rom(-1, ply_ptr->rom_num, "\n%M%j 어깨를 으쓱 거립니다.", crt_ptr,"1"); if(F_ISSET(crt_ptr, MTLKAG)) add_enm_crt(ply_ptr->name, crt_ptr); } @@ -904,8 +903,8 @@ switch(tt->type){ case 1: /*attack */ add_enm_crt(ply_ptr->name, crt_ptr); broadcast_rom(ply_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j °ø°ÝÇÕ´Ï´Ù.\n",crt_ptr,"1",ply_ptr,"3"); - print(ply_ptr->fd,"\n%M%j ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù.\n",crt_ptr,"1"); + "\n%M%j %M%j 공격합니다.\n",crt_ptr,"1",ply_ptr,"3"); + print(ply_ptr->fd,"\n%M%j 당신ì�„ 공격합니다.\n",crt_ptr,"1"); break; case 2: /*action command */ @@ -929,12 +928,12 @@ switch(tt->type){ case 3: /*cast */ if(tt->action){ n = crt_ptr->mpcur; - strcpy(cm.str[0],"ÁÖ¹®"); + strcpy(cm.str[0],"주문"); strncpy(cm.str[1],tt->action,25); strcpy(cm.str[2],ply_ptr->name); cm.val[0] = cm.val[1] = cm.val[2] = 1; cm.num = 3; - sprintf(cm.fullstr,"%s %s ÁÖ¹®",tt->action,ply_ptr->name); + sprintf(cm.fullstr,"%s %s 주문",tt->action,ply_ptr->name); i = 0; do { @@ -955,7 +954,7 @@ switch(tt->type){ &ospell[i]); } else if(is_enm_crt(ply_ptr->name,crt_ptr)){ - print(ply_ptr->fd,"\n%M%j ´ç½Å¿¡°Ô ¾î¶² ÁÖ¹®À» °Å´Â°ÍÀ» °ÅºÎÇß½À´Ï´Ù.\n", + print(ply_ptr->fd,"\n%M%j 당신ì—�게 ì–´ë–¤ 주문ì�„ 거는것ì�„ 거부했습니다.\n", crt_ptr,"1"); return; } @@ -964,7 +963,7 @@ switch(tt->type){ if (spllist[i].splno != SRESTO && crt_ptr->mpcur == n) print(ply_ptr->fd, - "\n%M%j Áö±ÝÀº ´ç½Å¿¡°Ô ÁÖ¹®À» °É¾îÁÙ ¼ö ¾ø´Ù°í »ç°úÇÕ´Ï´Ù.\n", + "\n%M%j 지금ì�€ 당신ì—�게 주문ì�„ 걸어줄 수 없다고 사과합니다.\n", crt_ptr,"1"); } break; @@ -982,31 +981,31 @@ switch(tt->type){ if(weight_ply(ply_ptr) + weight_obj(obj_ptr) > max_weight(ply_ptr) || cnt>150) { - print(ply_ptr->fd, "´ç½ÅÀº ´õÀÌ»ó °¡Áú ¼ö ¾ø½À´Ï´Ù.\n"); + print(ply_ptr->fd, "당신ì�€ ë�”ì�´ìƒ� 가질 수 없습니다.\n"); break; } if(obj_ptr->questnum && Q_ISSET(ply_ptr, obj_ptr->questnum-1)) { - print(ply_ptr->fd, "´ç½ÅÀº ±×°ÍÀ» °¡Áú ¼ö ¾ø½À´Ï´Ù. %s\n", - "´ç½ÅÀº ÀÌ¹Ì ÀÌ ÀÓ¹«¸¦ ´Þ¼ºÇß½À´Ï´Ù."); + print(ply_ptr->fd, "당신ì�€ 그것ì�„ 가질 수 없습니다. %s\n", + "당신ì�€ ì�´ë¯¸ ì�´ 임무를 달성했습니다."); break; } if(obj_ptr->questnum) { - print(ply_ptr->fd, "ÀÓ¹« ´Þ¼º! ±×°ÍÀ» ¹ö¸®Áö ¸¶½Ê½Ã¿ä.\n"); + print(ply_ptr->fd, "임무 달성! 그것ì�„ 버리지 마십시요.\n"); Q_SET(ply_ptr, obj_ptr->questnum-1); ply_ptr->experience += quest_exp[obj_ptr->questnum-1]; - print(ply_ptr->fd, "´ç½ÅÀº °æÇèÄ¡ %ld¸¦ ¾ò¾ú½À´Ï´Ù.\n", + print(ply_ptr->fd, "당신ì�€ 경험치 %ld를 얻었습니다.\n", quest_exp[obj_ptr->questnum-1]); add_prof(ply_ptr,quest_exp[obj_ptr->questnum-1]); } add_obj_crt(obj_ptr, ply_ptr); - print(ply_ptr->fd,"\n%M%j ´ç½Å¿¡°Ô %i%j ÁÝ´Ï´Ù\n",crt_ptr,"1", obj_ptr,"3"); + print(ply_ptr->fd,"\n%M%j 당신ì—�게 %i%j ì¤�니다\n",crt_ptr,"1", obj_ptr,"3"); broadcast_rom(ply_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M¿¡°Ô %i%j ÁÝ´Ï´Ù.\n", crt_ptr,"1",ply_ptr,obj_ptr,"3"); + "\n%M%j %Mì—�게 %i%j ì¤�니다.\n", crt_ptr,"1",ply_ptr,obj_ptr,"3"); } else - print(ply_ptr->fd,"%M´Â ´ç½Å¿¡°Ô ÁÙ ¹°°ÇÀ» ¾Æ¹«°Íµµ °¡Áö°í ÀÖÁö ¾Ê½À´Ï´Ù.\n",crt_ptr); + print(ply_ptr->fd,"%M는 당신ì—�게 줄 물건ì�„ 아무것ë�„ 가지고 있지 않습니다.\n",crt_ptr); } break; default: @@ -1017,7 +1016,7 @@ return; /*************************************************************************/ /* chg_name */ /*************************************************************************/ -/* ¹°°ÇÀÇ À̸§À» ¹Ù²Ù´Â ·çƾÀÌ´Ù */ +/* 물건ì�˜ ì�´ë¦„ì�„ 바꾸는 루틴ì�´ë‹¤ */ int chg_name(ply_ptr, cmnd) creature *ply_ptr; @@ -1035,8 +1034,8 @@ cmd *cmnd; i =0; if (cmnd->num < 3){ - print(fd,"\n¾î¶² ¹°°ÇÀ» ¹«½¼ À̸§À¸·Î ¹Ù²Ù°í ½ÍÀ¸¼¼¿ä?"); - print(fd," <¹°°Ç> [#] <À̸§> ¸í¸í\n"); + print(fd,"\nì–´ë–¤ 물건ì�„ 무슨 ì�´ë¦„으로 바꾸고 싶으세요?"); + print(fd," <물건> [#] <ì�´ë¦„> 명명\n"); return(PROMPT); } @@ -1058,21 +1057,21 @@ cmd *cmnd; if (!obj_ptr){ - print(fd,"±×·± ¹°°ÇÀº ¾ø¾î¿ä."); + print(fd,"그런 물건ì�€ 없어요."); paste_command(cmnd->fullstr,len); return(PROMPT); } /* - if(F_ISSET(obj_ptr, ONEWEV) && !strcmp(obj_ptr->key[2], "À̺¥Æ®")) { + if(F_ISSET(obj_ptr, ONEWEV) && !strcmp(obj_ptr->key[2], "ì�´ë²¤íЏ")) { strcpy(obj_ptr->key[2], ply_ptr->name); - print(fd, "À̸§À» ±â·ÏÇÏ¿´½À´Ï´Ù."); + print(fd, "ì�´ë¦„ì�„ 기ë¡�하였습니다."); paste_command(cmnd->fullstr, len); return(PROMPT); } */ if (!(F_ISSET(obj_ptr, OCNAME))){ - print(fd,"¸í¸í ÇÒ¼ö ÀÖ´Â ¹°°ÇÀÌ ¾Æ´Õ´Ï´Ù."); + print(fd,"명명 할수 있는 물건ì�´ 아닙니다."); paste_command(cmnd->fullstr,len); return(PROMPT); } @@ -1094,11 +1093,11 @@ cmd *cmnd; strncpy(obj_ptr->name,&cmnd->fullstr[i],80); obj_ptr->name[79]=0; F_CLR(obj_ptr, OCNAME); - print(fd, "\nÀ̸§ "); + print(fd, "\nì�´ë¦„ "); - print(fd,"¸í¸í µÇ¾ú½À´Ï´Ù.\n"); + print(fd,"명명 ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); F_SET(obj_ptr, ONAMED); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÀÚ½ÅÀÇ ¹°°Ç¿¡ À̸§À» ¸í¸íÇÕ´Ï´Ù.",ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ìž�ì‹ ì�˜ 물건ì—� ì�´ë¦„ì�„ 명명합니다.",ply_ptr); paste_command(cmnd->fullstr,len); return PROMPT; } @@ -1113,34 +1112,34 @@ cmd *cmnd; fd=ply_ptr->fd; if (cmnd->num < 2){ - print(fd,"\n¹«¾ù¿¡ À̰÷ÀÇ À§Ä¡¸¦ ±â¾ï½ÃŰ½Ç²«°¡¿ä?"); - print(fd," <¹°°Ç> [#] <À̸§> ±â¾ï\n"); + print(fd,"\n무엇ì—� ì�´ê³³ì�˜ 위치를 기억시키실껀가요?"); + print(fd," <물건> [#] <ì�´ë¦„> 기억\n"); return(PROMPT); } obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if (!obj_ptr){ - print(fd,"±×·± ¹°°ÇÀº ¾ø¾î¿ä."); + print(fd,"그런 물건ì�€ 없어요."); return(PROMPT); } if (ply_ptr->rom_num == 1001){ - print(fd,"±¤Àå¿¡¼± ±â¾ïÀ» ½Ãų ¼ö ¾ø½À´Ï´Ù."); + print(fd,"광장ì—�ì„  기억ì�„ 시킬 수 없습니다."); return(PROMPT); } if (obj_ptr->value != 1001){ - print(fd,"±×°ÍÀº ÀÌ¹Ì ¾î¶² Àå¼Ò¸¦ ±â¾ïÇϰí ÀÖ½À´Ï´Ù."); + print(fd,"그것ì�€ ì�´ë¯¸ ì–´ë–¤ 장소를 기억하고 있습니다."); return(PROMPT); } - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÃÊÀÎÀÇ µ¹¿¡ À̰÷ÀÇ Àå¼Ò¸¦ ±â¾ï½Ãŵ´Ï´Ù.",ply_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÃÊÀÎÀÇ µ¹ÀÌ °©Àڱ⠹àÀº ºûÀ» ³»´Ù ´Ù½Ã Åõ¸íÇØ Áý´Ï´Ù.",ply_ptr); - print(fd, "\n´ç½ÅÀº ÃÊÀÎÀÇ µ¹¿¡ À̰÷ÀÇ Àå¼Ò¸¦ ±â¾ï½Ãŵ´Ï´Ù."); - print(fd, "\nÃÊÀÎÀÇ µ¹ÀÌ °©Àڱ⠹àÀº ºûÀ» ³»´Ù ´Ù½Ã Åõ¸íÇØ Áý´Ï´Ù."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ì´ˆì�¸ì�˜ ë�Œì—� ì�´ê³³ì�˜ 장소를 기억시킵니다.",ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì´ˆì�¸ì�˜ ë�Œì�´ ê°‘ìž�기 ë°�ì�€ ë¹›ì�„ 내다 다시 투명해 집니다.",ply_ptr); + print(fd, "\n당신ì�€ ì´ˆì�¸ì�˜ ë�Œì—� ì�´ê³³ì�˜ 장소를 기억시킵니다."); + print(fd, "\nì´ˆì�¸ì�˜ ë�Œì�´ ê°‘ìž�기 ë°�ì�€ ë¹›ì�„ 내다 다시 투명해 집니다."); - sprintf(obj_ptr->description, "%sÀÇ ±¤°æÀÌ ¾î¸¥°Å¸³´Ï´Ù.\0", ply_ptr->parent_rom->name); + sprintf(obj_ptr->description, "%sì�˜ ê´‘ê²½ì�´ 어른거립니다.\0", ply_ptr->parent_rom->name); sprintf(obj_ptr->key[1], "%s\0", ply_ptr->parent_rom->name); obj_ptr->value=ply_ptr->parent_rom->rom_num; @@ -1150,10 +1149,10 @@ cmd *cmnd; /**********************************************************************/ -/* kick ¹ßÂ÷±â */ +/* kick 발차기 */ /**********************************************************************/ -/* ±Ç¹ý°¡ÀÇ ¹ßÂ÷±â ±â¼úÀÌ´Ù */ +/* 권법가ì�˜ 발차기 기술ì�´ë‹¤ */ int kick(ply_ptr, cmnd) creature *ply_ptr; @@ -1168,17 +1167,17 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2 || F_ISSET(ply_ptr, PBLIND)) { - print(fd, "´©±¼ °ø°ÝÇմϱî?\n"); + print(fd, "누굴 공격합니까?\n"); return(0); } if(ply_ptr->class != BARBARIAN && ply_ptr->class < INVINCIBLE) { - print(fd, "±Ç¹ý°¡¸¸ ¾µ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "권법가만 쓸수 있는 기술입니다.\n"); return(0); } /* if(F_ISSET(ply_ptr, SLEEP)) { - print(fd, "ÈÞ½ÄÀ» Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd, "휴ì‹�ì�„ 중단합니다.\n"); F_CLR(ply_ptr, SLEEP); } */ @@ -1191,7 +1190,7 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!crt_ptr || crt_ptr == ply_ptr) { - print(fd, "±×·± °ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 것ì�€ 여기 없습니다.\n"); return(0); } @@ -1199,32 +1198,32 @@ cmd *cmnd; if(crt_ptr->type == PLAYER) { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd, "ÀÌ ¹æ¿¡¼­´Â ½Î¿ï ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ì�´ ë°©ì—�서는 싸울 수 없습니다.\n"); return(0); } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ç½ÅÀº ¼±Çؼ­ ´Ù¸¥ »ç¿ëÀÚ¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 선해서 다른 사용ìž�를 공격할 수 없습니다.\n"); return (0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "±× »ç¿ëÀÚ´Â ¼±Çؼ­ º¸È£¹Þ°í ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 선해서 보호받고 있습니다.\n"); return (0); } } if(is_charm_crt(ply_ptr->name, crt_ptr)&& F_ISSET(crt_ptr, PCHARM)) { - print(fd, "´ç½ÅÀº %S%j ³Ê¹« ÁÁ¾ÆÇØ ±×·¸°Ô ÇÒ ¼ö ¾ø½À´Ï´Ù.\n", crt_ptr->name,"3"); + print(fd, "당신ì�€ %S%j 너무 좋아해 그렇게 í•  수 없습니다.\n", crt_ptr->name,"3"); return(0); } @@ -1244,26 +1243,26 @@ cmd *cmnd; F_CLR(ply_ptr, PHIDDN); if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ¼­¼­È÷ µå·¯³³´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 서서히 드러납니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 서서히 드러납니다.", ply_ptr); } if(crt_ptr->type != PLAYER) { if(F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¸¦ ÇØÄ¥ ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %s를 í•´ì¹  수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(F_ISSET(crt_ptr, MMGONL)) { - print(fd, "´ç½ÅÀÇ °ø°ÝÀÌ %M¿¡°Ô ¾Æ¹«¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.\n", + print(fd, "당신ì�˜ 공격ì�´ %Mì—�게 아무소용ì�´ 없는듯 합니다.\n", crt_ptr); return(0); } if(F_ISSET(crt_ptr, MENONL) && ply_ptr->class < CARETAKER) { if(!ply_ptr->ready[WIELD-1] || ply_ptr->ready[WIELD-1]->adjustment < 1) { - print(fd, "´ç½ÅÀÇ °ø°ÝÀÌ %M¿¡°Ô ¾Æ¹« ¼Ò¿ëÀÌ ¾ø´Âµí ÇÕ´Ï´Ù.\n", + print(fd, "당신ì�˜ 공격ì�´ %Mì—�게 아무 소용ì�´ 없는듯 합니다.\n", crt_ptr); return(0); } @@ -1293,10 +1292,10 @@ cmd *cmnd; crt_ptr->hpcur -= n; - print(fd, "´ç½ÅÀº ¹ßÂ÷±â·Î %dÁ¡ÀÇ °ø°ÝÀ» °¡Çß½À´Ï´Ù.\n", n); + print(fd, "당신ì�€ 발차기로 %dì �ì�˜ 공격ì�„ 가했습니다.\n", n); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹ßÂ÷±â·Î °ø°ÝÀ» °¡ÇÕ´Ï´Ù.", ply_ptr, crt_ptr); - print(crt_ptr->fd, "%MÀÌ ¹ßÂ÷±â·Î %dÁ¡ÀÇ °ø°ÝÀ» °¡Çß½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 발차기로 공격ì�„ 가합니다.", ply_ptr, crt_ptr); + print(crt_ptr->fd, "%Mì�´ 발차기로 %dì �ì�˜ 공격ì�„ 가했습니다.\n", ply_ptr, n); display_status(fd, crt_ptr); @@ -1305,10 +1304,10 @@ cmd *cmnd; ply_ptr->lasttime[LT_KICK].interval = 3; if(crt_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº %M%j Á׿´½À´Ï´Ù.\n", crt_ptr,"3"); + print(fd, "당신ì�€ %M%j 죽였습니다.\n", crt_ptr,"3"); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%M%j %M%j Á׿´½À´Ï´Ù.", ply_ptr,"1", + "\n%M%j %M%j 죽였습니다.", ply_ptr,"1", crt_ptr,"3"); die(crt_ptr, ply_ptr); @@ -1317,19 +1316,19 @@ cmd *cmnd; check_for_flee(ply_ptr, crt_ptr); } else { - print(fd, "´ç½ÅÀÇ ¹ßÂ÷±â°¡ ½ÇÆÐÇß½À´Ï´Ù.\n"); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ¹ßÂ÷±â¸¦ ÇÏ·Á°í ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "당신ì�˜ 발차기가 실패했습니다.\n"); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 발차기를 하려고 합니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹ßÂ÷±â¸¦ ÇÏ·Á°í ÇÕ´Ï´Ù.", ply_ptr, + "\n%Mì�´ %Mì—�게 발차기를 하려고 합니다.", ply_ptr, crt_ptr); } } else { - print(fd, "´ç½ÅÀÇ ¹ßÂ÷±â°¡ ½ÇÆÐÇß½À´Ï´Ù.\n"); - print(crt_ptr->fd, "%MÀÌ ´ç½Å¿¡°Ô ¹ßÂ÷±â¸¦ ÇÏ·Á°í ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "당신ì�˜ 발차기가 실패했습니다.\n"); + print(crt_ptr->fd, "%Mì�´ 당신ì—�게 발차기를 하려고 합니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, crt_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹ßÂ÷±â¸¦ ÇÏ·Á°í ÇÕ´Ï´Ù.", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì—�게 발차기를 하려고 합니다.", ply_ptr, crt_ptr); } return(0); @@ -1351,13 +1350,13 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(F_ISSET(ply_ptr, PBLIND)) { - print(fd, "¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù!\n"); + print(fd, "아무것ë�„ ë³´ì�´ì§€ 않습니다!\n"); return(0); } if(crt_ptr==NULL) { if(cmnd->num < 2) { - print(fd, "´©±¸ÀÇ »óŸ¦ º¸½Ã°Ú½À´Ï±î?\n"); + print(fd, "누구ì�˜ ìƒ�태를 보시겠습니까?\n"); return(0); } @@ -1366,7 +1365,7 @@ cmd *cmnd; } if(crt_ptr==NULL) { - print(fd, "±×·±°ÍÀº ¿©±â¿¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "그런것ì�€ 여기ì—� 없습니다.\n"); return(0); } diff --git a/src/command9.c b/src/command9.c index cdb53bba..901e917a 100644 --- a/src/command9.c +++ b/src/command9.c @@ -26,19 +26,17 @@ cmd *cmnd; room *rom_ptr; long amount; int fd; - int len; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "´©±¸¿¡°Ô ³ú¹°À» ÁÖ·Á±¸¿ä?\n"); + print(fd, "누구ì—�게 뇌물ì�„ 주려구요?\n"); return(0); } - len=strlen(cmnd->str[2]); - if(cmnd->num < 3 || len<3 || strcmp(&cmnd->str[2][len-2], "³É")) { - print(fd, "»ç¿ë¹ý: <¸÷À̸§> <¾×¼ö>³É ³ú¹°\n"); + if(cmnd->num < 3 || !utf8_ends_with((unsigned char *)cmnd->str[2], (unsigned char *)"냥")) { + print(fd, "사용법: <몹ì�´ë¦„> <액수>냥 뇌물\n"); return(0); } @@ -46,27 +44,27 @@ cmd *cmnd; cmnd->val[1]); if(!crt_ptr) { - print(fd, "±×·± °ÍÀº ¿©±â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 것ì�€ 여기 없습니다.\n"); return(0); } amount = atol(cmnd->str[2]); if(amount < 1 || amount > ply_ptr->gold) { - print(fd, "µ·ÀÇ ´ÜÀ§´Â À½¼ö°¡ µÉ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "ë�ˆì�˜ 단위는 ì�Œìˆ˜ê°€ ë�  수 없습니다.\n"); return(0); } if(amount < ((crt_ptr->level+3)/4)*895L || F_ISSET(crt_ptr, MPERMT)) { - print(fd, "%M°¡ ³ú¹°À» ½½Â½ ¹Þ¾Ò½À´Ï´Ù¸¸ ²Þ½µµ ÇÏÁö ¾Ê½À´Ï´Ù.\n", crt_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ %m¿¡°Ô ³ú¹°À» ÁÝ´Ï´Ù.", + print(fd, "%Mê°€ 뇌물ì�„ 슬ì©� 받았습니다만 꿈ì©�ë�„ 하지 않습니다.\n", crt_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ %mì—�게 뇌물ì�„ ì¤�니다.", ply_ptr, crt_ptr); ply_ptr->gold -= amount; crt_ptr->gold += amount; savegame_nomsg(ply_ptr); } else { - print(fd, "%MÀÌ ³ú¹°À» ¹ÞÀÚ ¹Ì¼Ò¸¦ ÁöÀ¸¸ç ¾îµò°¡·Î °©´Ï´Ù.\n", crt_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ %m¿¡°Ô ³ú¹°À» ÁÝ´Ï´Ù.", + print(fd, "%Mì�´ 뇌물ì�„ ë°›ìž� 미소를 지으며 어딘가로 갑니다.\n", crt_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ %mì—�게 뇌물ì�„ ì¤�니다.", ply_ptr, crt_ptr); ply_ptr->gold -= amount; del_crt_rom(crt_ptr, rom_ptr); @@ -96,12 +94,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != RANGER && ply_ptr->class < INVINCIBLE) { - print(fd, "Æ÷Á¹¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "í�¬ì¡¸ë§Œ 사용할 수 있는 기술입니다.\n"); return(0); } if(F_ISSET(ply_ptr, PHASTE)) { - print(fd, "´ç½ÅÀº Áö±Ý Ȱº¸¹ýÀ» »ç¿ëÁßÀÔ´Ï´Ù.\n"); + print(fd, "당신ì�€ 지금 활보법ì�„ 사용중입니다.\n"); return(0); } @@ -109,7 +107,7 @@ cmd *cmnd; t = time(0); if(t-i < 600L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (600L-t+i)/60L, (600L-t+i)%60L); return(0); } @@ -117,8 +115,8 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->dexterity]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀÇ µ¿ÀÛÀÌ Á»´õ ¹ÎÃ¸ÇØÁø°Í °°½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ È°º¸¹ýÀ» »ç¿ëÇÏ¿´½À´Ï´Ù.", ply_ptr); + print(fd, "당신ì�˜ ë�™ìž‘ì�´ 좀ë�” 민첩해진것 같습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 활보법ì�„ 사용하였습니다.", ply_ptr); F_SET(ply_ptr, PHASTE); ply_ptr->dexterity += 15; ply_ptr->lasttime[LT_HASTE].ltime = t; @@ -126,8 +124,8 @@ cmd *cmnd; 60L * (((ply_ptr->level+3)/4)/5); } else { - print(fd, "Ȱº¸¹ýÀÌ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ È°º¸¹ýÀ» ½áº¾´Ï´Ù.", + print(fd, "활보법ì�´ 실패하였습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 활보법ì�„ ì�¨ë´…니다.", ply_ptr); ply_ptr->lasttime[LT_HASTE].ltime = t - 590L; } @@ -155,12 +153,12 @@ cmd *cmnd; if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE) { - print(fd, "ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ÀÌ ½Å²² ±â¿øÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "불제ìž�와 무사만ì�´ 신께 기ì›�í•  수 있습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PPRAYD)) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì ½Å¿¡°Ô ºô¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì�´ë¯¸ ì‹ ì—�게 빌었습니다.\n"); return(0); } @@ -168,7 +166,7 @@ cmd *cmnd; t = time(0); if(t-i < 600L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (600L-t+i)/60L, (600L-t+i)%60L); return(0); } @@ -176,16 +174,16 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->piety]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº ¸Å¿ì ½Å¾Ó½ÉÀÌ ±í¾îÁö´Â °ÍÀ» ´À³¥ ¼ö ÀÖ½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ½Å¿¡°Ô ±â¿øÇÕ´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ 매우 신앙심ì�´ 깊어지는 것ì�„ ëŠ�ë‚„ 수 있습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ì‹ ì—�게 기ì›�합니다.", ply_ptr); F_SET(ply_ptr, PPRAYD); ply_ptr->piety += 5; ply_ptr->lasttime[LT_PRAYD].ltime = t; ply_ptr->lasttime[LT_PRAYD].interval = 300L; } else { - print(fd, "´ç½ÅÀÇ ±â¿ø¿¡ ´ëÇÑ ½ÅÀÇ ÀÀ´äÀÌ ¾ø½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ½Å¿¡°Ô ±â¿øÇÕ´Ï´Ù.", + print(fd, "당신ì�˜ 기ì›�ì—� 대한 ì‹ ì�˜ ì�‘답ì�´ 없습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ì‹ ì—�게 기ì›�합니다.", ply_ptr); ply_ptr->lasttime[LT_PRAYD].ltime = t - 590L; } @@ -197,7 +195,7 @@ cmd *cmnd; /* updmg */ /**********************************************************************/ -/* À̰ÍÀº ¹«Àû¿¡°Ô ü·Â°ú µµ·Â ¹× +5ÀÇ Å¸°ÝÄ¡¸¦ ÁÖ´Â °ÍÀÌ´Ù. */ +/* ì�´ê²ƒì�€ 무ì �ì—�게 체력과 ë�„ë ¥ ë°� +5ì�˜ 타격치를 주는 것ì�´ë‹¤. */ int up_dmg(ply_ptr, cmnd) creature *ply_ptr; @@ -209,12 +207,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class < INVINCIBLE) { - print(fd, "¹«Àû¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "무ì �ë§Œ 사용할 수 있는 기술입니다.\n"); return(0); } if(F_ISSET(ply_ptr, PUPDMG)) { - print(fd, "´ç½ÅÀº Áö±Ý Àá·Â°Ý¹ßÀ» »ç¿ëÁßÀÔ´Ï´Ù.\n"); + print(fd, "당신ì�€ 지금 잠력격발ì�„ 사용중입니다.\n"); return(0); } @@ -222,7 +220,7 @@ cmd *cmnd; t = time(0); if(t-i < 1200L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (1200L-t+i)/60L, (1200L-t+i)%60L); return(0); } @@ -230,8 +228,8 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->dexterity]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº ÀÚ½ÅÀÇ Ç÷µµ¸¦ ¤À¸¸ç ¸öÀÇ Àá·ÂÀ» °Ý¹ß½Ãŵ´Ï´Ù.\n¿Â¸öÀ¸·Î ±â°¡ ÆÛÁ®³ª°¡´Â°ÍÀ» ´À³§´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ÀÚ½ÅÀÇ Ç÷µµ¸¦ ¤À¸¸ç ÈûÀ» ²ø¾îµéÀÔ´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ ìž�ì‹ ì�˜ 혈ë�„를 짚으며 몸ì�˜ ìž ë ¥ì�„ 격발시킵니다.\n온몸으로 기가 í�¼ì ¸ë‚˜ê°€ëŠ”ê²ƒì�„ ëŠ�ë‚�니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ìž�ì‹ ì�˜ 혈ë�„를 짚으며 힘ì�„ ë�Œì–´ë“¤ìž…니다.", ply_ptr); F_SET(ply_ptr, PUPDMG); ply_ptr->pdice += 5; ply_ptr->hpmax += 100; @@ -242,8 +240,8 @@ cmd *cmnd; ply_ptr->mpcur = ply_ptr->mpmax; } else { - print(fd, "ÈûÀ» °Ý¹ß½Ã۴µ¥ ½ÇÆÐÇß½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ Àá·Â°Ý¹ßÀ» ½ÃµµÇÕ´Ï´Ù.", + print(fd, "힘ì�„ 격발시키는ë�° 실패했습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 잠력격발ì�„ 시ë�„합니다.", ply_ptr); ply_ptr->lasttime[LT_UPDMG].ltime = t - 960L; } @@ -253,10 +251,10 @@ cmd *cmnd; } /**********************************************************************/ -/* power ±â°øÁý°á */ +/* power 기공집결 */ /**********************************************************************/ -/* À̰ÍÀº °Ë»ç¿¡°Ô 5Á¡ÀÇ ÈûÀ» ÁÖ´Â °ÍÀÌ´Ù. */ +/* ì�´ê²ƒì�€ 검사ì—�게 5ì �ì�˜ 힘ì�„ 주는 것ì�´ë‹¤. */ int power(ply_ptr, cmnd) creature *ply_ptr; @@ -268,12 +266,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(ply_ptr->class != FIGHTER && ply_ptr->class < INVINCIBLE) { - print(fd, "°Ë»ç¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "검사만 사용할 수 있는 기술입니다.\n"); return(0); } if(F_ISSET(ply_ptr, PPOWER)) { - print(fd, "´ç½ÅÀº Áö±Ý ±â°øÁý°áÀ» »ç¿ëÁßÀÔ´Ï´Ù.\n"); + print(fd, "당신ì�€ 지금 기공집결ì�„ 사용중입니다.\n"); return(0); } @@ -281,7 +279,7 @@ cmd *cmnd; t = time(0); if(t-i < 600L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (600L-t+i)/60L, (600L-t+i)%60L); return(0); } @@ -289,8 +287,8 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->dexterity]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº °¡ºÎÁ¸¦ Ʋ°í ±â¸¦ ¸ðÀ¸±â ½ÃÀÛÇÕ´Ï´Ù.\n¿Â¸öÀ¸·Î ±â°¡ ÆÛÁ®³ª°¡´Â°ÍÀ» ´À³§´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ °¡ºÎÁ¸¦ Ʋ°í ¾É¾Æ ±â¸¦ ¸ðÀ¾´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ 가부좌를 틀고 기를 모으기 시작합니다.\n온몸으로 기가 í�¼ì ¸ë‚˜ê°€ëŠ”ê²ƒì�„ ëŠ�ë‚�니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 가부좌를 틀고 앉아 기를 모ì��니다.", ply_ptr); F_SET(ply_ptr, PPOWER); ply_ptr->strength += 3; ply_ptr->lasttime[LT_POWER].ltime = t; @@ -298,8 +296,8 @@ cmd *cmnd; 60L * (((ply_ptr->level+3)/4)/5); } else { - print(fd, "±â°øÁý°áÀÌ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ±â°øÁý°áÀ» ½ÃµµÇÕ´Ï´Ù.", + print(fd, "기공집결ì�´ 실패하였습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 기공집결ì�„ 시ë�„합니다.", ply_ptr); ply_ptr->lasttime[LT_POWER].ltime = t - 590L; } @@ -311,10 +309,10 @@ cmd *cmnd; /**********************************************************************/ -/* accurate »ì±âÃæÀü */ +/* accurate 살기충전 */ /**********************************************************************/ -/* À̰ÍÀº ÀÚ°´ µµµÏ¿¡°Ô 3Á¡ÀÇ ¸íÁß·üÀ» ÁÖ´Â °ÍÀÌ´Ù. */ +/* ì�´ê²ƒì�€ ìž�ê°� ë�„ë‘‘ì—�게 3ì �ì�˜ 명중률ì�„ 주는 것ì�´ë‹¤. */ int accurate(ply_ptr, cmnd) creature *ply_ptr; @@ -327,23 +325,23 @@ cmd *cmnd; if(ply_ptr->class != ASSASSIN && ply_ptr->class != THIEF && ply_ptr->class < INVINCIBLE) { - print(fd, "ÀÚ°´ µµµÏ¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "ìž�ê°� ë�„ë‘‘ë§Œ 사용할 수 있는 기술입니다.\n"); return(0); } if(F_ISSET(ply_ptr, PSLAYE)) { - print(fd, "´ç½ÅÀº Áö±Ý »ì±âÃæÀüÀ» »ç¿ëÁßÀÔ´Ï´Ù.\n"); + print(fd, "당신ì�€ 지금 살기충전ì�„ 사용중입니다.\n"); return(0); } if(!ply_ptr->ready[WIELD-1]) { - print(fd, "ÀåºñÇϰí ÀÖ´Â ¹«±â°¡ ¾ø½À´Ï´Ù!\n"); + print(fd, "장비하고 있는 무기가 없습니다!\n"); return(0); } i = ply_ptr->lasttime[LT_SLAYE].ltime; t = time(0); if(t-i < 700L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (700L-t+i)/60L, (700L-t+i)%60L); return(0); } @@ -351,8 +349,8 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->dexterity]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº ´ç½ÅÀÇ ¹«±â¿¡ ÇǸ¦ ¸ÔÀÔ´Ï´Ù.\n¹«±â¿¡ »ì±â°¡ °¨µµ´Â °ÍÀ» ´À³§´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ±×ÀÇ ¹«±â¿¡ ÇǸ¦ ¸ÔÀÔ´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ 당신ì�˜ 무기ì—� 피를 먹입니다.\n무기ì—� 살기가 ê°�ë�„는 것ì�„ ëŠ�ë‚�니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ê·¸ì�˜ 무기ì—� 피를 먹입니다.", ply_ptr); F_SET(ply_ptr, PSLAYE); ply_ptr->thaco -= 3; ply_ptr->lasttime[LT_SLAYE].ltime = t; @@ -360,8 +358,8 @@ cmd *cmnd; 60L * (((ply_ptr->level+3)/4)/5); } else { - print(fd, "»ì±âÃæÀüÀÌ ½ÇÆÐÇÏ¿´½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ±×ÀÇ ¹«±â¿¡ »ì±âÃæÀüÀ» ½ÃµµÇÕ´Ï´Ù.", + print(fd, "살기충전ì�´ 실패하였습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ê·¸ì�˜ 무기ì—� 살기충전ì�„ 시ë�„합니다.", ply_ptr); ply_ptr->lasttime[LT_SLAYE].ltime = t - 590L; } @@ -372,10 +370,10 @@ cmd *cmnd; } /**********************************************************************/ -/* meditate Âü¼± */ +/* meditate 참선 */ /**********************************************************************/ -/* À̰ÍÀº ¹«»ç ºÒÁ¦ÀÚ¿¡°Ô 3Á¡ÀÇ Áö½ÄÀ» ÁÖ´Â °ÍÀÌ´Ù. */ +/* ì�´ê²ƒì�€ 무사 불제ìž�ì—�게 3ì �ì�˜ ì§€ì‹�ì�„ 주는 것ì�´ë‹¤. */ int meditate(ply_ptr, cmnd) creature *ply_ptr; @@ -388,19 +386,19 @@ cmd *cmnd; if(ply_ptr->class != PALADIN && ply_ptr->class != CLERIC && ply_ptr->class < INVINCIBLE) { - print(fd, "¹«»ç ºÒÁ¦ÀÚ¸¸ »ç¿ëÇÒ ¼ö ÀÖ´Â ±â¼úÀÔ´Ï´Ù.\n"); + print(fd, "무사 불제ìž�ë§Œ 사용할 수 있는 기술입니다.\n"); return(0); } if(F_ISSET(ply_ptr, PMEDIT)) { - print(fd, "´ç½ÅÀº ¹ú½á Âü¼±À» Çß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 벌ì�¨ 참선ì�„ 했습니다.\n"); return(0); } i = ply_ptr->lasttime[LT_MEDIT].ltime; t = time(0); if(t-i < 700L) { - print(fd, "%dºÐ %02dÃÊ ±â´Ù¸®¼¼¿ä.\n", + print(fd, "%dë¶„ %02dì´ˆ 기다리세요.\n", (700L-t+i)/60L, (700L-t+i)%60L); return(0); } @@ -408,8 +406,8 @@ cmd *cmnd; chance = MIN(85, ((ply_ptr->level+3)/4)*20+bonus[ply_ptr->piety]); if(mrand(1,100) <= chance) { - print(fd, "´ç½ÅÀº ÀÚ¸®¿¡ ¾É¾Æ Âü¼±¿¡ µé¾î°©´Ï´Ù.\n»õ·Ó°Ô »ç¹°À» ¹Ù¶óº¸´Â ´«ÀÌ ¶ß¿´½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ ÀÚ¸®¿¡ ¾É¾Æ Âü¼±À» ÇàÇÕ´Ï´Ù.", ply_ptr); + print(fd, "당신ì�€ ìž�리ì—� 앉아 참선ì—� 들어갑니다.\n새롭게 사물ì�„ ë°”ë�¼ë³´ëŠ” 눈ì�´ 뜨였습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ ìž�리ì—� 앉아 참선ì�„ 행합니다.", ply_ptr); F_SET(ply_ptr, PMEDIT); ply_ptr->intelligence += 3; ply_ptr->lasttime[LT_MEDIT].ltime = t; @@ -417,8 +415,8 @@ cmd *cmnd; 60L * (((ply_ptr->level+3)/4)/5); } else { - print(fd, "Âü¼±µµÁß ÁÖÈ­ÀÔ¸¶¿¡ ºüÁ³½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ Âü¼±À» ÇÏ´Ù°¡ ÁÖÈ­ÀÔ¸¶¿¡ ºüÁ³½À´Ï´Ù.", + print(fd, "참선ë�„중 주화입마ì—� 빠졌습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ 참선ì�„ 하다가 주화입마ì—� 빠졌습니다.", ply_ptr); ply_ptr->lasttime[LT_MEDIT].ltime = t - 590L; } @@ -446,7 +444,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(F_ISSET(ply_ptr, PPREPA)) { - print(fd, "´ç½ÅÀº ÀÌ¹Ì ÇÔÁ¤µéÀ» ÁÖÀÇÇϰí ÀÖ½À´Ï´Ù."); + print(fd, "당신ì�€ ì�´ë¯¸ 함정들ì�„ 주ì�˜í•˜ê³  있습니다."); return(0); } @@ -461,8 +459,8 @@ cmd *cmnd; ply_ptr->lasttime[LT_PREPA].ltime = t; ply_ptr->lasttime[LT_PREPA].interval = ply_ptr->class == DM ? 0:15; - print(fd, "´ç½ÅÀº ÀÌÁ¦ºÎÅÍ ÇÔÁ¤ÀÌ ÀÖ³ª »ìÆìº¸¸ç °©´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÇÔÁ¤À» Á¶½ÉÇÏ¸ç °©´Ï´Ù.", + print(fd, "당신ì�€ ì�´ì œë¶€í„° 함정ì�´ 있나 살펴보며 갑니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 함정ì�„ 조심하며 갑니다.", ply_ptr); F_SET(ply_ptr, PPREPA); if(F_ISSET(ply_ptr, PBLIND)) @@ -491,11 +489,11 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» »ç¿ëÇϽ÷Á±¸¿ä?"); + print(fd, "무엇ì�„ 사용하시려구요?"); return(0); } - if(!strcmp(cmnd->str[1], "¸ðµÎ")) + if(!strcmp(cmnd->str[1], "모ë‘�")) return(wear(ply_ptr, cmnd)); obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, cmnd->str[1], @@ -504,7 +502,7 @@ cmd *cmnd; obj_ptr = find_obj(ply_ptr, rom_ptr->first_obj, cmnd->str[1], cmnd->val[1]); if(!obj_ptr || !F_ISSET(obj_ptr, OUSEFL)) { - print(fd, "¹«¾ùÀ» »ç¿ëÇϽ÷Á±¸¿ä?"); + print(fd, "무엇ì�„ 사용하시려구요?"); return(0); } else if(F_ISSET(obj_ptr, OUSEFL)) { @@ -546,7 +544,7 @@ cmd *cmnd; case LIGHTSOURCE: rtn = hold(ply_ptr, cmnd); break; default: - print(fd, "±×°ÍÀ» ¾î¶»°Ô »ç¿ëÇϽ÷Á±¸¿ä?\n"); + print(fd, "그것ì�„ 어떻게 사용하시려구요?\n"); rtn = 0; } return(rtn); @@ -575,7 +573,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num == 1) { - strcpy(outstr, "µè±â °ÅºÎµÈ »ç¿ëÀÚ: "); + strcpy(outstr, "듣기 ê±°ë¶€ë�œ 사용ìž�: "); ign = Ply[fd].extr->first_ignore; n = 0; while(ign) { @@ -585,7 +583,7 @@ cmd *cmnd; ign = ign->next_tag; } if(!n) - strcat(outstr, "¾øÀ½."); + strcat(outstr, "ì—†ì�Œ."); else { outstr[strlen(outstr)-2] = '.'; outstr[strlen(outstr)-1] = 0; @@ -620,7 +618,7 @@ cmd *cmnd; } if(n) { - print(fd, "%s´ÔÀ» À̾߱⠵è±â °ÅºÎ ´ë»ó¿¡¼­ »èÁ¦ÇÕ´Ï´Ù.", name); + print(fd, "%s님ì�„ ì�´ì•¼ê¸° 듣기 ê±°ë¶€ 대ìƒ�ì—�서 삭제합니다.", name); return(0); } @@ -631,12 +629,11 @@ cmd *cmnd; strcpy(ign->enemy, name); ign->next_tag = Ply[fd].extr->first_ignore; Ply[fd].extr->first_ignore = ign; - print(fd, "%s´ÔÀ» À̾߱⠵è±â °ÅºÎ ´ë»ó¿¡ Ãß°¡ÇÕ´Ï´Ù.\n", name); + print(fd, "%s님ì�„ ì�´ì•¼ê¸° 듣기 ê±°ë¶€ 대ìƒ�ì—� 추가합니다.\n", name); } else - print(fd, "±× »ç¿ëÀÚ´Â Á¢¼ÓÁßÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ê·¸ 사용ìž�는 ì ‘ì†�중ì�´ 아닙니다.\n"); return(0); } - diff --git a/src/creature.c b/src/creature.c index 615a8cc9..3c0985ca 100644 --- a/src/creature.c +++ b/src/creature.c @@ -301,7 +301,7 @@ creature *att_ptr; expgroup = MIN(expgroup, crt_ptr->experience); ply_ptr->experience += expgroup; print(ply_ptr->fd, - "\n´ç½ÅÀº %M%j Á׿© °æÇèÄ¡ %d¸¦ ¹Þ¾Ò½À´Ï´Ù.", + "\n당신ì�€ %M%j 죽여 경험치 %d를 받았습니다.", crt_ptr,"3",expgroup); ply_ptr->alignment -= crt_ptr->alignment/5; if(ply_ptr->alignment > 1000) @@ -312,7 +312,7 @@ creature *att_ptr; ep = ep->next_tag; } if(!F_ISSET(crt_ptr, MTRADE)){ - sprintf(str, "\n%s%s °¡Áö°í ÀÖ´ø°Í: ", crt_str(crt_ptr, 0,INV),under_han(crt_str(crt_ptr, 0,INV))?"ÀÌ":"°¡"); + sprintf(str, "\n%s%s 가지고 있ë�˜ê²ƒ: ", crt_str(crt_ptr, 0,INV),under_han(crt_str(crt_ptr, 0,INV))?"ì�´":"ê°€"); n = strlen(str); i = list_obj(&str[n], att_ptr, crt_ptr->first_obj); } @@ -332,7 +332,7 @@ creature *att_ptr; if(crt_ptr->gold) { load_obj(0, &obj_ptr); - sprintf(obj_ptr->name, "%d³É", crt_ptr->gold); + sprintf(obj_ptr->name, "%d냥", crt_ptr->gold); if(i) strcat(str, ", "); strcat(str, obj_ptr->name); @@ -380,7 +380,7 @@ creature *att_ptr; if(crt_ptr->level < 20) crt_ptr->experience -= crt_ptr->experience/20; else { - /* °í·¹º§ °æÇèÄ¡ ±ï´Â°Å Á¶Á¤ */ + /* 고레벨 경험치 ê¹�는거 ì¡°ì • */ if(crt_ptr->experience/15 > 100000) { crt_ptr->experience -= 100000; } @@ -470,7 +470,7 @@ if(!F_ISSET(rom_ptr, RSUVIV) && F_CLR(crt_ptr, PDISEA); if(!F_ISSET(rom_ptr,RSUVIV) && - check_war(att_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { /* ¼­¹ÙÀ̹úÀå¿¡¼­ Àåºñ ±×´ë·Î. */ + check_war(att_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { /* 서바ì�´ë²Œìž¥ì—�서 장비 그대로. */ if(crt_ptr->ready[WIELD-1] && !crt_ptr->ready[WIELD-1]->questnum && !F_ISSET(crt_ptr->ready[WIELD-1], ONEWEV) && !F_ISSET(crt_ptr->ready[WIELD-1], OCURSE) && !F_ISSET(crt_ptr->ready[WIELD-1], CONTAINER)) { add_obj_rom(crt_ptr->ready[WIELD-1], @@ -499,31 +499,31 @@ if(!F_ISSET(rom_ptr, RSUVIV) && if(!F_ISSET(rom_ptr, RSUVIV)) { if(crt_ptr == att_ptr) - broadcast_all("\n### ¾Ö¼®ÇϰԵµ %s´ÔÀÌ Á×¾ú½À´Ï´Ù.", crt_ptr->name); + broadcast_all("\n### ì• ì„�하게ë�„ %s님ì�´ 죽었습니다.", crt_ptr->name); else - broadcast_all("\n### ¾Ö¼®ÇϰԵµ %s´ÔÀÌ %1m¿¡°Ô Á×¾ú½À´Ï´Ù.", + broadcast_all("\n### ì• ì„�하게ë�„ %s님ì�´ %1mì—�게 죽었습니다.", crt_ptr->name, att_ptr); all_broad_time=time(0); - } /* ´ë·ÃÀå¿¡¼­´Â Á׾ ¸»ÀÌ ¾È³ª¿À°Ô. */ + } /* 대련장ì—�서는 죽어ë�„ ë§�ì�´ 안나오게. */ if(crt_ptr->type == PLAYER && F_ISSET(crt_ptr, PFMBOS)) { if(check_war_one(crt_ptr->daily[DL_EXPND].max) == 0) { - broadcast_all("\n### [%s] ÆÐ°Å¸®ÀÇ ¹®ÁÖ°¡ Á×¾ú½À´Ï´Ù.", + broadcast_all("\n### [%s] 패거리ì�˜ 문주가 죽었습니다.", family_str[crt_ptr->daily[DL_EXPND].max]); - broadcast_all("\n### [%s] ÆÐ°Å¸®´Â ÀüÀï¿¡¼­ ÆÐÇß½À´Ï´Ù.", + broadcast_all("\n### [%s] 패거리는 ì „ìŸ�ì—�서 패했습니다.", family_str[crt_ptr->daily[DL_EXPND].max]); AT_WAR = CALLWAR1 = CALLWAR2 = 0; } } del_ply_rom(crt_ptr, rom_ptr); - load_rom(1008, &rom_ptr); /* Á×À¸¸é °¡´Â°÷... */ + load_rom(1008, &rom_ptr); /* 죽으면 가는곳... */ add_ply_rom(crt_ptr, rom_ptr); savegame(crt_ptr, 0); print(crt_ptr->fd, - "´ç½ÅÀº Á×À¸¸é¼­ ¸î°¡Áö ¹°°ÇÀ» ¶³¾î¶ß·È½À´Ï´Ù.\n"); + "당신ì�€ 죽으면서 몇가지 물건ì�„ 떨어뜨렸습니다.\n"); } } @@ -598,14 +598,14 @@ creature *crt_ptr; if(crt_ptr->questnum) { if(!Q_ISSET(ply_ptr,crt_ptr->questnum-1)) { - print(ply_ptr->fd, "\nÃàÇÏÇÕ´Ï´Ù. ´ç½ÅÀº ÀÓ¹«¸¦ ´Þ¼ºÇÏ¿´½À´Ï´Ù.\n"); + print(ply_ptr->fd, "\n축하합니다. 당신ì�€ 임무를 달성하였습니다.\n"); Q_SET(ply_ptr, crt_ptr->questnum-1); ply_ptr->experience += quest_exp[crt_ptr->questnum-1]; - print(ply_ptr->fd, "´ç½ÅÀº °æÇèÄ¡ %ld¸¦ ¾ò¾ú½À´Ï´Ù.\n", + print(ply_ptr->fd, "당신ì�€ 경험치 %ld를 얻었습니다.\n", quest_exp[crt_ptr->questnum-1]); add_prof(ply_ptr,quest_exp[crt_ptr->questnum-1]); } - else print(ply_ptr->fd, "\n´ç½ÅÀº ÀÌ¹Ì ÀÓ¹«¸¦ ´Þ¼ºÇÏ¿© °æÇèÄ¡¸¦ ¹ÞÀ» ÀÚ°ÝÀÌ ¾ø½À´Ï´Ù.\n"); + else print(ply_ptr->fd, "\n당신ì�€ ì�´ë¯¸ 임무를 달성하여 경험치를 ë°›ì�„ ìž�격ì�´ 없습니다.\n"); } if(F_ISSET(crt_ptr, MSUMMO)) { @@ -644,7 +644,7 @@ creature *crt_ptr; if(!F_ISSET(xp->ext, XSECRT) && !F_ISSET(xp->ext, XCLOSD) && is_rom_loaded(xp->ext->room) && mrand(1,100) < 75) { broadcast_rom(-1, rom_ptr->rom_num, - "\n%M%j %sÂÊÀ¸·Î µµ¸Á°¬½À´Ï´Ù.", crt_ptr, "1", + "\n%M%j %s쪽으로 ë�„ë§�갔습니다.", crt_ptr, "1", xp->ext->name); die_perm_crt(ply_ptr, crt_ptr); del_crt_rom(crt_ptr, rom_ptr); @@ -678,36 +678,36 @@ creature *crt_ptr; diff = MAX(-4, diff); diff = MIN(4, diff); - sprintf(he, "%s", F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); - sprintf(him, "%s", F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + sprintf(he, "%s", F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); + sprintf(him, "%s", F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); switch(diff) { case 0: - print(fd, "%s´Â ´ç½Å°ú ²À ¸Â´Â »ó´ëÀÔ´Ï´Ù!\n", he); + print(fd, "%s는 당신과 ê¼­ 맞는 ìƒ�대입니다!\n", he); break; case 1: - print(fd, "%s´Â º° ¹«¸®¾øÀÌ ÀÌ±æ ¼ö ÀÖ½À´Ï´Ù.\n", he); + print(fd, "%s는 별 무리없ì�´ ì�´ê¸¸ 수 있습니다.\n", he); break; case -1: - print(fd, "%s´Â ¿îÀÌ ÁÁÀ¸¸é ÀÌ±æ ¼ö ÀÖ½À´Ï´Ù..\n", he); + print(fd, "%s는 ìš´ì�´ 좋으면 ì�´ê¸¸ 수 있습니다..\n", he); break; case 2: - print(fd, "%s´Â º°·Î Èû ¾ÈµéÀ̰í À̱æ¼ö ÀÖ½À´Ï´Ù.\n", he); + print(fd, "%s는 별로 힘 안들ì�´ê³  ì�´ê¸¸ìˆ˜ 있습니다.\n", he); break; case -2: - print(fd, "%s´Â »ó´ëÇϱâ Èûµé°Ú´Âµ¥¿ä?\n", he); + print(fd, "%s는 ìƒ�대하기 힘들겠는ë�°ìš”?\n", he); break; case 3: - print(fd, "%s´Â ¼Õ½±°Ô »ó´ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n", he); + print(fd, "%s는 ì†�쉽게 ìƒ�대할수 있습니다.\n", he); break; case -3: - print(fd, "´ç½ÅÀº %s¿¡°Ô µµµ ¾ÈµË´Ï´Ù.\n", he); + print(fd, "당신ì�€ %sì—�게 쨉ë�„ 안ë�©ë‹ˆë‹¤.\n", he); break; case 4: - print(fd, "%s´Â Çѹ濡 º¸³¾¼ö ÀÖ½À´Ï´Ù.\n", him); + print(fd, "%s는 한방ì—� 보낼수 있습니다.\n", him); break; case -4: - print(fd, "%s´Â º¸ÀÚ¸¶ÀÚ µµ¸Á°¡´Â°ÍÀÌ ÁÁÀ»°Ì´Ï´Ù.\n", he); + print(fd, "%s는 ë³´ìž�마ìž� ë�„ë§�가는것ì�´ 좋ì�„ê²�니다.\n", he); break; } } @@ -817,7 +817,7 @@ creature *ply_ptr; /* dm_create_crt */ /**********************************************************************/ -/* ¸÷ÀÌ Á×À¸¸é ¸÷À» ¼ÒȯÇÏ´Â ·çƾÀÌ´Ù. */ +/* 몹ì�´ 죽으면 몹ì�„ 소환하는 루틴ì�´ë‹¤. */ int summon_crt(ply_ptr, sum_ptr, num) creature *ply_ptr; diff --git a/src/dm1.c b/src/dm1.c index d9c40269..a22a4e28 100644 --- a/src/dm1.c +++ b/src/dm1.c @@ -46,7 +46,7 @@ cmd *cmnd; cp2 = ply_ptr->first_fol; } if(cp2){ - print(ply_ptr->fd,"¸ÕÀú ±×·ì¿¡¼­ ³ª¿À¼¼¿ä."); + print(ply_ptr->fd,"먼저 그룹ì—�서 나오세요."); return 0; } @@ -55,20 +55,20 @@ cmd *cmnd; if((ply_ptr->class==SUB_DM || ply_ptr->class==ZONEMAKER) && load_rom(cmnd->val[0]-1, &rom_ptr) >= 0) { if(F_ISSET(rom_ptr, RSHOPP)) { - print(ply_ptr->fd, "¼ø°£À̵¿ÀÌ ±ÝÁöµÈ ±¸¿ªÀÔ´Ï´Ù."); + print(ply_ptr->fd, "순간ì�´ë�™ì�´ 금지ë�œ 구역입니다."); return(0); } } if(load_rom(cmnd->val[0], &rom_ptr) < 0) { - print(ply_ptr->fd, "¿¡·¯ (%d)", cmnd->val[0]); + print(ply_ptr->fd, "ì—�러 (%d)", cmnd->val[0]); return(0); } cp = ply_ptr->first_fol; while(cp) { if(F_ISSET(cp->crt, MDMFOL) && cp->crt->parent_rom == ply_ptr->parent_rom) { del_crt_rom(cp->crt, ply_ptr->parent_rom); - broadcast_rom(ply_ptr->fd, ply_ptr->rom_num,"%M%j ÁÖÀ§¸¦ µÎ¸®¹ø °Å¸³´Ï´Ù.\n", cp->crt,"1"); + broadcast_rom(ply_ptr->fd, ply_ptr->rom_num,"%M%j 주위를 ë‘�리번 거립니다.\n", cp->crt,"1"); add_crt_rom(cp->crt, rom_ptr, 1); add_active(cp->crt); } @@ -83,14 +83,14 @@ cmd *cmnd; crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || crt_ptr == ply_ptr || (crt_ptr->class >= SUB_DM && ply_ptr->class fd, "%S%j Á¢¼ÓÁßÀÌ ¾Æ´Õ´Ï´Ù.", cmnd->str[1],"0"); + print(ply_ptr->fd, "%S%j ì ‘ì†�중ì�´ 아닙니다.", cmnd->str[1],"0"); return(0); } cp = ply_ptr->first_fol; while(cp) { if(F_ISSET(cp->crt, MDMFOL) && cp->crt->parent_rom == ply_ptr->parent_rom) { del_crt_rom(cp->crt, ply_ptr->parent_rom); - broadcast_rom(ply_ptr->fd, ply_ptr->rom_num,"%M%j ÁÖÀ§¸¦ µÎ¸®¹ø °Å¸®¸ç ÀÖ½À´Ï´Ù.", cp->crt,"1"); + broadcast_rom(ply_ptr->fd, ply_ptr->rom_num,"%M%j 주위를 ë‘�리번 거리며 있습니다.", cp->crt,"1"); add_crt_rom(cp->crt, crt_ptr->parent_rom, 1); add_active(cp->crt); } @@ -105,7 +105,7 @@ cmd *cmnd; crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || crt_ptr == ply_ptr || (ply_ptr->class < DM && crt_ptr->class == DM && F_ISSET(crt_ptr, PDMINV))) { - print(ply_ptr->fd, "%S%j Á¢¼ÓÁßÀÌ ¾Æ´Õ´Ï´Ù.", cmnd->str[1],"0"); + print(ply_ptr->fd, "%S%j ì ‘ì†�중ì�´ 아닙니다.", cmnd->str[1],"0"); return(0); } lowercize(cmnd->str[2], 1); @@ -114,7 +114,7 @@ cmd *cmnd; else crt_ptr2 = find_who(cmnd->str[2]); if(!crt_ptr2) { - print(ply_ptr->fd, "%S%j Á¢¼ÓÁßÀÌ ¾Æ´Õ´Ï´Ù.", cmnd->str[1],"0"); + print(ply_ptr->fd, "%S%j ì ‘ì†�중ì�´ 아닙니다.", cmnd->str[1],"0"); return(0); } del_ply_rom(crt_ptr, crt_ptr->parent_rom); @@ -156,12 +156,12 @@ cmd *cmnd; index=cut_command(cmnd->fullstr); if(strlen(&cmnd->fullstr[i]) < 1) { - print(fd, "¹«¾ùÀ» °øÁöÇÏ·Á±¸¿ä?"); + print(fd, "무엇ì�„ 공지하려구요?"); return(0); } print(fd, "Ok.\n"); - broadcast_wiz("\n>>> °øÁö(%s): %s", ply_ptr->name, + broadcast_wiz("\n>>> 공지(%s): %s", ply_ptr->name, &cmnd->fullstr[i]); paste_command(cmnd->fullstr,index); @@ -196,7 +196,7 @@ cmd *cmnd; while(cp) { ctemp = cp->next_tag; if(F_ISSET (cp->crt, MDMFOL)) { - print (cp->crt->following->fd, "%MÀÌ ´ç½ÅÀ» ±×¸¸ µû¸¨´Ï´Ù.\n", cp->crt); + print (cp->crt->following->fd, "%Mì�´ 당신ì�„ 그만 따릅니다.\n", cp->crt); cp2 = cp->crt->following->first_fol; if(cp2->crt == cp->crt) cp->crt->following->first_fol = cp->next_tag; @@ -219,7 +219,7 @@ cmd *cmnd; op = otemp; } - print(fd, "û¼ÒµÇ¾ú½À´Ï´Ù.\n"); + print(fd, "청소ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(0); } @@ -332,7 +332,7 @@ cmd *cmnd; */ if(strlen(&cmnd->fullstr[0]) < 1) { - print(fd, "¹«½¼¸»À» ¹æÀÇ »ç¶÷µé¿¡°Ô ¾Ë¸®ÁÒ?"); + print(fd, "무슨ë§�ì�„ ë°©ì�˜ 사람들ì—�게 알리죠?"); return(0); } @@ -409,7 +409,7 @@ cmd *cmnd; if(ply_ptr->class!=ZONEMAKER && ply_ptr->class < SUB_DM) return(PROMPT); - print(ply_ptr->fd, "¹æ¹øÈ£ #%d\n", ply_ptr->parent_rom->rom_num); + print(ply_ptr->fd, "방번호 #%d\n", ply_ptr->parent_rom->rom_num); return(0); } @@ -431,7 +431,7 @@ cmd *cmnd; flush_crt(); print(ply_ptr->fd, - "¸Þ¸ð¸®ÀÇ ±«¹°°ú ¹°°ÇÀ» µð½ºÅ©¿¡¼­ »õ·Î Àоîµå¸³´Ï´Ù.\n"); + "메모리ì�˜ 괴물과 물건ì�„ 디스í�¬ì—�서 새로 ì�½ì–´ë“œë¦½ë‹ˆë‹¤.\n"); return(0); } @@ -450,7 +450,7 @@ cmd *cmnd; return(PROMPT); if(reload_rom(ply_ptr->rom_num) < 0) - print(ply_ptr->fd, "½ÇÆÐÇß½À´Ï´Ù.\n"); + print(ply_ptr->fd, "실패했습니다.\n"); else print(ply_ptr->fd, "Ok.\n"); @@ -471,7 +471,7 @@ cmd *cmnd; return(PROMPT); if(resave_rom(ply_ptr->rom_num) < 0) - print(ply_ptr->fd, "ÀúÀå ½ÇÆÐ.\n"); + print(ply_ptr->fd, "저장 실패.\n"); else print(ply_ptr->fd, "Ok.\n"); @@ -495,12 +495,12 @@ cmd *cmnd; return(PROMPT); if(load_obj(cmnd->val[0], &obj_ptr) < 0) { - print(ply_ptr->fd, "¿¡·¯ (%d)\n", cmnd->val[0]); + print(ply_ptr->fd, "ì—�러 (%d)\n", cmnd->val[0]); return(0); } if(F_ISSET(obj_ptr, ORENCH)) rand_enchant(obj_ptr); - print(ply_ptr->fd, "%s¸¦ ¼ÒÁöǰ¿¡ Ãß°¡Çß½À´Ï´Ù.\n", obj_ptr->name); + print(ply_ptr->fd, "%s를 소지품ì—� 추가했습니다.\n", obj_ptr->name); add_obj_crt(obj_ptr, ply_ptr); return(0); } @@ -549,7 +549,7 @@ cmd *cmnd; if(load_crt(num, &crt_ptr) < 0) { - print(ply_ptr->fd, "¿¡·¯ (%d)\n", cmnd->val[0]); + print(ply_ptr->fd, "ì—�러 (%d)\n", cmnd->val[0]); return(0); } t = time(0); @@ -621,11 +621,11 @@ cmd *cmnd; cmnd->str[1], cmnd->val[1]); if(!obj_ptr) - print(ply_ptr->fd, "½ÇÆÐ.\n"); + print(ply_ptr->fd, "실패.\n"); else { F_SET(obj_ptr, OPERM2); F_SET(obj_ptr, OTEMPP); - print(ply_ptr->fd, "¼º°ø.\n"); + print(ply_ptr->fd, "성공.\n"); } return(0); } @@ -646,12 +646,12 @@ cmd *cmnd; if(F_ISSET(ply_ptr, PDMINV)) { F_CLR(ply_ptr, PDMINV); ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "Åõ¸í ÇØÁ¦.\n"); + print(ply_ptr->fd, "투명 í•´ì œ.\n"); } else { F_SET(ply_ptr, PDMINV); ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "Åõ¸í ¼³Á¤.\n"); + print(ply_ptr->fd, "투명 설정.\n"); } ANSI(ply_ptr->fd, WHITE); return(0); @@ -678,7 +678,7 @@ cmd *cmnd; lowercize(cmnd->str[1], 1); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr) { - print(ply_ptr->fd, "%s°¡ ¾ø½À´Ï´Ù.\n", cmnd->str[1]); + print(ply_ptr->fd, "%sê°€ 없습니다.\n", cmnd->str[1]); return(0); } } @@ -716,7 +716,7 @@ cmd *cmnd; lowercize(cmnd->str[1], 1); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr) { - print(ply_ptr->fd, "%s°¡ ¾ø½À´Ï´Ù.\n", cmnd->str[1]); + print(ply_ptr->fd, "%sê°€ 없습니다.\n", cmnd->str[1]); return(0); } @@ -726,7 +726,7 @@ cmd *cmnd; cfd = crt_ptr->fd; if(!(Ply[cfd].io->fn == command && Ply[cfd].io->fnparam == 1)) { - print(ply_ptr->fd, "%s¸¦ ÇöÀç °­¿äÇÒ¼ö ¾ø½À´Ï´Ù.\n", + print(ply_ptr->fd, "%s를 현재 강요할수 없습니다.\n", cmnd->str[1]); return(0); } diff --git a/src/dm2.c b/src/dm2.c index 83c580b9..1c897165 100644 --- a/src/dm2.c +++ b/src/dm2.c @@ -44,7 +44,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; else { if(load_rom(cmnd->val[0], &rom_ptr) < 0) { - print(ply_ptr->fd, "¿¡·¯ (%d)\n", cmnd->val[0]); + print(ply_ptr->fd, "ì—�러 (%d)\n", cmnd->val[0]); return(0); } } @@ -111,7 +111,7 @@ cmd *cmnd; } else - print(fd, "±×·±°Ç ¾ø½À´Ï´Ù.\n"); + print(fd, "그런건 없습니다.\n"); return(0); @@ -134,8 +134,8 @@ room *rom_ptr; fd = ply_ptr->fd; - print(fd, "¹æ¹øÈ£ #: %d\n", rom_ptr->rom_num); - print(fd, "À̸§: %s\n", rom_ptr->name); + print(fd, "방번호 #: %d\n", rom_ptr->rom_num); + print(fd, "ì�´ë¦„: %s\n", rom_ptr->name); print(fd, "Special: %d\n", rom_ptr->special); print(fd, "Traffic: %d%%\n", rom_ptr->traffic); @@ -157,30 +157,30 @@ room *rom_ptr; print(fd, "Trap type: "); switch(rom_ptr->trap){ case TRAP_PIT: - print(fd,"±¸µ¢ÀÌ ÇÔÁ¤ (¿¬°áµÈ ¹æ%d)\n", + print(fd,"구ë�©ì�´ 함정 (ì—°ê²°ë�œ ë°©%d)\n", rom_ptr->trapexit); break; case TRAP_DART: - print(fd,"µ¶È­»ì ÇÔÁ¤\n"); + print(fd,"ë�…화살 함정\n"); break; case TRAP_BLOCK: - print(fd,"¹ÙÀ§ ÇÔÁ¤\n"); + print(fd,"바위 함정\n"); break; case TRAP_MPDAM: - print(fd,"µµ·Â ÇÔÁ¤\n"); + print(fd,"ë�„ë ¥ 함정\n"); break; case TRAP_RMSPL: - print(fd,"ÁÖ¼ú ÇÔÁ¤\n"); + print(fd,"주술 함정\n"); break; case TRAP_NAKED: - print(fd,"Àåºñ ÇÔÁ¤\n"); + print(fd,"장비 함정\n"); break; case TRAP_ALARM: - print(fd," °æº¸ ÇÔÁ¤( º¸ÃÊ ¹æ %d)\n", + print(fd," 경보 함정( ë³´ì´ˆ ë°© %d)\n", rom_ptr->trapexit); break; default: - print(fd,"À߸øµÈ ÇÔÁ¤ #\n"); + print(fd,"잘못ë�œ 함정 #\n"); break; } } @@ -289,48 +289,48 @@ creature *crt_ptr; if(crt_ptr->type == PLAYER && Ply[crt_ptr->fd].io) { print(fd, "\n%s %s:\n", crt_ptr->name, title_ply(ply_ptr,crt_ptr)); - print(fd, "ÁÖ¼Ò: %s@%s\n\n", Ply[crt_ptr->fd].io->userid, + print(fd, "주소: %s@%s\n\n", Ply[crt_ptr->fd].io->userid, Ply[crt_ptr->fd].io->address); } else { - print(fd, "À̸§: %s\n", crt_ptr->name); - print(fd, "¼³¸í: %s\n", crt_ptr->description); - print(fd, "À̾߱â: %s\n", crt_ptr->talk); - print(fd, "´Ü¾î: %s %+20s%+20s\n\n",crt_ptr->key[0],crt_ptr->key[1], crt_ptr->key[2]); + print(fd, "ì�´ë¦„: %s\n", crt_ptr->name); + print(fd, "설명: %s\n", crt_ptr->description); + print(fd, "ì�´ì•¼ê¸°: %s\n", crt_ptr->talk); + print(fd, "단어: %s %+20s%+20s\n\n",crt_ptr->key[0],crt_ptr->key[1], crt_ptr->key[2]); } - print(fd, "·¹º§: %-20d Á¾Á·: %s\n", + print(fd, "레벨: %-20d 종족: %s\n", crt_ptr->level, race_str[crt_ptr->race]); - print(fd, "Á÷¾÷: %-20s ¼ºÇâ: %s %d\n\n", + print(fd, "ì§�ì—…: %-20s 성향: %s %d\n\n", class_str[crt_ptr->class], - F_ISSET(crt_ptr, PCHAOS) ? "¾Ç":"¼±", crt_ptr->alignment); + F_ISSET(crt_ptr, PCHAOS) ? "ì•…":"ì„ ", crt_ptr->alignment); - print(fd, "°æÇè: %d", crt_ptr->experience); - print(fd, " µ·: %d\n", crt_ptr->gold); + print(fd, "경험: %d", crt_ptr->experience); + print(fd, " ë�ˆ: %d\n", crt_ptr->gold); - print(fd, "ü·Â: %d/%d", crt_ptr->hpcur, crt_ptr->hpmax); - print(fd, " µµ·Â: %d/%d\n", crt_ptr->mpcur, crt_ptr->mpmax); + print(fd, "ì²´ë ¥: %d/%d", crt_ptr->hpcur, crt_ptr->hpmax); + print(fd, " ë�„ë ¥: %d/%d\n", crt_ptr->mpcur, crt_ptr->mpmax); - print(fd, "¹æ¾î·Â: %d", (100-crt_ptr->armor)); + print(fd, "ë°©ì–´ë ¥: %d", (100-crt_ptr->armor)); print(fd, " THAC0: %d\n", crt_ptr->thaco); - print(fd, "Ÿ°Ý: %dd%d+%d\n", crt_ptr->ndice, crt_ptr->sdice, + print(fd, "타격: %dd%d+%d\n", crt_ptr->ndice, crt_ptr->sdice, crt_ptr->pdice); - print(fd, "Èû[%2d] ¹Îø[%2d] ¸ËÁý[%2d] Áö´É[%2d] ½Å¾Ó½É[%2d]\n", + print(fd, "힘[%2d] 민첩[%2d] ë§·ì§‘[%2d] 지능[%2d] 신앙심[%2d]\n", crt_ptr->strength, crt_ptr->dexterity, crt_ptr->constitution, crt_ptr->intelligence, crt_ptr->piety); strcpy(str, "Flags set: "); if(crt_ptr->type == PLAYER) { print(fd, - "µµ: %ld °Ë: %ld ºÀ: %ld â: %ld ±Ã: %ld\n", + "ë�„: %ld ê²€: %ld ë´‰: %ld ì°½: %ld ê¶�: %ld\n", crt_ptr->proficiency[0], crt_ptr->proficiency[1], crt_ptr->proficiency[2], crt_ptr->proficiency[3], crt_ptr->proficiency[4]); print(fd, - "¶¥: %ld ¹Ù¶÷: %ld ºÒ: %ld ¹°: %ld\n", + "ë•…: %ld 바람: %ld 불: %ld 물: %ld\n", crt_ptr->realm[0], crt_ptr->realm[1], crt_ptr->realm[2], crt_ptr->realm[3]); if(F_ISSET(crt_ptr, PBLESS)) strcat(str, "Bless, "); @@ -475,38 +475,38 @@ object *obj_ptr; fd = ply_ptr->fd; - print(fd, "À̸§: %s\n", obj_ptr->name); - print(fd, "¼³¸í: %s\n", obj_ptr->description); - print(fd, "»ç¿ë: %s\n", obj_ptr->use_output); - print(fd, "´Ü¾î: %s %+20s %+20s\n\n",obj_ptr->key[0],obj_ptr->key[1], obj_ptr->key[2]); - print(fd, "Ÿ°Ý: %dd%d + %d", obj_ptr->ndice, obj_ptr->sdice, + print(fd, "ì�´ë¦„: %s\n", obj_ptr->name); + print(fd, "설명: %s\n", obj_ptr->description); + print(fd, "사용: %s\n", obj_ptr->use_output); + print(fd, "단어: %s %+20s %+20s\n\n",obj_ptr->key[0],obj_ptr->key[1], obj_ptr->key[2]); + print(fd, "타격: %dd%d + %d", obj_ptr->ndice, obj_ptr->sdice, obj_ptr->pdice); if(obj_ptr->adjustment) print(fd, " (+%d)\n", obj_ptr->adjustment); else print(fd, "\n"); - print(fd, "»ç¿ëȸ¼ö %d/%d\n", obj_ptr->shotscur, obj_ptr->shotsmax); + print(fd, "사용회수 %d/%d\n", obj_ptr->shotscur, obj_ptr->shotsmax); - print(fd, "Á¾·ù: "); + print(fd, "종류: "); if(obj_ptr->type <= MISSILE) { switch(obj_ptr->type) { - case SHARP: print(fd, "µµ"); break; - case THRUST: print(fd, "°Ë"); break; - case BLUNT: print(fd, "ºÀ"); break; - case POLE: print(fd, "â"); break; - case MISSILE: print(fd, "±Ã"); break; + case SHARP: print(fd, "ë�„"); break; + case THRUST: print(fd, "ê²€"); break; + case BLUNT: print(fd, "ë´‰"); break; + case POLE: print(fd, "ì°½"); break; + case MISSILE: print(fd, "ê¶�"); break; } - print(fd, " ¹«±â.\n"); + print(fd, " 무기.\n"); } else print(fd, "%d\n", obj_ptr->type); - print(fd, "¹æ¾î·Â: %2.2d", obj_ptr->armor); - print(fd, " °¡°Ý: %5.5d", obj_ptr->value); - print(fd, " ¹«°Ô: %2.2d", obj_ptr->weight); + print(fd, "ë°©ì–´ë ¥: %2.2d", obj_ptr->armor); + print(fd, " 가격: %5.5d", obj_ptr->value); + print(fd, " 무게: %2.2d", obj_ptr->weight); if(obj_ptr->questnum) - print(fd, " ÀÓ¹«: %d\n", obj_ptr->questnum); + print(fd, " 임무: %d\n", obj_ptr->questnum); else print(fd, "\n"); @@ -549,14 +549,14 @@ object *obj_ptr; else strcat(str, "Organization 0, "); if(F_ISSET(obj_ptr, OCLSEL)){ strcat(str, "Cls-Sel: "); - if (F_ISSET(obj_ptr, OASSNO)) strcat(str, "ÀÚ, "); - if (F_ISSET(obj_ptr, OBARBO)) strcat(str, "±Ç, "); - if (F_ISSET(obj_ptr, OCLERO)) strcat(str, "ºÒ, "); - if (F_ISSET(obj_ptr, OFIGHO)) strcat(str, "°Ë, "); - if (F_ISSET(obj_ptr, OMAGEO)) strcat(str, "µµ, "); - if (F_ISSET(obj_ptr, OPALAO)) strcat(str, "¹«, "); - if (F_ISSET(obj_ptr, ORNGRO)) strcat(str, "Æ÷, "); - if (F_ISSET(obj_ptr, OTHIEO)) strcat(str, "µµ, "); + if (F_ISSET(obj_ptr, OASSNO)) strcat(str, "ìž�, "); + if (F_ISSET(obj_ptr, OBARBO)) strcat(str, "ê¶Œ, "); + if (F_ISSET(obj_ptr, OCLERO)) strcat(str, "불, "); + if (F_ISSET(obj_ptr, OFIGHO)) strcat(str, "ê²€, "); + if (F_ISSET(obj_ptr, OMAGEO)) strcat(str, "ë�„, "); + if (F_ISSET(obj_ptr, OPALAO)) strcat(str, "무, "); + if (F_ISSET(obj_ptr, ORNGRO)) strcat(str, "í�¬, "); + if (F_ISSET(obj_ptr, OTHIEO)) strcat(str, "ë�„, "); } @@ -591,7 +591,7 @@ cmd *cmnd; return(PROMPT); if(cmnd->val[1] < 2) { - print(fd, "¹«¾ùÀ» ¸¸µéÁÒ?\n"); + print(fd, "무엇ì�„ 만들죠?\n"); return(0); } @@ -599,7 +599,7 @@ cmd *cmnd; ff = open(file, O_RDONLY, 0); if(ff >= 0) { close(ff); - print(fd, "±âÁ¸ÀÇ ¹æÀÌ Á¸ÀçÇÕ´Ï´Ù.\n"); + print(fd, "기존ì�˜ ë°©ì�´ 존재합니다.\n"); return(0); } @@ -613,7 +613,7 @@ cmd *cmnd; ff = open(file, O_RDWR | O_CREAT, ACC); if(ff < 0) { - print(fd, "¿¡·¯: Unable open files.\n"); + print(fd, "ì—�러: Unable open files.\n"); return(0); } @@ -624,7 +624,7 @@ cmd *cmnd; close(ff); free(new_rom); - print(fd, "¹æ¹øÈ£ #%d ¸¸µé¾ú½À´Ï´Ù.\n", cmnd->val[1]); + print(fd, "방번호 #%d 만들었습니다.\n", cmnd->val[1]); return(0); } @@ -642,7 +642,7 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2 && !F_ISSET(ply_ptr, PSPYON)) { - print(fd, "´©±¼ ¿°Å½Çմϱî??\n"); + print(fd, "누굴 ì—¼íƒ�합니까??\n"); return(0); } @@ -650,19 +650,19 @@ cmd *cmnd; for(i=0; istr[1][0] = up(cmnd->str[1][0]); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr) { - print(fd, "´©±¼ °¨½ÃÇÏ·Á±¸¿ä.\n"); + print(fd, "누굴 ê°�시하려구요.\n"); return(0); } if(Spy[crt_ptr->fd] > -1) { - print(fd, "±×»ç¶÷À» ¹ú½á °¨½ÃÇϰí ÀÖ½À´Ï´Ù.\n"); + print(fd, "그사람ì�„ 벌ì�¨ ê°�시하고 있습니다.\n"); return(0); } @@ -670,7 +670,7 @@ cmd *cmnd; if(crt_ptr->class >= CARETAKER) { if(!(!strcmp(ply_ptr->name, DMNAME) || !strcmp(ply_ptr->name, DMNAME2))){ ANSI(crt_ptr->fd,RED); - print(crt_ptr->fd,"%s ´ç½ÅÀ» °¨½ÃÇÕ´Ï´Ù.\n",ply_ptr->name); + print(crt_ptr->fd,"%s 당신ì�„ ê°�시합니다.\n",ply_ptr->name); ANSI(crt_ptr->fd,WHITE); output_buf(); } @@ -679,7 +679,7 @@ cmd *cmnd; Spy[crt_ptr->fd] = ply_ptr->fd; F_SET(ply_ptr, PSPYON); F_SET(ply_ptr, PDMINV); - print(fd, "°¨½Ã ½ÃÀÛ.\n"); + print(fd, "ê°�시 시작.\n"); return(0); } diff --git a/src/dm3.c b/src/dm3.c index c5c1d980..12b915c1 100644 --- a/src/dm3.c +++ b/src/dm3.c @@ -484,7 +484,7 @@ cmd *cmnd; case 's': if(flags[1] == 'm'){ if (num > 1000){ - print(fd, "´ç½ÅÀº ºñ¸®¸¦ ÀúÁö¸¦·Á±¸¿ä?!! »Ç»Ç ¹é.\n"); + print(fd, "당신ì�€ 비리를 저지를려구요?!! 뽀뽀 ë°±.\n"); } else { obj_ptr->shotsmax = num; @@ -493,7 +493,7 @@ cmd *cmnd; } else { if (num > 1000){ - print(fd, "´ç½ÅÀº ºñ¸®¸¦ ÀúÁö¸¦·Á±¸¿ä?!! »Ç»Ç ¹é.\n"); + print(fd, "당신ì�€ 비리를 저지를려구요?!! 뽀뽀 ë°±.\n"); } else { obj_ptr->shotscur = num; @@ -705,7 +705,7 @@ cmd *cmnd; if(cmnd->num == 2 && !strcmp(cmnd->str[1], "r")) { unlink(fn); - print(ply_ptr->fd, "LogÆÄÀÏÀ» »èÁ¦Çß½À´Ï´Ù.\n"); + print(ply_ptr->fd, "Log파ì�¼ì�„ 삭제했습니다.\n"); return(0); } if(cmnd->num == 2 && !strcmp(cmnd->str[1], "f")) { @@ -763,7 +763,7 @@ cmd *cmnd; return(PROMPT); if(cmnd->num < 2) { - print(ply_ptr->fd, "´©±¸¸¦ Finger°Ë»ö Çմϱî?\n"); + print(ply_ptr->fd, "누구를 Finger검색 합니까?\n"); return(0); } @@ -773,7 +773,7 @@ cmd *cmnd; cmnd->str[1][0] = up(cmnd->str[1][0]); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr) { - print(ply_ptr->fd, "¿ÏÀüÇÑ À̸§À» »ç¿ëÇϼ¼¿ä\n"); + print(ply_ptr->fd, "완전한 ì�´ë¦„ì�„ 사용하세요\n"); return(0); } strcpy(addr, Ply[crt_ptr->fd].io->address); @@ -825,7 +825,7 @@ cmd *cmnd; return(PROMPT); if(cmnd->num < 2) { - print(ply_ptr->fd, "¹«¾ùÀÇ ¸®½ºÆ®¸¦ º¾´Ï±î?\n"); + print(ply_ptr->fd, "무엇ì�˜ 리스트를 봅니까?\n"); return(0); } if(!vfork()) { diff --git a/src/dm4.c b/src/dm4.c index ac38b20a..809f30ff 100644 --- a/src/dm4.c +++ b/src/dm4.c @@ -82,7 +82,7 @@ cmd *cmnd; return(PROMPT); if(cmnd->num < 2) { - print(fd, "¹®¹ý: <»ç¿ëÀÚ> [c/m] *º¡¾î¸®\n"); + print(fd, "문법: <사용ìž�> [c/m] *벙어리\n"); return(0); } @@ -91,7 +91,7 @@ cmd *cmnd; crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) ){ - print(fd, "±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사용ìž�는 없습니다.\n"); return(0); } @@ -99,7 +99,7 @@ cmd *cmnd; if(cmnd->num < 3) { crt_ptr->daily[DL_BROAD].cur = 0; crt_ptr->daily[DL_BROAD].ltime = time(0); - print(fd,"%MÀº Á¶¿ëÇØ Á³½À´Ï´Ù.\n",crt_ptr->name); + print(fd,"%Mì�€ 조용해 졌습니다.\n",crt_ptr->name); } else if (low(cmnd->str[2][0]) == 'c') { @@ -150,7 +150,7 @@ cmd *cmnd; len = strlen(&cmnd->fullstr[i+1]); */ if(len < 1) { - print(fd, "¹«¾ó ¹æ¼ÛÇմϱî?\n"); + print(fd, "무얼 방송합니까?\n"); return(0); } if (cmnd->fullstr[i] == '-') @@ -189,7 +189,7 @@ cmd *cmnd; return(PROMPT); if(cmnd->num < 2) { - print(fd, "¹«¾ùÀ» ¿Ü¿ó´Ï±î?\n"); + print(fd, "무엇ì�„ 외ì›�니까?\n"); return(PROMPT); } @@ -220,11 +220,11 @@ cmd *cmnd; } while(spllist[c].splno != -1); if(match == 0) { - print(fd, "±×·± ÁÖ¹®Àº ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 주문ì�€ 없습니다.\n"); return(0); } else if(match > 1) { - print(fd, "ÁÖ¹®À̸§ÀÌ ÀÌ»óÇÕ´Ï´Ù.\n"); + print(fd, "주문ì�´ë¦„ì�´ ì�´ìƒ�합니다.\n"); return(0); } @@ -242,14 +242,14 @@ cmd *cmnd; print(fd, "Spell failure.\n"); return(0); } - print(fd,"´ç½ÅÀº %s ÁÖ¹®À» ¹æ¿¡ ÀÖ´Â »ç¶÷¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + print(fd,"당신ì�€ %s 주문ì�„ ë°©ì—� 있는 사람ì—�게 외웠습니다.\n", spllist[splno].splstr); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %s ÁÖ¹®À» ¹æ¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + "%Mì�´ %s 주문ì�„ ë°©ì—� 있는 사람들ì—�게 외웠습니다.\n", ply_ptr,spllist[splno].splstr); while(cp){ - print(cp->crt->fd,"%MÀÌ %s¸¦ ´ç½Å¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + print(cp->crt->fd,"%Mì�´ %s를 당신ì—�게 외웠습니다.\n", ply_ptr,spllist[splno].splstr); cp_tmp=cp->next_tag; pp = cp->crt; @@ -267,20 +267,20 @@ cmd *cmnd; continue; } if ((c = dm_gspells(cp->crt,splno))){ - print(fd,"±×·± ÁÖ¹®Àº ¾ÊµË´Ï´Ù.\n"); + print(fd,"그런 주문ì�€ 않ë�©ë‹ˆë‹¤.\n"); break; } - print(cp->crt->fd,"%MÀÌ %s¸¦ ´ç½Å¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + print(cp->crt->fd,"%Mì�´ %s를 당신ì—�게 외웠습니다.\n", ply_ptr,spllist[splno].splstr); cp = cp->next_tag; } if (!c){ - print(fd,"´ç½ÅÀº %s ÁÖ¹®À» ¹æ¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + print(fd,"당신ì�€ %s 주문ì�„ ë°©ì—� 있는 사람들ì—�게 외웠습니다.\n", spllist[splno].splstr); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %s ÁÖ¹®À» ¹æ¿¡ ÀÖ´Â »ç¶÷µé¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + "%Mì�´ %s 주문ì�„ ë°©ì—� 있는 사람들ì—�게 외웠습니다.\n", ply_ptr,spllist[splno].splstr); } @@ -292,15 +292,15 @@ cmd *cmnd; if(Ply[i].ply->fd == fd) continue; if(F_ISSET(Ply[i].ply, PDMINV)) continue; if ((c=dm_gspells(Ply[i].ply,splno))){ - print(fd,"±×ÁÖ¹®À» ¸ðµÎ¿¡°Ô ¿Ü¿ï¼ö ¾ø½À´Ï´Ù.\n"); + print(fd,"그주문ì�„ 모ë‘�ì—�게 외울수 없습니다.\n"); break; } - print(Ply[i].ply->fd,"%MÀÌ %s ÁÖ¹®À» ´ç½Å¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", + print(Ply[i].ply->fd,"%Mì�´ %s 주문ì�„ 당신ì—�게 외웠습니다.\n", ply_ptr,spllist[splno].splstr); } if (!c){ - print(fd,"´ç½ÅÀº %s ÁÖ¹®À» ¸ðµÎ¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", spllist[splno].splstr); - broadcast("%MÀÌ %s ÁÖ¹®À» ¸ðµÎ¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n",ply_ptr, + print(fd,"당신ì�€ %s 주문ì�„ 모ë‘�ì—�게 외웠습니다.\n", spllist[splno].splstr); + broadcast("%Mì�´ %s 주문ì�„ 모ë‘�ì—�게 외웠습니다.\n",ply_ptr, spllist[splno].splstr); } @@ -433,7 +433,7 @@ cmd *cmnd; return(PROMPT); if (cmnd->num < 2){ - print(fd,"´©±¸ÀÇ ±×·ìÀ» º¾´Ï±î?\n"); + print(fd,"누구ì�˜ 그룹ì�„ 봅니까?\n"); return(PROMPT); } @@ -447,17 +447,17 @@ cmd *cmnd; } if(!grp_ptr) { - print(fd, "±×·± »ç¶÷ÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사람ì�´ 없습니다.\n"); return(PROMPT); } - print(fd,"%MÀÌ µû¸£°í ÀÖ´Â »ç¶÷: %s\n",grp_ptr,(grp_ptr->following) ? - grp_ptr->following->name : "¾øÀ½"); + print(fd,"%Mì�´ 따르고 있는 사람: %s\n",grp_ptr,(grp_ptr->following) ? + grp_ptr->following->name : "ì—†ì�Œ"); cp = grp_ptr->first_fol; - print(fd,"%MÀÇ ±×·ì: ",grp_ptr); + print(fd,"%Mì�˜ 그룹: ",grp_ptr); if(!cp) { - print(fd, "¾øÀ½.\n"); + print(fd, "ì—†ì�Œ.\n"); return(0); } @@ -503,7 +503,7 @@ int i=0, j=0; return(PROMPT); if (cmnd->num < 2){ - print(ply_ptr->fd,"¹«½¼ ÆÄÀÏÀ» º¾´Ï±î?\n"); + print(ply_ptr->fd,"무슨 파ì�¼ì�„ 봅니까?\n"); return(PROMPT); } @@ -562,7 +562,7 @@ cmd *cmnd; return(PROMPT); if (cmnd->num < 2){ - print(fd,"¾î¶² ¹°°ÇÀ» ¹«½¼ À̸§À¸·Î ¹Ù²Ù°í ½ÍÀ¸¼¼¿ä?"); + print(fd,"ì–´ë–¤ 물건ì�„ 무슨 ì�´ë¦„으로 바꾸고 싶으세요?"); print(fd,"*oname [#] [-dok] \n"); return(PROMPT); } @@ -599,7 +599,7 @@ cmd *cmnd; obj_ptr = find_obj(ply_ptr, ply_ptr->parent_rom->first_obj, cmnd->str[1], cmnd->val[1]); } if (!obj_ptr){ - print(fd,"±×·± ¾ÆÀÌÅÛÀº ¾ø¾î¿ä."); + print(fd,"그런 ì•„ì�´í…œì�€ 없어요."); paste_command(cmnd->fullstr,len); return(PROMPT); } @@ -644,17 +644,17 @@ cmd *cmnd; case 0: strncpy(obj_ptr->name,&cmnd->fullstr[i],80); obj_ptr->name[79]=0; - print(fd, "\nÀ̸§ÀÌ "); + print(fd, "\nì�´ë¦„ì�´ "); break; case 1: strncpy(obj_ptr->description,&cmnd->fullstr[i],80); obj_ptr->description[79]=0; - print(fd, "\n¼³¸íÀÌ "); + print(fd, "\n설명ì�´ "); break; case 2: strncpy(obj_ptr->use_output,&cmnd->fullstr[i],80); obj_ptr->use_output[79]=0; - print(fd, "\nÃâ·Â¹®ÀÌ "); + print(fd, "\n출력문ì�´ "); break; case 3: if (num){ @@ -662,11 +662,11 @@ cmd *cmnd; strncpy(ply_ptr->key[2],&cmnd->fullstr[i],20); obj_ptr->key[num-1][19] =0; ply_ptr->key[2][19] =0; - print(fd, "\n۰¡ "); + print(fd, "\n키가 "); } break; } - print(fd,"¹Ù²î¾ú½À´Ï´Ù."); + print(fd,"바뀌었습니다."); paste_command(cmnd->fullstr,len); } @@ -700,8 +700,8 @@ cmd *cmnd; return(PROMPT); if (cmnd->num < 2){ - print(fd,"¾î¶² ¸÷À» ¹«½¼ À̸§À¸·Î ¹Ù²Ù½Ã·Á±¸¿ä?"); - print(fd,"<¸÷À̸§> [#] [-dtmk] <À̸§> *cname"); + print(fd,"ì–´ë–¤ 몹ì�„ 무슨 ì�´ë¦„으로 바꾸시려구요?"); + print(fd,"<몹ì�´ë¦„> [#] [-dtmk] <ì�´ë¦„> *cname"); return(PROMPT); } @@ -734,7 +734,7 @@ cmd *cmnd; cmnd->val[1]); if (!crt_ptr){ - print(fd,"ÀÌ ¹æ¿¡ ±×·± °ÍÀº ¾ø½À´Ï´Ù."); + print(fd,"ì�´ ë°©ì—� 그런 것ì�€ 없습니다."); paste_command(cmnd->fullstr,len); return(PROMPT); } @@ -788,34 +788,34 @@ cmd *cmnd; case 0: strncpy(crt_ptr->name,&cmnd->fullstr[i],80); crt_ptr->name[79]=0; - print(fd, "\nÀ̸§ÀÌ "); + print(fd, "\nì�´ë¦„ì�´ "); break; case 1: strncpy(crt_ptr->description,&cmnd->fullstr[i],80); crt_ptr->description[79]=0; - print(fd, "\nÃâ·Â¹®ÀÌ "); + print(fd, "\n출력문ì�´ "); break; case 2: strncpy(crt_ptr->talk,&cmnd->fullstr[i],80); crt_ptr->talk[79]=0; - print(fd, "\n´ëÈ­¹®ÀÌ "); + print(fd, "\n대화문ì�´ "); break; case 3: if (num){ strncpy(crt_ptr->key[num-1],&cmnd->fullstr[i],20); crt_ptr->key[num-1][19] =0; - print(fd, "\n۰¡ "); + print(fd, "\n키가 "); } break; case 4: if (num){ - print(fd, "\n¸÷ÀÇ À§Ä¡°¡ "); + print(fd, "\n몹ì�˜ 위치가 "); - print(fd, "±× ¹æÇâ¿¡´Â ¹æÀÌ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ ë°©í–¥ì—�는 ë°©ì�´ 없습니다."); return(0); } break; } - print(fd,"¹Ù²î¾ú½À´Ï´Ù."); + print(fd,"바뀌었습니다."); } diff --git a/src/dm5.c b/src/dm5.c index c0694216..490a8f2d 100644 --- a/src/dm5.c +++ b/src/dm5.c @@ -371,12 +371,12 @@ cmd *cmnd; len = strlen(cmnd->fullstr); if (!len) { - print(ply_ptr->fd, "¹«¾ùÀ¸·Î À̸§À» ¹Ù²ß´Ï±î?\n"); + print(ply_ptr->fd, "무엇으로 ì�´ë¦„ì�„ 바꿉니까?\n"); return(0); } if (len>79) { - print(ply_ptr->fd, "À̸§ÀÌ ³Ê¹« ±é´Ï´Ù.\n"); + print(ply_ptr->fd, "ì�´ë¦„ì�´ 너무 ê¹�니다.\n"); return(0); } @@ -384,7 +384,7 @@ cmd *cmnd; memcpy(rom_ptr->name,&cmnd->fullstr[i],len); rom_ptr->name[len] = 0; paste_command(cmnd->fullstr, index); - print(ply_ptr->fd, "À̸§À» º¯°æÇÏ¿´½À´Ï´Ù.\n"); + print(ply_ptr->fd, "ì�´ë¦„ì�„ 변경하였습니다.\n"); return(0); } @@ -625,7 +625,7 @@ cmd *cmnd; obj_ptr->shotsmax+=mrand(1,20); obj_ptr->shotscur=obj_ptr->shotsmax; add_obj_rom(obj_ptr, new_rom); - broadcast("\n%s¿¡ ÃÊÀÎÀÇ µ¹ÀÌ ¶³¾îÁ³½À´Ï´Ù.", new_rom->name); + broadcast("\n%sì—� ì´ˆì�¸ì�˜ ë�Œì�´ 떨어졌습니다.", new_rom->name); return(0); } @@ -645,8 +645,8 @@ cmd *cmnd; load_rom(rom_num, &new_rom); add_crt_rom(crt_ptr, new_rom); } - broadcast("\n¹«ÀûÁ¸À» °­Å»ÇÏ·Á°í µå·¹´Ï¾Æ ¸÷ÀÌ Ä§°øÇß½À´Ï´Ù."); - broadcast("\n¶óÀÛÀÌ ºÎÇϵ鿡°Ô ¿ÜĨ´Ï´Ù. \"ÀϹÝÀº °Çµå¸®Áö ¸»¾Æ¾Æ¶ó\""); + broadcast("\n무ì �ì¡´ì�„ 강탈하려고 드레니아 몹ì�´ 침공했습니다."); + broadcast("\në�¼ìž‘ì�´ 부하들ì—�게 외칩니다. \"ì�¼ë°˜ì�€ 건드리지 ë§�ì•„ì•„ë�¼\""); return(0); } @@ -768,8 +768,8 @@ cmd *cmnd; return(DOPROMPT); } - else if(!strcmp(cmnd->str[1], "°ü¸®")) { - strcat(file, "/°ü¸®"); + else if(!strcmp(cmnd->str[1], "관리")) { + strcat(file, "/관리"); view_file(fd, 1, file); return(DOPROMPT); } diff --git a/src/dm6.c b/src/dm6.c index 24cc6096..a8c64b64 100644 --- a/src/dm6.c +++ b/src/dm6.c @@ -26,42 +26,50 @@ cmd *cmnd; creature *crt_ptr; int cfd, fd; char str[IBUFSIZE+1]; - char file[80]; + char file[512]; + + fd = ply_ptr->fd; if(ply_ptr->class < SUB_DM) return(PROMPT); if(cmnd->num < 2) { - print(ply_ptr->fd, "\n´©±¸¿¡°Ô ¹ø°³¸¦ ³»¸±±î¿ä?\n"); + print(ply_ptr->fd, "\n누구ì—�게 번개를 내릴까요?\n"); return(PROMPT); } lowercize(cmnd->str[1], 1); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr || crt_ptr== ply_ptr) { - print(ply_ptr->fd, "%sÀÌ ¾ø½À´Ï´Ù.\n", cmnd->str[1]); + print(ply_ptr->fd, "%sì�´ 없습니다.\n", cmnd->str[1]); return(0); } if(crt_ptr->class >= SUB_DM) { ANSI(crt_ptr->fd, RED); - print(crt_ptr->fd, "%sÀÌ ´ç½Å¿¡°Ô ¹ø°³¸¦ ³»¸®·Á ÇÕ´Ï´Ù!\n", ply_ptr->name); + print(crt_ptr->fd, "%sì�´ 당신ì—�게 번개를 내리려 합니다!\n", ply_ptr->name); ANSI(crt_ptr->fd, WHITE); return(0); } cfd = crt_ptr->fd; if(!(Ply[cfd].io->fn == command && Ply[cfd].io->fnparam == 1)) { - print(ply_ptr->fd, "%s¸¦ Áö±Ý ¹ø°³ ³»¸±¼ö ¾ø½À´Ï´Ù .\n", cmnd->str[1]); + print(ply_ptr->fd, "%s를 지금 번개 내릴수 없습니다 .\n", cmnd->str[1]); return(0); } ANSI(cfd, MAGENTA); - print(cfd, "¹ø°³°¡ Çϴÿ¡¼­ ¶³¾îÁý´Ï´Ù ½ÅµéÀÇ ºÐ³ë°¡ Áøµ¿ÇÕ´Ï´Ù!\n"); + print(cfd, "번개가 하늘ì—�서 떨어집니다 신들ì�˜ 분노가 ì§„ë�™í•©ë‹ˆë‹¤!\n"); ANSI(cfd, WHITE); - broadcast_rom(cfd, crt_ptr->rom_num,"¹ø°³°¡ Çϴÿ¡¼­ %s¿¡°Ô ¶³¾îÁý´Ï´Ù.\n",crt_ptr->name); - broadcast_all("\n### %S%j Àí´õ¹Ì°¡ µÇ¹ö·È½À´Ï´Ù! %s¿¡°Ô Á¶ÀǸ¦ Ç¥ÇϽʽÿä.\n", Ply[cfd].ply->name,"1", F_ISSET(Ply[cfd].ply, PMALES) ? "±×":"±×³à"); - sprintf(file, "mv -f %s/%s/%s %s/%s/%s~~", - PLAYERPATH, first_han(Ply[cfd].ply->name), Ply[cfd].ply->name, - PLAYERPATH, first_han(Ply[cfd].ply->name), Ply[cfd].ply->name); + broadcast_rom(cfd, crt_ptr->rom_num,"번개가 하늘ì—�서 %sì—�게 떨어집니다.\n",crt_ptr->name); + broadcast_all("\n### %S%j ìž¿ë�”미가 ë�˜ë²„렸습니다! %sì—�게 ì¡°ì�˜ë¥¼ 표하십시요.\n", Ply[cfd].ply->name,"1", F_ISSET(Ply[cfd].ply, PMALES) ? "ê·¸":"그녀"); + if(player_path_from_name(Ply[cfd].ply->name, file, sizeof(file)) < 0) { + print(fd, "플레ì�´ì–´ 경로를 만들 수 없습니다.\n"); + return(0); + } + { + char cmd_file[256]; + snprintf(cmd_file, sizeof(cmd_file), "mv -f %s %s~~", file, file); + snprintf(file, sizeof(file), "%s", cmd_file); + } disconnect(cfd); - broadcast("### ¸Ö¸®¼­ ½ÅµéÀÇ ºÐ³ë¿¡ õµÕ¼Ò¸®°¡ µé·Á¿É´Ï´Ù.\n"); + broadcast("### 멀리서 신들ì�˜ ë¶„ë…¸ì—� 천둥소리가 들려옵니다.\n"); system(file); all_broad_time=time(0); return(0); @@ -91,7 +99,7 @@ cmd *cmnd; return(PROMPT); if (cmnd->num < 2) { - print (fd, "»ç¿ë¹ý: <±«¹°> *µû¸£±â\n"); + print (fd, "사용법: <괴물> *따르기\n"); return(0); } @@ -99,17 +107,17 @@ cmd *cmnd; cmnd->val[1]); if(!crt_ptr) { - print (fd, "±×·± ±«¹°ÀÌ ¾ø½À´Ï´Ù.\n"); + print (fd, "그런 괴물ì�´ 없습니다.\n"); return (0); } if(F_ISSET(crt_ptr, MPERMT)) { - print (fd, "°íÁ¤µÈ ±«¹°ÀÔ´Ï´Ù.\n"); + print (fd, "ê³ ì •ë�œ 괴물입니다.\n"); return(0); } if(F_ISSET (crt_ptr, MDMFOL)) { F_CLR(crt_ptr, MDMFOL); - print (fd, "%sÀÌ ´ç½ÅÀ» ±×¸¸ µû¸¨´Ï´Ù.\n", crt_ptr->name); + print (fd, "%sì�´ 당신ì�„ 그만 따릅니다.\n", crt_ptr->name); cp = ply_ptr->first_fol; if(cp->crt == crt_ptr) { ply_ptr->first_fol = cp->next_tag; @@ -142,7 +150,7 @@ cmd *cmnd; pp->next_tag = ply_ptr->first_fol; ply_ptr->first_fol = pp; } - print (fd, "%sÀÌ ´ç½ÅÀ» µû¸¨´Ï´Ù.\n", crt_ptr->name); + print (fd, "%sì�´ 당신ì�„ 따릅니다.\n", crt_ptr->name); return (0); } @@ -168,7 +176,7 @@ cmd *cmnd; return(PROMPT); if (cmnd->num < 3) { - print (fd, "»ç¿ë¹ý: <±«¹°> <»ç¿ëÀÚ> *°ø°Ý\n"); + print (fd, "사용법: <괴물> <사용ìž�> *공격\n"); return(0); } @@ -176,12 +184,12 @@ cmd *cmnd; cmnd->val[1]); if(!atr_ptr) { - print (fd, "±×·± ±«¹°ÀÌ ¾ø½À´Ï´Ù.\n"); + print (fd, "그런 괴물ì�´ 없습니다.\n"); return (0); } if(F_ISSET(atr_ptr, MPERMT)) { - print (fd, "°íÁ¤µÈ ±«¹°ÀÔ´Ï´Ù.\n"); + print (fd, "ê³ ì •ë�œ 괴물입니다.\n"); return(0); } @@ -194,19 +202,19 @@ cmd *cmnd; } if(!atd_ptr) { - print (fd, "±×·± »ç¶÷ÀÌ ¾ø½À´Ï´Ù.\n"); + print (fd, "그런 사람ì�´ 없습니다.\n"); return (0); } if(F_ISSET(atd_ptr, MPERMT)) { - print (fd, "°íÁ¤µÈ ±«¹°ÀÔ´Ï´Ù.\n"); + print (fd, "ê³ ì •ë�œ 괴물입니다.\n"); return(0); } - print(fd, "%s°¡ %s¸¦ °ø°ÝÇÕ´Ï´Ù.\n", atd_ptr->name, atr_ptr->name); + print(fd, "%sê°€ %s를 공격합니다.\n", atd_ptr->name, atr_ptr->name); add_enm_crt(atd_ptr->name, atr_ptr); - broadcast_rom(atd_ptr->fd, atd_ptr->rom_num, "%MÀÌ %mÀ» °ø°ÝÇÕ´Ï´Ù.", atr_ptr, atd_ptr); + broadcast_rom(atd_ptr->fd, atd_ptr->rom_num, "%Mì�´ %mì�„ 공격합니다.", atr_ptr, atd_ptr); if(atd_ptr->type = PLAYER) - print (atd_ptr->fd, "%MÀÌ ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù!\n", atr_ptr); + print (atd_ptr->fd, "%Mì�´ 당신ì�„ 공격합니다!\n", atr_ptr); return(0); } @@ -235,10 +243,10 @@ int fd, n=0; crt_ptr = find_crt(ply_ptr, rom_ptr->first_mon, cmnd->str[1], cmnd->val[1]); if(!crt_ptr){ - print(fd, "±×·± ±«¹°ÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 괴물ì�´ 없습니다.\n"); return(0); } - print(ply_ptr->fd,"%sÀÇ Àûµé:\n", crt_ptr->name); + print(ply_ptr->fd,"%sì�˜ ì �들:\n", crt_ptr->name); ep = crt_ptr->first_enm; @@ -248,7 +256,7 @@ int fd, n=0; ep = ep->next_tag; } if (!n) - print(fd, "¾øÀ½.\n"); + print(fd, "ì—†ì�Œ.\n"); return(0); } @@ -270,7 +278,7 @@ ctag *cp; return(PROMPT); if(cmnd->num < 2) { - print(ply_ptr->fd, "´©±¸ÀÇ ÃÖ¸éÀÚ¸¦ º¾´Ï±î?\n"); + print(ply_ptr->fd, "누구ì�˜ 최면ìž�를 봅니까?\n"); return(PROMPT); } @@ -278,21 +286,20 @@ ctag *cp; lowercize(cmnd->str[1], 1); crt_ptr = find_who(cmnd->str[1]); if(!crt_ptr) { - print(ply_ptr->fd, "%sÀº ¾ø½À´Ï´Ù.\n", cmnd->str[1]); + print(ply_ptr->fd, "%sì�€ 없습니다.\n", cmnd->str[1]); return(0); } cfd = crt_ptr->fd; cp = Ply[cfd].extr->first_charm; - print (fd, "%sÀÇ ÇÇÃÖ¸éÀÚ:\n", crt_ptr->name); + print (fd, "%sì�˜ 피최면ìž�:\n", crt_ptr->name); while(cp) { n += 1; print(fd,"%s.\n", cp->crt->name); cp = cp->next_tag; } if(!n) - print(fd, "¾øÀ½.\n"); + print(fd, "ì—†ì�Œ.\n"); return(0); } - diff --git a/src/files1.c b/src/files1.c index a20c7d2e..e0b484c1 100644 --- a/src/files1.c +++ b/src/files1.c @@ -10,6 +10,12 @@ #include "mstruct.h" #include "mextern.h" +#define MAX_NESTED_OBJECTS 4096 +#define MAX_ROM_EXITS 200 +#define MAX_ROM_MOBS 4096 +#define MAX_ROM_ITEMS 8192 +#define MAX_ROM_DESC_BYTES (1024 * 1024) + /**********************************************************************/ /* count_obj */ /**********************************************************************/ @@ -103,7 +109,7 @@ char perm_only; while(op) { if(!perm_only || (perm_only && (F_ISSET(op->obj, OPERMT)))) total++; - /* º¸µû¸® ¹°°Ç üũ */ + /* 보따리 물건 ì²´í�¬ */ if(!perm_only && cnt_cont ==1 && F_ISSET(op->obj, OCONTN)) total+=op->obj->shotscur; op = op->next_tag; @@ -393,6 +399,10 @@ object *obj_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_NESTED_OBJECTS) { + error = 1; + cnt = 0; + } prev = &obj_ptr->first_obj; while(cnt > 0) { @@ -462,6 +472,10 @@ creature *crt_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_NESTED_OBJECTS) { + error = 1; + cnt = 0; + } prev = &crt_ptr->first_obj; while(cnt > 0) { @@ -533,6 +547,10 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_EXITS) { + /* Legacy room blobs may carry non-canonical count bytes. */ + cnt = 0; + } /* Load the exits */ @@ -565,6 +583,10 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_MOBS) { + /* Treat invalid counts as empty to keep room load non-fatal. */ + cnt = 0; + } cprev = &rom_ptr->first_mon; while(cnt > 0) { @@ -595,6 +617,9 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_ITEMS) { + cnt = 0; + } oprev = &rom_ptr->first_obj; while(cnt > 0) { @@ -625,8 +650,11 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_DESC_BYTES) { + cnt = 0; + } - if(cnt) { + if(cnt > 0) { sh = (char *)malloc(cnt); if(sh) { n = read(fd, sh, cnt); @@ -643,8 +671,11 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_DESC_BYTES) { + cnt = 0; + } - if(cnt) { + if(cnt > 0) { lo = (char *)malloc(cnt); if(lo) { n = read(fd, lo, cnt); @@ -661,10 +692,13 @@ room *rom_ptr; error = 1; cnt = 0; } + else if(cnt < 0 || cnt > MAX_ROM_DESC_BYTES) { + cnt = 0; + } - if(cnt) { + if(cnt > 0) { ob = (char *)malloc(cnt); - if(lo) { + if(ob) { n = read(fd, ob, cnt); if(n < cnt) error = 1; diff --git a/src/files2.c b/src/files2.c index 4a13e0fe..da26bce3 100644 --- a/src/files2.c +++ b/src/files2.c @@ -547,7 +547,10 @@ creature *ply_ptr; int size; #endif - sprintf(file, "%s/%s/%s", PLAYERPATH,first_han(str), str); + if(player_path_from_name(str, file, sizeof(file)) < 0) + return(-1); + if(player_path_ensure_dir(str) < 0) + return(-1); sprintf(filebak, "%s~", file); rename(file, filebak); fd = rp_open(file, O_RDWR | O_CREAT | O_BINARY, ACC); @@ -594,14 +597,15 @@ int load_ply(str, ply_ptr) char *str; creature **ply_ptr; { - char file[80]; + char file[256]; int fd, n; #ifdef COMPRESS char *a_buf, *b_buf; int size; #endif - sprintf(file, "%s/%s/%s", PLAYERPATH, first_han(str), str); + if(player_path_from_name(str, file, sizeof(file)) < 0) + return(-1); fd = rp_open(file, O_RDONLY | O_BINARY, 0); if(fd < 0) return(-1); diff --git a/src/frp.new b/src/frp.new new file mode 100755 index 00000000..e64f1060 Binary files /dev/null and b/src/frp.new differ diff --git a/src/global.c b/src/global.c index 91bfcd78..e7f7a876 100644 --- a/src/global.c +++ b/src/global.c @@ -60,15 +60,15 @@ int bonus[64] = { -4, -4, -4, -3, -3, -2, -2, -1, -1, -1, 0, 0, 0, 0, 1, 1, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, }; -char class_str[][15] = { "Á¦ÀÛ", "ÀÚ°´", "±Ç¹ý°¡", "ºÒÁ¦ÀÚ", - "°Ë»ç", "µµ¼ú»ç", "¹«»ç", "Æ÷Á¹", "µµµÏ", "¹«Àû", "ÃÊÀÎ", - "¿î¿µÀÚ", "°ü¸®ÀÚ" }; +char class_str[][15] = { "제작", "ìž�ê°�", "권법가", "불제ìž�", + "검사", "ë�„술사", "무사", "í�¬ì¡¸", "ë�„ë‘‘", "무ì �", "ì´ˆì�¸", + "ìš´ì˜�ìž�", "관리ìž�" }; -char race_str[][15] = { "Unknown", "³­ÀåÀÌÁ·", "¿ë½ÅÁ·", "¿ä±«Á·", "Åä½ÅÁ·", - "Àΰ£Á·", "µµ±úºñÁ·", "°ÅÀÎÁ·", "¶¥±Í½ÅÁ·", "°³±¸¸®Á·" }; +char race_str[][15] = { "Unknown", "난장ì�´ì¡±", "용신족", "요괴족", "토신족", + "ì�¸ê°„족", "ë�„깨비족", "ê±°ì�¸ì¡±", "땅귀신족", "개구리족" }; -char race_adj[][15] = { "Unknown", "³­ÀåÀÌÁ·", "¿ë½ÅÁ·", "¿ä±«Á·", - "Åä½ÅÁ·", "Àΰ£Á·", "µµ±úºñÁ·", "°ÅÀÎÁ·", "¶¥±Í½ÅÁ·", "°³±¸¸®Á·" }; +char race_adj[][15] = { "Unknown", "난장ì�´ì¡±", "용신족", "요괴족", + "토신족", "ì�¸ê°„족", "ë�„깨비족", "ê±°ì�¸ì¡±", "땅귀신족", "개구리족" }; int family_num[16]; char family_str[16][15]; @@ -171,389 +171,389 @@ long needed_exp[] = { char lev_title[][8][20] = { { "", "", "", "", "", "", "", "" }, - { "±øÆÐ", "°­µµ", "»ìÀÎÀÚ", "µµ»ìÀÚ", - "¿ÕÀÚ°´", "ÀÀ¡ÀÚ", "»ì¼º", "»ì½Å" }, - { "Ãʺ¸", "¼ö·Ã»ý", "¹«Çù", "ö±Ç", - "±Ç¼º", "±ÇȲ", "ÁöÁ¸", "¹«½Å" }, - { "¶¯Áß", "»ç¹Ì½Â", "¼Ò½Â", "°¨Âû½Â", - "ÁÖÁö", "´ë»ç", "±¹»ç", "ºÎó" }, - { "¹éÁ¤", "Ä®ÀâÀÌ", "¹«ÀÎ", "¿ëº´", - "°Ë°´", "°Ë¼º", "°ËȲ", "¹«¸²ÆÄõ" }, - { "½ÉºÎ¸§²Û", "µµÁ¦ÀÚ", "¸¶¼ú»ç", "µµ°´", - "¸¶ÀÎ", "µµÀÎ", "½Å¼±", "¸¶Á¸" }, - { "°ñ¸ñ´ëÀå", "¹«°´", "Çù°´", "ÀÇÇù", - "Á¤ÀüÀÚ", "¿ëÀü»ç", "¼öÈ£ÀÚ", "¼ºÀü»ç" }, - { "Â̵û±¸", "¼øÂûº´", "°¨Âû¿ø", "µµ¼ºÁö±â", - "Æ÷±³", "Æ÷µµ´ëÀå", "°¨Âû¾î»ç", "°¨ÂûÀ屺" }, - { "¹Ù´ÃµµµÏ", "°³µµµÏ", "Á»µµµÏ", "¼ÒµµµÏ", - "¿ÕµµµÏ", "µµ¼º", "µµ½Å", "½Å¼ö" }, - { "¹«Àû", "¹«Àû", "¹«Àû", "¹«Àû", "¹«Àû", - "¹«Àû", "¹«Àû", "¹«Àû"}, - { "ÃÊÀÎ", "ÃÊÀÎ", "ÃÊÀÎ", "ÃÊÀÎ", "ÃÊÀÎ", - "ÃÊÀÎ", "ÃÊÀÎ", "ÃÊÀÎ"}, - { "µµ¿ì¹Ì", "µµ¿ì¹Ì", "µµ¿ì¹Ì", "µµ¿ì¹Ì", - "µµ¿ì¹Ì", "µµ¿ì¹Ì", "µµ¿ì¹Ì", "µµ¿ì¹Ì" }, - { "¹Ùº¸", "¸ÛûÀÌ", "¶Ç¶óÀÌ", "¸ÓÀú¸®", - "¶î¶îÀÌ", "¿Õ¹Ùº¸", "¹éġȲÁ¦", "¹Ùº¸µéÀǽÅ" }, + { "깡패", "ê°•ë�„", "ì‚´ì�¸ìž�", "ë�„ì‚´ìž�", + "왕ìž�ê°�", "ì�‘ì§•ìž�", "살성", "ì‚´ì‹ " }, + { "초보", "수련ìƒ�", "무협", "ì² ê¶Œ", + "권성", "권황", "지존", "무신" }, + { "땡중", "사미승", "소승", "ê°�찰승", + "주지", "대사", "국사", "부처" }, + { "백정", "칼잡ì�´", "무ì�¸", "용병", + "ê²€ê°�", "검성", "검황", "무림파천" }, + { "심부름꾼", "ë�„ì œìž�", "마술사", "ë�„ê°�", + "마ì�¸", "ë�„ì�¸", "ì‹ ì„ ", "마존" }, + { "골목대장", "무ê°�", "협ê°�", "ì�˜í˜‘", + "ì •ì „ìž�", "용전사", "수호ìž�", "성전사" }, + { "쫄따구", "순찰병", "ê°�ì°°ì›�", "ë�„성지기", + "í�¬êµ�", "í�¬ë�„대장", "ê°�찰어사", "ê°�찰장군" }, + { "바늘ë�„ë‘‘", "ê°œë�„ë‘‘", "좀ë�„ë‘‘", "소ë�„ë‘‘", + "왕ë�„ë‘‘", "ë�„성", "ë�„ì‹ ", "신수" }, + { "무ì �", "무ì �", "무ì �", "무ì �", "무ì �", + "무ì �", "무ì �", "무ì �"}, + { "ì´ˆì�¸", "ì´ˆì�¸", "ì´ˆì�¸", "ì´ˆì�¸", "ì´ˆì�¸", + "ì´ˆì�¸", "ì´ˆì�¸", "ì´ˆì�¸"}, + { "ë�„우미", "ë�„우미", "ë�„우미", "ë�„우미", + "ë�„우미", "ë�„우미", "ë�„우미", "ë�„우미" }, + { "바보", "ë©�ì²­ì�´", "ë˜�ë�¼ì�´", "머저리", + "ë�¨ë�¨ì�´", "왕바보", "백치황제", "바보들ì�˜ì‹ " }, }; struct { char *cmdstr; int cmdno; int (*cmdfn)(); } cmdlist[] = { - { "³ª°¡´Â±æ", 1, move }, - { "±¤Àå", 1, move }, - { "Çâ·Î", 1, move }, - { "¼ö·ÃÀå", 1, move }, - { "Çö°¨¿¡°Ô", 1, move }, - { "¸éȸÇã°¡", 1, move }, - { "¹ÝÇϵµÀÎ", 1, move}, - { "¿ù±¤¹Ý", 1, move }, - { "¹Ý¾ß¹Ù¶ó¹Ð", 1, move }, + { "나가는길", 1, move }, + { "광장", 1, move }, + { "향로", 1, move }, + { "수련장", 1, move }, + { "현ê°�ì—�게", 1, move }, + { "면회허가", 1, move }, + { "반하ë�„ì�¸", 1, move}, + { "월광반", 1, move }, + { "반야바ë�¼ë°€", 1, move }, { "8", 1, move }, - { "ºÏ", 1, move }, - { "¤²", 1, move }, - { "ɪ£¢", 1, move }, + { "ë¶�", 1, move }, + { "ã…‚", 1, move }, + { "�ã�ƒï¿½", 1, move }, { "2", 1, move }, - { "³²", 1, move }, - { "¤¤", 1, move }, - { "É¥£¢", 1, move }, + { "남", 1, move }, + { "ã„´", 1, move }, + { "�ⅲ�", 1, move }, { "6", 1, move }, - { "µ¿", 1, move }, - { "¤§", 1, move }, - { "ɦ£¢", 1, move }, + { "ë�™", 1, move }, + { "ã„·", 1, move }, + { "�┌�", 1, move }, { "4", 1, move }, - { "¼­", 1, move }, - { "¤µ", 1, move }, - { "ɬ£¢", 1, move }, - { "ºÏµ¿", 1, move }, - { "¤²¤§", 1, move }, - { "ºÏ¼­", 1, move }, - { "ºÏµ¿", 1, move }, - { "³²¼­", 1, move }, - { "¤²¤µ", 1, move }, - { "³²µ¿", 1, move }, - { "¤¤¤§", 1, move }, - { "³²¼­", 1, move }, - { "¤¤¤µ", 1, move }, + { "서", 1, move }, + { "ã……", 1, move }, + { "�В�", 1, move }, + { "ë¶�ë�™", 1, move }, + { "ã…‚ã„·", 1, move }, + { "ë¶�서", 1, move }, + { "ë¶�ë�™", 1, move }, + { "남서", 1, move }, + { "ã…‚ã……", 1, move }, + { "남ë�™", 1, move }, + { "ã„´ã„·", 1, move }, + { "남서", 1, move }, + { "ã„´ã……", 1, move }, { "9", 1, move }, - { "À§", 1, move }, - { "¤·", 1, move }, - { "É®£¢", 1, move }, + { "위", 1, move }, + { "ã…‡", 1, move }, + { "��"", 1, move }, { "3", 1, move }, - { "¹Ø", 1, move }, - { "¤±", 1, move }, - { "É©£¢", 1, move }, - { "¹Û", 1, move }, - { "³ª°¡", 1, move }, /* leave */ - { "ºÁ", 2, look }, /* look */ - { "º¸´Ù", 2, look }, - { "º¸¾Æ", 100, action }, - { "Á¶»ç", 2, look }, /* examine */ - { "³¡", 3, quit }, /* quit */ - { "¸»", 4, say }, + { "ë°‘", 1, move }, + { "ã…�", 1, move }, + { "�ð�", 1, move }, + { "ë°–", 1, move }, + { "나가", 1, move }, /* leave */ + { "ë´�", 2, look }, /* look */ + { "보다", 2, look }, + { "ë³´ì•„", 100, action }, + { "조사", 2, look }, /* examine */ + { "ë��", 3, quit }, /* quit */ + { "ë§�", 4, say }, { "\"", 4, say }, { "'", 4, say }, - { "ÁÖ¿ö", 5, get }, /* get */ - { "ÁÖ", 5, get }, - { "°¡Á®", 5, get }, /* take */ - { "²¨³»", 5, get }, /* Ãß°¡ */ - { "¼ÒÁöǰ", 6, inventory }, /* inventory */ - { "¹ö·Á", 7, drop }, /* drop */ - { "³Ö¾î", 7, drop }, /* put */ - { "´©±¸", 8, who }, /* who */ - { "ÀÔ¾î", 9, wear }, /* wear */ - { "¹þ¾î", 10, remove_obj }, /* remove */ - { "Àåºñ", 11, equipment }, /* equipment */ - { "Àå", 11, equipment }, - { "Áã¾î", 12, hold }, /* hold */ - { "Àâ¾Æ", 12, hold }, - { "¹«Àå", 13, ready }, /* wield */ - { "µµ¿ò¸»", 14, help }, /* µµ¿ò¸» */ + { "주워", 5, get }, /* get */ + { "주", 5, get }, + { "가져", 5, get }, /* take */ + { "꺼내", 5, get }, /* 추가 */ + { "소지품", 6, inventory }, /* inventory */ + { "버려", 7, drop }, /* drop */ + { "넣어", 7, drop }, /* put */ + { "누구", 8, who }, /* who */ + { "ìž…ì–´", 9, wear }, /* wear */ + { "ë²—ì–´", 10, remove_obj }, /* remove */ + { "장비", 11, equipment }, /* equipment */ + { "장", 11, equipment }, + { "ì¥�ì–´", 12, hold }, /* hold */ + { "잡아", 12, hold }, + { "무장", 13, ready }, /* wield */ + { "ë�„움ë§�", 14, help }, /* ë�„움ë§� */ { "?", 14, help }, - { "°Ç°­", 15, health }, /* health */ - { "Á¡¼ö", 15, health }, /* score */ - { "Á¤º¸", 16, info }, /* information */ - { "¾ê±â", 17, sendman }, /* send */ - { "À̾߱â", 17, sendman }, /* tell */ - { "µû¶ó", 18, follow }, /* follow */ - { "³»º¸³»", 19, lose }, - { "±×·ì", 20, group }, /* group */ - { "¹«¸®", 20, group }, /* party */ - { "ÃßÀû", 21, track }, - { "¿³ºÁ", 22, peek }, /* peek */ - { "°ø°Ý", 23, attack }, /* attack */ - { "°ø", 23, attack }, - { "ÃÄ", 23, attack }, /* kill */ - { "¶§·Á", 23, attack }, /* k */ - { "°Ë»ö", 24, search }, /* search */ - { "ã¾Æ", 24, search }, - { "Ç¥Çö",25, emote}, - { "¼û°Ü", 26, hide }, - { "¼û¾î", 26, hide }, - { "¼³Á¤", 27, set }, /* set */ - { "ÇØÁ¦", 28, clear }, /* clear */ - { "¿ÜÃÄ", 29, yell }, /* yell */ - { "°¡", 30, go }, /* go */ - { "µé¾î°¡", 30, go }, - { "¿­¾î", 31, openexit }, /* open */ - { "´Ý¾Æ", 32, closeexit }, /* close */ - { "Ç®¾î", 33, unlock }, /* Ç®¾î */ - { "Àá±Å", 34, lock }, /* lock */ - { "µû", 35, picklock }, /* pick */ - { "ÈÉÃÄ", 36, steal }, /* steal */ - { "µµ¸Á", 37, flee }, /* flee */ - { "µµ", 37, flee }, - { "ÁÖ¹®", 38, cast }, /* cast */ - { "¹è¿ö", 39, study }, - { "¿¬¸¶", 39, study }, - { "Àоî", 40, readscroll }, - { "ǰ¸ñ", 41, list }, - { "»ç", 42, buy }, - { "ÆÈ¾Æ", 43, sell }, - { "°¡Ä¡", 44, value }, - { "°¡°Ý", 44, value }, - { "±â½À", 45, backstab }, - { "¼ö·Ã", 46, train }, - { "Áà", 47, give }, - { "¼ö¸®", 48, repair }, - { "½Ã°£", 49, prt_time }, - { "±³¶õ", 50, circle }, - { "¸Í°ø", 51, bash }, - { "ÀúÀå", 52, savegame }, /* save */ - { "ÆíÁöº¸³»±â", 53, postsend }, - { "ÆíÁö»èÁ¦", 55, postdelete }, - { "ÆíÁö¹Þ±â", 54, postread }, - { "´ëÈ­", 56, talk }, - { "±×·ì¸»",57, gtalk }, /* gtalk */ - { "¹«¸®¸»",57, gtalk }, + { "ê±´ê°•", 15, health }, /* health */ + { "ì �수", 15, health }, /* score */ + { "ì •ë³´", 16, info }, /* information */ + { "얘기", 17, sendman }, /* send */ + { "ì�´ì•¼ê¸°", 17, sendman }, /* tell */ + { "ë”°ë�¼", 18, follow }, /* follow */ + { "ë‚´ë³´ë‚´", 19, lose }, + { "그룹", 20, group }, /* group */ + { "무리", 20, group }, /* party */ + { "ì¶”ì �", 21, track }, + { "ì—¿ë´�", 22, peek }, /* peek */ + { "공격", 23, attack }, /* attack */ + { "ê³µ", 23, attack }, + { "ì³�", 23, attack }, /* kill */ + { "때려", 23, attack }, /* k */ + { "검색", 24, search }, /* search */ + { "찾아", 24, search }, + { "표현",25, emote}, + { "숨겨", 26, hide }, + { "숨어", 26, hide }, + { "설정", 27, set }, /* set */ + { "í•´ì œ", 28, clear }, /* clear */ + { "외ì³�", 29, yell }, /* yell */ + { "ê°€", 30, go }, /* go */ + { "들어가", 30, go }, + { "ì—´ì–´", 31, openexit }, /* open */ + { "ë‹«ì•„", 32, closeexit }, /* close */ + { "풀어", 33, unlock }, /* 풀어 */ + { "잠궈", 34, lock }, /* lock */ + { "ë”°", 35, picklock }, /* pick */ + { "í›”ì³�", 36, steal }, /* steal */ + { "ë�„ë§�", 37, flee }, /* flee */ + { "ë�„", 37, flee }, + { "주문", 38, cast }, /* cast */ + { "배워", 39, study }, + { "연마", 39, study }, + { "ì�½ì–´", 40, readscroll }, + { "품목", 41, list }, + { "사", 42, buy }, + { "팔아", 43, sell }, + { "가치", 44, value }, + { "가격", 44, value }, + { "기습", 45, backstab }, + { "수련", 46, train }, + { "줘", 47, give }, + { "수리", 48, repair }, + { "시간", 49, prt_time }, + { "êµ�란", 50, circle }, + { "맹공", 51, bash }, + { "저장", 52, savegame }, /* save */ + { "편지보내기", 53, postsend }, + { "편지삭제", 55, postdelete }, + { "편지받기", 54, postread }, + { "대화", 56, talk }, + { "그룹ë§�",57, gtalk }, /* gtalk */ + { "무리ë§�",57, gtalk }, { "=", 57, gtalk }, - { "¸¶¼Å", 58, drink }, /* drink */ - { "¸Ô¾î", 58, drink }, - { "Àâ´ã", 59, broadsend }, - { "Àâ", 59, broadsend }, - { "ȯȣ", 70, broadsend2 }, + { "마셔", 58, drink }, /* drink */ + { "먹어", 58, drink }, + { "잡담", 59, broadsend }, + { "ìž¡", 59, broadsend }, + { "환호", 70, broadsend2 }, { "zap", 60, zap }, - { "ȯ¿µ", 61, welcome }, - { "¹æÈ¥¼ú", 62, turn }, - { "º¸°ü¹°", 63, bank_inv }, - { "Àܾ×", 63, bank }, - { "ÀÔ±Ý", 63, deposit }, - { "Ãâ±Ý", 63, withdraw }, - { "¹Þ¾Æ", 63, output_bank }, - { "Ȱº¸¹ý", 64, haste }, - { "½Å¿ø¹ý", 65, pray }, /* pray */ - { "°æ°è", 66, prepare }, - { "»ç¿ë", 67, use }, /* use */ - { "µè±â°ÅºÎ", 68, ignore }, /* ignore */ - { "»ç¿ëÀÚ°Ë»ö", 69, whois }, - { "¹¦»ç", 73, description }, -/* { "Àº½Å¼ú", 70, sneak }, */ - { "°¡¸£ÃÄ", 71, teach }, - { "¼±ÀüÆ÷°í", 72, call_war }, + { "환ì˜�", 61, welcome }, + { "방혼술", 62, turn }, + { "보관물", 63, bank_inv }, + { "잔액", 63, bank }, + { "입금", 63, deposit }, + { "출금", 63, withdraw }, + { "받아", 63, output_bank }, + { "활보법", 64, haste }, + { "ì‹ ì›�법", 65, pray }, /* pray */ + { "경계", 66, prepare }, + { "사용", 67, use }, /* use */ + { "듣기거부", 68, ignore }, /* ignore */ + { "사용ìž�검색", 69, whois }, + { "묘사", 73, description }, +/* { "ì�€ì‹ ìˆ ", 70, sneak }, */ + { "가르ì³�", 71, teach }, + { "ì„ ì „í�¬ê³ ", 72, call_war }, /* - { "°¡ÀÔ",72, pledge }, - { "Å»Åð",73, rescind }, + { "가입",72, pledge }, + { "탈퇴",73, rescind }, */ - { "±¸ÀÔ",74, purchase }, - { "¼±ÅÃ",75, selection }, - { "±³È¯",76, trade}, - { "¸ñ¸Å´Þ±â", 77, ply_suicide }, /* suicide */ - { "¾ÏÈ£", 78, passwd}, /* passwd */ - { "ÅõÇ¥",79,vote}, - { "»ç¿ëÀÚÁ¤º¸", 80, pfinger}, - { "±Íȯ", 81, return_square }, - { "±Í", 81, return_square }, - { "ÁÙÀÓ¸»", 82, ply_aliases }, - { "ÁÙ", 82, ply_aliases }, - { "Å¿ö", 83, burn }, - { "¼Ò°¢", 83, burn }, - { "Īȣ", 84, set_title }, - { "Īȣ»èÁ¦", 84, clear_title }, - { "Á¦·Ã", 85, forge }, - { "¹«±â¸¸µé±â", 85, newforge }, - { "Á÷¾÷Àüȯ", 86, change_class }, - { "±â°øÁý°á", 87, power }, - { "»ì±âÃæÀü", 88, accurate }, - { "Èí¼º´ë¹ý", 89, absorb }, - { "Âü¼±", 90, meditate }, - { "Ç÷µµºÀ¼â", 91, magic_stop }, - { "½á", 92, writeboard }, - { "±Û»èÁ¦", 93, del_board }, - { "°Ô½ÃÆÇ", 94, look_board }, - { "¸í¸í", 95, chg_name }, - { "°¨Á¤", 96, info_obj }, - { "ºñ±³", 96, obj_compare }, - { "Â÷±â", 97, kick }, - { "µ¶»ìÆ÷", 98, poison_mon }, - { "Àá·Â°Ý¹ß", 99, up_dmg }, - { "°¨Á¤Ç¥Çö", 100, action }, - { "³ë·ÁºÁ", 100, action }, - { "²ô´ö", 100, action }, - { "ÀÀ", 100, action }, - { "¾Æ´Ï", 100, action }, - { "°¨", 100, action }, - { "°¨»ç", 100, action }, - { "¹Ì¼Ò", 100, action }, - { "ûȥ", 100, action }, - { "¶³¾î", 100, action }, - { "ÇØ", 100, action }, - { "ÇÏǰ", 100, action }, - { "¿ô¾î", 100, action }, - { "¹Ì¾È", 100, action }, - { "¾Ç¼ö", 100, action }, - { "ÇÏÀÌÆÄÀ̺ê", 100, action }, - { "¹Ú¼ö", 100, action }, - { "Èí¿¬", 100, action }, - { "´ã¹è", 100, action }, - { "Àý", 100, action }, - { "Âñ·¯", 100, action }, - { "Ãã", 100, action }, - { "³ë·¡", 100, action }, - { "¿ï¾î", 100, action }, - { "´Þ·¡", 100, action }, - { "´çȲ", 100, action }, - { "»ý°¢", 100, action }, - { "ºÎ²ô·¯", 100, action }, - { "³î·Á", 100, action }, - { "¼³·¹", 100, action }, - { "Àß°¡", 100, action }, - { "¹ÙÀÌ", 100, action }, - { "¾È³ç", 100, action }, - { "»Ç»Ç", 100, action }, - { "À®Å©", 100, action }, - { "±¸°É", 100, action }, - { "±¸¹Ú", 100, action }, - { "¾È¾Æ", 100, action }, - { "²¸¾È¾Æ", 100, action }, + { "구입",74, purchase }, + { "ì„ íƒ�",75, selection }, + { "êµ�환",76, trade}, + { "목매달기", 77, ply_suicide }, /* suicide */ + { "암호", 78, passwd}, /* passwd */ + { "투표",79,vote}, + { "사용ìž�ì •ë³´", 80, pfinger}, + { "귀환", 81, return_square }, + { "ê·€", 81, return_square }, + { "줄임ë§�", 82, ply_aliases }, + { "줄", 82, ply_aliases }, + { "태워", 83, burn }, + { "소ê°�", 83, burn }, + { "칭호", 84, set_title }, + { "칭호삭제", 84, clear_title }, + { "제련", 85, forge }, + { "무기만들기", 85, newforge }, + { "ì§�업전환", 86, change_class }, + { "기공집결", 87, power }, + { "살기충전", 88, accurate }, + { "í�¡ì„±ëŒ€ë²•", 89, absorb }, + { "참선", 90, meditate }, + { "혈ë�„봉쇄", 91, magic_stop }, + { "ì�¨", 92, writeboard }, + { "글삭제", 93, del_board }, + { "게시íŒ�", 94, look_board }, + { "명명", 95, chg_name }, + { "ê°�ì •", 96, info_obj }, + { "비êµ�", 96, obj_compare }, + { "차기", 97, kick }, + { "ë�…ì‚´í�¬", 98, poison_mon }, + { "잠력격발", 99, up_dmg }, + { "ê°�정표현", 100, action }, + { "노려ë´�", 100, action }, + { "ë�„ë�•", 100, action }, + { "ì�‘", 100, action }, + { "아니", 100, action }, + { "ê°�", 100, action }, + { "ê°�사", 100, action }, + { "미소", 100, action }, + { "청혼", 100, action }, + { "떨어", 100, action }, + { "í•´", 100, action }, + { "하품", 100, action }, + { "웃어", 100, action }, + { "미안", 100, action }, + { "악수", 100, action }, + { "하ì�´íŒŒì�´ë¸Œ", 100, action }, + { "박수", 100, action }, + { "í�¡ì—°", 100, action }, + { "ë‹´ë°°", 100, action }, + { "ì ˆ", 100, action }, + { "찔러", 100, action }, + { "춤", 100, action }, + { "노래", 100, action }, + { "울어", 100, action }, + { "달래", 100, action }, + { "당황", 100, action }, + { "ìƒ�ê°�", 100, action }, + { "ë¶€ë�„러", 100, action }, + { "놀려", 100, action }, + { "설레", 100, action }, + { "잘가", 100, action }, + { "ë°”ì�´", 100, action }, + { "안녕", 100, action }, + { "뽀뽀", 100, action }, + { "윙í�¬", 100, action }, + { "구걸", 100, action }, + { "구박", 100, action }, + { "안아", 100, action }, + { "껴안아", 100, action }, /****************************************************************/ -/* { "Àü¼ö", 149, trans_exp }, */ +/* { "전수", 149, trans_exp }, */ /****************************************************************/ - { "Çâ»ó", 149, buy_states }, - { "°áÈ¥", 150, marriage }, - { "»ç¶û¸»", 150, m_send }, - { "ÀÌÈ¥", 150, divorce }, - { "±â¾ï", 153, moon_set }, - { "¸Þ¸ð", 151, memo }, - { "ÃÊ´ë", 152, invite }, - { "»óÅÂ", 154, enemy_status }, - { "ÆÐ°Å¸®´©±¸", 148, family_who }, - { "ÆÐ°Å¸®°øÁö", 148, family_news }, - { "ÆÐ°Å¸®°¡ÀÔ", 148, family }, - { "°¡ÀÔÇã°¡", 148, boss_family }, - { "ÆÐ°Å¸®Å»Åð", 148, out_family }, - { "ÆÐ°Å¸®Ãß¹æ", 148, fm_out }, - { "ÆÐ°Å¸®¿ø", 148, family_member }, - { "ÆÐ°Å¸®¸»", 148, family_talk }, + { "í–¥ìƒ�", 149, buy_states }, + { "결혼", 150, marriage }, + { "사랑ë§�", 150, m_send }, + { "ì�´í˜¼", 150, divorce }, + { "기억", 153, moon_set }, + { "메모", 151, memo }, + { "초대", 152, invite }, + { "ìƒ�태", 154, enemy_status }, + { "패거리누구", 148, family_who }, + { "패거리공지", 148, family_news }, + { "패거리가입", 148, family }, + { "가입허가", 148, boss_family }, + { "패거리탈퇴", 148, out_family }, + { "패거리추방", 148, fm_out }, + { "패거리ì›�", 148, family_member }, + { "패거리ë§�", 148, family_talk }, { "]", 148, family_talk }, - { "¸ðµçÆÐ°Å¸®", 148, list_family }, - { "´ë´ä", 153, resend }, + { "모든패거리", 148, list_family }, + { "대답", 153, resend }, { "/", 153, resend }, { "*teleport", 101, dm_teleport }, - { "*¼ø°£À̵¿", 101, dm_teleport }, - { "*¹æ¹øÈ£", 102, dm_rmstat }, + { "*순간ì�´ë�™", 101, dm_teleport }, + { "*방번호", 102, dm_rmstat }, { "*rm", 102, dm_rmstat }, - { "*¹æ", 102, dm_rmstat }, + { "*ë°©", 102, dm_rmstat }, { "*reload", 103, dm_reload_rom }, - { "*·Îµå", 103, dm_reload_rom }, + { "*로드", 103, dm_reload_rom }, { "*save", 104, dm_resave }, - { "*¼¼À̺ê", 104, dm_resave }, + { "*세ì�´ë¸Œ", 104, dm_resave }, { "*create", 105, dm_create_obj }, - { "*¹¹µçÁö´Ù¸¸µé¾î", 105, dm_create_obj}, + { "*ë­�든지다만들어", 105, dm_create_obj}, { "*c", 105, dm_create_obj }, { "*perm", 106, dm_perm }, - { "*¿µ¿ø", 106, dm_perm }, + { "*ì˜�ì›�", 106, dm_perm }, { "*invis", 107, dm_invis }, - { "*¹Ù¶÷ó·³»ç¶óÁ®", 107, dm_invis }, + { "*바람처럼사ë�¼ì ¸", 107, dm_invis }, { "*i", 107, dm_invis }, { "*s", 108, dm_send }, { "*send", 108, dm_send }, - { "*°øÁö", 108, dm_send }, + { "*공지", 108, dm_send }, { "*purge", 109, dm_purge }, - { "*û¼Ò", 109, dm_purge }, - { "*û", 109, dm_purge }, + { "*청소", 109, dm_purge }, + { "*ì²­", 109, dm_purge }, { "*ac", 110, dm_ac }, - { "*¹æ¾î·Â", 110, dm_ac }, + { "*ë°©ì–´ë ¥", 110, dm_ac }, { "*users", 111, dm_users }, - { "*´©", 111, dm_users }, - { "*´©±¸", 111, dm_users }, + { "*누", 111, dm_users }, + { "*누구", 111, dm_users }, { "*echo", 112, dm_echo }, - { "*¸»", 112, dm_echo }, + { "*ë§�", 112, dm_echo }, { "*flushrooms", 113, dm_flushsave }, - { "*¸ðµçÀúÀå", 113, dm_flushsave }, + { "*모든저장", 113, dm_flushsave }, { "*shutdown", 114, dm_shutdown }, - { "*Á¾·á", 114, dm_shutdown }, + { "*종료", 114, dm_shutdown }, { "*f", 115, dm_force }, { "*force", 115, dm_force }, - { "*¹¹µçÁö´Ù½ÃÄÑ", 115, dm_force }, + { "*ë­�든지다시켜", 115, dm_force }, { "*flushcrtobj", 116, dm_flush_crtobj }, - { "*Àç¼³Á¤", 116, dm_flush_crtobj }, - { "*Àç", 116, dm_flush_crtobj }, + { "*재설정", 116, dm_flush_crtobj }, + { "*재", 116, dm_flush_crtobj }, { "*monster", 117, dm_create_crt }, - { "*±«¹°", 117, dm_create_crt }, - { "*±«", 117, dm_create_crt }, + { "*괴물", 117, dm_create_crt }, + { "*ê´´", 117, dm_create_crt }, { "*status", 118, dm_stat }, - { "*»óÅÂ", 118, dm_stat }, + { "*ìƒ�태", 118, dm_stat }, { "*add", 119, dm_add_rom }, - { "*¹æÁ¦ÀÛ", 119, dm_add_rom }, - { "*¹¹µçÁö´ÙÇØ", 120, dm_set }, + { "*방제작", 119, dm_add_rom }, + { "*ë­�든지다해", 120, dm_set }, { "*log", 121, dm_log }, - { "*Á¢¼Ó", 121, dm_log }, + { "*ì ‘ì†�", 121, dm_log }, { "*spy", 122, dm_spy }, - { "*¹¹µçÁö´Ù¿³ºÁ", 122, dm_spy }, + { "*ë­�든지다엿ë´�", 122, dm_spy }, { "*lock", 123, dm_loadlockout }, - { "*Á¦ÇÑ", 123, dm_loadlockout }, + { "*제한", 123, dm_loadlockout }, { "*finger", 124, dm_finger }, - { "*ÇΰÅ", 124, dm_finger }, + { "*í•‘ê±°", 124, dm_finger }, { "*list", 125, dm_list }, - { "*´©±¸µçÁö´ÙºÁ", 125, dm_list }, + { "*누구든지다ë´�", 125, dm_list }, { "*info", 126, dm_info }, - { "*Á¤º¸", 126, dm_info }, + { "*ì •ë³´", 126, dm_info }, { "*parameter", 127, dm_param }, - { "*¼öÄ¡", 127, dm_param }, + { "*수치", 127, dm_param }, { "*silence", 128, dm_silence}, - { "*º¡¾î¸®", 128, dm_silence}, + { "*벙어리", 128, dm_silence}, { "*broad", 129, dm_broadecho}, - { "*¹æ¼Û", 129, dm_broadecho }, + { "*방송", 129, dm_broadecho }, { "*replace",130, dm_replace}, - { "*±³Ã¼", 130, dm_replace}, + { "*êµ�ì²´", 130, dm_replace}, { "*name",131, dm_nameroom}, - { "*¹æÀ̸§", 131, dm_nameroom}, + { "*ë°©ì�´ë¦„", 131, dm_nameroom}, { "*append",132, dm_append}, - { "*Ãß°¡", 132, dm_append}, + { "*추가", 132, dm_append}, { "*prepend",133, dm_prepend}, - { "*¼­¾ð", 133, dm_prepend}, + { "*서언", 133, dm_prepend}, { "*gcast",134, dm_cast}, - { "*ÀüÁÖ¹®", 134, dm_cast}, + { "*전주문", 134, dm_cast}, { "*group",135, dm_group}, - { "*±×·ì", 135, dm_group}, + { "*그룹", 135, dm_group}, { "*notepad",136, notepad}, - { "*¸Þ¸ð", 136, notepad}, + { "*메모", 136, notepad}, { "*delete",137, dm_delete}, - { "*Áö¿ì±â", 137, dm_delete}, + { "*지우기", 137, dm_delete}, { "*oname", 138, dm_obj_name }, - { "*¹¹µçÁö´Ù¹Ù²ã", 138, dm_obj_name }, + { "*ë­�든지다바꿔", 138, dm_obj_name }, { "*cname", 139, dm_crt_name }, - { "*±«¹°À̸§", 139, dm_crt_name }, + { "*괴물ì�´ë¦„", 139, dm_crt_name }, { "*active", 140, list_act }, - { "*Ȱ¼º", 140, list_act }, + { "*활성", 140, list_act }, { "*dust", 141, dm_dust }, - { "*³ªµµ°¡²ûÈ­³½´Ù", 141, dm_dust }, + { "*나ë�„ê°€ë�”화낸다", 141, dm_dust }, { "*cfollow", 142, dm_follow }, - { "*µû¸£±â", 142, dm_follow }, - { "*¶³¾îÁ®¶ó", 148, dm_moonstone }, - { "*ħ°ø", 148, dm_monster }, + { "*따르기", 142, dm_follow }, + { "*떨어져ë�¼", 148, dm_moonstone }, + { "*침공", 148, dm_monster }, { "*dmhelp", 143, dm_help }, - { "*µµ¿ò¸»", 143, dm_help }, + { "*ë�„움ë§�", 143, dm_help }, { "*attack", 144, dm_attack }, - { "*°ø°Ý", 144, dm_attack }, + { "*공격", 144, dm_attack }, { "*enemy", 145, list_enm }, - { "*Àû", 145, list_enm }, + { "*ì �", 145, list_enm }, { "*charm", 146, list_charm }, - { "*ÃÖ¸é", 146, list_charm }, - { "*»ç¿ëÀÚÀúÀå", 147, dm_save_all_ply }, - { "´­·¯", -2, 0 }, - { "¹Ð¾î", -2, 0 }, + { "*최면", 146, list_charm }, + { "*사용ìž�저장", 147, dm_save_all_ply }, + { "눌러", -2, 0 }, + { "밀어", -2, 0 }, { "@", 0, 0 } }; @@ -574,63 +574,63 @@ struct { int (*splfn)(); int spllv; } spllist[] = { - { "ȸº¹", SVIGOR, vigor, 1 }, - { "»èdz", SHURTS, offensive_spell, 2 }, - { "¹ß±¤", SLIGHT, light, 2 }, - { "ÇØµ¶", SCUREP, curepoison, 1 }, - { "¼ºÇöÁø", SBLESS, bless, 2 }, - { "¼öÈ£Áø", SPROTE, protection, 2 }, - { "È­±Ã", SFIREB, offensive_spell, 3 }, - { "ÀºµÐ¹ý", SINVIS, invisibility, 5 }, - { "µµ·Â¹Ý", SRESTO, restore, 4 }, - { "ÀºµÐ°¨Áö¼ú", SDINVI, detectinvis, 3 }, - { "ÁÖ¹®°¨Áö¼ú", SDMAGI, detectmagic, 3 }, - { "ÃàÁö¹ý", STELEP, teleport, 4 }, - { "È¥µ¿", SBEFUD, befuddle, 3 }, - { "³úÀü", SLGHTN, offensive_spell, 4 }, - { "µ¿¼³ÁÖ", SICEBL, offensive_spell, 5 }, - { "ºùÀÇ", SENCHA, enchant, 4 }, - { "±Íȯ", SRECAL, recall, 3 }, - { "¼Òȯ", SSUMMO, summon, 3 }, - { "¿ø±âȸº¹", SMENDW, mend, 3 }, - { "¿ÏÄ¡", SFHEAL, heal, 5 }, - { "ÃßÀû", STRACK, magictrack, 4 }, - { "ºÎ¾ç¼ú", SLEVIT, levitate, 3 }, - { "¹æ¿­Áø", SRFIRE, resist_fire, 3 }, - { "ºñ»ó¼ú", SFLYSP, fly, 4 }, - { "º¸¸¶Áø", SRMAGI, resist_magic, 3 }, - { "±Çdz¼ú", SSHOCK, offensive_spell, 5 }, - { "Áöµ¿¼ú", SRUMBL, offensive_spell, 2 }, - { "È­¼±µµ", SBURNS, offensive_spell, 2 }, - { "ź¼ö°ø", SBLIST, offensive_spell, 2 }, - { "dz¸¶Çö", SDUSTG, offensive_spell, 3 }, - { "ÆÄÃʽÄ", SWBOLT, offensive_spell, 3 }, - { "ÆøÁø", SCRUSH, offensive_spell, 3 }, - { "³«¼®", SENGUL, offensive_spell, 5 }, - { "ȭdz¼ú", SBURST, offensive_spell, 3 }, - { "È­·æ´ëõ", SSTEAM, offensive_spell, 3 }, - { "ÅäÇÕ¼ú", SSHATT, offensive_spell, 4 }, - { "ÁÖÀÛÇö", SIMMOL, offensive_spell, 4 }, - { "¿­»çõ", SBLOOD, offensive_spell, 4 }, - { "ÆÄõdz", STHUND, offensive_spell, 5 }, - { "Áö¿ÁÆÐ", SEQUAK, offensive_spell, 5 }, - { "žç¾È", SFLFIL, offensive_spell, 5 }, - { "¼±¾Ç°¨Áö", SKNOWA, know_alignment, 3 }, - { "ÀúÁÖÇØ¼Ò", SREMOV, remove_curse, 4 }, - { "¹æÇÑÁø", SRCOLD, resist_cold, 3 }, - { "¼ö»ý¼ú", SBRWAT, breathe_water, 3 }, - { "Áö¹æÈ£", SSSHLD, earth_shield, 3 }, - { "õ¸®¾È", SLOCAT, locate_player, 4 }, - { "¹éÄ¡¼ú", SDREXP, drain_exp, 5 }, - { "Ä¡·á", SRMDIS, rm_disease, 3 }, - { "°³¾È¼ú", SRMBLD, rm_blind, 3 }, - { "°øÆ÷", SFEARS, fear, 4 }, - { "Àüȸº¹", SRVIGO, room_vigor, 4 }, - { "Àü¼Û", STRANO, object_send, 4 }, - { "½Ç¸í", SBLIND, blind, 5 }, - { "ºÀÇÕ±¸", SSILNC, silence, 5 }, - { "ÀÌÈ¥´ë¹ý", SCHARM, charm, 5 }, -/* { "º¯¼ö³ªÇѱÇ", SNAHAN, offensive_spell }, */ + { "회복", SVIGOR, vigor, 1 }, + { "ì‚­í’�", SHURTS, offensive_spell, 2 }, + { "발광", SLIGHT, light, 2 }, + { "í•´ë�…", SCUREP, curepoison, 1 }, + { "성현진", SBLESS, bless, 2 }, + { "수호진", SPROTE, protection, 2 }, + { "í™”ê¶�", SFIREB, offensive_spell, 3 }, + { "ì�€ë‘”법", SINVIS, invisibility, 5 }, + { "ë�„력반", SRESTO, restore, 4 }, + { "ì�€ë‘”ê°�지술", SDINVI, detectinvis, 3 }, + { "주문ê°�지술", SDMAGI, detectmagic, 3 }, + { "축지법", STELEP, teleport, 4 }, + { "혼ë�™", SBEFUD, befuddle, 3 }, + { "뇌전", SLGHTN, offensive_spell, 4 }, + { "ë�™ì„¤ì£¼", SICEBL, offensive_spell, 5 }, + { "ë¹™ì�˜", SENCHA, enchant, 4 }, + { "귀환", SRECAL, recall, 3 }, + { "소환", SSUMMO, summon, 3 }, + { "ì›�기회복", SMENDW, mend, 3 }, + { "완치", SFHEAL, heal, 5 }, + { "ì¶”ì �", STRACK, magictrack, 4 }, + { "부양술", SLEVIT, levitate, 3 }, + { "ë°©ì—´ì§„", SRFIRE, resist_fire, 3 }, + { "비ìƒ�술", SFLYSP, fly, 4 }, + { "보마진", SRMAGI, resist_magic, 3 }, + { "ê¶Œí’�술", SSHOCK, offensive_spell, 5 }, + { "ì§€ë�™ìˆ ", SRUMBL, offensive_spell, 2 }, + { "화선ë�„", SBURNS, offensive_spell, 2 }, + { "탄수공", SBLIST, offensive_spell, 2 }, + { "í’�마현", SDUSTG, offensive_spell, 3 }, + { "파초ì‹�", SWBOLT, offensive_spell, 3 }, + { "í�­ì§„", SCRUSH, offensive_spell, 3 }, + { "ë‚™ì„�", SENGUL, offensive_spell, 5 }, + { "í™”í’�술", SBURST, offensive_spell, 3 }, + { "화룡대천", SSTEAM, offensive_spell, 3 }, + { "토합술", SSHATT, offensive_spell, 4 }, + { "주작현", SIMMOL, offensive_spell, 4 }, + { "열사천", SBLOOD, offensive_spell, 4 }, + { "파천í’�", STHUND, offensive_spell, 5 }, + { "지옥패", SEQUAK, offensive_spell, 5 }, + { "태양안", SFLFIL, offensive_spell, 5 }, + { "ì„ ì•…ê°�ì§€", SKNOWA, know_alignment, 3 }, + { "저주해소", SREMOV, remove_curse, 4 }, + { "방한진", SRCOLD, resist_cold, 3 }, + { "수ìƒ�술", SBRWAT, breathe_water, 3 }, + { "지방호", SSSHLD, earth_shield, 3 }, + { "천리안", SLOCAT, locate_player, 4 }, + { "백치술", SDREXP, drain_exp, 5 }, + { "치료", SRMDIS, rm_disease, 3 }, + { "개안술", SRMBLD, rm_blind, 3 }, + { "ê³µí�¬", SFEARS, fear, 4 }, + { "전회복", SRVIGO, room_vigor, 4 }, + { "전송", STRANO, object_send, 4 }, + { "실명", SBLIND, blind, 5 }, + { "봉합구", SSILNC, silence, 5 }, + { "ì�´í˜¼ëŒ€ë²•", SCHARM, charm, 5 }, +/* { "변수나한권", SNAHAN, offensive_spell }, */ { "@", -1,0,0 } }; @@ -659,7 +659,7 @@ struct osp_t ospell[] = { { SEQUAK, EARTH, 25, 4, 5, 30, 3 }, /* earthquake */ { SFLFIL, FIRE, 25, 4, 5, 30, 3 }, /* flamefill */ { SICEBL, WATER, 25, 4, 5, 30, 3 }, /* iceblade */ -/* { SNAHAN, WIND, 10, 2, 5, 13, 2 }, */ /* º¯¼ö³ªÇÑ±Ç */ +/* { SNAHAN, WIND, 10, 2, 5, 13, 2 }, */ /* 변수나한권 */ { -1, 0, 0, 0, 0, 0, 0 } }; diff --git a/src/io.c b/src/io.c index 6935fa06..fd12243d 100644 --- a/src/io.c +++ b/src/io.c @@ -53,6 +53,8 @@ static fd_set Sockets; extern int Port; extern char title_cut_index[PMAX]; +static unsigned char Utf8_pending[PMAX][4]; +static unsigned char Utf8_pending_len[PMAX]; /* @@ -286,6 +288,7 @@ void accept_connect() zero(extr, sizeof(extra)); zero(io, sizeof(iobuf)); + Utf8_pending_len[fd] = 0; io->ltime = time(0); io->intrpt = 1; @@ -345,9 +348,9 @@ int fd; /* The following lines must be left intact as part of the */ /* copyright agreement. */ /*************************************************************/ - print(fd, "\n¹«ÇÑ´ëÀü 1.3 (C) 1992, 1996"); - print(fd, "\n¿øÀÛ MORDOR 2.5 (Brett J. Vickers)"); - print(fd, "\n°ü¸®ÀÚ Å×½ºÅ佺 ²É »Ç»Ç"); + print(fd, "\n무한대전 1.3 (C) 1992, 1996"); + print(fd, "\nì›�ìž‘ MORDOR 2.5 (Brett J. Vickers)"); + print(fd, "\n관리ìž� 테스토스 꽃 뽀뽀"); /*************************************************************/ /*************************************************************/ @@ -366,7 +369,7 @@ int fd; } Ply[fd].io->ltime = time(0); - print(fd, "\n\n[¿£ÅÍ]¸¦ ´©¸£¼¼¿ä. "); + print(fd, "\n\n[엔터]를 누르세요. "); output_buf(); RETURN(fd, login, -1); @@ -430,6 +433,122 @@ char *str2; else return(0); } +static int utf8_lead_len(ch) +unsigned char ch; +{ + if(ch < 0x80) return 1; + if(ch >= 0xC2 && ch <= 0xDF) return 2; + if(ch >= 0xE0 && ch <= 0xEF) return 3; + if(ch >= 0xF0 && ch <= 0xF4) return 4; + return 0; +} + +static int input_used(ihead, itail) +int ihead; +int itail; +{ + return buflen(ihead, itail, IBUFSIZE); +} + +static void input_drop_tail_one(fd, pitail, ihead) +int fd; +int *pitail; +int ihead; +{ + int tail, next; + unsigned char c; + + if(*pitail == ihead) + return; + + tail = *pitail; + c = (unsigned char)Ply[fd].io->input[tail]; + next = (tail + 1) % IBUFSIZE; + + if((c == '\n' || c == '\r') && Ply[fd].io->commands > 0) + Ply[fd].io->commands--; + + if(c == '\n' || c == '\r') { + *pitail = next; + return; + } + + while(next != ihead && + (((unsigned char)Ply[fd].io->input[next] & 0xC0) == 0x80)) + next = (next + 1) % IBUFSIZE; + + *pitail = next; +} + +static void input_ensure_space(fd, pitail, ihead, need) +int fd; +int *pitail; +int ihead; +int need; +{ + while((IBUFSIZE - 1 - input_used(ihead, *pitail)) < need) + input_drop_tail_one(fd, pitail, ihead); +} + +static void input_push_byte(fd, pihead, pitail, ch) +int fd; +int *pihead; +int *pitail; +unsigned char ch; +{ + int ihead; + + ihead = *pihead; + input_ensure_space(fd, pitail, ihead, 1); + + Ply[fd].io->input[ihead] = (char)ch; + ihead = (ihead + 1) % IBUFSIZE; + *pihead = ihead; +} + +static void input_push_seq(fd, pihead, pitail, seq, n) +int fd; +int *pihead; +int *pitail; +unsigned char *seq; +int n; +{ + int i; + for(i=0; iinput[prev] == '\n' || Ply[fd].io->input[prev] == '\r') + return; + + while(prev != itail && + (((unsigned char)Ply[fd].io->input[prev] & 0xC0) == 0x80)) { + prev--; + if(prev < 0) + prev = IBUFSIZE - 1; + } + + if(Ply[fd].io->input[prev] == '\n' || Ply[fd].io->input[prev] == '\r') + return; + + *pihead = prev; +} + /**********************************************************************/ /* accept_input */ /**********************************************************************/ @@ -442,8 +561,8 @@ char *str2; int accept_input(fd) int fd; { - char buf[128], lastchar; - int i, n, prev, itail, ihead; + unsigned char buf[128], raw, ch; + int i, n, itail, ihead, need, saw_nl; #ifdef WIN32 n = scread(fd, buf, 127); @@ -451,51 +570,85 @@ int fd; n = read(fd, buf, 127); #endif - if(n<=0) + if(n<=0) { + Utf8_pending_len[fd] = 0; Ply[fd].io->commands = -1; /* Connection dropped */ + } else { ihead = Ply[fd].io->ihead; - lastchar = 0; itail = Ply[fd].io->itail; + saw_nl = 0; + for(i=0; i 31 || ((buf[i]&0x80) && (unsigned char)buf[i]!=155) || (buf[i] == '\n' && lastchar != '\r') - || buf[i] == '\b' ||buf[i]==127) { - if(buf[i]==127) buf[i]='\b'; - lastchar = buf[i]; - if(buf[i] == '\r') buf[i] = '\n'; - if(buf[i] == '\n') Ply[fd].io->commands++; - else if(buf[i] == '\b' && ihead != itail) { - prev = ihead-1 < 0 ? IBUFSIZE-1:ihead-1; - /* - if(Ply[fd].io->input[prev] == '%') - ihead -= 2; - else - */ - ihead--; - if(ihead < 0) - ihead = IBUFSIZE + ihead; + raw = buf[i]; + if(raw == '\n' && i > 0 && buf[i-1] == '\r') + continue; + + if(raw == 127) ch = '\b'; + else if(raw == '\r') ch = '\n'; + else ch = raw; + + if(ch == '\n') { + Utf8_pending_len[fd] = 0; + input_push_byte(fd, &ihead, &itail, ch); + Ply[fd].io->commands++; + saw_nl = 1; + continue; + } + + if(ch == '\b') { + if(Utf8_pending_len[fd] > 0) { + Utf8_pending_len[fd] = 0; continue; } - else if(buf[i] == '\b') continue; - Ply[fd].io->input[ihead] = buf[i]; - ihead = (ihead + 1) % IBUFSIZE; - if(ihead == itail) - itail = (itail + 1) % IBUFSIZE; - /* - if(buf[i] == '%') { - Ply[fd].io->input[ihead] = buf[i]; - ihead = (ihead + 1) % IBUFSIZE; - if(ihead == itail) - itail = (itail + 1) % IBUFSIZE; - } - */ + input_backspace_codepoint(fd, &ihead, itail); + continue; + } + + if(ch <= 31 || ch == 155) + continue; + + if(ch < 0x80) { + Utf8_pending_len[fd] = 0; + input_push_byte(fd, &ihead, &itail, ch); + continue; + } + + if(Utf8_pending_len[fd] == 0) { + need = utf8_lead_len(ch); + if(need <= 1) + continue; + Utf8_pending[fd][0] = ch; + Utf8_pending_len[fd] = 1; + continue; + } + + if((ch & 0xC0) != 0x80) { + Utf8_pending_len[fd] = 0; + i--; + continue; + } + + need = utf8_lead_len(Utf8_pending[fd][0]); + if(need < 2 || need > 4) { + Utf8_pending_len[fd] = 0; + i--; + continue; + } + + Utf8_pending[fd][Utf8_pending_len[fd]] = ch; + Utf8_pending_len[fd]++; + if(Utf8_pending_len[fd] == need) { + if(utf8_validate(Utf8_pending[fd], (unsigned long)need)) + input_push_seq(fd, &ihead, &itail, Utf8_pending[fd], need); + Utf8_pending_len[fd] = 0; } } Ply[fd].io->ihead = ihead; Ply[fd].io->itail = itail; Ply[fd].io->ltime = time(0); - if(buf[n-1] == '\n' || buf[n-1] == '\r') + if(saw_nl) Ply[fd].io->intrpt |= 1; else Ply[fd].io->intrpt &= ~1; @@ -601,7 +754,7 @@ long i1, i2, i3, i4, i5, i6; long arg[8]; char type; char *prestr; - char *Josa[6][2]={ {"Àº","´Â",},{"ÀÌ","°¡",},{"°ú","¿Í",},{"À»","¸¦",},{"À¸·Î","·Î",},}; + char *Josa[6][2]={ {"ì�€","는",},{"ì�´","ê°€",},{"ê³¼","와",},{"ì�„","를",},{"으로","로",},}; static char color_buf1[16]; static char color_buf2[16]; @@ -767,7 +920,7 @@ void handle_commands() disconnect(i); continue; } - /* ÁÙÀÓ¸» ½ÇÇà */ + /* 줄임ë§� 실행 */ if(alias_buf_num[i]!=alias_buf_pos[i] && Ply[i].io->fn==command) { ply_ptr = Ply[i].ply; strcpy(commands,alias_buf[i][alias_buf_pos[i]++]); @@ -836,6 +989,7 @@ int fd; close(fd); #endif FD_CLR(fd, &Sockets); + Utf8_pending_len[fd] = 0; Spy[fd] = -1; @@ -1250,7 +1404,7 @@ void reap_children() fclose(fp); unlink(filename); strcpy(Ply[found].io->userid, userid); - log_f("%s: %s@%s (%s@%s) Á¢¼Ó\n", timestr, + log_f("%s: %s@%s (%s@%s) ì ‘ì†�\n", timestr, userid, address, userid, Ply[found].io->address); if(strcmp(address, "UNKNOWN")) strcpy(Ply[found].io->address, address); diff --git a/src/kstbl.h b/src/kstbl.h index 91ddd963..50cb9a62 100644 --- a/src/kstbl.h +++ b/src/kstbl.h @@ -1,4 +1,4 @@ -unsigned KStbl[2350]={ /* KS ¿Ï¼ºÇü 2350ÀÚÀÇ Á¶ÇÕÇü ÄÚµå */ +unsigned KStbl[2350]={ /* KS 완성형 2350ìž�ì�˜ 조합형 코드 */ 0x8861,0x8862,0x8865,0x8868,0x8869,0x886a,0x886b,0x8871, 0x8873,0x8874,0x8875,0x8876,0x8877,0x8878,0x8879,0x887b, diff --git a/src/magic1.c b/src/magic1.c index e355a0bf..2a8f1f02 100644 --- a/src/magic1.c +++ b/src/magic1.c @@ -31,18 +31,18 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "¾î¶² ÁÖ¼úÀ» ÆîÄ¡½Ç°Ì´Ï±î?"); + print(fd, "ì–´ë–¤ 주술ì�„ 펼치실ê²�니까?"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù!"); + print(fd, "아무것ë�„ ë³´ì�´ì§€ 않습니다!"); ANSI(fd, WHITE); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { ANSI(fd, YELLOW); - print(fd, "ÇѸ¶µðµµ ÇÒ¼ö ¾ø½À´Ï´Ù!"); + print(fd, "한마디ë�„ 할수 없습니다!"); ANSI(fd, WHITE); return(0); } @@ -61,17 +61,17 @@ cmd *cmnd; } while(spllist[c].splno != -1); if(match == 0) { - print(fd, "±×·± ÁÖ¹®Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 주문ì�€ 존재하지 않습니다."); return(0); } else if(match > 1) { - print(fd, "ÆîÄ¡½Ç ÁÖ¹®ÀÇ À̸§ÀÌ ÀÌ»óÇϱº¿ä."); + print(fd, "펼치실 주문ì�˜ ì�´ë¦„ì�´ ì�´ìƒ�하군요."); return(0); } if(F_ISSET(ply_ptr->parent_rom, RNOMAG)) { - print(fd, "ÁÖ¼úÀ» Ãâ¼ö Çϴµ¥ ½ÇÆÐ Çϼ̽À´Ï´Ù."); + print(fd, "주술ì�„ 출수 하는ë�° 실패 하셨습니다."); return(0); } @@ -89,7 +89,7 @@ cmd *cmnd; if(fn == offensive_spell) { if(ply_ptr->class==0) { - print(fd,"´ç½ÅÀº °ø°ÝÁÖ¹®À» ¾µ ¼ö ¾ø´Â Á÷¾÷À» °®°í ÀÖ½À´Ï´Ù."); + print(fd,"당신ì�€ 공격주문ì�„ 쓸 수 없는 ì§�ì—…ì�„ ê°–ê³  있습니다."); return 0; } for(c=0; ospell[c].splno != spllist[splno].splno; c++) @@ -134,24 +134,24 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(cmnd->num < 3) { - print(fd, "´©±¸¿¡°Ô ºñ¹ýÀ» Àü¼ö½ÃŰ½Ç°Ì´Ï±î?"); + print(fd, "누구ì—�게 비법ì�„ 전수시키실ê²�니까?"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù!\n"); + print(fd, "아무것ë�„ ë³´ì�´ì§€ 않습니다!\n"); ANSI(fd, WHITE); return(0); } if(F_ISSET(ply_ptr, PSILNC)) { ANSI(fd, YELLOW); - print(fd, "´ç½ÅÀº ÇѸ¶µðµµ ÇÒ¼ö ¾ø½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 한마디ë�„ 할수 없습니다!\n"); ANSI(fd, WHITE); return(0); } if(ply_ptr->class != CARETAKER && ply_ptr->class != MAGE && ply_ptr->class != CLERIC) { - print(fd, "\nµµ¼ú»ç¿Í ºÒÁ¦ÀÚ¸¸ÀÌ Àü¼ö½Ãų ¼ö ÀÖ´Â ´É·ÂÀÌ ÀÖ½À´Ï´Ù.\n"); + print(fd, "\në�„술사와 불제ìž�ë§Œì�´ 전수시킬 수 있는 능력ì�´ 있습니다.\n"); return(0); } @@ -160,7 +160,7 @@ cmd *cmnd; cmnd->val[1]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } @@ -179,70 +179,70 @@ cmd *cmnd; } while(spllist[c].splno != -1); if(match == 0) { - print(fd, "\n±×·± ÁÖ¹®ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 주문ì�´ 존재하지 않습니다.\n"); return(0); } else if(match > 1) { - print(fd, "\nÁÖ¹®À̸§ÀÌ ÀÌ»óÇÕ´Ï´Ù.\n"); + print(fd, "\n주문ì�´ë¦„ì�´ ì�´ìƒ�합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, spllist[splno].splno)) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } /* if((spllist[splno].splno > 3) && (ply_ptr->class != CLERIC && ply_ptr->class < CARETAKER)) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].splno > 5) && (ply_ptr->class < CARETAKER)) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].splno < 3) && (ply_ptr->class != MAGE && ply_ptr->class < CARETAKER)) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } */ if((spllist[splno].spllv == 1) && (ply_ptr->class != CLERIC && ply_ptr->class < INVINCIBLE)) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].spllv == 2) && (ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE)) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].spllv == 3) && (ply_ptr->class < INVINCIBLE )) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].spllv == 4) && (ply_ptr->class < CARETAKER )) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } if((spllist[splno].spllv == 5) && (ply_ptr->class < SUB_DM )) { - print(fd, "\n±× ÁÖ¹®À» ´Ù¸¥ »ç¶÷¿¡°Ô Àü¼ö½Ãų ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 주문ì�„ 다른 사람ì—�게 전수시킬 수 없습니다.\n"); return(0); } F_CLR(ply_ptr, PHIDDN); S_SET(crt_ptr, spllist[splno].splno); - print(crt_ptr->fd, "\n%MÀÌ %s ÁÖ¼úÀÇ ½Ã¹üÀ» º¸À̸ç ÁÖ¹® Àü¼ö¸¦ ½Ãŵ´Ï´Ù.\n¿À¿Ê~~~ ÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ÁÖÀ§¿¡ ÀÌ»óÇÑ ±â¿îÀÌ ¸ðÀÌ´Â °ÍÀÌ ±× \n±× »ç¶÷¿¡°Ô »ó´çÇÑ µµ¿òÀÌ µÉ °Í °°½À´Ï´Ù.\n", ply_ptr, + print(crt_ptr->fd, "\n%Mì�´ %s 주술ì�˜ 시범ì�„ ë³´ì�´ë©° 주문 전수를 시킵니다.\n오옷~~~ ì�´ 주문ì�„ 외우ìž� 주위ì—� ì�´ìƒ�한 기운ì�´ 모ì�´ëŠ” 것ì�´ ê·¸ \nê·¸ 사람ì—�게 ìƒ�당한 ë�„움ì�´ ë�  것 같습니다.\n", ply_ptr, spllist[splno].splstr); - print(fd, "\n%s ÁÖ¼úÀ» %M¿¡°Ô ½Ã¹üÀ» º¸À̸ç ÁÖ¹® Àü¼ö¸¦ ½Ãŵ´Ï´Ù.\n¿À¿Ê~~~ ÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ÁÖÀ§¿¡ ÀÌ»óÇÑ ±â¿îÀÌ ¸ðÀÌ´Â °ÍÀÌ\n±× »ç¶÷¿¡°Ô »ó´çÇÑ µµ¿òÀÌ µÉ °Í °°½À´Ï´Ù.\n", spllist[splno].splstr, + print(fd, "\n%s 주술ì�„ %Mì—�게 시범ì�„ ë³´ì�´ë©° 주문 전수를 시킵니다.\n오옷~~~ ì�´ 주문ì�„ 외우ìž� 주위ì—� ì�´ìƒ�한 기운ì�´ 모ì�´ëŠ” 것ì�´\nê·¸ 사람ì—�게 ìƒ�당한 ë�„움ì�´ ë�  것 같습니다.\n", spllist[splno].splstr, crt_ptr); broadcast_rom2(fd, crt_ptr->fd, rom_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô %s ÁÖ¼úÀÇ ½Ã¹üÀ» º¸À̸ç ÁÖ¹® Àü¼ö¸¦ \n½Ãŵ´Ï´Ù.\n¿À¿Ê~~~ ÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ÁÖÀ§¿¡ ÀÌ»óÇÑ ±â¿îÀÌ ¸ðÀÌ´Â °ÍÀÌ\n±× »ç¶÷¿¡°Ô »ó´çÇÑ µµ¿òÀÌ µÉ °Í °°½À´Ï´Ù.\n", ply_ptr, crt_ptr, + "\n%Mì�´ %Mì—�게 %s 주술ì�˜ 시범ì�„ ë³´ì�´ë©° 주문 전수를 \n시킵니다.\n오옷~~~ ì�´ 주문ì�„ 외우ìž� 주위ì—� ì�´ìƒ�한 기운ì�´ 모ì�´ëŠ” 것ì�´\nê·¸ 사람ì—�게 ìƒ�당한 ë�„움ì�´ ë�  것 같습니다.\n", ply_ptr, crt_ptr, spllist[splno].splstr); return(0); @@ -266,12 +266,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "\n¹«¾ùÀ» ¿¬¸¶ÇϽǷÁ°í¿ä?\n"); + print(fd, "\n무엇ì�„ 연마하실려고요?\n"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "\n´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â ÀÌ ºñ¹ý¼­¸¦ ¿¬¸¶ÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 능력으로는 ì�´ 비법서를 연마할 수 없습니다.\n"); ANSI(fd, WHITE); return(0); } @@ -293,25 +293,25 @@ cmd *cmnd; } if(!obj_ptr) { - print(fd, "\n±×·± °ÍÀ» ¼ÒÁöÇϰí ÀÖÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 것ì�„ 소지하고 있지 않습니다.\n"); return(0); } if(obj_ptr->type != SCROLL) { - print(fd, "\nÀ̰ÍÀº ºñ¹ý¼­°¡ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "\nì�´ê²ƒì�€ 비법서가 아닙니다.\n"); return(0); } - /* ÁÖ¹® ¹è¿ï ·¹º§ Á¦ÇÑ */ + /* 주문 배울 레벨 제한 */ if (obj_ptr->ndice > ply_ptr->level) { - print(fd, "\n´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â %iÀÇ ³»¿ëÀ» ÆÄ¾ÇÇÏÁö ¸øÇØ ¿¬¸¶ÇÒ ¼ö ¾ø½À´Ï´Ù.",obj_ptr); + print(fd, "\n당신ì�˜ 능력으로는 %iì�˜ ë‚´ìš©ì�„ 파악하지 못해 연마할 수 없습니다.",obj_ptr); return(0); } if((F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -100) || (F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 100)) { - print(fd, "\n¿¬¸¶¸¦ ³¡¸¶Ä¡ÀÚ %IÀÇ Çüü°¡ È­¿°¿¡ ÈÛ½ÎÀÌ¸ç ¾îµð·Ð°¡ »ç¶óÁ®\n ¹ö·È½À´Ï´Ù.\n", obj_ptr); + print(fd, "\n연마를 ë��마치ìž� %Iì�˜ 형체가 화염ì—� 휩싸ì�´ë©° 어디론가 사ë�¼ì ¸\n 버렸습니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -321,16 +321,16 @@ cmd *cmnd; if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < CARETAKER)){ - print(fd, "\n´ç½ÅÀÇ Á÷¾÷»ó %iÀÇ ºñ¹ýÀ» ¿¬¸¶ÇÒ ¼ö ¾ø½À´Ï´Ù.\n",obj_ptr); + print(fd, "\n당신ì�˜ ì§�ì—…ìƒ� %iì�˜ 비법ì�„ 연마할 수 없습니다.\n",obj_ptr); return(0); } F_CLR(ply_ptr, PHIDDN); - print(fd, "´ç½ÅÀº %sÀÇ ³»¿ëÀ» ¾Ë¾Æ³»°í ¿¬¸¶Çϱ⠽ÃÀÛÇÕ´Ï´Ù.\n¿¬¸¶¸¦ ÇØ ³ª°¨¿¡ µû¶ó ¸ö¾È¿¡¼­ ÀÌ»óÇÑ ±â¿îÀÌ ÆÛÁ® ³ª°¡´Â\n°ÍÀÌ ´À²¸Áý´Ï´Ù.\nÀ̾߾ß~~~~~¾å ±× ±â¿îÀÌ ¾ÈÁ¤µÇ¸é¼­ ¿ÏÀüÈ÷ ´ç½ÅÀÇ °ÍÀÌ \nµÇ¾ú½À´Ï´Ù.\n", + print(fd, "당신ì�€ %sì�˜ ë‚´ìš©ì�„ 알아내고 연마하기 시작합니다.\n연마를 í•´ 나ê°�ì—� ë”°ë�¼ 몸안ì—�서 ì�´ìƒ�한 기운ì�´ í�¼ì ¸ 나가는\n것ì�´ ëŠ�껴집니다.\nì�´ì•¼ì•¼~~~~~ì–� ê·¸ 기운ì�´ 안정ë�˜ë©´ì„œ 완전히 당신ì�˜ 것ì�´ \në�˜ì—ˆìŠµë‹ˆë‹¤.\n", spllist[obj_ptr->magicpower-1].splstr); - print(fd, "\n¿¬¸¶¸¦ ¸¶Ä¡ÀÚ %IÀÇ Çüü¿¡ È­¿°ÀÌ ÈÛ½ÎÀÌ¸ç ¾îµð·Ð°¡ »ç¶óÁ® ¹ö·È½À´Ï´Ù.\n", obj_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %1iÀÇ ³»¿ëÀ» ÀÐ°í ¿¬¸¶ÇÕ´Ï´Ù.", + print(fd, "\n연마를 마치ìž� %Iì�˜ 형체ì—� 화염ì�´ 휩싸ì�´ë©° 어디론가 사ë�¼ì ¸ 버렸습니다.\n", obj_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %1iì�˜ ë‚´ìš©ì�„ ì�½ê³  연마합니다.", ply_ptr, obj_ptr); S_SET(ply_ptr, obj_ptr->magicpower-1); @@ -364,20 +364,20 @@ cmd *cmnd; if(cmnd->num < 2) { if(cmnd->val[0]>1) { obj_ptr = find_obj(ply_ptr,ply_ptr->parent_rom->first_obj, - "°Ô½ÃÆÇ",1); + "게시íŒ�",1); if(!obj_ptr) { - print(fd,"¹«¾ùÀ» ÀнÀ´Ï±î?"); + print(fd,"무엇ì�„ ì�½ìŠµë‹ˆê¹Œ?"); return 0; } board_obj[fd]=obj_ptr; return(read_board(ply_ptr,cmnd)); } - print(fd, "¹«¾ùÀ» ÀнÀ´Ï±î?\n"); + print(fd, "무엇ì�„ ì�½ìŠµë‹ˆê¹Œ?\n"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "\n´ç½ÅÀº ±×°ÍÀ» ÀÐÀ» ¼ö ÀÖ´Â ´É·ÂÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 그것ì�„ ì�½ì�„ 수 있는 능력ì�´ 없습니다.\n"); ANSI(fd, WHITE); return(0); } @@ -398,7 +398,7 @@ cmd *cmnd; } if(!obj_ptr) { - print(fd, "\n ±×·±°ÍÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n 그런것ì�´ 존재하지 않습니다.\n"); return(0); } @@ -408,19 +408,19 @@ cmd *cmnd; } if(obj_ptr->type != SCROLL) { - print(fd, "\nÀ̰ÍÀº ¹®¼­±¸°¡ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "\nì�´ê²ƒì�€ 문서구가 아닙니다.\n"); return(0); } - /* ÁÖ¹® ¹è¿ï ·¹º§ Á¦ÇÑ */ + /* 주문 배울 레벨 제한 */ if (obj_ptr->ndice > ply_ptr->level) { - print(fd, "\n´ç½ÅÀÇ ´É·ÂÀ¸·Î´Â %iÀÇ ³»¿ëÀ» ÆÄ¾ÇÇÏÁö ¸øÇØ ¿¬¸¶ÇÒ ¼ö ¾ø½À´Ï´Ù.",obj_ptr); + print(fd, "\n당신ì�˜ 능력으로는 %iì�˜ ë‚´ìš©ì�„ 파악하지 못해 연마할 수 없습니다.",obj_ptr); return(0); } if((F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -100) || (F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 100)) { - print(fd, "\n¸ðµç °ÍÀ» ÀÐ°í ³ªÀÚ %IÀÇ Çüü°¡ ¸ÕÁö·Î º¯Çϸ鼭 ¹Ù¶÷°ú ÇÔ²² »ç¶óÁ® ¹ö·È½À´Ï´Ù.\n", obj_ptr); + print(fd, "\n모든 것ì�„ ì�½ê³  나ìž� %Iì�˜ 형체가 먼지로 변하면서 바람과 함께 사ë�¼ì ¸ 버렸습니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -431,12 +431,12 @@ cmd *cmnd; if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < CARETAKER)){ - print(fd, "\nÀ̰ÍÀº ´ç½ÅÀÇ Á÷¾÷¿¡¼­ ±ÝÇÏ´Â ±Ý¼­À̱⠶§¹®¿¡ ³»¿ëÀ» ÀÐÀ» ¼ö ¾ø½À´Ï´Ù.\n",obj_ptr); + print(fd, "\nì�´ê²ƒì�€ 당신ì�˜ ì§�ì—…ì—�서 금하는 금서ì�´ê¸° 때문ì—� ë‚´ìš©ì�„ ì�½ì�„ 수 없습니다.\n",obj_ptr); return(0); } if(F_ISSET(ply_ptr->parent_rom, RNOMAG) || (obj_ptr->magicpower-1 < 0)) { - print(fd, "\n¾Æ¹«·± Àϵµ ÀϾÁö ¾Ê¾Ò½À´Ï´Ù.\n"); + print(fd, "\n아무런 ì�¼ë�„ ì�¼ì–´ë‚˜ì§€ 않았습니다.\n"); return(0); } @@ -454,7 +454,7 @@ CARETAKER)){ ply_ptr->lasttime[LT_READS].interval = 3; if(spell_fail(ply_ptr)){ - print(fd, "\n¸ðµç °ÍÀ» ÀÐ°í ³ªÀÚ %IÀÇ Çüü°¡ ¸ÕÁö·Î º¯Çϸ鼭 ¹Ù¶÷°ú ÇÔ²² »ç¶óÁ® ¹ö·È½À´Ï´Ù.\n", obj_ptr); + print(fd, "\n모든 것ì�„ ì�½ê³  나ìž� %Iì�˜ 형체가 먼지로 변하면서 바람과 함께 사ë�¼ì ¸ 버렸습니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); return(0); @@ -477,7 +477,7 @@ CARETAKER)){ if(obj_ptr->use_output[0]) print(fd, "%s\n", obj_ptr->use_output); - print(fd, "\n¸ðµç °ÍÀ» ÀÐ°í ³ªÀÚ %IÀÇ Çüü°¡ ¸ÕÁö·Î º¯Çϸ鼭 ¹Ù¶÷°ú ÇÔ²² »ç¶óÁ® ¹ö·È½À´Ï´Ù.\n", obj_ptr); + print(fd, "\n모든 것ì�„ ì�½ê³  나ìž� %Iì�˜ 형체가 먼지로 변하면서 바람과 함께 사ë�¼ì ¸ 버렸습니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); } @@ -508,7 +508,7 @@ cmd *cmnd; fn = 0; if(cmnd->num < 2) { - print(fd, "\n¹«¾ùÀ» ¸Ô½À´Ï±î?\n"); + print(fd, "\n무엇ì�„ 먹습니까?\n"); return(0); } @@ -529,12 +529,12 @@ cmd *cmnd; } if(!obj_ptr) { - print(fd, "\n±×·±°ÍÀº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런것ì�€ 존재하지 않습니다.\n"); return(0); } if(obj_ptr->type != POTION) { - print(fd, "\nÀ̰ÍÀº ¸Ô´Â ¹°°ÇÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "\nì�´ê²ƒì�€ 먹는 물건ì�´ 아닙니다.\n"); return(0); } if(F_ISSET(obj_ptr, OSPECI)) { @@ -586,8 +586,8 @@ cmd *cmnd; } if(obj_ptr->use_output[0]) print(fd, "%s\n", obj_ptr->use_output); - print(fd, "´ç½ÅÀº %1iÀ» ¸Ô¾ú½À´Ï´Ù.\n", obj_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %1iÀ» ¸Ô¾ú½À´Ï´Ù.", + print(fd, "당신ì�€ %1iì�„ 먹었습니다.\n", obj_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %1iì�„ 먹었습니다.", ply_ptr, obj_ptr); if(obj_ptr->pdice == 5) { obj_ptr->shotscur--; @@ -600,22 +600,22 @@ cmd *cmnd; } if(obj_ptr->shotscur < 1 || (obj_ptr->magicpower-1 < 0)) { - print(fd, "\n¾Æ¹«°Íµµ µé¾îÀÖÁö ¾Ê½À´Ï´Ù.\n\n"); + print(fd, "\n아무것ë�„ 들어있지 않습니다.\n\n"); return(0); } if(F_ISSET(ply_ptr->parent_rom, RNOPOT)){ - print(fd, "\n±×°ÍÀ» ¸Ô±âÀü¿¡ ÀÎÁ¶°¡ ³ªÅ¸³ª ÈÉÃİ¡ ¹ö·È½À´Ï´Ù.\n À߸԰ڴÙ... ³¥³¥³¥... \n",obj_ptr); + print(fd, "\n그것ì�„ 먹기전ì—� ì�¸ì¡°ê°€ 나타나 í›”ì³�ê°€ 버렸습니다.\n 잘먹겠다... ë‚„ë‚„ë‚„... \n",obj_ptr); return(0); } if(F_ISSET(ply_ptr->parent_rom, RSUVIV)) { - print(fd, "\n´ë·ÃÀå¿¡¼­´Â ¾Æ¹« °Íµµ ¸ÔÀ» ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n대련장ì—�서는 아무 것ë�„ 먹ì�„ 수 없습니다.\n"); return(0); } if((F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -100) || (F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 100)) { - print(fd, "%I°¡ ´ç½ÅÀÇ ¼Õ¾È¿¡¼­ Ÿ¹ö¸³´Ï´Ù.\n", obj_ptr); + print(fd, "%Iê°€ 당신ì�˜ ì†�안ì—�서 타버립니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -625,7 +625,7 @@ cmd *cmnd; if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < CARETAKER)){ - print(fd, "\n´ç½ÅÁ÷¾÷»ó ±× ¹°°ÇÀ» ±ÝÇϰí Àֱ⠶§¹®¿¡ ¸ÔÀ» ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì§�ì—…ìƒ� ê·¸ 물건ì�„ 금하고 있기 때문ì—� 먹ì�„ 수 없습니다.\n"); return(0); } @@ -648,12 +648,12 @@ CARETAKER)){ if(obj_ptr->use_output[0]) print(fd, "%s\n", obj_ptr->use_output); - print(fd, "\n´ç½ÅÀº %1iÀ» ¸Ô¾ú½À´Ï´Ù.\n", obj_ptr); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ %1iÀ» ¸Ô¾ú½À´Ï´Ù.", + print(fd, "\n당신ì�€ %1iì�„ 먹었습니다.\n", obj_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ %1iì�„ 먹었습니다.", ply_ptr, obj_ptr); if(--obj_ptr->shotscur < 1) { - /* print(fd, "\n´Ù ¸Ô°í ³²Àº %IÀÇ Â±â¸¦ ¹ö·È½À´Ï´Ù.\n", obj_ptr); */ + /* print(fd, "\n다 먹고 남ì�€ %Iì�˜ 찌꺼기를 버렸습니다.\n", obj_ptr); */ del_obj_crt(obj_ptr, ply_ptr); free_obj(obj_ptr); } @@ -681,12 +681,12 @@ cmd *cmnd; fd = ply_ptr->fd; if(cmnd->num < 2) { - print(fd, "\n¹«¾ùÀ» »ç¿ëÇմϱî?\n"); + print(fd, "\n무엇ì�„ 사용합니까?\n"); return(0); } if(F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - print(fd, "¾Æ¹« °Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù!\n"); + print(fd, "아무 것ë�„ ë³´ì�´ì§€ 않습니다!\n"); ANSI(fd, WHITE); return(0); } @@ -708,23 +708,23 @@ cmd *cmnd; } if(!obj_ptr) { - print(fd, "\n±×·±°ÍÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런것ì�´ 존재하지 않습니다.\n"); return(0); } if(obj_ptr->type != WAND) { - print(fd, "\n¸·´ë³ª ÁöÆÎÀ̰¡ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "\n막대나 지팡ì�´ê°€ 아닙니다.\n"); return(0); } if(obj_ptr->shotscur < 1) { - print(fd, "\n¸ðµÎ ½á¹ö·È½À´Ï´Ù.\n"); + print(fd, "\n모ë‘� ì�¨ë²„렸습니다.\n"); return(0); } if((F_ISSET(obj_ptr, OGOODO) && ply_ptr->alignment < -100) || (F_ISSET(obj_ptr, OEVILO) && ply_ptr->alignment > 100)) { - print(fd, "\n%IÀÇ ¼ö¸íÀÌ ´ÙÇÑ µí ¼öÁõ±âó·³ Áõ¹ßÇØ ¹ö·È½À´Ï´Ù.\n", obj_ptr); + print(fd, "\n%Iì�˜ 수명ì�´ 다한 듯 수ì¦�기처럼 ì¦�발해 버렸습니다.\n", obj_ptr); del_obj_crt(obj_ptr, ply_ptr); add_obj_rom(obj_ptr, ply_ptr->parent_rom); return(0); @@ -735,13 +735,13 @@ cmd *cmnd; if(F_ISSET(obj_ptr,OCLSEL)) if(!F_ISSET(obj_ptr,OCLSEL + ply_ptr->class) && ( ply_ptr->class < CARETAKER)){ - print(fd, "\n´ç½ÅÁ÷¾÷¼¼°è¿¡¼­ ±ÝÇÏ´Â ¹°°ÇÀ̱⿡ »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì§�업세계ì—�서 금하는 물건ì�´ê¸°ì—� 사용할 수 없습니다.\n"); return(0); } if(F_ISSET(ply_ptr->parent_rom, RNOMAG) || (obj_ptr->magicpower < 1)) { - print(fd, "\n¾Æ¹«·± Àϵµ ÀϾÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n아무런 ì�¼ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n"); return(0); } @@ -833,20 +833,20 @@ osp_t *osp; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < osp->mp && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, osp->splno) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ¿ø·¡´ë·Î µ¹¾Æ¿Ô½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¸ð½ÀÀÌ ³ªÅ¸³³´Ï´Ù.\n", + print(fd, "\n당신ì�˜ 모습ì�´ ì›�래대로 ë�Œì•„왔습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 모습ì�´ 나타납니다.\n", ply_ptr); } @@ -898,22 +898,22 @@ osp_t *osp; if(!strncmp(cmnd->str[1], spllist[14].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[38].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[39].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[40].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } @@ -923,92 +923,92 @@ osp_t *osp; ply_ptr->mpcur -= osp->mp; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %s ÁÖ¹®À» Àڽſ¡°Ô °Ì´Ï´Ù.\n", + print(fd, "\n당신ì�€ %s 주문ì�„ ìž�ì‹ ì—�게 ê²�니다.\n", spellname); - /* ³»°¡ ¸¸µçÁÖ¹® */ - /* »èdz */ + /* ë‚´ê°€ 만든주문 */ + /* ì‚­í’� */ if(!strncmp(cmnd->str[1], spllist[1].splstr,strlen(cmnd->str[1]))) - print(fd, "\n»èdz¼Ò¸êÁÖ... »èdzÀÌ¿©! ³ÊÀÇ ÈûÀ¸·Î ¸ðµç °ÍÀ» ¼Ò¸ê½ÃÄѶó.\nÁÖ¹®À» ¿Ü¿ìÀÚ ºÏ¹æÀ¸·ÎºÎÅÍ Ä®³¯°ú °°Àº °Å¼¾ ¹Ù¶÷ÀÌ ºÒ¾î ¸í·É¿¡ µû¶ó °ø°ÝÇÕ´Ï´Ù.\n"); - /* ºÒÈ­»ì */ + print(fd, "\nì‚­í’�소멸주... ì‚­í’�ì�´ì—¬! 너ì�˜ 힘으로 모든 것ì�„ 소멸시켜ë�¼.\n주문ì�„ 외우ìž� ë¶�방으로부터 칼날과 ê°™ì�€ 거센 바람ì�´ 불어 명령ì—� ë”°ë�¼ 공격합니다.\n"); + /* 불화살 */ if(!strncmp(cmnd->str[1], spllist[6].splstr,strlen(cmnd->str[1]))) - print(fd, "\n¸ê°ÌÈ­±ÃÁÖ... ¸ê°ÌÈ­ÀÇ È­»ìÀÌ ¸ðµç °ÍÀ» Å¿ö¹ö¸°´Ù.\n¼ÕÀ» ²ø¾î ±â¸¦ ¸ðÀ¸ÀÚ ¼Õ ³¡¿¡¼­ Àû»öÀÇ ºÒ²ÉÀÌ °ø°£À» °¡¸£¸ç Àû¿¡°Ô ³¯¶ó°©´Ï´Ù.\n"); - /* ¹ø°³ */ + print(fd, "\n멸ê²�í™”ê¶�주... 멸ê²�í™”ì�˜ 화살ì�´ 모든 것ì�„ 태워버린다.\nì†�ì�„ ë�Œì–´ 기를 모으ìž� ì†� ë��ì—�서 ì �색ì�˜ 불꽃ì�´ 공간ì�„ 가르며 ì �ì—�게 ë‚ ë�¼ê°‘니다.\n"); + /* 번개 */ if(!strncmp(cmnd->str[1], spllist[13].splstr,strlen(cmnd->str[1]))) - print(fd, "\n³ú¶ôõÁÖ... ÇÏ´ÃÀÇ ºÐ³ë°¡ ´«±æ·Î º¯ÇÏ´Ï ±×°ÍÀÌ ³ú¶ôÀ̷δÙ.\n¾ç¼ÕÀÇ °ËÁö¸¦ Çϴ÷ΠÇâÇØ ¸ðÀ¸ÀÚ ¾çÂÊ´«¿¡¼­ Ǫ¸¥¹ø°³°¡ ÀÛ·ÄÇϸ鼭 ³¯¶ó °©´Ï´Ù.\n"); - /* ºù¼³°Ë */ + print(fd, "\n뇌ë�½ì²œì£¼... 하늘ì�˜ 분노가 눈길로 변하니 그것ì�´ 뇌ë�½ì�´ë¡œë‹¤.\nì–‘ì†�ì�˜ 검지를 하늘로 향해 모으ìž� 양쪽눈ì—�서 푸른번개가 작렬하면서 ë‚ ë�¼ 갑니다.\n"); + /* 빙설검 */ if(!strncmp(cmnd->str[1], spllist[14].splstr,strlen(cmnd->str[1]))) - print(fd, "\nµ¿¼³ÁÖ... ºÏ¹æµ¿À屺ÀÇ ÈûÀº ºÒµµ ¾ó·Á¹ö¸®´Ï... °ÅÄ¥°ÍÀÌ ¾øµµ´Ù.\nÁÖ¹®À» ¿Ü¿ì¸ç ºÎÀû¿¡ µµ·ÂÀ» ¸ð¾Æ Çϴ÷Π³¯¸®ÀÚ ¸ðµç °ÍÀ» ¾ó¸± µí ÇÑ ´«º¸¶ó°¡ ÈÖ¸ô¾Æ Ĩ´Ï´Ù.\n"); - /* ÆÄ°Ý¼ú */ + print(fd, "\në�™ì„¤ì£¼... ë¶�ë°©ë�™ìž¥êµ°ì�˜ 힘ì�€ 불ë�„ 얼려버리니... 거칠것ì�´ ì—†ë�„다.\n주문ì�„ 외우며 ë¶€ì �ì—� ë�„ë ¥ì�„ 모아 하늘로 날리ìž� 모든 것ì�„ 얼릴 듯 한 눈보ë�¼ê°€ 휘몰아 칩니다.\n"); + /* 파격술 */ if(!strncmp(cmnd->str[1], spllist[25].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÆÄ°ÝÁÖ... ºÏÇÑÀÇ ±â¿îÀÌ¿ä, µ¿¿ÕÀÇ Ãâ¼ö´Ï ³ªÀÇ ¼ÕÀ¸·Î ¿À¶ó.\nÁÖ¹®À» ¿Ü¿ì¸ç ¼ÕÀ» ³»¹ÐÀÚ ÇÑdzÀÌ ¼Ò¿ëµÑÀ̸¦ ÀÏÀ¸Å°¸ç ÁÖÀǸ¦ ¾µ¾î ¹ö¸³´Ï´Ù.\n"); - /* Áöµ¿¼ú */ + print(fd, "\n파격주... ë¶�한ì�˜ 기운ì�´ìš”, ë�™ì™•ì�˜ 출수니 나ì�˜ ì†�으로 오ë�¼.\n주문ì�„ 외우며 ì†�ì�„ ë‚´ë°€ìž� 한í’�ì�´ 소용둘ì�´ë¥¼ ì�¼ìœ¼í‚¤ë©° 주ì�˜ë¥¼ 쓸어 버립니다.\n"); + /* ì§€ë�™ìˆ  */ if(!strncmp(cmnd->str[1], spllist[26].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÁöµ¿ÁÖ... ´ëÁöÀÇ Á¤·ÉµéÀÌ¿© ³ªÀÇ ¸í·ÉÀ» µé¾î ÀûÀ» °ø°ÝÇ϶ó.\n¶¥À§ÀÇ ÀÖ´Â ¼ö¸¸¸¶¸®ÀÇ ¹ú·¹µéÀÌ ÀûÀÇ ±â¿îÀ» ÂÑ¾Æ °ø°ÝÀ» ÇÕ´Ï´Ù.\n"); - /* È­¼±µµ */ + print(fd, "\nì§€ë�™ì£¼... 대지ì�˜ 정령들ì�´ì—¬ 나ì�˜ 명령ì�„ 들어 ì �ì�„ 공격하ë�¼.\n땅위ì�˜ 있는 수만마리ì�˜ 벌레들ì�´ ì �ì�˜ 기운ì�„ ì«“ì•„ 공격ì�„ 합니다.\n"); + /* 화선ë�„ */ if(!strncmp(cmnd->str[1], spllist[27].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÈ­±â¼±ÁÖ... ºÏµÎÀÇ È­µÎ¼ºÀÌ ±ê¹ß¿¡ ½Ç¸®´Ï À̰ÍÀ¸·Î ¸ðµç °ÍÀ» Å¿츮¶ó.\nµî¿¡ ¼û°ÜÁ® ÀÖ´ø ºÓÀº ±ê¹ßµéÀÌ Çϴ÷Π³¯¾Æ¿Ã¶ó ÁøÀ» Çü¼ºÇÏÀÚ ÀûÀÇ ¸öÀÌ ºÒŸ ¿À¸¨´Ï´Ù.\n"); - /* ¼ö±¸Áø */ + print(fd, "\n화기선주... ë¶�ë‘�ì�˜ í™”ë‘�성ì�´ 깃발ì—� 실리니 ì�´ê²ƒìœ¼ë¡œ 모든 것ì�„ 태우리ë�¼.\n등ì—� 숨겨져 있ë�˜ 붉ì�€ 깃발들ì�´ 하늘로 날아올ë�¼ ì§„ì�„ 형성하ìž� ì �ì�˜ 몸ì�´ 불타 오릅니다.\n"); + /* 수구진 */ if(!strncmp(cmnd->str[1], spllist[28].splstr,strlen(cmnd->str[1]))) - print(fd, "\nźÁö¼öÅëÁÖ... °üÀ½ÀÇ ´«¹°ÀÌ ¼Õ ³¡¿¡ ¸ÎÈ÷´Ï ¸¶µµ ¹«¸­À» ²ÝÀ¸¸®¶ó.\n¼Õ ³¡¿¡ ºû³ª´Â À̽½ÀÌ ¸ÎÈ÷¸é¼­ ±×°ÍÀ» ƨ±âÀÚ ÃѾ˰°ÀÌ ³¯¶ó°¡ ÀûÀÇ ¸öÀ» ²ç¶Õ¾î ¹ö¸³´Ï´Ù.\n"); - /* ȸ¿À¸®*/ + print(fd, "\n탄지수통주... ê´€ì�Œì�˜ 눈물ì�´ ì†� ë��ì—� 맺히니 마ë�„ 무릎ì�„ 꿇으리ë�¼.\nì†� ë��ì—� 빛나는 ì�´ìЬì�´ 맺히면서 그것ì�„ 튕기ìž� ì´�알같ì�´ ë‚ ë�¼ê°€ ì �ì�˜ 몸ì�„ 꿰뚫어 버립니다.\n"); + /* 회오리*/ if(!strncmp(cmnd->str[1], spllist[29].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÇö¹«¸¶¾ÐÁÖ... Çö¹«ÀÇ °ËÀº ¹Ù¶÷ÀÌ ¸¶¸¦ »ïŰ´Ï ¿ÀÇàÀÇ ÈæÀÌ Áøµ¿Çϸ®¶ó.\nÁÖ¹®À» ¿Ü¹«¸ç ¸öÀ» µ¹¸®ÀÚ °©Àڱ⠰ËÀº ÅÂdzÀÌ ³¯¶ó¿Í ÀûÀÇ ¸öÀ» »ïÄÑ ¹ö¸³´Ï´Ù.\n"); - /* ÇØÀÏ */ + print(fd, "\n현무마압주... 현무ì�˜ ê²€ì�€ 바람ì�´ 마를 삼키니 오행ì�˜ í�‘ì�´ ì§„ë�™í•˜ë¦¬ë�¼.\n주문ì�„ 외무며 몸ì�„ ë�Œë¦¬ìž� ê°‘ìž�기 ê²€ì�€ 태í’�ì�´ ë‚ ë�¼ì™€ ì �ì�˜ 몸ì�„ 삼켜 버립니다.\n"); + /* í•´ì�¼ */ if(!strncmp(cmnd->str[1], spllist[30].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÆÄÃʽÄÁÖ... ¼ö°Ëµµ°¡ ÆÄµµ¸¦ ºÎ¸£´Ï °Å´ëÇÑ ¹Ù´ÙÀÇ ÈûÀ¸·Î ÀûÀ» ³¯·Á¹ö¸®¸®¶ó.\n¼Ò¸Å¿¡ ¼û°ÜÁ®ÀÖ´ø ¾ãÀº °ËÀ» »Ì¾Æ °ËÃʸ¦ »Ñ¸®ÀÚ ±× ¾È¿¡ ¼û°ÜÁ® ÀÖ´ø ¼öÀÇ ±â¿îµéÀÌ »ó´ë¹æ¿¡°Ô ºÐÃâµË´Ï´Ù.\n"); - /* ÆøÁø */ + print(fd, "\n파초ì‹�주... 수검ë�„ê°€ 파ë�„를 부르니 거대한 바다ì�˜ 힘으로 ì �ì�„ 날려버리리ë�¼.\n소매ì—� 숨겨져있ë�˜ ì–‡ì�€ ê²€ì�„ 뽑아 검초를 뿌리ìž� ê·¸ 안ì—� 숨겨져 있ë�˜ 수ì�˜ 기운들ì�´ ìƒ�대방ì—�게 ë¶„ì¶œë�©ë‹ˆë‹¤.\n"); + /* í�­ì§„ */ if(!strncmp(cmnd->str[1], spllist[31].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÆøÁøÈ£ÃâÁÖ... ÁöÁøÀ» ºÎ¸£´Â Áö·æÀÌ¿© ¶¥À§·Î ¿Ã¶ó¿Í ³ÊÀÇ ÈûÀ» º¸¿©¶ó.\n¸ñ°ËÀ» ¶¥¿¡ ²ÈÀÚ ¶¥ÀÌ °¥¶óÁö¸é¼­ Áö·æÀÌ ¿Ã¶ó¿Í ³¯Ä«·Î¿î ¼ÕÅéÀ¸·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù.\n"); - /* ³«¼® */ + print(fd, "\ní�­ì§„호출주... 지진ì�„ 부르는 지룡ì�´ì—¬ 땅위로 올ë�¼ì™€ 너ì�˜ 힘ì�„ ë³´ì—¬ë�¼.\n목검ì�„ ë•…ì—� 꽂ìž� ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ 지룡ì�´ 올ë�¼ì™€ 날카로운 ì†�톱으로 ì �ì�„ 공격합니다.\n"); + /* ë‚™ì„� */ if(!strncmp(cmnd->str[1], spllist[32].splstr,strlen(cmnd->str[1]))) - print(fd, "³«¼®ÁÖ... ¹éÈ£ÀÇ ÈûÀº »êµµ ¹«³Ê¶ß¸®´Ï ´ë¾ÏÀÇ Á¤·ÉÀÌ¿© ¾Ï¿ì¸¦ ¶³¾î¶ß·Á¶ó.\n°©Àڱ⠿·¿¡ ÀÖ´ø »ê¸¸ÇÑ ¹ÙÀ§°¡ ÆøÆÄÇϸ鼭 Ä¿´Ù¶õ ¹ÙÀ§µéÀÌ Àû¿¡°Ô ¶³¾îÁý´Ï´Ù.\n"); - /* ȭdz¼ú */ + print(fd, "ë‚™ì„�주... 백호ì�˜ 힘ì�€ ì‚°ë�„ 무너뜨리니 대암ì�˜ ì •ë ¹ì�´ì—¬ 암우를 떨어뜨려ë�¼.\nê°‘ìž�기 옆ì—� 있ë�˜ 산만한 바위가 í�­íŒŒí•˜ë©´ì„œ 커다란 바위들ì�´ ì �ì—�게 떨어집니다.\n"); + /* í™”í’�술 */ if(!strncmp(cmnd->str[1], spllist[33].splstr,strlen(cmnd->str[1]))) - print(fd, "\nȭdzÁÖ... È­¸¶µµÇöÀÇ ÀÔ±èÀÌ ¹Ù¶÷À¸·Î ³ªÅ¸³ª ÀûÀ» Å¿î´Ù.\n¼ö¸¹Àº ºÎÀûÀ» Å¿ì¸ç Çϴ÷Π³¯¸®ÀÚ È­¿°ÀÌ ºÒŸ¿À¸£´Â Ä¿´Ù¶õ ȸ¿À¸® ¹Ù¶÷ÀÌ ÀûÀ» µÑ·¯½Ô´Ï´Ù.\n"); - /* È­¿­Áø */ + print(fd, "\ní™”í’�주... 화마ë�„현ì�˜ ìž…ê¹€ì�´ 바람으로 나타나 ì �ì�„ 태운다.\n수많ì�€ ë¶€ì �ì�„ 태우며 하늘로 날리ìž� 화염ì�´ 불타오르는 커다란 회오리 바람ì�´ ì �ì�„ 둘러쌉니다.\n"); + /* 화열진 */ if(!strncmp(cmnd->str[1], spllist[34].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÈ­·æÈ£ÃâÁÖ... È­»êÀÇ ¿ëÀÌ¿© ³ÊÀÇ ÀÔ±èÀ¸·Î ÀûÀ» ¼Ò¸ê½ÃÄѶó.\n´ç½ÅÀÇ ¸öÀÌ È­·æÀ¸·Î º¯Çϸ鼭 ºÒ²ÉÀÌ Å¸¿À¸£´Â ¸öÀ¸·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù.\n"); - /* Åä»ç¼ú */ + print(fd, "\n화룡호출주... 화산ì�˜ ìš©ì�´ì—¬ 너ì�˜ 입김으로 ì �ì�„ 소멸시켜ë�¼.\n당신ì�˜ 몸ì�´ 화룡으로 변하면서 불꽃ì�´ 타오르는 몸으로 ì �ì�„ 공격합니다.\n"); + /* 토사술 */ if(!strncmp(cmnd->str[1], spllist[35].splstr,strlen(cmnd->str[1]))) - print(fd, "ÅäºÐÇÕÁÖ... Áö¿ÁÀÇ ¹®À» ¿­¾î »ïÄѹö¸®´Ï ¸ðµç Á˰ú¸¦ ½ÉÆÇÇϸ®...\n°©ÀÚ±â ÀûÀÇ ¹Ù·Î ¹ØÀ¸·Î ÁöÁøÀÌ ÀϾ ¶¥ÀÌ °¥¶óÁö¸é¼­ ÀûÀ» »ïÄѹö¸³´Ï´Ù.\n"); - /* È­¿°¼ú */ + print(fd, "토분합주... 지옥ì�˜ 문ì�„ ì—´ì–´ 삼켜버리니 모든 죄과를 심íŒ�하리...\nê°‘ìž�기 ì �ì�˜ 바로 밑으로 지진ì�´ ì�¼ì–´ë‚˜ ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ ì �ì�„ 삼켜버립니다.\n"); + /* 화염술 */ if(!strncmp(cmnd->str[1], spllist[36].splstr,strlen(cmnd->str[1]))) - print(fd, "ÁÖÀÛÈ£ÃâÁÖ... ¿ÀÇàÁß È­´Â ÁÖÀÛÀÇ Çö½ÅÀÌ´Ï Ãµ»ó¿¡¼­ ³»·Á¿Í ¸¶¸¦ Á¤È­½ÃŰ´Ï...\nÁÖ¹®À» ¿Ü¿ìÀÚ °©Àڱ⠺ҲÉÀ» ³»»Õ´Â ÁÖÀÛÀÌ ³»·Á¿Í ´ëÁö¸¦ ºÒÅ¿ö ¹ö¸³´Ï´Ù.\n"); - /* Ç÷»çõ */ + print(fd, "주작호출주... 오행중 화는 주작ì�˜ 현신ì�´ë‹ˆ 천ìƒ�ì—�서 내려와 마를 정화시키니...\n주문ì�„ 외우ìž� ê°‘ìž�기 불꽃ì�„ 내뿜는 주작ì�´ 내려와 대지를 불태워 버립니다.\n"); + /* 혈사천 */ if(!strncmp(cmnd->str[1], spllist[37].splstr,strlen(cmnd->str[1]))) - print(fd, "\n¿­»çõÁÖ... ¿°¶óÀÇ ºÒ²ÉÀÌ À̰÷±îÁö ¹ÌÄ¡´Ï ¸ðµç ¸¶´Â À̰÷¿¡ ºüÁö¸®¶ó.\nÀáÀáÇÏ´ø ¶¥ÀÌ Èçµé¸®´õ´Ï °©Àڱ⠿ë¾ÏÀÌ ºÐÃâÇÏÀÚ ÀûÀº ³î¶ó ±×°÷¿¡ ºüÁý´Ï´Ù.\n"); - /* ÆÄõ¿î */ + print(fd, "\n열사천주... ì—¼ë�¼ì�˜ 불꽃ì�´ ì�´ê³³ê¹Œì§€ 미치니 모든 마는 ì�´ê³³ì—� 빠지리ë�¼.\n잠잠하ë�˜ ë•…ì�´ í�”들리ë�”니 ê°‘ìž�기 용암ì�´ 분출하ìž� ì �ì�€ 놀ë�¼ 그곳ì—� 빠집니다.\n"); + /* 파천운 */ if(!strncmp(cmnd->str[1], spllist[38].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÆÄõ¿îÁÖ... Áö±¹Ãµ¿ÕÀÇ Çö½ÅÀÌ °ËÀº ±¸¸§À¸·Î ³ªÅ¸³ª ¸¶¸¦ ½ÉÆÇÇÑ´Ù.\n°®Àڱ⠰ËÀº ±¸¸§ÀÌ ³ªÅ¸³ª õÁö¸¦ ºÓÀº º­¶ôÀÌ Áøµ¿Çϸ鼭 ÀûÀ» °­Å¸ÇÕ´Ï´Ù.\n"); - /* ÁöÁø */ + print(fd, "\n파천운주... 지국천왕ì�˜ 현신ì�´ ê²€ì�€ 구름으로 나타나 마를 심íŒ�한다.\nê°–ìž�기 ê²€ì�€ 구름ì�´ 나타나 천지를 붉ì�€ ë²¼ë�½ì�´ ì§„ë�™í•˜ë©´ì„œ ì �ì�„ 강타합니다.\n"); + /* 지진 */ if(!strncmp(cmnd->str[1], spllist[39].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÁö¿ÁµµÁÖ... Áö¿ÁÀÇ ¾ßÂ÷µéÀÌ¿© »ý»çºÎÀÇ ÈûÀ» ºô¾î ¸öÀ» ³ªÅ¸³»¶ó.\nÁÖÀ§°¡ °ËÀº ¾È°³·Î ½ÎÀÌ¸ç °ËÀ» µç 33¸íÀÇ ¾ßÂ÷°¡ ³ªÅ¸³ª ÀûÀ» ¹«ÂüÈ÷ µµ·úÇØ ¹ö¸³´Ï´Ù.\n"); - /* ºÒº­¶ô */ + print(fd, "\n지옥ë�„주... 지옥ì�˜ 야차들ì�´ì—¬ ìƒ�사부ì�˜ 힘ì�„ 빌어 몸ì�„ 나타내ë�¼.\n주위가 ê²€ì�€ 안개로 싸ì�´ë©° ê²€ì�„ ë“  33명ì�˜ 야차가 나타나 ì �ì�„ 무참히 ë�„륙해 버립니다.\n"); + /* 불벼ë�½ */ if(!strncmp(cmnd->str[1], spllist[40].splstr,strlen(cmnd->str[1]))) - print(fd, "\nÈ­¾ÈÁø³ëÁÖ... /õ»óÅÂÀÚÀÇ ´«ºûÀÌ ³ª¿¡°Ô ³ªÅ¸³ª ¸ðµç °ÍÀ» ¼Ò¸ê ½Ã۸®¶ó.\n´«À» °¨°í ÁÖ¹®À» ¿Ü¿ìÀÚ °­·ÄÇÑ ºûÀ» ³»»Õ´Â »ïÁö¾ÈÀÌ ¿­¸®¸é¼­ ¸ðµç °ÍÀ» ºÒÅ¿ö ¹ö¸³´Ï´Ù.\n"); - /* º¯¼ö³ªÇÑ±Ç */ + print(fd, "\n화안진노주... /천ìƒ�태ìž�ì�˜ 눈빛ì�´ 나ì—�게 나타나 모든 것ì�„ 소멸 시키리ë�¼.\n눈ì�„ ê°�ê³  주문ì�„ 외우ìž� 강렬한 ë¹›ì�„ 내뿜는 삼지안ì�´ 열리면서 모든 것ì�„ 불태워 버립니다.\n"); + /* 변수나한권 */ /* if(!strncmp(cmnd->str[1], spllist[56].splstr,strlen(cmnd->str[1]))) */ - /* print(fd, "\nÁÖ¹®À» ¿Ü¿ìÀÚ ÁÖ¸ÔÀÌ ¿ìµÎµÎ ½ñ¾ÆÁö¸ç ÀûÀÇ ±Þ¼Ò¸¦ °ø°ÝÇÕ´Ï´Ù. ¿ì´Ù´Ù´å~~~ "); */ + /* print(fd, "\n주문ì�„ 외우ìž� 주먹ì�´ ìš°ë‘�ë‘� ì�Ÿì•„지며 ì �ì�˜ 급소를 공격합니다. 우다다닷~~~ "); */ - print(fd, "\nÁÖ¼úÀÌ %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "\n주술ì�´ %dë§Œí�¼ì�˜ 피해를 주었습니다.\n", dmg); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ %s ÁÖ¼úÀ» %s Àڽſ¡°Ô °É°í ÀÖ½À´Ï´Ù.\n", + "\n%Mì�´ %s 주술ì�„ %s ìž�ì‹ ì—�게 걸고 있습니다.\n", ply_ptr, spellname, - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à"); + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀"); display_status(fd, ply_ptr); print(fd, "\n"); } else if(how == POTION) { - print(fd, "\nÀ¹.. ´ç½ÅÀº µ¶À» ¸Ô¾ú½À´Ï´Ù. ¸ö¿¡ ÈûÀÌ ºüÁ®³ª°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\nÀ¸~~~ ÀÌ·¯¸é ¾ÈµÇ´Âµ¥....\n"); - print(fd, "\n%d¸¸Å­ÀÇ Ã¼·ÂÀÌ ¶³¾îÁ³½À´Ï´Ù.\n", dmg); + print(fd, "\n윽.. 당신ì�€ ë�…ì�„ 먹었습니다. 몸ì—� 힘ì�´ 빠져나가는 것ì�´ ëŠ�껴집니다.\n으~~~ ì�´ëŸ¬ë©´ 안ë�˜ëŠ”ë�°....\n"); + print(fd, "\n%dë§Œí�¼ì�˜ ì²´ë ¥ì�´ 떨어졌습니다.\n", dmg); display_status(fd, crt_ptr); print(fd, "\n"); } if(ply_ptr->hpcur < 1) { - print(fd, "\n!! ÁÁ¾Æ¿ä.. Á×À»·Á¸é ¹«½¼ÁþÀ» ¸øÇϰھî¿ä. !!\n"); + print(fd, "\n!! 좋아요.. 죽ì�„려면 무슨짓ì�„ 못하겠어요. !!\n"); ply_ptr->hpcur = 1; return(2); } @@ -1019,7 +1019,7 @@ osp_t *osp; else { if(how == POTION) { - print(fd, "\n´ç½Å¿¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\n당신ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -1033,46 +1033,46 @@ osp_t *osp; if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[2]) < 2) { - print(fd, "\n±×·± °ÍÀº ¿©±â¿¡ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 것ì�€ 여기ì—� 존재하지 않습니다.\n"); return(0); } } if(crt_ptr->type == MONSTER && F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "\n´ç½ÅÀº %s¸¦ °ø°ÝÇÒ ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "\n당신ì�€ %s를 공격할 수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(ply_ptr->type == PLAYER && crt_ptr->type == PLAYER && crt_ptr != ply_ptr) { if(F_ISSET(rom_ptr, RNOKIL)) { - print(fd,"\nÀÌ ¹æ¿¡¼± ÀüÅõ°¡ ±ÝÁöµÇÀÖ½À´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì—�ì„  전투가 금지ë�˜ìžˆìŠµë‹ˆë‹¤.\n"); return; } if(((ply_ptr->level+3)/4)<4 && ((crt_ptr->level+3)/4)>5){ - print(fd, "\n!! ÁÁ¾Æ¿ä.. Á×À»·Á¸é ¹«½¼ÁþÀ» ¸øÇϰھî¿ä. !!\n"); + print(fd, "\n!! 좋아요.. 죽ì�„려면 무슨짓ì�„ 못하겠어요. !!\n"); return; } if(!F_ISSET(ply_ptr, PFAMIL) || !F_ISSET(crt_ptr, PFAMIL)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "\n¹Ì¾ÈÇÏÁö¸¸ ´ç½ÅÀº ¼±ÇÕ´Ï´Ù.\n"); + print(fd, "\n미안하지만 당신ì�€ 선합니다.\n"); return(0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "\n¹Ì¾ÈÇÏÁö¸¸ ±×»ç¶÷Àº ¼±ÇÕ´Ï´Ù.\n"); + print(fd, "\n미안하지만 그사람ì�€ 선합니다.\n"); return(0); } } else if(check_war(ply_ptr->daily[DL_EXPND].max, crt_ptr->daily[DL_EXPND].max)) { if(!F_ISSET(ply_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "\n¹Ì¾ÈÇÏÁö¸¸ ´ç½ÅÀº ¼±ÇÕ´Ï´Ù.\n"); + print(fd, "\n미안하지만 당신ì�€ 선합니다.\n"); return(0); } if(!F_ISSET(crt_ptr, PCHAOS) && !F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "\n¹Ì¾ÈÇÏÁö¸¸ ±×»ç¶÷Àº ¼±ÇÕ´Ï´Ù.\n"); + print(fd, "\n미안하지만 그사람ì�€ 선합니다.\n"); return(0); } } @@ -1095,22 +1095,22 @@ osp_t *osp; if(!strncmp(cmnd->str[1], spllist[14].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[38].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[39].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } if(!strncmp(cmnd->str[1], spllist[40].splstr,strlen(cmnd->str[1]))) if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»ç¸¸ÀÌ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "\në�„술사만ì�´ 쓸 수 있는 마법입니다.\n"); return(0); } @@ -1133,121 +1133,121 @@ osp_t *osp; crt_ptr->hpcur -= dmg; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %s ÁÖ¹®À» %s¿¡°Ô °É¾ú½À´Ï´Ù.\n", spellname, + print(fd, "\n당신ì�€ %s 주문ì�„ %sì—�게 걸었습니다.\n", spellname, crt_ptr->name); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %s ÁÖ¹®À» %M¿¡°Ô ¿Ü¿ó´Ï´Ù.", + "\n%Mì�´ %s 주문ì�„ %Mì—�게 외ì›�니다.", ply_ptr, spellname, crt_ptr); - /* ³»°¡ ¸¸µçÁÖ¹® */ - /* »èdz */ + /* ë‚´ê°€ 만든주문 */ + /* ì‚­í’� */ if(!strncmp(cmnd->str[1], spllist[1].splstr,strlen(cmnd->str[1]))) { - print(fd, "»èdz¼Ò¸êÁÖ... »èdzÀÌ¿©! ³ÊÀÇ ÈûÀ¸·Î ¸ðµç °ÍÀ» ¼Ò¸ê½ÃÄѶó.\nÁÖ¹®À» ¿Ü¿ìÀÚ ºÏ¹æÀ¸·ÎºÎÅÍ Ä®³¯°ú °°Àº °Å¼¾ ¹Ù¶÷ÀÌ ºÒ¾î ¸í·É¿¡ µû¶ó °ø°ÝÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ºÏ¹æÀ¸·ÎºÎÅÍ Ä®³¯°ú °°Àº °Å¼¾ ¹Ù¶÷ÀÌ\nºÒ¾î ¸í·É¿¡ µû¶ó °ø°ÝÇÕ´Ï´Ù.",ply_ptr); + print(fd, "ì‚­í’�소멸주... ì‚­í’�ì�´ì—¬! 너ì�˜ 힘으로 모든 것ì�„ 소멸시켜ë�¼.\n주문ì�„ 외우ìž� ë¶�방으로부터 칼날과 ê°™ì�€ 거센 바람ì�´ 불어 명령ì—� ë”°ë�¼ 공격합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우ìž� ë¶�방으로부터 칼날과 ê°™ì�€ 거센 바람ì�´\n불어 명령ì—� ë”°ë�¼ 공격합니다.",ply_ptr); } - /* ºÒÈ­»ì */ + /* 불화살 */ if(!strncmp(cmnd->str[1], spllist[6].splstr,strlen(cmnd->str[1]))) { - print(fd, "¸ê°ÌÈ­±ÃÁÖ... ¸ê°ÌÈ­ÀÇ È­»ìÀÌ ¸ðµç °ÍÀ» Å¿ö¹ö¸°´Ù.\n¼ÕÀ» ²ø¾î ±â¸¦ ¸ðÀ¸ÀÚ ¼Õ ³¡¿¡¼­ Àû»öÀÇ ºÒ²ÉÀÌ °ø°£À» °¡¸£¸ç Àû¿¡°Ô ³¯¶ó°©´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¼ÕÀ» ²ø¾î ±â¸¦ ¸ðÀ¸ÀÚ ¼Õ ³¡¿¡¼­ Àû»öÀÇ ºÒ²ÉÀÌ °ø°£À»\n°¡¸£¸ç Àû¿¡°Ô ³¯¶ó°©´Ï´Ù.",ply_ptr); + print(fd, "멸ê²�í™”ê¶�주... 멸ê²�í™”ì�˜ 화살ì�´ 모든 것ì�„ 태워버린다.\nì†�ì�„ ë�Œì–´ 기를 모으ìž� ì†� ë��ì—�서 ì �색ì�˜ 불꽃ì�´ 공간ì�„ 가르며 ì �ì—�게 ë‚ ë�¼ê°‘니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ì†�ì�„ ë�Œì–´ 기를 모으ìž� ì†� ë��ì—�서 ì �색ì�˜ 불꽃ì�´ 공간ì�„\n가르며 ì �ì—�게 ë‚ ë�¼ê°‘니다.",ply_ptr); } - /* ¹ø°³ */ + /* 번개 */ if(!strncmp(cmnd->str[1], spllist[13].splstr,strlen(cmnd->str[1]))) { - print(fd, "³ú¶ôõÁÖ... ÇÏ´ÃÀÇ ºÐ³ë°¡ ´«±æ·Î º¯ÇÏ´Ï ±×°ÍÀÌ ³ú¶ôÀ̷δÙ.\n¾ç¼ÕÀÇ °ËÁö¸¦ Çϴ÷ΠÇâÇØ ¸ðÀ¸ÀÚ ¾çÂÊ´«¿¡¼­ Ǫ¸¥¹ø°³°¡ ÀÛ·ÄÇϸ鼭 ³¯¶ó °©´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¾ç¼ÕÀÇ °ËÁö¸¦ Çϴ÷ΠÇâÇØ ¸ðÀ¸ÀÚ ¾çÂÊ´«¿¡¼­ Ǫ¸¥¹ø°³°¡\nÀÛ·ÄÇϸ鼭 ³¯¶ó °©´Ï´Ù.",ply_ptr); + print(fd, "뇌ë�½ì²œì£¼... 하늘ì�˜ 분노가 눈길로 변하니 그것ì�´ 뇌ë�½ì�´ë¡œë‹¤.\nì–‘ì†�ì�˜ 검지를 하늘로 향해 모으ìž� 양쪽눈ì—�서 푸른번개가 작렬하면서 ë‚ ë�¼ 갑니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ì–‘ì†�ì�˜ 검지를 하늘로 향해 모으ìž� 양쪽눈ì—�서 푸른번개가\n작렬하면서 ë‚ ë�¼ 갑니다.",ply_ptr); } - /* ºù¼³°Ë */ + /* 빙설검 */ if(!strncmp(cmnd->str[1], spllist[14].splstr,strlen(cmnd->str[1]))) { - print(fd, "µ¿¼³ÁÖ... ºÏ¹æµ¿À屺ÀÇ ÈûÀº ºÒµµ ¾ó·Á¹ö¸®´Ï... °ÅÄ¥°ÍÀÌ ¾øµµ´Ù..\nÁÖ¹®À» ¿Ü¿ì¸ç ºÎÀû¿¡ µµ·ÂÀ» ¸ð¾Æ Çϴ÷Π³¯¸®ÀÚ ¸ðµç °ÍÀ» ¾ó¸± µí ÇÑ ´«º¸¶ó°¡ ÈÖ¸ô¾Æ Ĩ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ì¸ç ºÎÀû¿¡ µµ·ÂÀ» ¸ð¾Æ Çϴ÷Π³¯¸®ÀÚ ¸ðµç °ÍÀ»\n¾ó¸± µí ÇÑ ´«º¸¶ó°¡ ÈÖ¸ô¾Æ Ĩ´Ï´Ù.",ply_ptr); + print(fd, "ë�™ì„¤ì£¼... ë¶�ë°©ë�™ìž¥êµ°ì�˜ 힘ì�€ 불ë�„ 얼려버리니... 거칠것ì�´ ì—†ë�„다..\n주문ì�„ 외우며 ë¶€ì �ì—� ë�„ë ¥ì�„ 모아 하늘로 날리ìž� 모든 것ì�„ 얼릴 듯 한 눈보ë�¼ê°€ 휘몰아 칩니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우며 ë¶€ì �ì—� ë�„ë ¥ì�„ 모아 하늘로 날리ìž� 모든 것ì�„\n얼릴 듯 한 눈보ë�¼ê°€ 휘몰아 칩니다.",ply_ptr); } - /* ÆÄ°Ý¼ú */ + /* 파격술 */ if(!strncmp(cmnd->str[1], spllist[25].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÆÄ°ÝÁÖ... ºÏÇÑÀÇ ±â¿îÀÌ¿ä, µ¿¿ÕÀÇ Ãâ¼ö´Ï ³ªÀÇ ¼ÕÀ¸·Î ¿À¶ó.\nÁÖ¹®À» ¿Ü¿ì¸ç ¼ÕÀ» ³»¹ÐÀÚ ÇÑdzÀÌ ¼Ò¿ëµÑÀ̸¦ ÀÏÀ¸Å°¸ç ÁÖÀǸ¦ ¾µ¾î ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ì¸ç ¼ÕÀ» ³»¹ÐÀÚ ÇÑdzÀÌ ¼Ò¿ëµÑÀ̸¦ ÀÏÀ¸Å°¸ç\nÁÖÀǸ¦ ¾µ¾î ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "파격주... ë¶�한ì�˜ 기운ì�´ìš”, ë�™ì™•ì�˜ 출수니 나ì�˜ ì†�으로 오ë�¼.\n주문ì�„ 외우며 ì†�ì�„ ë‚´ë°€ìž� 한í’�ì�´ 소용둘ì�´ë¥¼ ì�¼ìœ¼í‚¤ë©° 주ì�˜ë¥¼ 쓸어 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우며 ì†�ì�„ ë‚´ë°€ìž� 한í’�ì�´ 소용둘ì�´ë¥¼ ì�¼ìœ¼í‚¤ë©°\n주ì�˜ë¥¼ 쓸어 버립니다.",ply_ptr); } - /* Áöµ¿¼ú */ + /* ì§€ë�™ìˆ  */ if(!strncmp(cmnd->str[1], spllist[26].splstr,strlen(cmnd->str[1]))) { - print(fd, "Áöµ¿ÁÖ... ´ëÁöÀÇ Á¤·ÉµéÀÌ¿© ³ªÀÇ ¸í·ÉÀ» µé¾î ÀûÀ» °ø°ÝÇ϶ó.\n¶¥À§ÀÇ ÀÖ´Â ¼ö¸¸¸¶¸®ÀÇ ¹ú·¹µéÀÌ ÀûÀÇ ±â¿îÀ» ÂÑ¾Æ °ø°ÝÀ» ÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ¶¥À§ÀÇ ÀÖ´Â ¼ö¸¸¸¶¸®ÀÇ ¹ú·¹µéÀÌ ÀûÀÇ \n±â¿îÀ» ÂÑ¾Æ °ø°ÝÀ» ÇÕ´Ï´Ù.",ply_ptr); + print(fd, "ì§€ë�™ì£¼... 대지ì�˜ 정령들ì�´ì—¬ 나ì�˜ 명령ì�„ 들어 ì �ì�„ 공격하ë�¼.\n땅위ì�˜ 있는 수만마리ì�˜ 벌레들ì�´ ì �ì�˜ 기운ì�„ ì«“ì•„ 공격ì�„ 합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우ìž� 땅위ì�˜ 있는 수만마리ì�˜ 벌레들ì�´ ì �ì�˜ \n기운ì�„ ì«“ì•„ 공격ì�„ 합니다.",ply_ptr); } - /* È­¼±µµ */ + /* 화선ë�„ */ if(!strncmp(cmnd->str[1], spllist[27].splstr,strlen(cmnd->str[1]))) { - print(fd, "È­±â¼±ÁÖ... ºÏµÎÀÇ È­µÎ¼ºÀÌ ±ê¹ß¿¡ ½Ç¸®´Ï À̰ÍÀ¸·Î ¸ðµç °ÍÀ» Å¿츮¶ó.\nµî¿¡ ¼û°ÜÁ® ÀÖ´ø ºÓÀº ±ê¹ßµéÀÌ Çϴ÷Π³¯¾Æ¿Ã¶ó ÁøÀ» Çü¼ºÇÏÀÚ ÀûÀÇ ¸öÀÌ ºÒŸ ¿À¸¨´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ µî¿¡ ¼û°ÜÁ® ÀÖ´ø ºÓÀº ±ê¹ßµéÀÌ Çϴ÷Π³¯¾Æ¿Ã¶ó ÁøÀ»\nÇü¼ºÇÏÀÚ ÀûÀÇ ¸öÀÌ ºÒŸ ¿À¸¨´Ï´Ù.",ply_ptr); + print(fd, "화기선주... ë¶�ë‘�ì�˜ í™”ë‘�성ì�´ 깃발ì—� 실리니 ì�´ê²ƒìœ¼ë¡œ 모든 것ì�„ 태우리ë�¼.\n등ì—� 숨겨져 있ë�˜ 붉ì�€ 깃발들ì�´ 하늘로 날아올ë�¼ ì§„ì�„ 형성하ìž� ì �ì�˜ 몸ì�´ 불타 오릅니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 등ì—� 숨겨져 있ë�˜ 붉ì�€ 깃발들ì�´ 하늘로 날아올ë�¼ ì§„ì�„\n형성하ìž� ì �ì�˜ 몸ì�´ 불타 오릅니다.",ply_ptr); } - /* ¼ö±¸Áø */ + /* 수구진 */ if(!strncmp(cmnd->str[1], spllist[28].splstr,strlen(cmnd->str[1]))) { - print(fd, "źÁö¼öÅëÁÖ... °üÀ½ÀÇ ´«¹°ÀÌ ¼Õ ³¡¿¡ ¸ÎÈ÷´Ï ¸¶µµ ¹«¸­À» ²ÝÀ¸¸®¶ó.\n¼Õ ³¡¿¡ ºû³ª´Â À̽½ÀÌ ¸ÎÈ÷¸é¼­ ±×°ÍÀ» ƨ±âÀÚ ÃѾ˰°ÀÌ ³¯¶ó°¡ ÀûÀÇ ¸öÀ» ²ç¶Õ¾î ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¼Õ ³¡¿¡ ºû³ª´Â À̽½ÀÌ ¸ÎÈ÷¸é¼­ ±×°ÍÀ» ƨ±âÀÚ ÃѾ˰°ÀÌ\n³¯¶ó°¡ ÀûÀÇ ¸öÀ» ²ç¶Õ¾î ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "탄지수통주... ê´€ì�Œì�˜ 눈물ì�´ ì†� ë��ì—� 맺히니 마ë�„ 무릎ì�„ 꿇으리ë�¼.\nì†� ë��ì—� 빛나는 ì�´ìЬì�´ 맺히면서 그것ì�„ 튕기ìž� ì´�알같ì�´ ë‚ ë�¼ê°€ ì �ì�˜ 몸ì�„ 꿰뚫어 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ ì†� ë��ì—� 빛나는 ì�´ìЬì�´ 맺히면서 그것ì�„ 튕기ìž� ì´�알같ì�´\në‚ ë�¼ê°€ ì �ì�˜ 몸ì�„ 꿰뚫어 버립니다.",ply_ptr); } - /* ȸ¿À¸®*/ + /* 회오리*/ if(!strncmp(cmnd->str[1], spllist[29].splstr,strlen(cmnd->str[1]))) { - print(fd, "Çö¹«¸¶¾ÐÁÖ... Çö¹«ÀÇ °ËÀº ¹Ù¶÷ÀÌ ¸¶¸¦ »ïŰ´Ï ¿ÀÇàÀÇ ÈæÀÌ Áøµ¿Çϸ®¶ó.\nÁÖ¹®À» ¿Ü¹«¸ç ¸öÀ» µ¹¸®ÀÚ °©Àڱ⠰ËÀº ÅÂdzÀÌ ³¯¶ó¿Í ÀûÀÇ ¸öÀ» »ïÄÑ ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¹«¸ç ¸öÀ» µ¹¸®ÀÚ °©Àڱ⠰ËÀº ÅÂdzÀÌ ³¯¶ó¿Í\nÀûÀÇ ¸öÀ» »ïÄÑ ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "현무마압주... 현무ì�˜ ê²€ì�€ 바람ì�´ 마를 삼키니 오행ì�˜ í�‘ì�´ ì§„ë�™í•˜ë¦¬ë�¼.\n주문ì�„ 외무며 몸ì�„ ë�Œë¦¬ìž� ê°‘ìž�기 ê²€ì�€ 태í’�ì�´ ë‚ ë�¼ì™€ ì �ì�˜ 몸ì�„ 삼켜 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외무며 몸ì�„ ë�Œë¦¬ìž� ê°‘ìž�기 ê²€ì�€ 태í’�ì�´ ë‚ ë�¼ì™€\nì �ì�˜ 몸ì�„ 삼켜 버립니다.",ply_ptr); } - /* ÇØÀÏ */ + /* í•´ì�¼ */ if(!strncmp(cmnd->str[1], spllist[30].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÆÄÃʽÄÁÖ... ¼ö°Ëµµ°¡ ÆÄµµ¸¦ ºÎ¸£´Ï °Å´ëÇÑ ¹Ù´ÙÀÇ ÈûÀ¸·Î ÀûÀ» ³¯·Á¹ö¸®¸®¶ó.\n¼Ò¸Å¿¡ ¼û°ÜÁ®ÀÖ´ø ¾ãÀº °ËÀ» »Ì¾Æ °ËÃʸ¦ »Ñ¸®ÀÚ ±× ¾È¿¡ ¼û°ÜÁ® ÀÖ´ø ¼öÀÇ ±â¿îµéÀÌ »ó´ë¹æ¿¡°Ô ºÐÃâµË´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¼Ò¸Å¿¡ ¼û°ÜÁ®ÀÖ´ø ¾ãÀº °ËÀ» »ÌÀ¸¸ç °ËÃʸ¦ »Ñ¸®ÀÚ \n±× ¾È¿¡ ¼û°ÜÁ® ÀÖ´ø ¼öÀÇ ±â¿îµéÀÌ »ó´ë¹æ¿¡°Ô ºÐÃâµË´Ï´Ù.",ply_ptr); + print(fd, "파초ì‹�주... 수검ë�„ê°€ 파ë�„를 부르니 거대한 바다ì�˜ 힘으로 ì �ì�„ 날려버리리ë�¼.\n소매ì—� 숨겨져있ë�˜ ì–‡ì�€ ê²€ì�„ 뽑아 검초를 뿌리ìž� ê·¸ 안ì—� 숨겨져 있ë�˜ 수ì�˜ 기운들ì�´ ìƒ�대방ì—�게 ë¶„ì¶œë�©ë‹ˆë‹¤.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 소매ì—� 숨겨져있ë�˜ ì–‡ì�€ ê²€ì�„ 뽑으며 검초를 뿌리ìž� \nê·¸ 안ì—� 숨겨져 있ë�˜ 수ì�˜ 기운들ì�´ ìƒ�대방ì—�게 ë¶„ì¶œë�©ë‹ˆë‹¤.",ply_ptr); } - /* ÆøÁø */ + /* í�­ì§„ */ if(!strncmp(cmnd->str[1], spllist[31].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÆøÁøÈ£ÃâÁÖ... ÁöÁøÀ» ºÎ¸£´Â Áö·æÀÌ¿© ¶¥À§·Î ¿Ã¶ó¿Í ³ÊÀÇ ÈûÀ» º¸¿©¶ó.\n¸ñ°ËÀ» ¶¥¿¡ ²ÈÀÚ ¶¥ÀÌ °¥¶óÁö¸é¼­ Áö·æÀÌ ¿Ã¶ó¿Í ³¯Ä«·Î¿î ¼ÕÅéÀ¸·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¸ñ°ËÀ» ¶¥¿¡ ²ÈÀÚ ¶¥ÀÌ °¥¶óÁö¸é¼­ Áö·æÀÌ ¿Ã¶ó¿Í ³¯Ä«·Î¿î\n¼ÕÅéÀ¸·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù.",ply_ptr); + print(fd, "í�­ì§„호출주... 지진ì�„ 부르는 지룡ì�´ì—¬ 땅위로 올ë�¼ì™€ 너ì�˜ 힘ì�„ ë³´ì—¬ë�¼.\n목검ì�„ ë•…ì—� 꽂ìž� ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ 지룡ì�´ 올ë�¼ì™€ 날카로운 ì†�톱으로 ì �ì�„ 공격합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 목검ì�„ ë•…ì—� 꽂ìž� ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ 지룡ì�´ 올ë�¼ì™€ 날카로운\nì†�톱으로 ì �ì�„ 공격합니다.",ply_ptr); } - /* ³«¼® */ + /* ë‚™ì„� */ if(!strncmp(cmnd->str[1], spllist[32].splstr,strlen(cmnd->str[1]))) { - print(fd, "³«¼®ÁÖ... ¹éÈ£ÀÇ ÈûÀº »êµµ ¹«³Ê¶ß¸®´Ï ´ë¾ÏÀÇ Á¤·ÉÀÌ¿© ¾Ï¿ì¸¦ ¶³¾î¶ß·Á¶ó.\n°©Àڱ⠿·¿¡ ÀÖ´ø »ê¸¸ÇÑ ¹ÙÀ§°¡ ÆøÆÄÇϸ鼭 Ä¿´Ù¶õ ¹ÙÀ§µéÀÌ Àû¿¡°Ô ¶³¾îÁý´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¿·¿¡ ÀÖ´ø »ê¸¸ÇÑ ¹ÙÀ§°¡ °©ÀÚ±â ÆøÆÄÇϸ鼭 Ä¿´Ù¶õ\n¹ÙÀ§µéÀÌ Àû¿¡°Ô ¶³¾îÁý´Ï´Ù.",ply_ptr); + print(fd, "ë‚™ì„�주... 백호ì�˜ 힘ì�€ ì‚°ë�„ 무너뜨리니 대암ì�˜ ì •ë ¹ì�´ì—¬ 암우를 떨어뜨려ë�¼.\nê°‘ìž�기 옆ì—� 있ë�˜ 산만한 바위가 í�­íŒŒí•˜ë©´ì„œ 커다란 바위들ì�´ ì �ì—�게 떨어집니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 옆ì—� 있ë�˜ 산만한 바위가 ê°‘ìž�기 í�­íŒŒí•˜ë©´ì„œ 커다란\n바위들ì�´ ì �ì—�게 떨어집니다.",ply_ptr); } - /* ȭdz¼ú */ + /* í™”í’�술 */ if(!strncmp(cmnd->str[1], spllist[33].splstr,strlen(cmnd->str[1]))) { - print(fd, "ȭdzÁÖ... È­¸¶µµÇöÀÇ ÀÔ±èÀÌ ¹Ù¶÷À¸·Î ³ªÅ¸³ª ÀûÀ» Å¿î´Ù.\n¼ö¸¹Àº ºÎÀûÀ» Å¿ì¸ç Çϴ÷Π³¯¸®ÀÚ È­¿°ÀÌ ºÒŸ¿À¸£´Â Ä¿´Ù¶õ ȸ¿À¸® ¹Ù¶÷ÀÌ ÀûÀ» µÑ·¯½Ô´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¼ö¸¹Àº ºÎÀûÀ» Å¿ì¸ç Çϴ÷Π³¯¸®ÀÚ È­¿°ÀÌ ºÒŸ¿À¸£´Â\nÄ¿´Ù¶õ ȸ¿À¸® ¹Ù¶÷ÀÌ ÀûÀ» µÑ·¯½Ô´Ï´Ù.",ply_ptr); + print(fd, "í™”í’�주... 화마ë�„현ì�˜ ìž…ê¹€ì�´ 바람으로 나타나 ì �ì�„ 태운다.\n수많ì�€ ë¶€ì �ì�„ 태우며 하늘로 날리ìž� 화염ì�´ 불타오르는 커다란 회오리 바람ì�´ ì �ì�„ 둘러쌉니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 수많ì�€ ë¶€ì �ì�„ 태우며 하늘로 날리ìž� 화염ì�´ 불타오르는\n커다란 회오리 바람ì�´ ì �ì�„ 둘러쌉니다.",ply_ptr); } - /* È­¿­Áø */ + /* 화열진 */ if(!strncmp(cmnd->str[1], spllist[34].splstr,strlen(cmnd->str[1]))) { - print(fd, "È­·æÈ£ÃâÁÖ... È­»êÀÇ ¿ëÀÌ¿© ³ÊÀÇ ÀÔ±èÀ¸·Î ÀûÀ» ¼Ò¸ê½ÃÄѶó.\n´ç½ÅÀÇ ¸öÀÌ È­·æÀ¸·Î º¯Çϸ鼭 ºÒ²ÉÀÌ Å¸¿À¸£´Â ¸öÀ¸·Î ÀûÀ» °ø°ÝÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸öÀÌ È­·æÀ¸·Î º¯Çϸ鼭 ºÒ²ÉÀÌ Å¸¿À¸£´Â ¸öÀ¸·Î\nÀûÀ» °ø°ÝÇÕ´Ï´Ù.",ply_ptr); + print(fd, "화룡호출주... 화산ì�˜ ìš©ì�´ì—¬ 너ì�˜ 입김으로 ì �ì�„ 소멸시켜ë�¼.\n당신ì�˜ 몸ì�´ 화룡으로 변하면서 불꽃ì�´ 타오르는 몸으로 ì �ì�„ 공격합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 몸ì�´ 화룡으로 변하면서 불꽃ì�´ 타오르는 몸으로\nì �ì�„ 공격합니다.",ply_ptr); } - /* Åä»ç¼ú */ + /* 토사술 */ if(!strncmp(cmnd->str[1], spllist[35].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÅäºÐÇÕÁÖ... Áö¿ÁÀÇ ¹®À» ¿­¾î »ïÄѹö¸®´Ï ¸ðµç Á˰ú¸¦ ½ÉÆÇÇϸ®...\n°©ÀÚ±â ÀûÀÇ ¹Ù·Î ¹ØÀ¸·Î ÁöÁøÀÌ ÀϾ ¶¥ÀÌ °¥¶óÁö¸é¼­ ÀûÀ» »ïÄѹö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ °©ÀÚ±â ÀûÀÇ ¹Ù·Î ¹ØÀ¸·Î ÁöÁøÀÌ ÀϾ ¶¥ÀÌ °¥¶óÁö¸é¼­\nÀûÀ» »ïÄѹö¸³´Ï´Ù.",ply_ptr); + print(fd, "토분합주... 지옥ì�˜ 문ì�„ ì—´ì–´ 삼켜버리니 모든 죄과를 심íŒ�하리...\nê°‘ìž�기 ì �ì�˜ 바로 밑으로 지진ì�´ ì�¼ì–´ë‚˜ ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ ì �ì�„ 삼켜버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ ê°‘ìž�기 ì �ì�˜ 바로 밑으로 지진ì�´ ì�¼ì–´ë‚˜ ë•…ì�´ ê°ˆë�¼ì§€ë©´ì„œ\nì �ì�„ 삼켜버립니다.",ply_ptr); } - /* È­¿°¼ú */ + /* 화염술 */ if(!strncmp(cmnd->str[1], spllist[36].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÁÖÀÛÈ£ÃâÁÖ... ¿ÀÇàÁß È­´Â ÁÖÀÛÀÇ Çö½ÅÀÌ´Ï Ãµ»ó¿¡¼­ ³»·Á¿Í ¸¶¸¦ Á¤È­½ÃŰ´Ï...\nÁÖ¹®À» ¿Ü¿ìÀÚ °©Àڱ⠺ҲÉÀ» ³»»Õ´Â ÁÖÀÛÀÌ ³»·Á¿Í ´ëÁö¸¦ ºÒÅ¿ö ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ °©Àڱ⠺ҲÉÀ» ³»»Õ´Â ÁÖÀÛÀÌ ³»·Á¿Í\n´ëÁö¸¦ ºÒÅ¿ö ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "주작호출주... 오행중 화는 주작ì�˜ 현신ì�´ë‹ˆ 천ìƒ�ì—�서 내려와 마를 정화시키니...\n주문ì�„ 외우ìž� ê°‘ìž�기 불꽃ì�„ 내뿜는 주작ì�´ 내려와 대지를 불태워 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우ìž� ê°‘ìž�기 불꽃ì�„ 내뿜는 주작ì�´ 내려와\n대지를 불태워 버립니다.",ply_ptr); } - /* Ç÷»çõ */ + /* 혈사천 */ if(!strncmp(cmnd->str[1], spllist[37].splstr,strlen(cmnd->str[1]))) { - print(fd, "¿­»çõÁÖ... ¿°¶óÀÇ ºÒ²ÉÀÌ À̰÷±îÁö ¹ÌÄ¡´Ï ¸ðµç ¸¶´Â À̰÷¿¡ ºüÁö¸®¶ó.\nÀáÀáÇÏ´ø ¶¥ÀÌ Èçµé¸®´õ´Ï °©Àڱ⠿ë¾ÏÀÌ ºÐÃâÇÏÀÚ ÀûÀº ³î¶ó ±×°÷¿¡ ºüÁý´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ ÀáÀáÇÏ´ø ¶¥ÀÌ Èçµé¸®´õ´Ï °©Àڱ⠿ë¾ÏÀÌ\nºÐÃâÇÏÀÚ ÀûÀº ³î¶ó ±×°÷¿¡ ºüÁý´Ï´Ù.",ply_ptr); + print(fd, "열사천주... ì—¼ë�¼ì�˜ 불꽃ì�´ ì�´ê³³ê¹Œì§€ 미치니 모든 마는 ì�´ê³³ì—� 빠지리ë�¼.\n잠잠하ë�˜ ë•…ì�´ í�”들리ë�”니 ê°‘ìž�기 용암ì�´ 분출하ìž� ì �ì�€ 놀ë�¼ 그곳ì—� 빠집니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우ìž� 잠잠하ë�˜ ë•…ì�´ í�”들리ë�”니 ê°‘ìž�기 용암ì�´\n분출하ìž� ì �ì�€ 놀ë�¼ 그곳ì—� 빠집니다.",ply_ptr); } - /* ÆÄõ¿î */ + /* 파천운 */ if(!strncmp(cmnd->str[1], spllist[38].splstr,strlen(cmnd->str[1]))) { - print(fd, "ÆÄõ¿îÁÖ... Áö±¹Ãµ¿ÕÀÇ Çö½ÅÀÌ °ËÀº ±¸¸§À¸·Î ³ªÅ¸³ª ¸¶¸¦ ½ÉÆÇÇÑ´Ù.\n°©Àڱ⠰ËÀº ±¸¸§ÀÌ ³ªÅ¸³ª õÁö¸¦ ºÓÀº º­¶ôÀÌ Áøµ¿Çϸ鼭 ÀûÀ» °­Å¸ÇÕ´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ÁÖ¹®À» ¿Ü¿ìÀÚ °©Àڱ⠰ËÀº ±¸¸§ÀÌ ³ªÅ¸³ª õÁö¸¦ \nºÓÀº º­¶ôÀÌ Áøµ¿Çϸ鼭 ÀûÀ» °­Å¸ÇÕ´Ï´Ù.",ply_ptr); + print(fd, "파천운주... 지국천왕ì�˜ 현신ì�´ ê²€ì�€ 구름으로 나타나 마를 심íŒ�한다.\nê°‘ìž�기 ê²€ì�€ 구름ì�´ 나타나 천지를 붉ì�€ ë²¼ë�½ì�´ ì§„ë�™í•˜ë©´ì„œ ì �ì�„ 강타합니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 주문ì�„ 외우ìž� ê°‘ìž�기 ê²€ì�€ 구름ì�´ 나타나 천지를 \n붉ì�€ ë²¼ë�½ì�´ ì§„ë�™í•˜ë©´ì„œ ì �ì�„ 강타합니다.",ply_ptr); } - /* ÁöÁø */ + /* 지진 */ if(!strncmp(cmnd->str[1], spllist[39].splstr,strlen(cmnd->str[1]))) { - print(fd, "Áö¿ÁµµÁÖ... Áö¿ÁÀÇ ¾ßÂ÷µéÀÌ¿© »ý»çºÎÀÇ ÈûÀ» ºô¾î ¸öÀ» ³ªÅ¸³»¶ó.\nÁÖÀ§°¡ °ËÀº ¾È°³·Î ½ÎÀÌ¸ç °ËÀ» µç 33¸íÀÇ ¾ßÂ÷°¡ ³ªÅ¸³ª ÀûÀ» ¹«ÂüÈ÷ µµ·úÇØ ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ÁÖÀ§°¡ °ËÀº ¾È°³·Î ½ÎÀÌ¸ç °ËÀ» µç 33¸íÀÇ ¾ßÂ÷°¡ ³ªÅ¸³ª ÀûÀ» ¹«ÂüÈ÷ µµ·úÇØ ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "지옥ë�„주... 지옥ì�˜ 야차들ì�´ì—¬ ìƒ�사부ì�˜ 힘ì�„ 빌어 몸ì�„ 나타내ë�¼.\n주위가 ê²€ì�€ 안개로 싸ì�´ë©° ê²€ì�„ ë“  33명ì�˜ 야차가 나타나 ì �ì�„ 무참히 ë�„륙해 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 주위가 ê²€ì�€ 안개로 싸ì�´ë©° ê²€ì�„ ë“  33명ì�˜ 야차가 나타나 ì �ì�„ 무참히 ë�„륙해 버립니다.",ply_ptr); } - /* ºÒº­¶ô */ + /* 불벼ë�½ */ if(!strncmp(cmnd->str[1], spllist[40].splstr,strlen(cmnd->str[1]))) { - print(fd, "È­¾ÈÁø³ëÁÖ... õ»óÅÂÀÚÀÇ ´«ºûÀÌ ³ª¿¡°Ô ³ªÅ¸³ª ¸ðµç °ÍÀ» ¼Ò¸ê ½Ã۸®¶ó.\n´«À» °¨°í ÁÖ¹®À» ¿Ü¿ìÀÚ °­·ÄÇÑ ºûÀ» ³»»Õ´Â »ïÁö¾ÈÀÌ ¿­¸®¸é¼­ ¸ðµç °ÍÀ» ºÒÅ¿ö ¹ö¸³´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ´«À» °¨°í ÁÖ¹®À» ¿Ü¿ìÀÚ °­·ÄÇÑ ºûÀ» ³»»Õ´Â »ïÁö¾ÈÀÌ ¿­¸®¸é¼­ ¸ðµç °ÍÀ» ºÒÅ¿ö ¹ö¸³´Ï´Ù.",ply_ptr); + print(fd, "화안진노주... 천ìƒ�태ìž�ì�˜ 눈빛ì�´ 나ì—�게 나타나 모든 것ì�„ 소멸 시키리ë�¼.\n눈ì�„ ê°�ê³  주문ì�„ 외우ìž� 강렬한 ë¹›ì�„ 내뿜는 삼지안ì�´ 열리면서 모든 것ì�„ 불태워 버립니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 눈ì�„ ê°�ê³  주문ì�„ 외우ìž� 강렬한 ë¹›ì�„ 내뿜는 삼지안ì�´ 열리면서 모든 것ì�„ 불태워 버립니다.",ply_ptr); } - print(fd, "\nÁÖ¹®ÀÌ %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "\n주문ì�´ %dë§Œí�¼ì�˜ 피해를 주었습니다.\n", dmg); print(crt_ptr->fd, - "\n%MÀÌ %s ÁÖ¼ú·Î ´ç½Å¿¡°Ô %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÁÖ¾ú½À´Ï´Ù.\n", + "\n%Mì�´ %s 주술로 당신ì—�게 %dë§Œí�¼ì�˜ 피해를 주었습니다.\n", ply_ptr, spellname, dmg); display_status(fd, crt_ptr); print(fd, "\n"); @@ -1255,9 +1255,9 @@ osp_t *osp; if(crt_ptr->hpcur < 1) { - print(fd, "\n´ç½ÅÀº %MÀ» Á׿´½À´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì�„ 죽였습니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀ» Á׿©¹ö·È½À´Ï´Ù.\n", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì�„ 죽여버렸습니다.\n", ply_ptr, crt_ptr); die(crt_ptr, ply_ptr); return(2); } diff --git a/src/magic2.c b/src/magic2.c index 671527df..0756e4ec 100644 --- a/src/magic2.c +++ b/src/magic2.c @@ -11,7 +11,7 @@ #include "mextern.h" /**********************************************************************/ -/* vigor ( ȸº¹ ) */ +/* vigor ( 회복 ) */ /**********************************************************************/ /* This function will cause the vigor spell to be cast on a player or */ @@ -33,17 +33,17 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 2 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "불제ìž�와 무사만 쓸 수 있는 마법입니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SVIGOR) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } @@ -71,7 +71,7 @@ int how; ply_ptr->mpcur -= 2; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ heal += mrand(1,3); - print(fd, "ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd, "ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); } } else @@ -86,14 +86,14 @@ int how; if(how == CAST || how == SCROLL) { - print(fd, "´ç½ÅÀº ÇÕÀåÀ» ÇÏ°í¼­ ȸº¹ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ Á¤±â°¡ ¿Â¸ö¿¡ ½º¸çµé¸é¼­ ü·ÂÀÌ Çâ»óµÇ¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 합장ì�„ 하고서 회복 주문ì�„ 외ì›�니다.\në¹›ì�˜ 정기가 온몸ì—� 스며들면서 ì²´ë ¥ì�´ í–¥ìƒ�ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÇÕÀåÀ» ÇÏ°í¼­ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ Á¤±â°¡ ±×ÀÇ ¸öÀ¸·Î ¸ðÀÌ´Â °ÍÀÌ º¸ÀÔ´Ï´Ù.\n", + "\n%Mì�´ 합장ì�„ 하고서 주문ì�„ 외ì›�니다.\në¹›ì�˜ 정기가 ê·¸ì�˜ 몸으로 모ì�´ëŠ” 것ì�´ 보입니다.\n", ply_ptr); return(1); } else { - print(fd, "´ç½ÅÀÇ Ã¼·ÂÀÌ Çâ»óµÇ¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�˜ ì²´ë ¥ì�´ í–¥ìƒ�ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(1); } } @@ -101,7 +101,7 @@ int how; /* Cast vigor on another player or monster */ else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할 수 있습니다.\n"); return(0); } @@ -115,7 +115,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd,"±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd,"그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } } @@ -131,7 +131,7 @@ int how; ply_ptr->mpcur -= 2; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ heal += mrand(1,3); - print(fd,"ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); } } else @@ -146,16 +146,16 @@ int how; crt_ptr->hpcur = crt_ptr->hpmax; expadd = 0; } -/* ȸº¹ »ç¿ë½Ã °æÇèÄ¡¸¦ ÁÖ´Â ºÎºÐ. +/* 회복 사용시 경험치를 주는 부분. ply_ptr->experience += expadd; - ÀÏ´ÜÀº ·çƾ¿¡ ³ÖÁö ¾Ê¾ÒÀ½. */ + ì�¼ë‹¨ì�€ 루틴ì—� 넣지 않았ì�Œ. */ if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº ÇÕÀåÀ» ÇÏ°í¼­ %MÀÇ È¸º¹À» ±â¿øÇÏ´Â ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ Á¤±â°¡ ±×ÀÇ ¸öÀ¸·Î ½º¸çµé°í ÀÖ½À´Ï´Ù.\n", + print(fd, "당신ì�€ 합장ì�„ 하고서 %Mì�˜ 회복ì�„ 기ì›�하는 주문ì�„ 외ì›�니다.\në¹›ì�˜ 정기가 ê·¸ì�˜ 몸으로 스며들고 있습니다.\n", crt_ptr); - print(crt_ptr->fd,"%MÀÌ ÇÕÀåÀ» ÇÏ°í¼­ ´ç½ÅÀÇ È¸º¹À» ±â¿øÇÏ´Â ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ Á¤±â°¡ ´ç½ÅÀÇ ¸ö¿¡ ½º¸çµé¸é¼­ ü·ÂÀÌ Çâ»óµÇ¾ú½À´Ï´Ù.\n", + print(crt_ptr->fd,"%Mì�´ 합장ì�„ 하고서 당신ì�˜ 회복ì�„ 기ì›�하는 주문ì�„ 외ì›�니다.\në¹›ì�˜ 정기가 당신ì�˜ 몸ì—� 스며들면서 ì²´ë ¥ì�´ í–¥ìƒ�ë�˜ì—ˆìŠµë‹ˆë‹¤.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ÇÕÀåÀ» ÇÏ°í¼­ ȸº¹À» ±â¿øÇÏ´Â ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ Á¤±â°¡ ´ç½ÅÀÇ ¸öÀ» ½ºÄ¡¸ç ±×ÀÇ ¸öÀ¸·Î ¸ðÀÌ´Â\n°ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 합장ì�„ 하고서 회복ì�„ 기ì›�하는 주문ì�„ 외ì›�니다.\në¹›ì�˜ 정기가 당신ì�˜ 몸ì�„ 스치며 ê·¸ì�˜ 몸으로 모ì�´ëŠ”\n것ì�´ ëŠ�껴집니다.\n", ply_ptr, crt_ptr); return(1); } @@ -166,7 +166,7 @@ int how; } /**********************************************************************/ -/* curepoison ( ÇØµ¶ ) */ +/* curepoison ( í•´ë�… ) */ /**********************************************************************/ /* This function allows a player to cast a curepoison spell on himself, */ @@ -186,17 +186,17 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 6 && how == CAST) { - print(fd,"´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd,"당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } /* if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "불제ìž�와 무사만 쓸 수 있는 마법입니다.\n"); return(0); } */ if(!S_ISSET(ply_ptr, SCUREP) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(how != POTION) { @@ -214,16 +214,16 @@ int how; ply_ptr->mpcur -= 6; if(how == CAST || how == SCROLL || how == WAND) { - print(fd,"´ç½ÅÀº ¿À¸¥¼ÕÀ¸·Î Ç÷µµ¸¦ ¤À¸¸é¼­ ÇØµ¶ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¼Õ°¡¶ô ³¡À¸·Î °ËÀº µ¶±â¿îÀÌ ºüÁ®³ª¿À´Â°ÍÀÌ º¸ÀÔ´Ï´Ù.\n"); - print(fd,"´ç½Å ¸ö¿¡ ³²¾Æ ÀÖ´Â µ¶ÀÌ ¸ðµÎ ºüÁ®³ª°¬½À´Ï´Ù.\n"); + print(fd,"당신ì�€ 오른ì†�으로 혈ë�„를 짚으면서 í•´ë�… 주문ì�„ 외ì›�니다.\nì†�ê°€ë�½ ë��으로 ê²€ì�€ ë�…기운ì�´ 빠져나오는것ì�´ 보입니다.\n"); + print(fd,"당신 몸ì—� 남아 있는 ë�…ì�´ 모ë‘� 빠져나갔습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Ç÷µµ¸¦ ¤À¸¸é¼­ ÇØµ¶ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¼Õ°¡¶ô ³¡À¸·Î °ËÀº µ¶±â¿îÀÌ ºüÁ®³ª¿À´Â °ÍÀÌ º¸ÀÔ´Ï´Ù.\n", + "\n%Mì�´ 혈ë�„를 짚으면서 í•´ë�… 주문ì�„ 외ì›�니다.\nê·¸ì�˜ ì†�ê°€ë�½ ë��으로 ê²€ì�€ ë�…기운ì�´ 빠져나오는 것ì�´ 보입니다.\n", ply_ptr); } else if(how == POTION && F_ISSET(ply_ptr, PPOISN)) - print(fd, "\nµ¶±â¿îÀÌ ÁßÈ­µÇ´Â °ÍÀ» ´À³¥ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\në�…기운ì�´ 중화ë�˜ëŠ” 것ì�„ ëŠ�ë‚„ 수 있습니다.\n"); else if(how == POTION) - print(fd, "\nÇØµ¶¿¡ ½ÇÆÐÇϼ̽À´Ï´Ù.\n"); + print(fd, "\ní•´ë�…ì—� 실패하셨습니다.\n"); F_CLR(ply_ptr, PPOISN); @@ -233,7 +233,7 @@ int how; else { if(how == POTION) { - print(fd,"±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd,"ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할 수 있습니다.\n"); return(0); } @@ -247,7 +247,7 @@ int how; cmnd->str[2], cmnd->str[2]); if(!crt_ptr) { - print(fd,"±×·± °ÍÀº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd,"그런 것ì�€ 존재하지 않습니다.\n"); return(0); } } @@ -258,13 +258,13 @@ int how; F_CLR(crt_ptr, PPOISN); if(how == CAST || how == SCROLL || how == WAND) { - print(fd,"%MÀÌ Ç÷µµ¸¦ ¤À¸¸é¼­ ÇØµ¶ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¼Õ°¡¶ô ³¡À¸·Î °ËÀº µ¶±â¿îÀÌ ºüÁ®³ª¿À´Â °ÍÀÌ º¸ÀÔ´Ï´Ù.\n", + print(fd,"%Mì�´ 혈ë�„를 짚으면서 í•´ë�… 주문ì�„ 외ì›�니다.\nê·¸ì�˜ ì†�ê°€ë�½ ë��으로 ê²€ì�€ ë�…기운ì�´ 빠져나오는 것ì�´ 보입니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ Ç÷µµ¸¦ ¤À¸¸é¼­ ÇØµ¶ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¼Õ°¡¶ô ³¡À¸·Î °ËÀº µ¶±â¿îÀÌ ºüÁ®³ª¿À´Â °ÍÀÌ º¸ÀÔ´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 혈ë�„를 짚으면서 í•´ë�… 주문ì�„ 외ì›�니다.\nê·¸ì�˜ ì†�ê°€ë�½ ë��으로 ê²€ì�€ ë�…기운ì�´ 빠져나오는 것ì�´ 보입니다.\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "%MÀÌ ´ç½ÅÀÇ Ç÷µµ¸¦ ¤À¸¸é¼­ ÇØµ¶ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ¼Õ°¡¶ô ³¡À¸·Î µ¶±â¿îÀÌ ºüÁ®³ª°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "%Mì�´ 당신ì�˜ 혈ë�„를 짚으면서 í•´ë�… 주문ì�„ 외ì›�니다.\n당신ì�˜ ì†�ê°€ë�½ ë��으로 ë�…기운ì�´ 빠져나가는 것ì�´ ëŠ�껴집니다.\n", ply_ptr); } @@ -275,7 +275,7 @@ int how; } /**********************************************************************/ -/* light ( ¹ß±¤ ) */ +/* light ( 발광 ) */ /**********************************************************************/ /* This spell allows a player to cast a light spell which will illuminate */ @@ -291,12 +291,12 @@ int how; fd = ply_ptr->fd; if(ply_ptr->mpcur < 5 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SLIGHT) && how == CAST) { - print(fd,"´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -307,7 +307,7 @@ int how; if(how == CAST){ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)) - print(fd,"ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->mpcur -= 5; } @@ -316,9 +316,9 @@ int how; ply_ptr->lasttime[LT_LIGHT].interval = 300L+((ply_ptr->level+3)/4)*300L + (F_ISSET(ply_ptr->parent_rom,RPMEXT)) ? 600L : 0; - print(fd,"´ç½ÅÀÇ ¿Þ¼Õ¿¡ ¹ß±¤ ÁÖ¹®À» °É¾ú½À´Ï´Ù.\n¿Þ¼Õ¿¡¼­ Ȳ±ÝºûÀÌ »Õ¾îÁ® ³ª¿Í ÁÖÀ§¸¦ ¹àÇô ÁÝ´Ï´Ù.\n"); + print(fd,"당신ì�˜ 왼ì†�ì—� 발광 주문ì�„ 걸었습니다.\n왼ì†�ì—�서 황금빛ì�´ 뿜어져 나와 주위를 ë°�혀 ì¤�니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÇÑÂÊ ¼Õ¿¡ ¹ß±¤ ÁÖ¹®À» °É¾ú½À´Ï´Ù.\n±×ÀÇ ¼Õ¿¡¼­ Ȳ±Ý»öÀÇ Âù¶õÇÑ ºûÀÌ »Õ¾îÁ® ³ª¿É´Ï´Ù.\n", + "\n%Mì�´ 한쪽 ì†�ì—� 발광 주문ì�„ 걸었습니다.\nê·¸ì�˜ ì†�ì—�서 황금색ì�˜ 찬란한 ë¹›ì�´ 뿜어져 나옵니다.\n", ply_ptr); return(1); @@ -326,7 +326,7 @@ int how; } /**********************************************************************/ -/* protection (¼öÈ£Áø) */ +/* protection (수호진) */ /**********************************************************************/ /* This function allows a spellcaster to cast a protection spell either */ @@ -348,12 +348,12 @@ int how; t = time(0); if(ply_ptr->mpcur < 10 && how == CAST) { - print(fd,"´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd,"당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SPROTE) && how == CAST) { - print(fd,"´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } @@ -379,7 +379,7 @@ int how; 60*((ply_ptr->level+3)/4); ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_PROTE].interval += 800L; } } @@ -387,13 +387,13 @@ int how; ply_ptr->lasttime[LT_PROTE].interval = 1200; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "µÎ¼ÕÀ¸·Î ÀÎÀ» ¸ÎÀº µÚ ¼öÈ£ÁøÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ ¼öÈ£·ÉµéÀÌ ´ç½Å ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n"); + print(fd, "ë‘�ì†�으로 ì�¸ì�„ 맺ì�€ ë’¤ 수호진ì�˜ 주문ì�„ 외ì›�니다.\në¹›ì�˜ 수호령들ì�´ 당신 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ µÎ¼ÕÀ» ¸ðÀ¸¸ç ¼öÈ£ÁøÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nºûÀÇ ¼öÈ£·ÉµéÀÌ ±×ÀÇ ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", + "\n%Mì�´ ë‘�ì†�ì�„ 모으며 수호진ì�˜ 주문ì�„ 외ì›�니다.\në¹›ì�˜ 수호령들ì�´ ê·¸ì�˜ 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n", ply_ptr); } else if(how == POTION) - print(fd, "\nºûÀÇ ¼öÈ£·ÉµéÀÌ ´ç½Å ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n"); + print(fd, "\në¹›ì�˜ 수호령들ì�´ 당신 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n"); return(1); } @@ -401,7 +401,7 @@ int how; else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할 수 있습니다.\n"); return(0); } @@ -410,7 +410,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } @@ -427,7 +427,7 @@ int how; 60*((ply_ptr->level+3)/4); ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd, "ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd, "ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_PROTE].interval += 800L; } } @@ -435,13 +435,13 @@ int how; crt_ptr->lasttime[LT_PROTE].interval = 1200; if(how == CAST || how == SCROLL || how == WAND) { - print(fd,"%MÀÇ ¸ö¿¡ ¼öÈ£ÀÎÀ» ±×¸®¸ç ¼öÈ£ÁøÀÇ ÁÖ¹®À» °É¾ú½À´Ï´Ù.\nºûÀÇ ¼öÈ£·ÉµéÀÌ ±×ÀÇ ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", + print(fd,"%Mì�˜ 몸ì—� 수호ì�¸ì�„ 그리며 수호진ì�˜ 주문ì�„ 걸었습니다.\në¹›ì�˜ 수호령들ì�´ ê·¸ì�˜ 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n", crt_ptr); print(crt_ptr->fd, - "%MÀÌ ´ç½ÅÀÇ ¸ö¿¡ ¼öÈ£ÀÎÀ» ±×¸®¸ç ÁÖ¹®À» °É¾ú½À´Ï´Ù.\nºûÀÇ ¼öÈ£·ÉµéÀÌ ´ç½ÅÀÇ ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", + "%Mì�´ 당신ì�˜ 몸ì—� 수호ì�¸ì�„ 그리며 주문ì�„ 걸었습니다.\në¹›ì�˜ 수호령들ì�´ 당신ì�˜ 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "%MÀÌ %MÀÇ ¸ö¿¡ ¼öÈ£ÀÎÀ» ±×¸®¸ç ÁÖ¹®À» °É¾ú½À´Ï´Ù.\nºûÀÇ ¼öÈ£·ÉµéÀÌ ±×ÀÇ ÁÖÀ§¸¦ µÑ·¯½Î¸ç ¹æ¾îÀÇ ÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", + "%Mì�´ %Mì�˜ 몸ì—� 수호ì�¸ì�„ 그리며 주문ì�„ 걸었습니다.\në¹›ì�˜ 수호령들ì�´ ê·¸ì�˜ 주위를 둘러싸며 ë°©ì–´ì�˜ ì§„ì�„ 형성했습니다.\n", ply_ptr, crt_ptr); return(1); } @@ -452,7 +452,7 @@ int how; } /**********************************************************************/ -/* mend (¿ø±âȸº¹) */ +/* mend (ì›�기회복) */ /**********************************************************************/ /* This function will cause the mend spell to be cast on a player or */ @@ -474,18 +474,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 4 && how == CAST) { - print(fd,"´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd,"당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } /* if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ ¾µ ¼ö ÀÖ´Â ¸¶¹ýÀÔ´Ï´Ù.\n"); + print(fd, "불제ìž�와 무사만 쓸 수 있는 마법입니다.\n"); return(0); } */ if(!S_ISSET(ply_ptr, SMENDW) && how == CAST) { - print(fd,"´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd,"당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(ply_ptr->class == BARBARIAN || ply_ptr->class == FIGHTER @@ -513,7 +513,7 @@ int how; ply_ptr->mpcur -= 4; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ heal += mrand(1,6)+1; - print(fd,"ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); } } else @@ -528,14 +528,14 @@ int how; if(how == CAST || how == SCROLL) { - print(fd,"´ç½ÅÀº ±â°øÆÈ½ÄÀÇ ÀÚ¼¼¸¦ ÃëÇÏ¸ç ¿ø±âȸº¹ÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nÁö±âÀÇ ¶ß°Å¿î ±â¿îÀÌ ´ç½ÅÀÇ ¸ö¿¡ °¡µæÂ÷ ü·ÂÀ» Çâ»ó½Ãŵ´Ï´Ù.\n"); + print(fd,"당신ì�€ 기공팔ì‹�ì�˜ ìž�세를 취하며 ì›�기회복ì�˜ 주문ì�„ 외ì›�니다.\n지기ì�˜ 뜨거운 기운ì�´ 당신ì�˜ 몸ì—� ê°€ë“�ì°¨ ì²´ë ¥ì�„ í–¥ìƒ�시킵니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ±â°øÆÈ½ÄÀÇ ÀÚ¼¼¸¦ ÃëÇÏ¸ç ¿ø±âȸº¹ÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nÁö±âÀÇ ¶ß°Å¿î ±â¿îÀÌ ±×¿¡°Ô Èê·¯°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "\n%Mì�´ 기공팔ì‹�ì�˜ ìž�세를 취하며 ì›�기회복ì�˜ 주문ì�„ 외ì›�니다.\n지기ì�˜ 뜨거운 기운ì�´ ê·¸ì—�게 í�˜ëŸ¬ê°€ëŠ” 것ì�´ ëŠ�껴집니다.\n", ply_ptr); return(1); } else { - print(fd,"¸öÀÇ Ã¼·ÂÀÌ ¸¹ÀÌ È¸º¹µÇ¾ú½À´Ï´Ù.\n"); + print(fd,"몸ì�˜ ì²´ë ¥ì�´ ë§Žì�´ 회복ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); return(1); } } @@ -544,7 +544,7 @@ int how; else { if(how == POTION) { - print(fd,"±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd,"ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할 수 있습니다.\n"); return(0); } @@ -558,7 +558,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd,"±×·¯ÇÑ »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd,"그러한 사람ì�€ 존재하지 않습니다.\n"); return(0); } } @@ -574,7 +574,7 @@ int how; ply_ptr->mpcur -= 4; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ heal += mrand(1,6)+1; - print(fd,"ÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"ì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); } } else @@ -589,14 +589,14 @@ int how; crt_ptr->hpcur = crt_ptr->hpmax; expadd = 0; } -/* ¿ø±â »ç¿ë½Ã °æÇèÄ¡¸¦ ÁÖ´Â ºÎºÐ. +/* ì›�기 사용시 경험치를 주는 부분. ply_ptr->experience += expadd; - ÀÏ´ÜÀº ³ÖÁö ¾Ê¾Ò¾î¿ä. */ + ì�¼ë‹¨ì�€ 넣지 않았어요. */ if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº %M¿¡°Ô ³»°øÀ» ÁÖÀÔÇÏ¸ç ¿ø±âȸº¹ÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n±×ÀÇ ¸ö¾È¿¡¼­ Áö±âÀÇ ¶ß°Å¿î ±â¿îÀÌ ´À²¸Áý´Ï´Ù.", crt_ptr); - print(crt_ptr->fd,"%MÀÌ ´ç½Å¿¡°Ô ³»°øÀ» ÁÖÀÔÇÏ¸ç ¿ø±âȸº¹ÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n´ç½ÅÀÇ ¸ö¾È¿¡¼­ Áö±âÀÇ ¶ß°Å¿î ±â¿î°ú ü·ÂÀÌ ¸¹ÀÌ Çâ»óµÇ´Â\n°ÍÀÌ ´À²¸Áý´Ï´Ù.\n",ply_ptr); + print(fd, "당신ì�€ %Mì—�게 ë‚´ê³µì�„ 주입하며 ì›�기회복ì�˜ 주문ì�„ ê²�니다.\nê·¸ì�˜ 몸안ì—�서 지기ì�˜ 뜨거운 기운ì�´ ëŠ�껴집니다.", crt_ptr); + print(crt_ptr->fd,"%Mì�´ 당신ì—�게 ë‚´ê³µì�„ 주입하며 ì›�기회복ì�˜ 주문ì�„ ê²�니다.\n당신ì�˜ 몸안ì—�서 지기ì�˜ 뜨거운 기운과 ì²´ë ¥ì�´ ë§Žì�´ í–¥ìƒ�ë�˜ëŠ”\n것ì�´ ëŠ�껴집니다.\n",ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ³»°øÀ» ÁÖÀÔÇÏ¸ç ¿ø±âȸº¹ÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n±×¿¡°Ô ¶ß°Å¿î Áö±âÀÇ ±â¿îÀÌ Èê·¯°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 ë‚´ê³µì�„ 주입하며 ì›�기회복ì�˜ 주문ì�„ ê²�니다.\nê·¸ì—�게 뜨거운 지기ì�˜ 기운ì�´ í�˜ëŸ¬ê°€ëŠ” 것ì�´ ëŠ�껴집니다.\n", ply_ptr, crt_ptr); return(1); } diff --git a/src/magic3.c b/src/magic3.c index ce11a3d1..bf592fcd 100644 --- a/src/magic3.c +++ b/src/magic3.c @@ -11,7 +11,7 @@ #include "mextern.h" /**********************************************************************/ -/* bless (¼ºÇöÁÖ) */ +/* bless (성현주) */ /**********************************************************************/ /* This function allows a player to cast a bless spell on himself or */ @@ -33,13 +33,13 @@ int how; if(ply_ptr->mpcur < 10 && how == CAST) { print(fd, - "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SBLESS) && how == CAST) { print(fd, - "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -65,7 +65,7 @@ int how; ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ print(fd, - "\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + "\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_BLESS].interval += 800L; } } @@ -74,14 +74,14 @@ int how; if(how == CAST || how == SCROLL || how == WAND) { print(fd, - "\n´ç½ÅÀº Á¶¿ëÈ÷ ´«À» °¨À¸¸ç ¼ºÇöÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n¼ºÇöÁÖ¸¦ ¿Ü¿ìÀÚ ¸Ó¸®¿¡¼­ »ï¸Å±¤ÀÌ »Õ¾îÁ® ³ª¿Í ¼º½º·± ±â¿îÀÌ\n¸öÀ» ÈÖ°¨½À´Ï´Ù.\n"); + "\n당신ì�€ 조용히 눈ì�„ ê°�으며 성현주를 외ì›�니다.\n성현주를 외우ìž� 머리ì—�서 삼매광ì�´ 뿜어져 나와 성스런 기운ì�´\n몸ì�„ 휘ê°�습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Á¶¿ëÈ÷ ´«À» °¨À¸¸ç ¼ºÇöÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸Ó¸®¿¡¼­ »ï¸Å±¤ÀÌ »Õ¾îÁ® ³ª¿Í ¼º½º·± ±â¿îÀÌ ¸öÀ»\nÈÖ°¨½À´Ï´Ù.\n", + "\n%Mì�´ 조용히 눈ì�„ ê°�으며 성현주를 외ì›�니다.\nê·¸ì�˜ 머리ì—�서 삼매광ì�´ 뿜어져 나와 성스런 기운ì�´ 몸ì�„\n휘ê°�습니다.\n", ply_ptr); } else if(how == POTION) print(fd, - "\nÇϴÿ¡¼­ õ¼ö±¤ÀÌ ³»·Á¿Í ¼º½º·± ±â¿îµé·Î ¸öÀ» ÈÖ°¨½À´Ï´Ù.\n"); + "\n하늘ì—�서 천수광ì�´ 내려와 성스런 기운들로 몸ì�„ 휘ê°�습니다.\n"); return(1); } @@ -91,7 +91,7 @@ int how; if(how == POTION) { print(fd, - "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할 수 있습니다.\n"); return(0); } @@ -101,7 +101,7 @@ int how; if(!crt_ptr) { print(fd, - "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -119,7 +119,7 @@ int how; ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ print(fd, - "\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + "\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_BLESS].interval += 800L; } } @@ -128,13 +128,13 @@ int how; if(how == CAST || how == SCROLL || how == WAND) { print(fd, - "\n´ç½ÅÀº ÇÑÂʼÕÀ» %MÀÇ ¸Ó¸®¿¡ ¾ñÀ¸¸ç ¼ºÇöÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸Ó¸®¿¡¼­ »ï¸Å±¤ÀÌ »Õ¾îÁ® ³ª¿Í ¼º½º·¯¿î ±â¿îÀÌ ¸öÀ» ÈÖ°¨½À´Ï´Ù.\n", + "\n당신ì�€ 한쪽ì†�ì�„ %Mì�˜ 머리ì—� 얹으며 성현주를 외ì›�니다.\nê·¸ì�˜ 머리ì—�서 삼매광ì�´ 뿜어져 나와 성스러운 기운ì�´ 몸ì�„ 휘ê°�습니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ¸Ó¸®¿¡ ÇÑÂʼÕÀ» ¾ñÀ¸¸ç ¼ºÇöÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ¸Ó¸®¿¡¼­ »ï¸Å±¤ÀÌ »Õ¾îÁ® ³ª¿Í ¼º½º·¯¿î ±â¿îÀÌ ¸öÀ»\nÈÖ°¨½À´Ï´Ù.\n", + "\n%Mì�´ 당신ì�˜ 머리ì—� 한쪽ì†�ì�„ 얹으며 성현주를 외ì›�니다.\n당신ì�˜ 머리ì—�서 삼매광ì�´ 뿜어져 나와 성스러운 기운ì�´ 몸ì�„\n휘ê°�습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¸Ó¸®¿¡ ÇÑÂʼÕÀ» ¾ñÀ¸¸ç ¼ºÇöÁÖ¸¦ \n¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸Ó¸®¿¡¼­ »ï¸Å±¤ÀÌ »Õ¾îÁ® ³ª¿Í ¼º½º·¯¿î ±â¿îÀÌ ¸öÀ»\nÈÖ°¨½À´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 머리ì—� 한쪽ì†�ì�„ 얹으며 성현주를 \n외ì›�니다.\nê·¸ì�˜ 머리ì—�서 삼매광ì�´ 뿜어져 나와 성스러운 기운ì�´ 몸ì�„\n휘ê°�습니다.\n", ply_ptr, crt_ptr); return(1); } @@ -145,7 +145,7 @@ int how; } /**********************************************************************/ -/* turn ( ¹æÈ¥¼ú ) */ +/* turn ( 방혼술 ) */ /**********************************************************************/ /* This function allows clerics and paladins to turn undead creatures. */ @@ -166,14 +166,14 @@ cmd *cmnd; if(cmnd->num < 2) { print(fd, - "\n´©±¸¿¡°Ô ÁÖ¹®À» °Å½Ç·Á°í¿ä?\n"); + "\n누구ì—�게 주문ì�„ 거실려고요?\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE) { print(fd, - "\nºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ÀÌ ¹æÈ¥¼úÀ» »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\n불제ìž�와 무사만ì�´ 방혼술ì�„ 사용할수 있습니다.\n"); return(0); } @@ -182,22 +182,22 @@ cmd *cmnd; if(!crt_ptr) { print(fd, - "\n±×·± ±«¹°Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 괴물ì�€ 존재하지 않습니다.\n"); return(0); } if(!F_ISSET(crt_ptr, MUNDED)) { print(fd, - "\nÁ×Àº ±«¹°¿¡°Ô¸¸ »ç¿ë°¡´ÉÇÕ´Ï´Ù.\n"); + "\n죽ì�€ 괴물ì—�게만 사용가능합니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); print(fd, - "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ 모습ì�´ 나타나기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÇ ¸ð½ÀÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.", + "%Mì�˜ 모습ì�´ ë³´ì�´ê¸° 시작합니다.", ply_ptr); } @@ -211,8 +211,8 @@ ply_ptr); if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { print(fd, - "\n´ç½ÅÀº %sÀÇ È¥À» ¼Ò¸ê½Ãų ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + "\n당신ì�€ %sì�˜ 혼ì�„ 소멸시킬 수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -228,20 +228,20 @@ ply_ptr); if(mrand(1,100) > chance) { print(fd, - "\nºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼ÒȯÇÏ´Â ¹æÈ¥¼úÀÇ ÁÖ¹®À» \n¿ÜÃÆ½À´Ï´Ù.ÇÏÁö¸¸ ÁÖ¹®ÀÌ Æ¨°ÜÁ® ³ª¿À¸é¼­ %M°¡ ´ç½ÅÀÇ ÁÖ¼úÀ» \n°ßµ®³Â½À´Ï´Ù.\n", + "\në¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환하는 방혼술ì�˜ 주문ì�„ \n외쳤습니다.하지만 주문ì�´ 튕겨져 나오면서 %Mê°€ 당신ì�˜ 주술ì�„ \n견뎌냈습니다.\n", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼Òȯ½ÃŰ´Â ¹æÈ¥¼úÀÇ \nÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nÇÏÁö¸¸ ÁÖ¹®ÀÌ Æ¨°ÜÁ® ³ª¿À¸é¼­ %M°¡ ±×ÀÇ ÁÖ¼úÀ» \n°ßµ®³Â½À´Ï´Ù.\n", + "\n%Mì�´ ë¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환시키는 방혼술ì�˜ \n주문ì�„ 외칩니다.\n하지만 주문ì�´ 튕겨져 나오면서 %Mê°€ ê·¸ì�˜ 주술ì�„ \n견뎌냈습니다.\n", ply_ptr, crt_ptr); return(0); } if(mrand(1,100) > 90 - bonus[ply_ptr->piety]) { print(fd, - "\nºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼Òȯ½ÃŰ´Â ¹æÈ¥¼úÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nºÎÀûÀÌ ºù±Ûºñ±Û µ¹¸é¼­ ¼Ò¿ëµ¹À̸¦ ÀÏÀ¸Å°ÀÚ ±× ÀÚ¸®¿¡¼­ Àú½Â»çÀÚ°¡\n¿Ã¶ó¿Í %MÀÇ È¥À» ¼Ò¸ê½ÃÄÑ ¹ö·È½À´Ï´Ù.\n ", + "\në¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환시키는 방혼술ì�˜ 주문ì�„ 외칩니다.\në¶€ì �ì�´ 빙글비글 ë�Œë©´ì„œ 소용ë�Œì�´ë¥¼ ì�¼ìœ¼í‚¤ìž� ê·¸ ìž�리ì—�서 저승사ìž�ê°€\n올ë�¼ì™€ %Mì�˜ 혼ì�„ 소멸시켜 버렸습니다.\n ", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼Òȯ½ÃŰ´Â ¹æÈ¥¼úÀÇ \nÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nºÎÀûÀÌ ºù±Ûºù±Û µ¹¸é¼­ ¼Ò¿ëµ¹À̸¦ ÀÏÀ¸Å°ÀÚ ±× ÀÚ¸®¿¡¼­ \nÀú½Â»çÀÚ°¡ ¿Ã¶ó¿Í %MÀÇ È¥À»¼Ò¸ê½ÃÄÑ ¹ö·È½À´Ï´Ù.\n", + "\n%Mì�´ ë¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환시키는 방혼술ì�˜ \n주문ì�„ 외칩니다.\në¶€ì �ì�´ 빙글빙글 ë�Œë©´ì„œ 소용ë�Œì�´ë¥¼ ì�¼ìœ¼í‚¤ìž� ê·¸ ìž�리ì—�서 \n저승사ìž�ê°€ 올ë�¼ì™€ %Mì�˜ 혼ì�„소멸시켜 버렸습니다.\n", ply_ptr, crt_ptr); add_enm_dmg(ply_ptr->name, crt_ptr, crt_ptr->hpcur); die(crt_ptr, ply_ptr); @@ -253,17 +253,17 @@ ply_ptr); crt_ptr->hpcur -= dmg; add_enm_dmg(ply_ptr->name, crt_ptr, m); print(fd, - "\nºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼Òȯ½ÃŰ´Â ¹æÈ¥¼úÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nºÎÀûÀÌ %MÀÇ ¸öÀ» °ø°ÝÇϸç %d¸¸Å­ÀÇ Å¸°ÝÀ» ÀÔÇû½À´Ï´Ù\n", + "\në¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환시키는 방혼술ì�˜ 주문ì�„ 외칩니다.\në¶€ì �ì�´ %Mì�˜ 몸ì�„ 공격하며 %dë§Œí�¼ì�˜ 타격ì�„ 입혔습니다\n", crt_ptr, dmg); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ºÎÀûÀ» Çϴ÷Π³¯¸®¸ç È¥À» ¼Òȯ½ÃŰ´Â ¹æÈ¥¼úÀÇ \nÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nºÎÀûÀÌ %MÀÇ ¸öÀ» °ø°ÝÇϸç Ÿ°ÝÀ» ÀÔÇû½À´Ï´Ù\n", + "\n%Mì�´ ë¶€ì �ì�„ 하늘로 날리며 혼ì�„ 소환시키는 방혼술ì�˜ \n주문ì�„ 외칩니다.\në¶€ì �ì�´ %Mì�˜ 몸ì�„ 공격하며 타격ì�„ 입혔습니다\n", ply_ptr,crt_ptr); if(crt_ptr->hpcur < 1) { print(fd, - "\n´ç½ÅÀº %MÀÇ È¥À» ¼Ò¸ê½ÃÄ×½À´Ï´Ù.\n%MÀÇ ¸ö¿¡¼­ È¥ÀÌ »ç¶óÁöÀÚ ³ì¾Æ¹ö¸³´Ï´Ù.\n", + "\n당신ì�€ %Mì�˜ 혼ì�„ 소멸시켰습니다.\n%Mì�˜ 몸ì—�서 혼ì�´ 사ë�¼ì§€ìž� 녹아버립니다.\n", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ È¥À» ¼Ò¸ê½ÃÄ×½À´Ï´Ù.\n\n%MÀÇ È¥ÀÌ »ç¶óÁöÀÚ ¸öÀÌ ³ì¾Æ¹ö¸³´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 혼ì�„ 소멸시켰습니다.\n\n%Mì�˜ 혼ì�´ 사ë�¼ì§€ìž� 몸ì�´ 녹아버립니다.\n", ply_ptr, crt_ptr, crt_ptr); die(crt_ptr, ply_ptr); } @@ -274,10 +274,10 @@ ply_ptr); } /**********************************************************************/ -/* absorb ( Èí¼º´ë¹ý ) */ +/* absorb ( í�¡ì„±ëŒ€ë²• ) */ /**********************************************************************/ -/* À̱â´ÉÀº ÀûÀÇ Ã¼·ÂÀ» »¡¾Æµé¿© ÀÚ½ÅÀÇ Ã¼·Â¿¡ ´õÇÏ´Â ·çƾÀÌ´Ù. */ +/* ì�´ê¸°ëŠ¥ì�€ ì �ì�˜ ì²´ë ¥ì�„ 빨아들여 ìž�ì‹ ì�˜ ì²´ë ¥ì—� ë�”하는 루틴ì�´ë‹¤. */ /* */ int absorb(ply_ptr, cmnd) @@ -294,13 +294,13 @@ cmd *cmnd; if(cmnd->num < 2) { print(fd, - "\n´©±¸¿¡°Ô ÁÖ¹®À» °Å½Ç·Á°í¿ä?\n"); + "\n누구ì—�게 주문ì�„ 거실려고요?\n"); return(0); } if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { print(fd, - "\nµµ¼ú»ç¸¸ÀÌ Èí¼º´ë¹ýÀ» »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\në�„술사만ì�´ í�¡ì„±ëŒ€ë²•ì�„ 사용할수 있습니다.\n"); return(0); } @@ -309,16 +309,16 @@ cmd *cmnd; if(!crt_ptr) { print(fd, - "\n±×·± ±«¹°Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 괴물ì�€ 존재하지 않습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); print(fd, - "\n´ç½ÅÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ 모습ì�´ 나타나기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÇ ¸ð½ÀÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.", + "%Mì�˜ 모습ì�´ ë³´ì�´ê¸° 시작합니다.", ply_ptr); } @@ -332,8 +332,8 @@ cmd *cmnd; if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { print(fd, - "\n´ç½ÅÀº %sÀÇ ±â¸¦ Èí¼öÇÒ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + "\n당신ì�€ %sì�˜ 기를 í�¡ìˆ˜í• ìˆ˜ 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -349,24 +349,24 @@ cmd *cmnd; if(mrand(1,100) > chance) { print(fd, - "\n¼ÕÀ» Àû¿¡°Ô »¸À¸¸ç ±â¸¦ Èí¼öÇÏ´Â Èí¼º´ë¹ýÀÇ ÁÖ¹®À» \n¿ÜÃÆ½À´Ï´Ù.ÇÏÁö¸¸ ÁÖ¹®ÀÌ Æ¨°ÜÁ® ³ª¿À¸é¼­ %M°¡ ´ç½ÅÀÇ ÁÖ¼úÀ» \n°ßµ®³Â½À´Ï´Ù.\n", + "\nì†�ì�„ ì �ì—�게 뻗으며 기를 í�¡ìˆ˜í•˜ëŠ” í�¡ì„±ëŒ€ë²•ì�˜ 주문ì�„ \n외쳤습니다.하지만 주문ì�´ 튕겨져 나오면서 %Mê°€ 당신ì�˜ 주술ì�„ \n견뎌냈습니다.\n", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¼ÕÀ» Àû¿¡°Ô »¸À¸¸ç ±â¸¦ Èí¼öÇÏ´Â Èí¼º´ë¹ýÀÇ \nÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nÇÏÁö¸¸ ÁÖ¹®ÀÌ Æ¨°ÜÁ® ³ª¿À¸é¼­ %M°¡ ±×ÀÇ ÁÖ¼úÀ» \n°ßµ®³Â½À´Ï´Ù.\n", + "\n%Mì�´ ì†�ì�„ ì �ì—�게 뻗으며 기를 í�¡ìˆ˜í•˜ëŠ” í�¡ì„±ëŒ€ë²•ì�˜ \n주문ì�„ 외칩니다.\n하지만 주문ì�´ 튕겨져 나오면서 %Mê°€ ê·¸ì�˜ 주술ì�„ \n견뎌냈습니다.\n", ply_ptr, crt_ptr); return(0); } print(fd, - "\n¼ÕÀ» Àû¿¡°Ô »¸À¸¸ç ±â¸¦ Èí¼öÇÏ´Â Èí¼º´ë¹ýÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nÀûÀÇ ¸ö¿¡¼­ ±â°¡ Èê·¯³ª¿Í ¼ÕÀ¸·Î\n»¡·Á µé¾î°©´Ï´Ù.\n ", + "\nì†�ì�„ ì �ì—�게 뻗으며 기를 í�¡ìˆ˜í•˜ëŠ” í�¡ì„±ëŒ€ë²•ì�˜ 주문ì�„ 외칩니다.\nì �ì�˜ 몸ì—�서 기가 í�˜ëŸ¬ë‚˜ì™€ ì†�으로\n빨려 들어갑니다.\n ", crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¼ÕÀ» Àû¿¡°Ô »¸À¸¸ç ±â¸¦ Èí¼öÇÏ´Â Èí¼º´ë¹ýÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\n%MÀÇ ¸ö¿¡¼­ ±â°¡ Èê·¯³ª¿Í ¼ÕÀ¸·Î »¡·Áµì´Ï´Ù.\n", + "\n%Mì�´ ì†�ì�„ ì �ì—�게 뻗으며 기를 í�¡ìˆ˜í•˜ëŠ” í�¡ì„±ëŒ€ë²•ì�˜ 주문ì�„ 외칩니다.\n%Mì�˜ 몸ì—�서 기가 í�˜ëŸ¬ë‚˜ì™€ ì†�으로 빨려듭니다.\n", ply_ptr, crt_ptr); if(F_ISSET(crt_ptr, MUNDED)) { print(fd, - "\nÀ¹! ¾Ç·ÉÀÇ »ç¾ÇÇÑ ±â¿îÀÌ ´ç½Å¿¡°Ô Èê·¯µì´Ï´Ù.\n"); + "\n윽! ì•…ë ¹ì�˜ 사악한 기운ì�´ 당신ì—�게 í�˜ëŸ¬ë“­ë‹ˆë‹¤.\n"); ply_ptr->mpcur = 0; return(0); @@ -381,14 +381,14 @@ cmd *cmnd; ply_ptr->hpcur = ply_ptr->hpmax; */ add_enm_dmg(ply_ptr->name, crt_ptr, m); - /* print(fd, "Å×½ºÆ® %d %d", dmg, m); */ + /* print(fd, "테스트 %d %d", dmg, m); */ if(crt_ptr->hpcur < 1) { print(fd, - "\n´ç½ÅÀº %MÀÇ ¸ðµç±â¸¦ Èí¼öÇß½À´Ï´Ù.\n%MÀÇ ¸ö¿¡¼­ ±â°¡ ºüÁöÀÚ ¾²·¯Á® ¹ö¸³´Ï´Ù.\n", + "\n당신ì�€ %Mì�˜ 모든기를 í�¡ìˆ˜í–ˆìŠµë‹ˆë‹¤.\n%Mì�˜ 몸ì—�서 기가 ë¹ ì§€ìž� 쓰러져 버립니다.\n", crt_ptr, crt_ptr); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¸ðµç±â¸¦ Èí¼öÇß½À´Ï´Ù.\n\n %MÀÇ ±â¿îÀÌ %M ÀÇ ¸ö ÁÖÀ§·Î µÑ·¯½ÎÀ̸鼭 ÇÏ¾á ±â¿îÀ» ³»»Õ½À´Ï´Ù.\n\n%MÀÇ ¸ö¿¡¼­ ±â°¡ ºüÁöÀÚ ¾²·¯Á® ¹ö¸³´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 모든기를 í�¡ìˆ˜í–ˆìŠµë‹ˆë‹¤.\n\n %Mì�˜ 기운ì�´ %M ì�˜ 몸 주위로 둘러싸ì�´ë©´ì„œ 하얀 기운ì�„ 내뿜습니다.\n\n%Mì�˜ 몸ì—�서 기가 ë¹ ì§€ìž� 쓰러져 버립니다.\n", ply_ptr, crt_ptr, crt_ptr, ply_ptr, crt_ptr); die(crt_ptr, ply_ptr); } @@ -398,7 +398,7 @@ cmd *cmnd; } /**********************************************************************/ -/* invisibility ( ÀºµÐ¼ú ) */ +/* invisibility ( ì�€ë‘”술 ) */ /**********************************************************************/ /* This function allows a player to cast an invisibility spell on himself */ @@ -421,13 +421,13 @@ int how; if(ply_ptr->mpcur < 15 && how == CAST) { print(fd, - "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SINVIS) && how == CAST) { print(fd, - "\n´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + "\n당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -440,7 +440,7 @@ int how; while(cp) { if(is_enm_crt(ply_ptr->name, cp->crt)) { print(fd, - "\nÁö±Ý ½Î¿ì°í ÀÖÀݾƿä..!!.\n"); + "\n지금 싸우고 있잖아요..!!.\n"); return(0); } cp = cp->next_tag; @@ -459,7 +459,7 @@ int how; ply_ptr->mpcur -= 15; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ print(fd, - "\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + "\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_INVIS].interval += 600L; } } @@ -468,14 +468,14 @@ int how; if(how == CAST || how == SCROLL || how == WAND) { print(fd, - "\n´ç½ÅÀº ¼Ò¸íºÎ¸¦ »ïŰ¸é¼­ ÀºµÐ¹ýÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©Àڱ⠻ç¶óÁ³½À´Ï´Ù.\n"); + "\n당신ì�€ 소명부를 삼키면서 ì�€ë‘”법ì�˜ 주문ì�„ 외ì›�니다.\n몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¼Ò¸íºÎ¸¦ »ïŰ¸é¼­ ÀºµÐ¹ýÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©ÀÚ±â \n»ç¶óÁ³½À´Ï´Ù.\n ", + "\n%Mì�´ 소명부를 삼키면서 ì�€ë‘”법ì�˜ 주문ì�„ 외ì›�니다.\nê·¸ì�˜ 몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 \n사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n ", ply_ptr->name ); } else if(how == POTION) print(fd, - "\n´ç½ÅÀÇ ¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©Àڱ⠻ç¶óÁ³½À´Ï´Ù.\n"); + "\n당신ì�˜ 몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n"); F_SET(ply_ptr, PINVIS); @@ -487,7 +487,7 @@ int how; if(how == POTION) { print(fd, - "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -497,7 +497,7 @@ int how; if(!crt_ptr) { print(fd, - "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } @@ -511,7 +511,7 @@ int how; ply_ptr->mpcur -= 15; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ print(fd, - "\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + "\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_INVIS].interval += 600L; } } @@ -520,13 +520,13 @@ int how; if(how == CAST || how == SCROLL || how == WAND) { print(fd, - "\n%M¿¡°Ô ¼Ò¸íºÎ¸¦ ¸ÔÀ̰í ÀºµÐ¹ýÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n%MÀÇ ¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©ÀÚ±â \n»ç¶óÁ³½À´Ï´Ù.\n", + "\n%Mì—�게 소명부를 먹ì�´ê³  ì�€ë‘”법ì�˜ 주문ì�„ ê²�니다.\n%Mì�˜ 몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 \n사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", crt_ptr,crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô ¼Ò¸íºÎ¸¦ ¸ÔÀ̰í ÀºµÐ¹ýÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©Àڱ⠻ç¶óÁ³½À´Ï´Ù.\n", + "\n%Mì�´ 당신ì—�게 소명부를 먹ì�´ê³  ì�€ë‘”법ì�˜ 주문ì�„ ê²�니다.\n몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¼Ò¸íºÎ¸¦ ¸ÔÀ̰í ÀºµÐ¹ýÀÇ ÁÖ¹®À» °Ì´Ï´Ù.\n±×ÀÇ ¸öÀÌ ´«ºÎ½Ç Á¤µµ·Î °­·ÄÇÑ ºûÀ» ³»´Ù°¡ °©Àڱ⠻ç¶óÁ³½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 소명부를 먹ì�´ê³  ì�€ë‘”법ì�˜ 주문ì�„ ê²�니다.\nê·¸ì�˜ 몸ì�´ 눈부실 ì •ë�„로 강렬한 ë¹›ì�„ 내다가 ê°‘ìž�기 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", ply_ptr, crt_ptr); F_SET(crt_ptr, PINVIS); return(1); @@ -538,7 +538,7 @@ int how; } /**********************************************************************/ -/* restore ( µµÁÖõ ) */ +/* restore ( ë�„주천 ) */ /**********************************************************************/ /* This function allows a player to cast the restore spell using either */ @@ -559,16 +559,16 @@ int how; if(how == CAST && ply_ptr->class < INVINCIBLE) { print(fd, - "\n´ç½ÅÀº ±× ÁÖ¼úÀ» »ç¿ëÇÒ ´É·ÂÀÌ ¾ø½À´Ï´Ù.\n"); + "\n당신ì�€ ê·¸ 주술ì�„ 사용할 능력ì�´ 없습니다.\n"); return(0); } /* Cast restore on self */ if(cmnd->num == 2) { - /* ¹«Àû Àڽſ¡°Ô ¸ø ¿Ü¿ò */ + /* 무ì � ìž�ì‹ ì—�게 못 외움 */ if((ply_ptr->class == INVINCIBLE) && (how == CAST)) { - print(fd,"\nÀڽſ¡°Ô ¿Ü¿ï¼ö ¾ø½À´Ï´Ù.\n"); + print(fd,"\nìž�ì‹ ì—�게 외울수 없습니다.\n"); return(0); } ply_ptr->hpcur += dice(2,10,0); @@ -579,26 +579,26 @@ int how; if(how == CAST || how == WAND) { print(fd, - "\n´ç½ÅÀº °øÁßÀ¸·Î ³¯¾Æ ¿Ã¶ó µµÁÖõÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nõÁöÀÇ ±â¿îÀÌ ¹ø°³¿Í ÆøÇ³À» µ¿¹ÝÇϸ鼭 ¸ô·Á¿Í ´ç½ÅÀÇ\n¸ö¿¡ ½º¸çµé¾î¿Í µµ·ÂÀ» ȸº¹½Ãŵ´Ï´Ù.\n"); + "\n당신ì�€ 공중으로 ë‚ ì•„ 올ë�¼ ë�„주천ì�˜ 주문ì�„ 외칩니다.\n천지ì�˜ 기운ì�´ 번개와 í�­í’�ì�„ ë�™ë°˜í•˜ë©´ì„œ 몰려와 당신ì�˜\n몸ì—� 스며들어와 ë�„ë ¥ì�„ 회복시킵니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ °øÁßÀ¸·Î ³¯¾Æ¿Ã¶ó µµÁÖõÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nõÁöÀÇ ±â¿îÀÌ ¹ø°³¿Í ÆøÇ³À» µ¿¹ÝÇϸ鼭 ¸ô·Á¿Í µµ·ÂÀ» \nȸº¹½Ãŵ´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 공중으로 날아올ë�¼ ë�„주천ì�˜ 주문ì�„ 외칩니다.\n천지ì�˜ 기운ì�´ 번개와 í�­í’�ì�„ ë�™ë°˜í•˜ë©´ì„œ 몰려와 ë�„ë ¥ì�„ \n회복시킵니다.\n", ply_ptr); } else if(how == POTION) print(fd, - "\n¿Â¸ö¿¡ Áøµ¿ÀÌ ÀϾ¸é¼­ µµ·ÂÀÌ Ãæ¸¸ÇÕ´Ï´Ù.\n"); + "\n온몸ì—� ì§„ë�™ì�´ ì�¼ì–´ë‚˜ë©´ì„œ ë�„ë ¥ì�´ 충만합니다.\n"); return(1); } else { if(how == CAST || how == WAND) { print(fd, - "\n´ç½ÅÀº °øÁßÀ¸·Î ³¯¾Æ ¿Ã¶ó µµÁÖõÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nÇÏÁö¸¸ ¾Æ¹«·± ¹ÝÀÀµµ ÀϾÁö ¾Ê½À´Ï´Ù.\n"); + "\n당신ì�€ 공중으로 ë‚ ì•„ 올ë�¼ ë�„주천ì�˜ 주문ì�„ 외칩니다.\n하지만 아무런 ë°˜ì�‘ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ °øÁßÀ¸·Î ³¯¾Æ¿Ã¶ó µµÁÖõÀÇ ÁÖ¹®À» ¿ÜĨ´Ï´Ù.\nÇÏÁö¸¸ ¾Æ¹«·± ¹ÝÀÀµµ ÀϾÁö ¾Ê½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 공중으로 날아올ë�¼ ë�„주천ì�˜ 주문ì�„ 외칩니다.\n하지만 아무런 ë°˜ì�‘ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n", ply_ptr); } else { if(how == POTION) print(fd, - "\nµµ·Â ȸº¹¿¡ ½ÇÆÐÇß½À´Ï´Ù!!\n"); + "\në�„ë ¥ 회복ì—� 실패했습니다!!\n"); } } @@ -609,7 +609,7 @@ int how; if(how == POTION) { print(fd, - "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -619,7 +619,7 @@ int how; if((!crt_ptr) ||(crt_ptr == ply_ptr)) { print(fd, - "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } @@ -631,12 +631,12 @@ int how; if(how == CAST || how == WAND) { print(fd, - "\n%M¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ´ÜÀü¿¡ È­±â°¡ ¸ðÀ̸鼭 µµ·ÂÀÌ È¸º¹µË´Ï´Ù.\n", crt_ptr); + "\n%Mì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ 외ì›�니다.\nê·¸ì�˜ 단전ì—� 화기가 모ì�´ë©´ì„œ ë�„ë ¥ì�´ 회복ë�©ë‹ˆë‹¤.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» \n¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ´ÜÀü¿¡ È­±â°¡ ¸ðÀ̸鼭 µµ·ÂÀÌ È¸º¹µË´Ï´Ù.\n", + "\n%Mì�´ 당신ì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ \n외ì›�니다.\n당신ì�˜ 단전ì—� 화기가 모ì�´ë©´ì„œ ë�„ë ¥ì�´ 회복ë�©ë‹ˆë‹¤.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» \n¿Ü¿ó´Ï´Ù.\n±×ÀÇ µµ·ÂÀÌ È¸º¹µÇ¾ú½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ \n외ì›�니다.\nê·¸ì�˜ ë�„ë ¥ì�´ 회복ë�˜ì—ˆìŠµë‹ˆë‹¤.\n", ply_ptr, crt_ptr); return(1); } @@ -644,12 +644,12 @@ int how; else { if(how == CAST || how == WAND) { print(fd, - "\n%M¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nÇÏÁö¸¸ ¾Æ¹«·± ¹ÝÀÀµµ ÀϾÁö ¾Ê½À´Ï´Ù.\n", crt_ptr); + "\n%Mì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ 외ì›�니다.\n하지만 아무런 ë°˜ì�‘ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» \n¿Ü¿ó´Ï´Ù.\nÇÏÁö¸¸ ¾Æ¹«·± ¹ÝÀÀµµ ÀϾÁö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ 당신ì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ \n외ì›�니다.\n하지만 아무런 ë°˜ì�‘ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹«È­¿¬ ÀÙÀ» ¸ÔÀÌ¸ç µµÁÖõÀÇ ÁÖ¹®À» \n¿Ü¿ó´Ï´Ù.\nÇÏÁö¸¸ ¾Æ¹«·± ¹ÝÀÀµµ ÀϾÁö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 무화연 잎ì�„ 먹ì�´ë©° ë�„주천ì�˜ 주문ì�„ \n외ì›�니다.\n하지만 아무런 ë°˜ì�‘ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n", ply_ptr, crt_ptr); return(1); } @@ -661,7 +661,7 @@ int how; } /**********************************************************************/ -/* befuddle ( È¥µ¿¼ú ) */ +/* befuddle ( 혼ë�™ìˆ  ) */ /**********************************************************************/ int befuddle(ply_ptr, cmnd, how) @@ -678,22 +678,22 @@ int how; if(ply_ptr->mpcur < 10 && how == CAST) { print(fd, - "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SBEFUD) && how == CAST) { print(fd, - "\n´ç½ÅÀº ¾ÆÁ÷ ±× ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + "\n당신ì�€ ì•„ì§� ê·¸ 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); print(fd, - "\n´ç½ÅÀÇ ¸ð½ÀÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ 모습ì�´ ë³´ì�´ê¸° 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ º¸À̱⠽ÃÀÛÇÕ´Ï´Ù.\n", + "\n%Mì�´ ë³´ì�´ê¸° 시작합니다.\n", ply_ptr); } if(spell_fail(ply_ptr)) { @@ -720,13 +720,13 @@ int how; if(how == CAST || how == SCROLL || how == WAND) { print(fd, - "\n´ç½ÅÀº Èæ±â¸¦ ¶¥¿¡ ²ÆÀ¸¸ç È¥µ¿¼úÀÇ ÀÏÁ¾ÀÎ Èæ¾È¹ýÀ» \nÀڽſ¡°Ô °É¾ú½À´Ï´Ù.\nÁÖ¼úÀ» °ÉÀÚ °©ÀÚ±â Èæ±â¿¡¼­ °ËÀº±â·ù°¡ ÇǾî¿Ã¶ó ´ç½ÅÀÇ \nÁ¤½ÅÀ» È¥¼ö»óÅ¿¡ ºü¶ß¸³´Ï´Ù."); + "\n당신ì�€ í�‘기를 ë•…ì—� 꼿으며 혼ë�™ìˆ ì�˜ ì�¼ì¢…ì�¸ í�‘안법ì�„ \nìž�ì‹ ì—�게 걸었습니다.\n주술ì�„ 걸ìž� ê°‘ìž�기 í�‘기ì—�서 ê²€ì�€ê¸°ë¥˜ê°€ 피어올ë�¼ 당신ì�˜ \nì •ì‹ ì�„ 혼수ìƒ�태ì—� 빠뜨립니다."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Èæ±â¸¦ ¶¥¿¡ ²ÆÀ¸¸ç È¥µ¿¼úÀÇ ÀÏÁ¾ÀÎ Èæ¾È¹ýÀ» \nÀڽſ¡°Ô °É¾ú½À´Ï´Ù.\nÁÖ¹®À» °ÉÀÚ °©ÀÚ±â Èæ±â¿¡¼­ °ËÀº±â·ù°¡ ÇǾî¿Ã¶ó ±×ÀÇ \nÁ¤½ÅÀ» È¥¼ö»óÅ¿¡ ºü¶ß¸³´Ï´Ù.",ply_ptr); + "\n%Mì�´ í�‘기를 ë•…ì—� 꼿으며 혼ë�™ìˆ ì�˜ ì�¼ì¢…ì�¸ í�‘안법ì�„ \nìž�ì‹ ì—�게 걸었습니다.\n주문ì�„ 걸ìž� ê°‘ìž�기 í�‘기ì—�서 ê²€ì�€ê¸°ë¥˜ê°€ 피어올ë�¼ ê·¸ì�˜ \nì •ì‹ ì�„ 혼수ìƒ�태ì—� 빠뜨립니다.",ply_ptr); } else if(how == POTION) print(fd, - "\n´ç½ÅÀÇ ¿Â¸öÀÇ Çǰ¡ ¿ª·ùÇϸ鼭 ÁÖÈ­ÀÔ¸¶¿¡ ºüÁý´Ï´Ù.\nÈ¥¼ö»óÅ¿¡ ºüÁ³½À´Ï´Ù.\n"); + "\n당신ì�˜ 온몸ì�˜ 피가 역류하면서 주화입마ì—� 빠집니다.\n혼수ìƒ�태ì—� 빠졌습니다.\n"); } @@ -735,7 +735,7 @@ int how; if(how == POTION) { print(fd, - "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -750,7 +750,7 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[2]) < 3) { print(fd, - "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -758,8 +758,8 @@ int how; if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { print(fd, - "\n´ç½ÅÀº %s¸¦ ÇØÄ¥¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + "\n당신ì�€ %s를 해칠수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -791,12 +791,12 @@ F_ISSET(crt_ptr, MRBEFD)))) if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº Èæ±â¸¦ ¶¥¿¡ ²ÆÀ¸¸ç %s¿¡°Ô ÀÏÁ¾ÀÎ Èæ¾È¹ýÀ» °É¾ú½À´Ï´Ù.\nÁÖ¼úÀ» °ÉÀÚ °©ÀÚ±â Èæ±â¿¡¼­ °ËÀº±â·ù°¡ ÇǾî¿Ã¶ó ±×ÀÇ\nÁ¤½ÅÀ» È¥¼ö»óÅ¿¡ ºü¶ß¸³´Ï´Ù.\n", crt_ptr->name); + print(fd, "당신ì�€ í�‘기를 ë•…ì—� 꼿으며 %sì—�게 ì�¼ì¢…ì�¸ í�‘안법ì�„ 걸었습니다.\n주술ì�„ 걸ìž� ê°‘ìž�기 í�‘기ì—�서 ê²€ì�€ê¸°ë¥˜ê°€ 피어올ë�¼ ê·¸ì�˜\nì •ì‹ ì�„ 혼수ìƒ�태ì—� 빠뜨립니다.\n", crt_ptr->name); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ Èæ±â¸¦ ¶¥¿¡ ²ÆÀ¸¸ç È¥µ¿¼úÀÇ ÀÏÁ¾ÀÎ Èæ¾È¹ýÀ» \n%M¿¡°Ô °É¾ú½À´Ï´Ù.\nÁÖ¼úÀ» °ÉÀÚ °©ÀÚ±â Èæ±â¿¡¼­ °ËÀº±â·ù°¡ ÇǾî¿Ã¶ó ±×ÀÇ\nÁ¤½ÅÀ» È¥¼ö»óÅ¿¡ ºü¶ß¸³´Ï´Ù.\n", + "\n%Mì�´ í�‘기를 ë•…ì—� 꼿으며 혼ë�™ìˆ ì�˜ ì�¼ì¢…ì�¸ í�‘안법ì�„ \n%Mì—�게 걸었습니다.\n주술ì�„ 걸ìž� ê°‘ìž�기 í�‘기ì—�서 ê²€ì�€ê¸°ë¥˜ê°€ 피어올ë�¼ ê·¸ì�˜\nì •ì‹ ì�„ 혼수ìƒ�태ì—� 빠뜨립니다.\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ Èæ±â¸¦ ¶¥¿¡ ²ÆÀ¸¸ç È¥µ¿¼úÀÇ ÀÏÁ¾ÀÎ Èæ¾È¹ýÀ» ´ç½Å¿¡°Ô °É¾ú½À´Ï´Ù.\nÁÖ¼úÀ» °ÉÀÚ °©ÀÚ±â Èæ±â¿¡¼­ °ËÀº±â·ù°¡ ÇǾî¿Ã¶ó ´ç½ÅÀÇ\nÁ¤½ÅÀ» È¥¼ö»óÅ¿¡ ºü¶ß¸³´Ï´Ù.\n", + "\n%Mì�´ í�‘기를 ë•…ì—� 꼿으며 혼ë�™ìˆ ì�˜ ì�¼ì¢…ì�¸ í�‘안법ì�„ 당신ì—�게 걸었습니다.\n주술ì�„ 걸ìž� ê°‘ìž�기 í�‘기ì—�서 ê²€ì�€ê¸°ë¥˜ê°€ 피어올ë�¼ 당신ì�˜\nì •ì‹ ì�„ 혼수ìƒ�태ì—� 빠뜨립니다.\n", ply_ptr); } diff --git a/src/magic4.c b/src/magic4.c index 0a1e5231..1287af06 100644 --- a/src/magic4.c +++ b/src/magic4.c @@ -11,7 +11,7 @@ #include "mextern.h" /**********************************************************************/ -/* detectinvis(ÀºµÐ°¨Áö¼ú) */ +/* detectinvis(ì�€ë‘”ê°�지술) */ /**********************************************************************/ /* This function allows players to cast the detect-invisible spell which */ @@ -33,12 +33,12 @@ int how; if(ply_ptr->mpcur < 10 && how == CAST) { print(fd, - "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SDINVI) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -60,7 +60,7 @@ int how; ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ print(fd, - "\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + "\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_DINVI].interval += 600L; } } @@ -68,13 +68,13 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ ply_ptr->lasttime[LT_DINVI].interval = 1200; if(how == CAST || how == SCROLL || how == WAND) { - print(fd,"\n´ç½ÅÀº ¹öµéÀÙÀ» µÎ´«¿¡ ºñºñ¸ç ÀºµÐ°¨Áö¼úÀÇ ÁÖ¹®À»\n¿Ü¿ó´Ï´Ù.\nµÎ´«¿¡ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸£¸ç ¼û¾îÀÖ´Â ÀÚµéÀ» º¼¼ö\nÀְԵǾú½À´Ï´Ù.\n"); + print(fd,"\n당신ì�€ 버들잎ì�„ ë‘�눈ì—� 비비며 ì�€ë‘”ê°�지술ì�˜ 주문ì�„\n외ì›�니다.\në‘�눈ì—� 푸른광안ì�´ 떠오르며 숨어있는 ìž�들ì�„ 볼수\n있게ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¹öµéÀÙÀ» µÎ´«¿¡ ºñºñ¸ç Àڽſ¡°Ô ÀºµÐ°¨Áö¼úÀÇ\nÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n ±×ÀÇ ´«¿¡¼­ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n", + "\n%Mì�´ 버들잎ì�„ ë‘�눈ì—� 비비며 ìž�ì‹ ì—�게 ì�€ë‘”ê°�지술ì�˜\n주문ì�„ 외웠습니다.\n ê·¸ì�˜ 눈ì—�서 푸른광안ì�´ 떠오릅니다.\n", ply_ptr); } else if(how == POTION) - print(fd, "\n.°©Àڱ⠵δ«¿¡ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸£¸ç ¼û¾îÀÖ´Â ÀÚµéÀ» º¼¼ö ÀÖ°Ô µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "\n.ê°‘ìž�기 ë‘�눈ì—� 푸른광안ì�´ 떠오르며 숨어있는 ìž�들ì�„ 볼수 있게 ë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); F_SET(ply_ptr, PDINVI); @@ -85,7 +85,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -94,7 +94,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -107,7 +107,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ 60*((ply_ptr->level+3)/4); ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_DINVI].interval += 600L; } } @@ -117,12 +117,12 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ F_SET(crt_ptr, PDINVI); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %MÀÇ ÀδçÇ÷À» ÂïÀ¸¸ç ÀºµÐ°¨Áö¼úÀ» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ´«¿¡¼­ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì�˜ ì�¸ë‹¹í˜ˆì�„ ì°�으며 ì�€ë‘”ê°�지술ì�„ 외ì›�니다.\nê·¸ì�˜ 눈ì—�서 푸른광안ì�´ 떠오릅니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ÀδçÇ÷À» ÂïÀ¸¸ç ÀºµÐ°¨Áö¼úÀ» ¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠵δ«¿¡ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸£¸ç ¼û¾îÀÖ´Â ÀÚµéÀ» º¼¼ö\nÀÖ°Ô µÇ¾ú½À´Ï´Ù.\n", + "\n%Mì�´ 당신ì�˜ ì�¸ë‹¹í˜ˆì�„ ì°�으며 ì�€ë‘”ê°�지술ì�„ 외웠습니다.\nê°‘ìž�기 ë‘�눈ì—� 푸른광안ì�´ 떠오르며 숨어있는 ìž�들ì�„ 볼수\n있게 ë�˜ì—ˆìŠµë‹ˆë‹¤.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ÀδçÇ÷À» ÂïÀ¸¸ç ÀºµÐ°¨Áö¼úÀ» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ´«¿¡¼­ Ǫ¸¥±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ ì�¸ë‹¹í˜ˆì�„ ì°�으며 ì�€ë‘”ê°�지술ì�„ 외ì›�니다.\nê·¸ì�˜ 눈ì—�서 푸른광안ì�´ 떠오릅니다.\n", ply_ptr, crt_ptr); return(1); } @@ -133,7 +133,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ } /**********************************************************************/ -/* detectmagic(ÁÖ¹®°¨Áö¼ú) */ +/* detectmagic(주문ê°�지술) */ /**********************************************************************/ /* This function allows players to cast the detect-magic spell which */ @@ -154,12 +154,12 @@ int how; t = time(0); if(ply_ptr->mpcur < 10 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SDMAGI) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -180,7 +180,7 @@ int how; 60*((ply_ptr->level+3)/4); ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_DMAGI].interval += 600L; } } @@ -188,13 +188,13 @@ int how; ply_ptr->lasttime[LT_DMAGI].interval = 1200; if(how == CAST || how == SCROLL || how == WAND) { - print(fd,"\n´ç½ÅÀº µÍÈ­ÀÙÀ» ´«¿¡ ºñºñ¸ç ÁÖ¹®°¨Áö¼úÀ» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ´«¿¡¼­ Àººû±¤¾ÈÀÌ ¶°¿À¸£¸ç ÁÖ¼ú¿¡ °üÇÑ ¾È¸ñÀÌ\n³Ð¾îÁ³½À´Ï´Ù.\n"); + print(fd,"\n당신ì�€ ë�´í™”잎ì�„ 눈ì—� 비비며 주문ê°�지술ì�„ 외ì›�니다.\n당신ì�˜ 눈ì—�서 ì�€ë¹›ê´‘안ì�´ 떠오르며 주술ì—� 관한 안목ì�´\n넓어졌습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ µÍÈ­ÀÙÀ» ´«¿¡ ºñºñ¸ç ÁÖ¹®°¨Áö¼úÀ» ¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠱×ÀÇ ´«¿¡¼­ Àººû±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n", + "\n%Mì�´ ë�´í™”잎ì�„ 눈ì—� 비비며 주문ê°�지술ì�„ 외웠습니다.\nê°‘ìž�기 ê·¸ì�˜ 눈ì—�서 ì�€ë¹›ê´‘안ì�´ 떠오릅니다.\n", ply_ptr); } else if(how == POTION) - print(fd, "\n°©Àڱ⠵δ«¿¡ Àººû±¤¾ÈÀÌ ¶°¿À¸£¸ç ÁÖ¼ú¿¡ °üÇÑ ¾È¸ñÀÌ \n³Ð¾îÁ³½À´Ï´Ù.\n"); + print(fd, "\nê°‘ìž�기 ë‘�눈ì—� ì�€ë¹›ê´‘안ì�´ 떠오르며 주술ì—� 관한 안목ì�´ \n넓어졌습니다.\n"); F_SET(ply_ptr, PDMAGI); @@ -205,7 +205,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -214,7 +214,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -227,7 +227,7 @@ int how; 60*((ply_ptr->level+3)/4); ply_ptr->mpcur -= 10; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_DMAGI].interval += 600L; } } @@ -237,12 +237,12 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ F_SET(crt_ptr, PDMAGI); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %MÀÇ ¹éȸÇ÷À» ÂïÀ¸¸ç ÁÖ¹®°¨Áö¼úÀÇ \nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠱×ÀÇ µÎ´«¿¡ Àººû±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì�˜ 백회혈ì�„ ì°�으며 주문ê°�지술ì�˜ \n주문ì�„ 외ì›�니다.\nê°‘ìž�기 ê·¸ì�˜ ë‘�눈ì—� ì�€ë¹›ê´‘안ì�´ 떠오릅니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ¹éȸÇ÷À» ÂïÀ¸¸ç ÁÖ¹®°¨Áö¼úÀÇ \nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠵δ«¿¡ Àººû±¤¾ÈÀÌ ¶°¿À¸£¸ç ÁÖ¼ú¿¡ °üÇÑ ¾È¸ñÀÌ ³Ð¾îÁ³½À´Ï´Ù.\n", + "\n%Mì�´ 당신ì�˜ 백회혈ì�„ ì°�으며 주문ê°�지술ì�˜ \n주문ì�„ 외ì›�니다.\nê°‘ìž�기 ë‘�눈ì—� ì�€ë¹›ê´‘안ì�´ 떠오르며 주술ì—� 관한 안목ì�´ 넓어졌습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ¹éȸÇ÷À» ÂïÀ¸¸ç ÁÖ¹®°¨Áö¼úÀÇ \nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠱×ÀÇ µÎ´«¿¡ Àººû±¤¾ÈÀÌ ¶°¿À¸¨´Ï´Ù.\n.", + "\n%Mì�´ %Mì�˜ 백회혈ì�„ ì°�으며 주문ê°�지술ì�˜ \n주문ì�„ 외ì›�니다.\nê°‘ìž�기 ê·¸ì�˜ ë‘�눈ì—� ì�€ë¹›ê´‘안ì�´ 떠오릅니다.\n.", ply_ptr, crt_ptr); return(1); } @@ -253,7 +253,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ } /**********************************************************************/ -/* teleport(°ø°£À̵¿¼ú) */ +/* teleport(공간ì�´ë�™ìˆ ) */ /**********************************************************************/ /* This function allows a player to teleport himself or another player */ @@ -276,12 +276,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 20 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, STELEP) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -297,11 +297,11 @@ int how; ply_ptr->mpcur -= 20; broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ °ø°£À̵¿¼úÀ» »ç¿ëÇÏ¿© ¾îµð·Ð°¡·Î »ç¶óÁ³½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 공간ì�´ë�™ìˆ ì�„ 사용하여 어디론가로 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", ply_ptr); if(how == CAST || how == SCROLL) - print(fd, "\n´ç½ÅÀº °ø°£À̵¿¼úÀ» »ç¿ëÇϱâÀ§ÇØ ¹ß±¸¸§ÁúÀ» ½ÃÀÛÇÕ´Ï´Ù.\n°ø°£À̵¿¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ ¸öÀÌ ÃѾ˰°ÀÌ »¡¶óÁö¸é¼­\n¾îµð·Ð°¡·Î ³¯¶ó°¬½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 공간ì�´ë�™ìˆ ì�„ 사용하기위해 발구름질ì�„ 시작합니다.\n공간ì�´ë�™ìˆ ì�˜ 주문ì�„ 외우ìž� 몸ì�´ ì´�알같ì�´ 빨ë�¼ì§€ë©´ì„œ\n어디론가로 ë‚ ë�¼ê°”습니다.\n"); else - print(fd, "\n°ø°£À̵¿¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ ¸öÀÌ ÃѾ˰°ÀÌ »¡¶óÁö¸é¼­\n¾îµð·Ð°¡·Î ³¯¶ó°¬½À´Ï´Ù.\n"); + print(fd, "\n공간ì�´ë�™ìˆ ì�˜ 주문ì�„ 외우ìž� 몸ì�´ ì´�알같ì�´ 빨ë�¼ì§€ë©´ì„œ\n어디론가로 ë‚ ë�¼ê°”습니다.\n"); do { rom_num = mrand(1, RMAX-1); @@ -325,7 +325,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ë°¡´ÉÇÕ´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용가능합니다.\n"); return(0); } @@ -334,12 +334,12 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } if(F_ISSET(crt_ptr, PRMAGI) && ply_ptr->level < 128 && ((((ply_ptr->level+3)/4)-((crt_ptr->level+3)/4))*10) < 50) { - print(fd, "\n%MÀ» °ø°£À̵¿ ½ÃŰ±â¿£ ´ç½ÅÀÇ ÁÖ¹®ÀÌ ³Ê¹« ¾àÇÕ´Ï´Ù.\n", crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ °ø°£À̵¿¼úÀ» »ç¿ëÇÏ¿© ´ç½ÅÀ» À̵¿ ½ÃŰ·Á ÇÕ´Ï´Ù.\n", ply_ptr); + print(fd, "\n%Mì�„ 공간ì�´ë�™ 시키기엔 당신ì�˜ 주문ì�´ 너무 약합니다.\n", crt_ptr); + print(crt_ptr->fd, "\n%Mì�´ 공간ì�´ë�™ìˆ ì�„ 사용하여 당신ì�„ ì�´ë�™ 시키려 합니다.\n", ply_ptr); if(how == CAST) ply_ptr->mpcur -= 20; return(0); @@ -349,12 +349,12 @@ int how; ply_ptr->mpcur -=20; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n°ø°£À̵¿¼ú ÁÖ¹®À» %M¿¡°Ô ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸öÀÌ ¾È°³¿¡ ÈÛ½ÎÀÌ¸ç ¸ð½ÀÀÌ »ç¶óÁ³½À´Ï´Ù.\n", crt_ptr); + print(fd, "\n공간ì�´ë�™ìˆ  주문ì�„ %Mì—�게 외ì›�니다.\nê·¸ì�˜ 몸ì�´ 안개ì—� 휩싸ì�´ë©° 모습ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô °ø°£À̵¿¼ú ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n´ç½ÅÀÇ ¸öÀÌ ¾È°³¿¡ ÈÛ½ÎÀÌ¸ç ¾îµð·Ð°¡·Î À̵¿µË´Ï´Ù.\n", + "\n%Mì�´ 당신ì—�게 공간ì�´ë�™ìˆ  주문ì�„ 외웠습니다.\n당신ì�˜ 몸ì�´ 안개ì—� 휩싸ì�´ë©° 어디론가로 ì�´ë�™ë�©ë‹ˆë‹¤.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô °ø°£À̵¿¼ú ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n±×ÀÇ ¸öÀÌ ¾È°³¿¡ ÈÛ½ÎÀÌ¸ç ¸ð½ÀÀÌ »ç¶óÁ³½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 공간ì�´ë�™ìˆ  주문ì�„ 외웠습니다.\nê·¸ì�˜ 몸ì�´ 안개ì—� 휩싸ì�´ë©° 모습ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", ply_ptr, crt_ptr); do { @@ -383,7 +383,7 @@ int how; } /**********************************************************************/ -/* enchant(ÁÖ¼ú) */ +/* enchant(주술) */ /**********************************************************************/ /* This function allows mages to enchant weapons at a cost of 25 magic */ @@ -403,22 +403,22 @@ int how; if(how == CAST && ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE) { - print(fd, "\nµµ¼ú»çµé¸¸ÀÌ ÁÖ¼úÀ» °É¼öÀÖ½À´Ï´Ù.\n"); + print(fd, "\në�„술사들만ì�´ 주술ì�„ 걸수있습니다.\n"); return(0); } if(ply_ptr->mpcur < 25 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SENCHA) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(cmnd->num < 3) { - print(fd, "\n¹«¾ù¿¡´Ù ÁÖ¼úÀ» °Ì´Ï´Ù?\n"); + print(fd, "\n무엇ì—�다 주술ì�„ ê²�니다?\n"); return(0); } @@ -426,19 +426,19 @@ int how; cmnd->str[2], cmnd->val[2]); if(!obj_ptr) { - print(fd, "\n´ç½Å ¼ÒÁöǰ¿¡ ±×·± ¹°°ÇÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신 소지품ì—� 그런 물건ì�´ 없습니다.\n"); return(0); } if(F_ISSET(obj_ptr, OENCHA)) { - print(fd, "\n¹ú½á ÁÖ¼úÀÌ °É·ÁÀÖ½À´Ï´Ù.\n"); + print(fd, "\n벌ì�¨ 주술ì�´ 걸려있습니다.\n"); return(1); } if(how == CAST) { if(!dec_daily(&ply_ptr->daily[DL_ENCHA]) && ply_ptr->class < CARETAKER) { - print(fd, "\n´ç½ÅÀº Å»ÁøÇؼ­ ´õ ÀÌ»ó ÁÖ¼úÀ» °É¼ö ¾ø½À´Ï´Ù.\nÁ» ½¬¾î¾ß°Ú´Âµ¥¿ä?\n"); + print(fd, "\n당신ì�€ 탈진해서 ë�” ì�´ìƒ� 주술ì�„ 걸수 없습니다.\n좀 쉬어야겠는ë�°ìš”?\n"); return(0); } ply_ptr->mpcur -= 25; @@ -467,8 +467,8 @@ int how; F_SET(obj_ptr, OENCHA); - print(fd, "\n%i¿¡´Ù°¡ ÁÖ¼úÀ» °ÉÀÚ °©Àڱ⠹àÀº ºûÀ» ³»´Ù°¡ »ç¶óÁ³½À´Ï´Ù.\n", obj_ptr); - broadcast_rom(fd, rom_ptr->rom_num, "%MÀÌ %1i¿¡´Ù°¡ ÁÖ¼úÀ» °É¾ú½À´Ï´Ù.", ply_ptr, + print(fd, "\n%iì—�다가 주술ì�„ 걸ìž� ê°‘ìž�기 ë°�ì�€ ë¹›ì�„ 내다가 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n", obj_ptr); + broadcast_rom(fd, rom_ptr->rom_num, "%Mì�´ %1iì—�다가 주술ì�„ 걸었습니다.", ply_ptr, obj_ptr); return(1); diff --git a/src/magic5.c b/src/magic5.c index 3b8e42ba..8373e697 100644 --- a/src/magic5.c +++ b/src/magic5.c @@ -30,18 +30,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 30 && how == CAST) { - print(fd, "\n´ç½ÅÀÌ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�´ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "\nºÒÁ¦ÀÚ¸¸ÀÌ ÀÌ ÁÖ¼úÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\n불제ìž�ë§Œì�´ ì�´ 주술ì�„ 사용할 수 있습니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRECAL) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } @@ -52,20 +52,20 @@ int how; ply_ptr->mpcur -= 30; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "±Íȯ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n"); + print(fd, "귀환 주문ì�„ 외웠습니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ %s Àڽſ¡°Ô ±Íȯ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n", + "\n%Mì�´ %s ìž�ì‹ ì—�게 귀환 주문ì�„ 외웠습니다.\n", ply_ptr, - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à"); + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀"); } else if(how == POTION) { - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ ¾îÁö·¯ÀÌ Èçµé¸³´Ï´Ù.\n"); + print(fd, "당신ì�˜ 모습ì�´ 어지러ì�´ í�”들립니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ »ç¶óÁ³½À´Ï´Ù.", ply_ptr); + "%Mì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.", ply_ptr); } if(load_rom(1001, &new_rom) < 0) { - print(fd, "ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "주문ì�´ 실패했습니다.\n"); return(0); } @@ -79,7 +79,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -88,7 +88,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -96,16 +96,16 @@ int how; ply_ptr->mpcur -=30; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "±Íȯ ÁÖ¹®À» %M¿¡°Ô ¿Ü¿ü½À´Ï´Ù.\n", crt_ptr); + print(fd, "귀환 주문ì�„ %Mì—�게 외웠습니다.\n", crt_ptr); print(crt_ptr->fd, - "%MÀÌ ´ç½Å¿¡°Ô ±Íȯ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n", + "%Mì�´ 당신ì—�게 귀환 주문ì�„ 외웠습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "%MÀÌ %M¿¡°Ô ±Íȯ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.", + "%Mì�´ %Mì—�게 귀환 주문ì�„ 외웠습니다.", ply_ptr, crt_ptr); if(load_rom(1, &new_rom) < 0) { - print(fd, "ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "주문ì�´ 실패했습니다.\n"); return(0); } @@ -141,36 +141,36 @@ int how; if(ply_ptr->class == INVINCIBLE || ply_ptr->class == CARETAKER) { if(ply_ptr->mpcur < 100 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } } else { if(ply_ptr->mpcur < 50 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } } if(!S_ISSET(ply_ptr, SSUMMO) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(mrand(1,100) < 51) { - print(fd, "\n¼Òȯ¿¡ ½ÇÆÐ¸¦ ÇÏ¿´½À´Ï´Ù.\n"); + print(fd, "\n소환ì—� 실패를 하였습니다.\n"); ply_ptr->mpcur -= 50; return(0); } if(cmnd->num == 2) { - print(fd, "\nÀÚ½ÅÀ» ¼ÒȯÇÏ´Ù´¢?.\n"); + print(fd, "\nìž�ì‹ ì�„ 소환하다뇨?.\n"); return(0); } else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -179,7 +179,7 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || F_ISSET(crt_ptr, PDMINV)) { print(fd, - "\n±×·± »ç¶÷À» ¸ø ã½À´Ï´Ù.\n"); + "\n그런 사람ì�„ 못 찾습니다.\n"); return(0); } @@ -194,40 +194,40 @@ int how; (F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || (F_ISSET(rom_ptr, RTHREE) && n > 2)) { - print(fd, "ÁÖ¹®ÀÌ °øÁßÀ¸·Î »¡·Áµì´Ï´Ù.\n"); + print(fd, "주문ì�´ 공중으로 빨려듭니다.\n"); return(0); } if(F_ISSET(rom_ptr, RFAMIL) && !F_ISSET(crt_ptr, PFAMIL)) { - print(fd, "±×»ç¶÷Àº ÆÐ°Å¸® °¡ÀÔÀÚ°¡ ¾Æ´Õ´Ï´Ù."); + print(fd, "그사람ì�€ 패거리 가입ìž�ê°€ 아닙니다."); return(0); } if(F_ISSET(rom_ptr, RONFML) && (crt_ptr->daily[DL_EXPND].max != rom_ptr->special)) { - print(fd, "±×»ç¶÷Àº À̰÷¿¡ ¿Ã¼ö ¾ø½À´Ï´Ù."); + print(fd, "그사람ì�€ ì�´ê³³ì—� 올수 없습니다."); return(0); } if(rom_ptr->lolevel > crt_ptr->level || (crt_ptr->level > rom_ptr->hilevel && rom_ptr->hilevel) || F_ISSET(crt_ptr, PNOSUM)) { - print(fd, "\nÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "\n주문ì�´ 실패했습니다.\n"); if(F_ISSET(crt_ptr,PNOSUM)) - print(fd,"»ó´ë°¡ ¼Òȯ °ÅºÎ ÁßÀÔ´Ï´Ù."); + print(fd,"ìƒ�대가 소환 ê±°ë¶€ 중입니다."); return(0); } if(F_ISSET(crt_ptr->parent_rom,RNOLEA)) { - print(fd, "\n¼Òȯ ÁÖ¹®ÀÌ %MÀ» ãÁö ¸øÇÕ´Ï´Ù.\n",crt_ptr); + print(fd, "\n소환 주문ì�´ %Mì�„ 찾지 못합니다.\n",crt_ptr); return(0); } if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %MÀ» ¼ÒȯÇϱâ À§ÇØ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nÁÖ¹®À» ¸¶Ä¡ÀÚ Â£Àº ¾È°³°¡ ³¢´õ´Ï °©Àڱ⠻ç¶óÁö¸é¼­ \n±×°¡ ³ªÅ¸³µ½À´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì�„ 소환하기 위해 주문ì�„ 외ì›�니다.\n주문ì�„ 마치ìž� ì§™ì�€ 안개가 ë�¼ë�”니 ê°‘ìž�기 사ë�¼ì§€ë©´ì„œ \n그가 나타났습니다.\n", crt_ptr); print(crt_ptr->fd, - "\n´ç½ÅÁÖÀ§¿¡ £Àº ¾È°³°¡ ³¢´õ´Ï ¾Ë ¼ö ¾ø´Â Èû¿¡ À̲ø·Á ¾îµð·Ð°¡ ³¯¶ó°©´Ï´Ù.\n¾È°³°¡ °ÈÈ÷ÀÚ %MÀÌ ´ç½Å¾Õ¿¡ ¼­ ÀÖ½À´Ï´Ù.\n", + "\n당신주위ì—� ì§™ì�€ 안개가 ë�¼ë�”니 알 수 없는 힘ì—� ì�´ë�Œë ¤ 어디론가 ë‚ ë�¼ê°‘니다.\n안개가 걷히ìž� %Mì�´ 당신앞ì—� 서 있습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ ¼ÒȯÁÖ¹®À» ¿Ü¿ìÀÚ Â£Àº ¾È°³°¡ ±ò¸®´õ´Ï °©ÀÚ±â %MÀÌ ³ªÅ¸³µ½À´Ï´Ù.\n", + "\n%Mì�´ 소환주문ì�„ 외우ìž� ì§™ì�€ 안개가 깔리ë�”니 ê°‘ìž�기 %Mì�´ 나타났습니다.\n", ply_ptr, crt_ptr); del_ply_rom(crt_ptr, crt_ptr->parent_rom); @@ -242,7 +242,7 @@ int how; } /**********************************************************************/ -/* heal(¿ÏÄ¡¼ú) */ +/* heal(완치술) */ /**********************************************************************/ /* This function will cause the heal spell to be cast on a player or */ @@ -262,18 +262,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 20 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "\nºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ÀÌ ÀÌ ÁÖ¼úÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\n불제ìž�와 무사만ì�´ ì�´ 주술ì�„ 사용할 수 있습니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SFHEAL) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } @@ -282,7 +282,7 @@ int how; if(!dec_daily(&ply_ptr->daily[DL_FHEAL]) && how == CAST && ply_ptr->class < CARETAKER) { - print(fd, "\n´ç½ÅÀÇ ¸öÀÌ ³Ê¹« ÇǰïÇØ ÀÌ ÁÖ¼úÀ» ´õ ÀÌ»ó ÆîÄ¥ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 몸ì�´ 너무 피곤해 ì�´ 주술ì�„ ë�” ì�´ìƒ� 펼칠 수 없습니다.\n"); return(0); } @@ -292,14 +292,14 @@ int how; ply_ptr->mpcur -= 20; if(how == CAST || how == SCROLL) { - print(fd, "\n´ç½ÅÀº õºÎ°øÀ» ²ø¾î¿Ã¸®¸ç ¿ÏÄ¡ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nõ»óÀÇ ±â¿îµéÀÌ ´ç½ÅÀÇ ¸öÀ¸·Î ¸ðÀ̸鼭 ü·ÂÀ» ÃÖ»óÀ¸·Î \n¿Ã·Á ÁÝ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 천부공ì�„ ë�Œì–´ì˜¬ë¦¬ë©° 완치 주문ì�„ 외ì›�니다.\n천ìƒ�ì�˜ 기운들ì�´ 당신ì�˜ 몸으로 모ì�´ë©´ì„œ ì²´ë ¥ì�„ 최ìƒ�으로 \n올려 ì¤�니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÃµºÎ°ø ÀÚ¼¼¸¦ ÃëÇϸ鼭 ¿ÏÄ¡ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\nõ»óÀÇ ±â¿îµéÀÌ ±×¿¡°Ô·Î ¸ðÀÌ´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "\n%Mì�´ 천부공 ìž�세를 취하면서 완치주문ì�„ 외웠습니다.\n천ìƒ�ì�˜ 기운들ì�´ ê·¸ì—�게로 모ì�´ëŠ” 것ì�´ ëŠ�껴집니다.\n", ply_ptr); return(1); } else { - print(fd, "\n°©Àڱ⠸öÀÌ ÆìÁö¸é¼­ ¸öÀÇ Ã¼·ÂÀÌ ÃÖ°íÀÇ »óÅ·Π¿Ã¶ó°©´Ï´Ù.\n\"À̾ß~~¾å.. ÈûÀÌ ³ÑÄ£´Ù.\"\n"); + print(fd, "\nê°‘ìž�기 몸ì�´ 펴지면서 몸ì�˜ ì²´ë ¥ì�´ 최고ì�˜ ìƒ�태로 올ë�¼ê°‘니다.\n\"ì�´ì•¼~~ì–�.. 힘ì�´ 넘친다.\"\n"); return(1); } } @@ -308,7 +308,7 @@ int how; else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ë°¡´ÉÇÕ´Ï´Ù.\n"); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용가능합니다.\n"); return(0); } @@ -322,14 +322,14 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 습니다.\n"); return(0); } } if(!dec_daily(&ply_ptr->daily[DL_FHEAL]) && how == CAST && ply_ptr->class < CARETAKER && ply_ptr->type != MONSTER) { - print(fd, "\n´ç½ÅÀÇ ¸öÀÌ ³Ê¹« ÇǰïÇØ ÀÌ ÁÖ¼úÀ» ´õ ÀÌ»ó ÆîÄ¥ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 몸ì�´ 너무 피곤해 ì�´ 주술ì�„ ë�” ì�´ìƒ� 펼칠 수 없습니다.\n"); return(0); } @@ -338,11 +338,11 @@ int how; if(how == CAST) ply_ptr->mpcur -= 20; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº %M¿¡°Ô ¿ÏÄ¡ºÎÀûÀ» ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠱×ÀÇ ¸ö¿¡¼­ ½ÉÇÑ Áøµ¿ÀÌ ÀϾ¸é¼­ ü·ÂÀÌ \nȸº¹µÇ´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.", crt_ptr); - print(crt_ptr->fd, "%MÀÌ ´ç½Å¿¡°Ô ¿ÏÄ¡ºÎÀûÀ» ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠴ç½ÅÀÇ ¸ö¿¡¼­ ½ÉÇÑ Áøµ¿ÀÌ ÀϾ¸é¼­ ü·ÂÀÌ \nȸº¹µÇ´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.", + print(fd, "당신ì�€ %Mì—�게 완치부ì �ì�„ 먹ì�´ë©° 주문ì�„ 외ì›�니다.\nê°‘ìž�기 ê·¸ì�˜ 몸ì—�서 심한 ì§„ë�™ì�´ ì�¼ì–´ë‚˜ë©´ì„œ ì²´ë ¥ì�´ \n회복ë�˜ëŠ” 것ì�´ ëŠ�껴집니다.", crt_ptr); + print(crt_ptr->fd, "%Mì�´ 당신ì—�게 완치부ì �ì�„ 먹ì�´ë©° 주문ì�„ 외ì›�니다.\nê°‘ìž�기 당신ì�˜ 몸ì—�서 심한 ì§„ë�™ì�´ ì�¼ì–´ë‚˜ë©´ì„œ ì²´ë ¥ì�´ \n회복ë�˜ëŠ” 것ì�´ ëŠ�껴집니다.", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "%MÀÌ %M¿¡°Ô ¿ÏÄ¡ºÎÀûÀ» ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸öÀÌ ½ÉÇÑ Áøµ¿ÀÌ ÀÏÀ¸Å°´Ù°¡ ü·ÂÀÌ È¸º¹¾ú´ÂÁö\nÆÞ½ÆÞ½ ¶Ù¾î ´Ù´Õ´Ï´Ù.\n", + "%Mì�´ %Mì—�게 완치부ì �ì�„ 먹ì�´ë©° 주문ì�„ 외ì›�니다.\nê·¸ì�˜ 몸ì�´ 심한 ì§„ë�™ì�´ ì�¼ìœ¼í‚¤ë‹¤ê°€ ì²´ë ¥ì�´ 회복었는지\n펄ì©�펄ì©� ë›°ì–´ 다닙니다.\n", ply_ptr, crt_ptr); return(1); } @@ -353,7 +353,7 @@ int how; } /**********************************************************************/ -/* track(ÃßÀû) */ +/* track(ì¶”ì �) */ /**********************************************************************/ /* This function allows rangers to cast the track spell which takes them */ @@ -373,29 +373,29 @@ int how; if(ply_ptr->class != RANGER && ply_ptr->class < INVINCIBLE && how==CAST) { - print(fd, "\nÆ÷Á¹¸¸ÀÌ ÀÌ ÁÖ¼úÀ» »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\ní�¬ì¡¸ë§Œì�´ ì�´ 주술ì�„ 사용할 수 있습니다.\n"); return(0); } if(ply_ptr->mpcur < 13 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, STRACK) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(cmnd->num == 2) { - print(fd, "\n´ç½Å ÀÚ½ÅÀ» ÃßÀûÇÑ´Ù°í¿ä?.\n"); + print(fd, "\n당신 ìž�ì‹ ì�„ ì¶”ì �한다고요?.\n"); return(0); } else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -404,17 +404,17 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || F_ISSET(crt_ptr, PDMINV)) { print(fd, - "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } if(crt_ptr->class > CARETAKER) { - print(fd, "\n±× »ç¶÷ÀÌ ¾îµð¿¡ ÀÖ´ÂÁö ÃßÀûÇÒ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 사람ì�´ ì–´ë””ì—� 있는지 ì¶”ì �할수 없습니다.\n"); return(0); } /* if(F_ISSET(crt_ptr, PMARRI)) { - print(fd, "\n±× »ç¶÷ÀÌ ¾îµð¿¡ ÀÖ´ÂÁö ÃßÀûÇÒ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 사람ì�´ ì–´ë””ì—� 있는지 ì¶”ì �í•  수 없습니다.\n"); return(0); } */ @@ -424,28 +424,28 @@ int how; (F_ISSET(crt_ptr->parent_rom, RONEPL) && n > 0) || (F_ISSET(crt_ptr->parent_rom, RTWOPL) && n > 1) || (F_ISSET(crt_ptr->parent_rom, RTHREE) && n > 2)) { - print(fd, "\nÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "\n주문ì�´ 실패했습니다.\n"); return(0); } if(F_ISSET(crt_ptr->parent_rom, RFAMIL) && !F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "±× »ç¶÷ÀÌ ÀÖ´Â °÷À¸·Î °¥ ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사람ì�´ 있는 곳으로 ê°ˆ 수가 없습니다."); return(0); } if(F_ISSET(crt_ptr->parent_rom, RONFML) && (ply_ptr->daily[DL_EXPND].max != crt_ptr->parent_rom->special)) { - print(fd, "±× »ç¶÷ÀÌ ÀÖ´Â °÷À¸·Î °¥ ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd, "ê·¸ 사람ì�´ 있는 곳으로 ê°ˆ 수가 없습니다."); return(0); } if(crt_ptr->parent_rom->lolevel > ply_ptr->level || (ply_ptr->level > crt_ptr->parent_rom->hilevel && crt_ptr->parent_rom->hilevel)) { - print(fd, "\nÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "\n주문ì�´ 실패했습니다.\n"); return(0); } if(!dec_daily(&ply_ptr->daily[DL_TRACK]) && how == CAST && ply_ptr->class < CARETAKER) { - print(fd, "\n´ç½ÅÀÇ ¸öÀÌ ³Ê¹« ÇǰïÇØ ÀÌ ÁÖ¼úÀ» ´õ ÀÌ»ó ÆîÄ¥ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 몸ì�´ 너무 피곤해 ì�´ 주술ì�„ ë�” ì�´ìƒ� 펼칠 수 없습니다.\n"); return(0); } @@ -453,11 +453,11 @@ int how; ply_ptr->mpcur -= 13; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n!!´ç½ÅÀº %MÀÇ ÈçÀûÀ» ã¾Æ³»´Âµ¥ ¼º°øÇß½À´Ï´Ù.!!\n±×¸¦ ÃßÀûÇÏ¿© ´Þ·Á°©´Ï´Ù.\n", crt_ptr); + print(fd, "\n!!당신ì�€ %Mì�˜ í�”ì �ì�„ 찾아내는ë�° 성공했습니다.!!\n그를 ì¶”ì �하여 달려갑니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ÈçÀûÀ» ã¾Æ ³»´Âµ¥ ¼º°øÇÏ¿© ´ç½ÅÀ» \nã¾Æ ¿Ô½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 당신ì�˜ í�”ì �ì�„ 찾아 내는ë�° 성공하여 당신ì�„ \n찾아 왔습니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ÈçÀûÀ» ã¾Æ³»´Âµ¥ ¼º°øÇÏ¿© \nÃßÀûÀ» ½ÃÀÛÇß½À´Ï´Ù.\n", ply_ptr, crt_ptr); + "\n%Mì�´ %Mì�˜ í�”ì �ì�„ 찾아내는ë�° 성공하여 \nì¶”ì �ì�„ 시작했습니다.\n", ply_ptr, crt_ptr); del_ply_rom(ply_ptr, rom_ptr); add_ply_rom(ply_ptr, crt_ptr->parent_rom); @@ -471,7 +471,7 @@ int how; } /**********************************************************************/ -/* levitate(ºÎ¾ç¼ú) */ +/* levitate(부양술) */ /**********************************************************************/ /* This function allows players to cast the levitate spell, thus allowing */ @@ -490,12 +490,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 10 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SLEVIT) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -508,19 +508,19 @@ int how; ply_ptr->lasttime[LT_LEVIT].ltime = time(0); F_SET(ply_ptr, PLEVIT); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ±â°øÀ» ²ø¾î ¸ðÀ¸¸ç ºÎ¾ç¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ\n¸öÀÌ »ì¦ ¶°¿À¸¨´Ï´Ù.", ply_ptr); + "\n%Mì�´ 기공ì�„ ë�Œì–´ 모으며 부양술ì�˜ 주문ì�„ 외우ìž�\n몸ì�´ ì‚´ì§� 떠오릅니다.", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº ±â°øÀ» ¸ðÀ¸¸ç ºÎ¾ç¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ ¸öÀÌ\n»ì¦ ¶°¿À¸¨´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 기공ì�„ 모으며 부양술ì�˜ 주문ì�„ 외우ìž� 몸ì�´\nì‚´ì§� 떠오릅니다.\n"); ply_ptr->mpcur -= 10; ply_ptr->lasttime[LT_LEVIT].interval = 2400L + bonus[ply_ptr->intelligence]*600L; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_LEVIT].interval += 800L; } } else { - print(fd, "\n´ç½ÅÀÇ ¸öÀÌ °øÁßÀ¸·Î »ì¦ ¶°¿À¸¨´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 몸ì�´ 공중으로 ì‚´ì§� 떠오릅니다.\n"); ply_ptr->lasttime[LT_LEVIT].interval = 1200L; } return(1); @@ -528,7 +528,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -536,29 +536,29 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PLEVIT); crt_ptr->lasttime[LT_LEVIT].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ºÎ¾çºÎÀûÀ» ºÙÈ÷¸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nÁÖ¹®À» ¿Ü¿ìÀÚ ±×ÀÇ ¸öÀÌ »ì¦ ¶°¿À¸¨´Ï´Ù.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ºÎ¾çºÎÀûÀ» ºÙÈ÷¸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ¸öÀÌ »ì¦ ¶°¿À¸£±â ½ÃÀÛ ÇÕ´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ %Mì—�게 부양부ì �ì�„ 붙히며 주문ì�„ 외ì›�니다.\n주문ì�„ 외우ìž� ê·¸ì�˜ 몸ì�´ ì‚´ì§� 떠오릅니다.\n", ply_ptr, crt_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 부양부ì �ì�„ 붙히며 주문ì�„ 외ì›�니다.\n당신ì�˜ 몸ì�´ ì‚´ì§� 떠오르기 시작 합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %M¿¡°Ô ºÎ¾ç¼úÀ» °É ¼ö ¾ø½À´Ï´Ù.\n",crt_ptr); + print(fd, "\n당신ì�€ %Mì—�게 부양술ì�„ 걸 수 없습니다.\n",crt_ptr); ply_ptr->mpcur -= 10; crt_ptr->lasttime[LT_LEVIT].interval = 2400L + bonus[ply_ptr->intelligence]*600L; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_LEVIT].interval += 800L; } } else { - print(fd, "%MÀÌ ¶°´Ù´Ï±â ½ÃÀÛÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "%Mì�´ 떠다니기 시작합니다.\n", crt_ptr); crt_ptr->lasttime[LT_LEVIT].interval = 1200L; } @@ -568,7 +568,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ } /************************************************************************/ -/* resist_fire(¹æ¿­Áø) */ +/* resist_fire(ë°©ì—´ì§„) */ /************************************************************************/ /* This function allows players to cast the resist fire spell. It will */ @@ -588,12 +588,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRFIRE) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -606,19 +606,19 @@ int how; ply_ptr->lasttime[LT_RFIRE].ltime = time(0); F_SET(ply_ptr, PRFIRE); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¹æ¿­ÁøÀÇ ±ÝÆÐ¸¦ µé¾î¿Ã¸®¸é¼­ ÁÖ¹®À» ¿Ü¿ó½À´Ï´Ù.\n¿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ±×ÀÇ ÁÖÀ§¿¡ ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ ë°©ì—´ì§„ì�˜ 금패를 들어올리면서 주문ì�„ 외ì›�습니다.\n오행중 수ì�˜ 수호령들ì�´ 나타나 ê·¸ì�˜ 주위ì—� ì§„ì�„ 형성합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº ¹æ¿­ÁøÀÇ ±ÝÆÐ¸¦ µé¾î¿Ã¸®¸é¼­ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ´ç½ÅÁÖÀ§¿¡¼­ ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ë°©ì—´ì§„ì�˜ 금패를 들어올리면서 주문ì�„ 외ì›�니다.\n오행중 수ì�˜ 수호령들ì�´ 나타나 당신주위ì—�서 ì§„ì�„ 형성합니다.\n"); ply_ptr->mpcur -= 12; ply_ptr->lasttime[LT_RFIRE].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_RFIRE].interval += 800L; } } else { - print(fd, "\n°©Àڱ⠿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ´ç½ÅÁÖÀ§¿¡ \nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "\nê°‘ìž�기 오행중 수ì�˜ 수호령들ì�´ 나타나 당신주위ì—� \nì§„ì�„ 형성합니다.\n"); ply_ptr->lasttime[LT_RFIRE].interval = 1200L; } return(1); @@ -626,7 +626,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -634,31 +634,31 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PRFIRE); crt_ptr->lasttime[LT_RFIRE].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "%MÀÌ %M¿¡°Ô ¹æ¿­ºÎÀûÀ» ºÙÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ±×ÀÇ ÁÖÀ§¿¡ ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", + "%Mì�´ %Mì—�게 ë°©ì—´ë¶€ì �ì�„ ë¶™ì�´ë©° 주문ì�„ 외ì›�니다.\n오행중 수ì�˜ 수호령들ì�´ 나타나 ê·¸ì�˜ 주위ì—� ì§„ì�„ 형성합니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ¹æ¿­ºÎÀûÀ» ºÙÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°©Àڱ⠿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ´ç½ÅÁÖÀ§¿¡ \nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 ë°©ì—´ë¶€ì �ì�„ ë¶™ì�´ë©° 주문ì�„ 외ì›�니다.\nê°‘ìž�기 오행중 수ì�˜ 수호령들ì�´ 나타나 당신주위ì—� \nì§„ì�„ 형성합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "´ç½ÅÀº %M¿¡°Ô ¹æ¿­ºÎÀûÀ» ºÙÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª ±×ÀÇ ÁÖÀ§¿¡ ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", + print(fd, "당신ì�€ %Mì—�게 ë°©ì—´ë¶€ì �ì�„ ë¶™ì�´ë©° 주문ì�„ 외ì›�니다.\n오행중 수ì�˜ 수호령들ì�´ 나타나 ê·¸ì�˜ 주위ì—� ì§„ì�„ 형성합니다.\n", crt_ptr); ply_ptr->mpcur -= 12; crt_ptr->lasttime[LT_RFIRE].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀ̹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_RFIRE].interval += 800L; } } else { - print(fd, "\n¿ÀÇàÁß ¼öÀÇ ¼öÈ£·ÉµéÀÌ ³ªÅ¸³ª %MÀÇ ÁÖÀ§¿¡ \nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "\n오행중 수ì�˜ 수호령들ì�´ 나타나 %Mì�˜ 주위ì—� \nì§„ì�„ 형성합니다.\n", crt_ptr); crt_ptr->lasttime[LT_RFIRE].interval = 1200L; } @@ -669,7 +669,7 @@ int how; /************************************************************************/ -/* fly(ºñ»ó¼ú) */ +/* fly(비ìƒ�술) */ /************************************************************************/ /* This function allows players to cast the fly spell. It will */ @@ -689,12 +689,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 15 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SFLYSP) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¼úÀ» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주술ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -707,19 +707,19 @@ int how; ply_ptr->lasttime[LT_FLYSP].ltime = time(0); F_SET(ply_ptr, PFLYSP); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ºñ»ó¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ ¸öÀÌ ¶°¿À¸£¸ç \nÇϴ÷Π³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 비ìƒ�술ì�˜ 주문ì�„ 외우ìž� 몸ì�´ 떠오르며 \n하늘로 날기 시작합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº ºñ»ó¼úÀÇ ÁÖ¹®À» ¿Ü¿ìÀÚ ¸öÀÌ °ø±âó·³ °¡º­¿öÁö¸ç\nÇϴ÷Π¶°¿Ã¶ó ³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 비ìƒ�술ì�˜ 주문ì�„ 외우ìž� 몸ì�´ 공기처럼 가벼워지며\n하늘로 떠올ë�¼ 날기 시작합니다.\n"); ply_ptr->mpcur -= 15; ply_ptr->lasttime[LT_FLYSP].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_FLYSP].interval += 600L; } } else { - print(fd, "´ç½ÅÀÇ ¸öÀÌ Çϴ÷Π¶°¿À¸£¸ç ³¯¼ö ÀÖ½À´Ï´Ù!\n"); + print(fd, "당신ì�˜ 몸ì�´ 하늘로 떠오르며 날수 있습니다!\n"); ply_ptr->lasttime[LT_FLYSP].interval = 1200L; } return(1); @@ -727,7 +727,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -735,31 +735,31 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PFLYSP); crt_ptr->lasttime[LT_FLYSP].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ºñ»óºÎ¸¦ ºÙÈ÷¸ç ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n±×ÀÇ ¸öÀÌ Çϴ÷Π¶°¿À¸£¸ç ³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 비ìƒ�부를 붙히며 주문ì�„ 외웠습니다.\nê·¸ì�˜ 몸ì�´ 하늘로 떠오르며 날기 시작합니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ºñ»óºÎ¸¦ ºÙÈ÷¸ç ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠴ç½ÅÀÇ ¸öÀÌ °ø±âó·³ °¡º­¿öÁö¸ç Çϴ÷Π¶°¿Ã¶ó\n³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 비ìƒ�부를 붙히며 주문ì�„ 외웠습니다.\nê°‘ìž�기 당신ì�˜ 몸ì�´ 공기처럼 가벼워지며 하늘로 떠올ë�¼\n날기 시작합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %M¿¡°Ô ºñ»óºÎ¸¦ ºÙÈ÷¸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ¸öÀÌ Çϴ÷Π¶°¿À¸£¸ç ³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n", + print(fd, "\n당신ì�€ %Mì—�게 비ìƒ�부를 붙히며 주문ì�„ 외ì›�니다.\nê·¸ì�˜ 몸ì�´ 하늘로 떠오르며 날기 시작합니다.\n", crt_ptr); ply_ptr->mpcur -= 15; crt_ptr->lasttime[LT_FLYSP].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_FLYSP].interval += 600L; } } else { - print(fd, "%MÀÇ ¸öÀÌ Çϴ÷Π¶°¿À¸£¸ç ³¯±â ½ÃÀÛÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "%Mì�˜ 몸ì�´ 하늘로 떠오르며 날기 시작합니다.\n", crt_ptr); crt_ptr->lasttime[LT_FLYSP].interval = 1200L; } diff --git a/src/magic6.c b/src/magic6.c index 192aff9d..ecde8358 100644 --- a/src/magic6.c +++ b/src/magic6.c @@ -11,7 +11,7 @@ #include "mextern.h" /************************************************************************/ -/* resist_magic(º¸¸¶Áø) */ +/* resist_magic(보마진) */ /************************************************************************/ /* This function allows players to cast the resist-magic spell. It */ @@ -30,12 +30,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRMAGI) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -48,19 +48,19 @@ int how; ply_ptr->lasttime[LT_RMAGI].ltime = time(0); F_SET(ply_ptr, PRMAGI); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ Çã°ø¿¡ º¸¸¶ºÎÀ» ±×¸®¸ç ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠶¥¼Ó¿¡¼­ ¿ÀÇàÁß ±ÝÀÇ Á¤·ÉµéÀÌ ¿Ã¶ó¿Í \nº¸¸¶ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", ply_ptr); + "%Mì�´ 허공ì—� 보마부ì�„ 그리며 주문ì�„ 외웠습니다.\nê°‘ìž�기 ë•…ì†�ì—�서 오행중 금ì�˜ 정령들ì�´ 올ë�¼ì™€ \n보마진ì�„ 형성합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "´ç½ÅÀº Çã°ø¿¡ º¸¸¶ºÎ¸¦ ±×¸®¸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¶¥¼Ó¿¡¼­ ¿ÀÇàÁß ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í º¸¸¶ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "당신ì�€ 허공ì—� 보마부를 그리며 주문ì�„ 외ì›�니다.\në•…ì†�ì—�서 오행중 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ 보마진ì�„ 형성합니다.\n"); ply_ptr->mpcur -= 12; ply_ptr->lasttime[LT_RMAGI].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_RMAGI].interval += 800L; } } else { - print(fd, "\n°©Àڱ⠶¥¼Ó¿¡¼­ ¿ÀÇàÁß ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í \nº¸¸¶ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "\nê°‘ìž�기 ë•…ì†�ì—�서 오행중 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ \n보마진ì�„ 형성합니다.\n"); ply_ptr->lasttime[LT_RMAGI].interval = 1200L; } return(1); @@ -68,7 +68,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº ¾àº´Àº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ 약병ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -76,31 +76,31 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PRMAGI); crt_ptr->lasttime[LT_RMAGI].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "%MÀÌ %MÀÇ ¸ö¿¡ º¸¸¶ºÎ¸¦ ±×¸®¸ç ÁÖ¹®À»\n¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠶¥¼Ó¿¡¼­ ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í º¸¸¶ÁøÀ» \nÇü¼ºÇÕ´Ï´Ù.\n", + "%Mì�´ %Mì�˜ 몸ì—� 보마부를 그리며 주문ì�„\n외웠습니다.\nê°‘ìž�기 ë•…ì†�ì—�서 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ 보마진ì�„ \n형성합니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÇ ¸ö¿¡ º¸¸¶ºÎ¸¦ ±×¸®¸ç ÁÖ¹®À»\n¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠶¥¼Ó¿¡¼­ ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í º¸¸¶ÁøÀ» \nÇü¼ºÇÕ´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì�˜ 몸ì—� 보마부를 그리며 주문ì�„\n외웠습니다.\nê°‘ìž�기 ë•…ì†�ì—�서 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ 보마진ì�„ \n형성합니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %MÀÇ ¸ö¿¡ º¸¸¶ºÎ¸¦ ±×¸®¸ç ÁÖ¹®À»\n¿Ü¿ü½À´Ï´Ù.\n¶¥¼Ó¿¡¼­ ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í º¸¸¶ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", + print(fd, "\n당신ì�€ %Mì�˜ 몸ì—� 보마부를 그리며 주문ì�„\n외웠습니다.\në•…ì†�ì—�서 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ 보마진ì�„ 형성합니다.\n", crt_ptr); ply_ptr->mpcur -= 12; crt_ptr->lasttime[LT_RMAGI].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_RMAGI].interval += 800L; } } else { - print(fd, "\n¶¥¼Ó¿¡¼­ ±ÝÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í %MÀÇ ÁÖÀ§¿¡ \nº¸¸¶ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", + print(fd, "\në•…ì†�ì—�서 금ì�˜ 수호령들ì�´ 올ë�¼ì™€ %Mì�˜ 주위ì—� \n보마진ì�„ 형성합니다.\n", crt_ptr); crt_ptr->lasttime[LT_RMAGI].interval = 1200L; } @@ -111,7 +111,7 @@ if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ } /************************************************************************/ -/* know_alignment(¼±¾Ç°¨Áö¼ú) */ +/* know_alignment(ì„ ì•…ê°�지술) */ /************************************************************************/ /* This spell allows the caster to determine what alignment another */ @@ -130,12 +130,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 6 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SKNOWA) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } @@ -143,19 +143,19 @@ int how; ply_ptr->lasttime[LT_KNOWA].ltime = time(0); F_SET(ply_ptr, PKNOWA); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¼±¾Ç°¨Áö ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.", ply_ptr); + "\n%Mì�´ ì„ ì•…ê°�ì§€ 주문ì�„ 외ì›�니다.", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº ¼±¾ÇÀ» °¨ÁöÇÒ ¼ö ÀÖ´Â ½Äº°·ÂÀÌ ³ô¾ÆÁ³½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì„ ì•…ì�„ ê°�지할 수 있는 ì‹�별력ì�´ 높아졌습니다.\n"); ply_ptr->mpcur -= 6; ply_ptr->lasttime[LT_KNOWA].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_KNOWA].interval += 800L; } } else { - print(fd, "\n´ç½ÅÀº ¼±¾ÇÀ» °¨ÁöÇÒ ¼ö ÀÖ´Â ½Äº°·ÂÀÌ ³ô¾ÆÁ³½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì„ ì•…ì�„ ê°�지할 수 있는 ì‹�별력ì�´ 높아졌습니다.\n"); ply_ptr->lasttime[LT_KNOWA].interval = 1200L; } return(1); @@ -163,7 +163,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -171,32 +171,32 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PKNOWA); crt_ptr->lasttime[LT_KNOWA].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¼±¾Ç°¨Áö ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â ¼±¾ÇÀ» °¨ÁöÇÒ ¼ö ÀÖ´Â ½Äº°·ÂÀÌ ³ô¾ÆÁ³½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 ì„ ì•…ê°�ì§€ 주문ì�„ 외ì›�니다.\n그는 ì„ ì•…ì�„ ê°�지할 수 있는 ì‹�별력ì�´ 높아졌습니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ¼±¾Ç°¨Áö ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀº ¼±¾ÇÀ» °¨ÁöÇÒ ¼ö ÀÖ´Â ½Äº°·ÂÀÌ ³ô¾ÆÁ³½À´Ï´Ù.\n", + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 ì„ ì•…ê°�ì§€ 주문ì�„ 외ì›�니다.\n당신ì�€ ì„ ì•…ì�„ ê°�지할 수 있는 ì‹�별력ì�´ 높아졌습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "´ç½ÅÀº %M¿¡°Ô ¼±¾Ç°¨Áö ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n", + print(fd, "당신ì�€ %Mì—�게 ì„ ì•…ê°�ì§€ 주문ì�„ 외ì›�니다.\n", crt_ptr); ply_ptr->mpcur -= 6; crt_ptr->lasttime[LT_KNOWA].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_KNOWA].interval += 800L; } } else { - print(fd, "%MÀÌ ¼±¾ÇÀ» °¨ÁöÇÒ ¼ö ÀÖ´Â ½Äº°·ÂÀÌ ³ô¾ÆÁ³½À´Ï´Ù.\n", + print(fd, "%Mì�´ ì„ ì•…ì�„ ê°�지할 수 있는 ì‹�별력ì�´ 높아졌습니다.\n", crt_ptr); crt_ptr->lasttime[LT_KNOWA].interval = 1200L; } @@ -207,7 +207,7 @@ int how; } /**********************************************************************/ -/* remove-curse(ÀúÁÖÇØ¼Ò) */ +/* remove-curse(저주해소) */ /**********************************************************************/ /* This function allows a player to remove a curse on all the items */ @@ -226,12 +226,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 18 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SREMOV) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -248,13 +248,13 @@ int how; ply_ptr->mpcur -= 18; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº ¿À¸¥¼Õ¿¡ ¼º½º·¯¿î ±â¿îÀ» ¸ðÀ¸ÀÚ ºÓÀº\nºûÀÌ ÆÛÁ®³ª°©´Ï´Ù.\n´ç½ÅÀÇ ¸ö¿¡ °É·È´ø ÀúÁÖ°¡ Ç®¸®±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 오른ì†�ì—� 성스러운 기운ì�„ 모으ìž� 붉ì�€\në¹›ì�´ í�¼ì ¸ë‚˜ê°‘니다.\n당신ì�˜ 몸ì—� 걸렸ë�˜ 저주가 풀리기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¿À¸¥¼Õ¿¡ ¼º½º·¯¿î ±â¿îÀ» ¸ðÀ¸ÀÚ ºÓÀº\nºûÀÌ ÆÛÁ®³ª°©´Ï´Ù.\n¼º½º·¯¿î ±â¿îÀÌ ±×ÀÇ ¸ö¿¡ °É·È´ø ÀúÁÖ°¡ Ǫ´Â°ÍÀÌ ´À²¸Áý´Ï´Ù.\n ", + "\n%Mì�´ 오른ì†�ì—� 성스러운 기운ì�„ 모으ìž� 붉ì�€\në¹›ì�´ í�¼ì ¸ë‚˜ê°‘니다.\n성스러운 기운ì�´ ê·¸ì�˜ 몸ì—� 걸렸ë�˜ 저주가 푸는것ì�´ ëŠ�껴집니다.\n ", ply_ptr); } else if(how == POTION) - print(fd, "\n¹°°Ç¾È¿¡ ´ã°ÜÀÖ´ø ¼º½º·¯¿î ±â¿îÀÌ ´ç½ÅÀÇ \nÀúÁÖ¸¦ Ç®¾îÁÝ´Ï´Ù.\n"); + print(fd, "\n물건안ì—� 담겨있ë�˜ 성스러운 기운ì�´ 당신ì�˜ \n저주를 풀어ì¤�니다.\n"); for(i=0; iready[i]) @@ -268,7 +268,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -277,7 +277,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -285,12 +285,12 @@ int how; ply_ptr->mpcur -= 18; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n¼ÕÀ» ÅëÇØ %MÀÇ ¸ö¿¡ ¼º½º·¯¿î ±â¿îÀ»\nÁÖÀÔÇÕ´Ï´Ù.\n±×ÀÇ ¸ö¿¡¼­ ÀúÁÖ°¡ ¹°·¯°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", crt_ptr); + print(fd, "\nì†�ì�„ 통해 %Mì�˜ 몸ì—� 성스러운 기운ì�„\n주입합니다.\nê·¸ì�˜ 몸ì—�서 저주가 물러가는 것ì�´ ëŠ�껴집니다.\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ¸ö¿¡ ¼ÕÀ» ÅëÇØ ¼º½º·¯¿î ±â¿îÀ»\nÁÖÀÔÇÕ´Ï´Ù.\n´ç½ÅÀÇ ¸ö¿¡¼­ ÀúÁÖ°¡ ¹°·¯°¡´Â °ÍÀÌ ´À²¸Áý´Ï´Ù.\n", + "\n%Mì�´ 당신ì�˜ 몸ì—� ì†�ì�„ 통해 성스러운 기운ì�„\n주입합니다.\n당신ì�˜ 몸ì—�서 저주가 물러가는 것ì�´ ëŠ�껴집니다.\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ µî¿¡ ¼ÕÀ» ´ë°í ¼º½º·¯¿î \n±â¿îÀ» ÁÖÀÔÇÕ´Ï´Ù.\n±×ÀÇ ¸ö¿¡¼­ ´À²¸Á³´ø ÀúÁÖÀÇ ±â¿îÀÌ »ç¶óÁö´Â °ÍÀ»\n´À³¥¼ö ÀÖ½À´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 등ì—� ì†�ì�„ 대고 성스러운 \n기운ì�„ 주입합니다.\nê·¸ì�˜ 몸ì—�서 ëŠ�껴졌ë�˜ 저주ì�˜ 기운ì�´ 사ë�¼ì§€ëŠ” 것ì�„\nëŠ�낄수 있습니다.\n", ply_ptr, crt_ptr); for(i=0; iparent_rom; if(ply_ptr->mpcur < 25 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SCURSE) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -341,13 +341,13 @@ int how; ply_ptr->mpcur -= 25; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀÌ ¿À¸¥¼Õ¿¡ ±â¿îÀ» ¸ð¿ìÀÚ ºÓÀº ±â¿îÀÌ ¸ô·Á¿Í .\n"); + print(fd, "\n당신ì�´ 오른ì†�ì—� 기운ì�„ 모우ìž� 붉ì�€ 기운ì�´ 몰려와 .\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ .\n ", + "\n%Mì�´ .\n ", ply_ptr); } else if(how == POTION) - print(fd, "\n¹°°Ç¾È¿¡ ´ã°ÜÀÖ´ø .\n"); + print(fd, "\n물건안ì—� 담겨있ë�˜ .\n"); for(i=0; iready[i]) @@ -360,7 +360,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -369,7 +369,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } @@ -377,12 +377,12 @@ int how; ply_ptr->mpcur -= 25; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n¼ÕÀ» ÅëÇØ %MÀÇ ¸ö¿¡ .\n", crt_ptr); + print(fd, "\nì†�ì�„ 통해 %Mì�˜ 몸ì—� .\n", crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½ÅÀÇ ¸ö¿¡ ¼ÕÀ» ÅëÇØ .\n", + "\n%Mì�´ 당신ì�˜ 몸ì—� ì†�ì�„ 통해 .\n", ply_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ µî¿¡ ¼ÕÀ» ´ë°í .\n", + "\n%Mì�´ %Mì�˜ 등ì—� ì†�ì�„ 대고 .\n", ply_ptr, crt_ptr); for(i=0; iparent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRCOLD) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -48,19 +48,19 @@ int how; ply_ptr->lasttime[LT_RCOLD].ltime = time(0); F_SET(ply_ptr, PRCOLD); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ºÒŸ¿À¸£´Â ºÎÀûÀ» »ïŰ¸ç ¹æÇÑÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ÁÖÀ§¿¡ ¿ÀÇàÁß È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç \nÁÖÀ§¸¦ µÑ·¯½Ô´Ï´Ù.", ply_ptr); + "\n%Mì�´ 불타오르는 ë¶€ì �ì�„ 삼키며 방한주를 외ì›�니다.\nê·¸ì�˜ 주위ì—� 오행중 í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며 \n주위를 둘러쌉니다.", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº ºÒŸ¿À¸£´Â ºÎÀûÀ» »ïŰ¸ç ¹æÇÑÁÖ·ê ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ÁÖÀ§¿¡ ¿ÀÇàÁß È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç\nÁÖÀ§¸¦ µÑ·¯½Ô´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 불타오르는 ë¶€ì �ì�„ 삼키며 방한주룰 외ì›�니다.\n당신ì�˜ 주위ì—� 오행중 í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며\n주위를 둘러쌉니다.\n"); ply_ptr->mpcur -= 12; ply_ptr->lasttime[LT_RCOLD].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_RCOLD].interval += 800L; } } else { - print(fd, "\n´ç½ÅÀÇ ÁÖÀ§¿¡ ¿ÀÇàÁß È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç\nÁÖÀ§¸¦ µÑ·¯½Ô´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 주위ì—� 오행중 í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며\n주위를 둘러쌉니다.\n"); ply_ptr->lasttime[LT_RCOLD].interval = 1200L; } return(1); @@ -68,7 +68,7 @@ int how; else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -76,31 +76,31 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù .\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다 .\n"); return(0); } F_SET(crt_ptr, PRCOLD); crt_ptr->lasttime[LT_RCOLD].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ ÀÔ¿¡ ºÒŸ¿À¸£´Â ºÎÀûÀ» Áý¾î³ÖÀ¸¸ç \n¹æÇÑÁø ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.", + "\n%Mì�´ %Mì�˜ ìž…ì—� 불타오르는 ë¶€ì �ì�„ 집어넣으며 \n방한진 주문ì�„ 외ì›�니다.", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÇ ÀÔ¿¡ ºÒŸ¿À¸£´Â ºÎÀûÀ» Áý¾î ³ÖÀ¸¸ç\n¹æÇÑÁÖ·ê ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀÇ ÁÖÀ§¿¡ ¿ÀÇàÁß È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç\nÁÖÀ§¸¦ µÑ·¯½Ô´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì�˜ ìž…ì—� 불타오르는 ë¶€ì �ì�„ ì§‘ì–´ 넣으며\n방한주룰 외ì›�니다.\n당신ì�˜ 주위ì—� 오행중 í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며\n주위를 둘러쌉니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %MÀÇ ÀÔ¿¡ ºÒŸ¿À¸£´Â ºÎÀûÀ» Áý¾î\n³ÖÀ¸¸ç ¹æÇÑÁÖ·ê ¿Ü¿ó´Ï´Ù.\n±×ÀÇ ÁÖÀ§¿¡ È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç ÁÖÀ§¸¦\nµÑ·¯½Ô´Ï´Ù.\n", + print(fd, "\n당신ì�€ %Mì�˜ ìž…ì—� 불타오르는 ë¶€ì �ì�„ ì§‘ì–´\n넣으며 방한주룰 외ì›�니다.\nê·¸ì�˜ 주위ì—� í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며 주위를\n둘러쌉니다.\n", crt_ptr); ply_ptr->mpcur -= 12; crt_ptr->lasttime[LT_RCOLD].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_RCOLD].interval += 800L; } } else { - print(fd, "\n%MÀÇ ÁÖÀ§¿¡ È­ÀÇ ¼öÈ£·ÉµéÀÌ ÁøÀ» Çü¼ºÇϸç\nÁÖÀ§¸¦ µÑ·¯½Ô´Ï´Ù.\n", crt_ptr); + print(fd, "\n%Mì�˜ 주위ì—� í™”ì�˜ 수호령들ì�´ ì§„ì�„ 형성하며\n주위를 둘러쌉니다.\n", crt_ptr); crt_ptr->lasttime[LT_RCOLD].interval = 1200L; } @@ -111,7 +111,7 @@ int how; /************************************************************************/ -/* Breathe-water(¼ö»ý¼ú) */ +/* Breathe-water(수ìƒ�술) */ /************************************************************************/ /* This function allows players to cast the resist cold spell. It will */ @@ -131,12 +131,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SBRWAT) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -150,19 +150,19 @@ int how; ply_ptr->lasttime[LT_BRWAT].ltime = time(0); F_SET(ply_ptr, PBRWAT); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Å©°Ô È£ÈíÀ» µéÀÌŰ¸ç¼­ ¼ö»ý¼úÀÇ \nÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n±×ÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô ¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ í�¬ê²Œ 호í�¡ì�„ 들ì�´í‚¤ë©°ì„œ 수ìƒ�술ì�˜ \n주문ì�„ 외웠습니다.\nê·¸ì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜 수 있ì�„ 것 같습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº Å©°Ô È£ÈíÀ» µéÀÌŰ¸ç¼­ ¼ö»ý¼úÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ í�¬ê²Œ 호í�¡ì�„ 들ì�´í‚¤ë©°ì„œ 수ìƒ�술ì�˜ 주문ì�„ 외ì›�니다.\n가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜수 있ì�„ 것 같습니다.\n"); ply_ptr->mpcur -= 12; ply_ptr->lasttime[LT_BRWAT].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_BRWAT].interval += 800L; } } else { - print(fd, "\n´ç½ÅÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜수 있ì�„ 것 같습니다.\n"); ply_ptr->lasttime[LT_BRWAT].interval = 1200L; } return(1); @@ -170,7 +170,7 @@ int how; else { if(how == POTION) { - print(fd, "\nÀÌ ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -178,31 +178,31 @@ int how; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù .\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다 .\n"); return(0); } F_SET(crt_ptr, PBRWAT); crt_ptr->lasttime[LT_BRWAT].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¼ö»ýºÎ¸¦ ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n±×ÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 수ìƒ�부를 먹ì�´ë©° 주문ì�„ 외웠습니다.\nê·¸ì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜수 있ì�„ 것 같습니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ¼ö»ýºÎ¸¦ ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n´ç½ÅÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô ¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 수ìƒ�부를 먹ì�´ë©° 주문ì�„ 외웠습니다.\n당신ì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜 수 있ì�„ 것 같습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %M¿¡°Ô ¼ö»ýºÎ¸¦ ¸ÔÀ̸ç ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è³ª Ä¿Á® ¹°¼Ó¿¡¼­ ¿À·§µ¿¾È\n°ßµô ¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n", + print(fd, "\n당신ì�€ %Mì—�게 수ìƒ�부를 먹ì�´ë©° 주문ì�„ 외ì›�니다.\nê·¸ì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�배나 커져 물ì†�ì—�서 오랫ë�™ì•ˆ\n견딜 수 있ì�„ 것 같습니다.\n", crt_ptr); ply_ptr->mpcur -= 12; crt_ptr->lasttime[LT_BRWAT].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_BRWAT].interval += 800L; } } else { - print(fd, "\n%MÀÇ °¡½¿ÀÌ Æò¼Òº¸´Ù µÎ¹è Ä¿Á® ¹°¼Ó¿¡¼­ \n¿À·§µ¿¾È °ßµô¼ö ÀÖÀ» °Í °°½À´Ï´Ù.\n", crt_ptr); + print(fd, "\n%Mì�˜ 가슴ì�´ í�‰ì†Œë³´ë‹¤ ë‘�ë°° 커져 물ì†�ì—�서 \n오랫ë�™ì•ˆ 견딜수 있ì�„ 것 같습니다.\n", crt_ptr); crt_ptr->lasttime[LT_BRWAT].interval = 1200L; } @@ -213,7 +213,7 @@ int how; /************************************************************************/ -/* Stone-Shield(Áö¹æÈ£) */ +/* Stone-Shield(지방호) */ /************************************************************************/ /* This function allows players to cast the earth shield spell. It will */ @@ -233,12 +233,12 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SSSHLD) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -251,19 +251,19 @@ if(spell_fail(ply_ptr)) { ply_ptr->lasttime[LT_SSHLD].ltime = time(0); F_SET(ply_ptr, PSSHLD); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ º®ºÎ¼±À» ´øÁö¸ç Áö¹æÈ£ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n¶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í ±×ÀÇ ÁÖÀ§¿¡\nÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 벽부선ì�„ ë�˜ì§€ë©° 지방호 주문ì�„ 외웠습니다.\në•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ ê·¸ì�˜ 주위ì—�\nì§„ì�„ 형성했습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº º®ºÎ¼±À» ´øÁö¸ç Áö¹æÈ£ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í ´ç½ÅÁÖÀ§¿¡\nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 벽부선ì�„ ë�˜ì§€ë©° 지방호 주문ì�„ 외ì›�니다.\në•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ 당신주위ì—�\nì§„ì�„ 형성합니다.\n"); ply_ptr->mpcur -= 12; ply_ptr->lasttime[LT_SSHLD].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주술력ì�„ 강화시킵니다.\n"); ply_ptr->lasttime[LT_SSHLD].interval += 800L; } } else { - print(fd, "\n¶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í ´ç½ÅÁÖÀ§¿¡\nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n"); + print(fd, "\në•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ 당신주위ì—�\nì§„ì�„ 형성합니다.\n"); ply_ptr->lasttime[LT_SSHLD].interval = 1200L; } return(1); @@ -271,7 +271,7 @@ if(spell_fail(ply_ptr)) { else { if(how == POTION) { - print(fd, "\nÀÌ ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -279,31 +279,31 @@ if(spell_fail(ply_ptr)) { crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } F_SET(crt_ptr, PSSHLD); crt_ptr->lasttime[LT_SSHLD].ltime = time(0); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ÅäÈëÀ» »Ñ¸®¸ç Áö¹æÈ£ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í ±×ÀÇ ÁÖÀ§¿¡\nÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 토í�™ì�„ 뿌리며 지방호 주문ì�„ 외ì›�니다.\në•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ ê·¸ì�˜ 주위ì—�\nì§„ì�„ 형성합니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô ÅäÈëÀ» »Ñ¸®¸ç Áö¹æÈ£ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n°©Àڱ⠶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í ´ç½ÅÁÖÀ§¿¡\nÁøÀ» Çü¼ºÇß½À´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 토í�™ì�„ 뿌리며 지방호 주문ì�„ 외웠습니다.\nê°‘ìž�기 ë•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ 당신주위ì—�\nì§„ì�„ 형성했습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀº %M¿¡°Ô ¶¥¹æÆÐ ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n", + print(fd, "\n당신ì�€ %Mì—�게 땅방패 주문ì�„ 외웠습니다.\n", crt_ptr); ply_ptr->mpcur -= 12; crt_ptr->lasttime[LT_SSHLD].interval = MAX(300, 1200 + bonus[ply_ptr->intelligence]*600); if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÌ ´ç½ÅÀÇ ÁÖ¹®À» °­È­½Ãŵ´Ï´Ù.\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�´ 당신ì�˜ 주문ì�„ 강화시킵니다.\n"); crt_ptr->lasttime[LT_SSHLD].interval += 800L; } } else { - print(fd, "\n¶¥¿¡¼­ ¿ÀÇàÁß ÅäÀÇ ¼öÈ£·ÉµéÀÌ ¿Ã¶ó¿Í %MÀÇ\nÁÖÀ§¿¡ ÁøÀ» Çü¼ºÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "\në•…ì—�서 오행중 토ì�˜ 수호령들ì�´ 올ë�¼ì™€ %Mì�˜\n주위ì—� ì§„ì�„ 형성합니다.\n", crt_ptr); crt_ptr->lasttime[LT_SSHLD].interval = 1200L; } @@ -313,7 +313,7 @@ if(spell_fail(ply_ptr)) { } /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ -/* locate_person(õ¸®¾È) */ +/* locate_person(천리안) */ /*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/ int locate_player(ply_ptr, cmnd, how) @@ -331,18 +331,18 @@ int how; if(fd < 0) return(0); if(!S_ISSET(ply_ptr, SLOCAT) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(ply_ptr->mpcur < 15 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(cmnd->num < 3) { - print(fd, "\n´©±¸¿Í ¿¬°áÇմϱî?\n"); + print(fd, "\n누구와 연결합니까?\n"); return(0); } @@ -351,15 +351,15 @@ int how; if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "\n±×·± »ç¶÷Àº Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�€ 존재하지 않습니다.\n"); return(0); } if(crt_ptr->class == DM && ply_ptr->class != DM) { - print(fd,"±× »ç¶÷ÀÇ Á¤½Å·ÂÀÌ ³Ê¹« ³ô¾Æ Åõ½Ã¸¦ ÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd,"ê·¸ 사람ì�˜ ì •ì‹ ë ¥ì�´ 너무 높아 투시를 í•  수 없습니다."); return 0; } if(F_ISSET(crt_ptr, PMARRI)) { - print(fd,"±× »ç¶÷ÀÇ »ç»ýȰÀº ¿³º¼ ¼ö°¡ ¾ø½À´Ï´Ù."); + print(fd,"ê·¸ 사람ì�˜ 사ìƒ�활ì�€ ì—¿ë³¼ 수가 없습니다."); return 0; } if(spell_fail(ply_ptr)) { @@ -368,9 +368,9 @@ int how; return(0); } broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Ãµ¸®¾È ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\n", ply_ptr); + "\n%Mì�´ 천리안 주문ì�„ 외웠습니다.\n", ply_ptr); if(how == CAST) { - print(fd, "\n´ç½ÅÀÇ ¸¶À½À» %M¿¡°Ô ÁýÁßÇß½À´Ï´Ù.\n", + print(fd, "\n당신ì�˜ 마ì�Œì�„ %Mì—�게 집중했습니다.\n", crt_ptr); ply_ptr->mpcur -= 15; } @@ -392,17 +392,17 @@ int how; chance = MIN(85,chance); if (mrand(1,100) < chance) - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÇ ´«À¸·Î ÁÖÀ§¸¦ º¸°í ÀÖ½À´Ï´Ù.\n", + print(crt_ptr->fd, "\n%Mì�´ 당신ì�˜ 눈으로 주위를 ë³´ê³  있습니다.\n", ply_ptr); } else{ - print(fd,"\n´ç½ÅÀÇ Á¤½ÅÀº ¿¬°áµÉ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd,"\n당신ì�˜ ì •ì‹ ì�€ ì—°ê²°ë� ìˆ˜ 없습니다.\n"); chance = 65 + (((crt_ptr->level+3)/4) - ((ply_ptr->level+3)/4))*5 + (bonus[crt_ptr->intelligence] - bonus[ply_ptr->intelligence])*5; if (mrand(1,100) < chance) - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÇ ´«À¸·Î º¸·ÁÇÕ´Ï´Ù.\n", + print(crt_ptr->fd, "\n%Mì�´ 당신ì�˜ 눈으로 보려합니다.\n", ply_ptr); } @@ -412,7 +412,7 @@ int how; /**********************************************************************/ -/* drain_exp(¹éÄ¡¼ú) */ +/* drain_exp(백치술) */ /**********************************************************************/ /* The spell drain_exp causes a player to lose a selected amout of * * exp. When a player loses exp, the player's magical realm and * @@ -435,17 +435,17 @@ object *obj_ptr; rom_ptr = ply_ptr->parent_rom; if(!S_ISSET(ply_ptr, SDREXP) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(how == CAST && ply_ptr->class < DM) { - print(fd, "\n±×·± ÁÖ¹®À» ¿Ü¿ï¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n그런 주문ì�„ 외울수 없습니다.\n"); return(0); } if(how == SCROLL){ - print(fd, "\n±×·± ÁÖ¹®À» ¿Ü¿ï¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n그런 주문ì�„ 외울수 없습니다.\n"); return(0); } @@ -460,15 +460,15 @@ object *obj_ptr; loss = MIN(loss, ply_ptr->experience); if(how == CAST || how == WAND) { - print(fd, "\n´ç½ÅÀº °©Àڱ⠸ÛÃ»ÇØ Áö¸é¼­ Áö±Ý±îÁö ½Î¿ö¿Ô´ø °æÇèµéÀÌ\n»ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n!!¾Ç~~~ °æÇèÄ¡°¡ ¾ó¸¶ÀÎÁöµµ ¸ð¸£°Ú´Ù.!!\n"); - print(fd, "\n´ç½ÅÀº %d¸¸Å­ÀÇ °æÇèµéÀÌ »ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n",loss); + print(fd, "\n당신ì�€ ê°‘ìž�기 ë©�ì²­í•´ 지면서 지금까지 싸워왔ë�˜ 경험들ì�´\nìƒ�ê°�나지 않습니다.\n!!ì•…~~~ 경험치가 얼마ì�¸ì§€ë�„ 모르겠다.!!\n"); + print(fd, "\n당신ì�€ %dë§Œí�¼ì�˜ 경험들ì�´ ìƒ�ê°�나지 않습니다.\n",loss); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ Àڽſ¡°Ô ¹éÄ¡¼ú ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â °©Àڱ⠸ÛÃ»ÇØÁøµí ÁÖÀ§¸¦ µÎ¸®¹ø °Å¸³´Ï´Ù.\n", + "\n%Mì�´ ìž�ì‹ ì—�게 백치술 주문ì�„ 외ì›�니다.\n그는 ê°‘ìž�기 ë©�청해진듯 주위를 ë‘�리번 거립니다.\n", ply_ptr); } else if(how == POTION){ - print(fd, "\n´ç½ÅÀº °©Àڱ⠸ÛÃ»ÇØ Áö¸é¼­ Áö±Ý±îÁö ½Î¿ö¿Ô´ø °æÇèµéÀÌ\n»ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n!!¾Ç~~~ °æÇèÄ¡°¡ ¾ó¸¶ÀÎÁöµµ ¸ð¸£°Ú´Ù.!!\n"); - print(fd, "\n´ç½ÅÀº %d¸¸Å­ÀÇ °æÇèµéÀÌ »ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n",loss); + print(fd, "\n당신ì�€ ê°‘ìž�기 ë©�ì²­í•´ 지면서 지금까지 싸워왔ë�˜ 경험들ì�´\nìƒ�ê°�나지 않습니다.\n!!ì•…~~~ 경험치가 얼마ì�¸ì§€ë�„ 모르겠다.!!\n"); + print(fd, "\n당신ì�€ %dë§Œí�¼ì�˜ 경험들ì�´ ìƒ�ê°�나지 않습니다.\n",loss); } ply_ptr->experience -= loss; lower_prof(ply_ptr,loss); @@ -484,7 +484,7 @@ object *obj_ptr; loss = dice(((ply_ptr->level+3)/4), ((ply_ptr->level+3)/4),1)*30; if(how == POTION) { - print(fd, "\nÀÌ ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -498,7 +498,7 @@ object *obj_ptr; cmnd->str[2], cmnd->str[2]); if(!crt_ptr) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù .\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다 .\n"); return(0); } } @@ -506,15 +506,15 @@ object *obj_ptr; loss = MIN(loss, crt_ptr->experience); if(how == CAST || how == WAND) { - print(fd, "\n´ç½ÅÀº %M¿¡°Ô ¹éÄ¡¼úÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â °©Àڱ⠸ÛÃ»ÇØÁøµí ÁÖÀ§¸¦ µÎ¸®¹ø °Å¸³´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì—�게 백치술ì�˜ 주문ì�„ 외ì›�니다.\n그는 ê°‘ìž�기 ë©�청해진듯 주위를 ë‘�리번 거립니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô ¹éÄ¡¼úÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â °©Àڱ⠸ÛÃ»ÇØÁøµí ÁÖÀ§¸¦ µÎ¸®¹ø °Å¸³´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 백치술ì�˜ 주문ì�„ 외ì›�니다.\n그는 ê°‘ìž�기 ë©�청해진듯 주위를 ë‘�리번 거립니다.\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô ¹éÄ¡¼úÀÇ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀº °©Àڱ⠸ÛÃ»ÇØÁö¸é¼­ Áö±Ý±îÁö ½Î¿ö¿Ô´ø °æÇèµéÀÌ\n»ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n!!¾Ç~~~ °æÇèÄ¡°¡ ¾ó¸¶ÀÎÁöµµ ¸ð¸£°Ú´Ù.!!\n", + "\n%Mì�´ 당신ì—�게 백치술ì�˜ 주문ì�„ 외ì›�니다.\n당신ì�€ ê°‘ìž�기 ë©�청해지면서 지금까지 싸워왔ë�˜ 경험들ì�´\nìƒ�ê°�나지 않습니다.\n!!ì•…~~~ 경험치가 얼마ì�¸ì§€ë�„ 모르겠다.!!\n", ply_ptr); - print(crt_ptr->fd,"\n´ç½ÅÀº %d¸¸Å­ÀÇ °æÇèµéÀÌ »ý°¢³ªÁö ¾Ê½À´Ï´Ù.\n",loss); - print(fd,"\n%MÀÌ ½Î¿ü´ø ¾ó¸¶°£ÀÇ °æÇèµéÀ» Àؾî¹ö¸°°Í\n°°½À´Ï´Ù.\n",crt_ptr); + print(crt_ptr->fd,"\n당신ì�€ %dë§Œí�¼ì�˜ 경험들ì�´ ìƒ�ê°�나지 않습니다.\n",loss); + print(fd,"\n%Mì�´ 싸웠ë�˜ 얼마간ì�˜ 경험들ì�„ 잊어버린것\n같습니다.\n",crt_ptr); } crt_ptr->experience -= loss; @@ -526,7 +526,7 @@ object *obj_ptr; } /**********************************************************************/ -/* remove disease(Ä¡·á) */ +/* remove disease(치료) */ /**********************************************************************/ int rm_disease(ply_ptr, cmnd, how) @@ -542,18 +542,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "\nÀÌ ÁÖ¼úÀº ºÒÁ¦ÀÚ¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 주술ì�€ 불제ìž�ë§Œì�´ 사용할 수 있습니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRMDIS) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -569,15 +569,15 @@ int how; ply_ptr->mpcur -= 12; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº »ý»ç°ú¸¦ ¸ÔÀ¸¸ç Ä¡·á ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\nº´¸¶¿¡ ½Ã´Þ¸®´ø ´ç½ÅÀÇ ¸öÀÌ È°±â¸¦ ¶ç±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ìƒ�사과를 먹으며 치료 주문ì�„ 외ì›�니다.\n병마ì—� 시달리ë�˜ 당신ì�˜ 몸ì�´ 활기를 ë�„기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ »ý»ç°ú¸¦ ¸ÔÀ¸¸ç Ä¡·á ÁÖ¹®À» ¿Ü¿ü½À´Ï´Ù.\nº´¸¶¿¡ ½Ã´Þ¸®´ø ±×ÀÇ ¸öÀÌ È°±â¸¦ ¶ç±â ½ÃÀÛÇÕ´Ï´Ù.\n", + "\n%Mì�´ ìƒ�사과를 먹으며 치료 주문ì�„ 외웠습니다.\n병마ì—� 시달리ë�˜ ê·¸ì�˜ 몸ì�´ 활기를 ë�„기 시작합니다.\n", ply_ptr); } else if(how == POTION & F_ISSET(ply_ptr, PDISEA)) - print(fd, "\nº´¸¶¿¡ ½Ã´Þ¸®´ø ´ç½ÅÀÇ ¸öÀÌ È°±â¸¦ ¶ç±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + print(fd, "\n병마ì—� 시달리ë�˜ 당신ì�˜ 몸ì�´ 활기를 ë�„기 시작합니다.\n"); else if(how == POTION) - print(fd, "\n´ç½ÅÀÇ º´ÀÌ ÇØ¼ÒµÇ¾î ¸öÀÌ °Å¶áÇØÁý´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 병ì�´ 해소ë�˜ì–´ 몸ì�´ 거뜬해집니다.\n"); F_CLR(ply_ptr, PDISEA); @@ -586,7 +586,7 @@ int how; else { if(how == POTION) { - print(fd, "\nÀÌ ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -600,7 +600,7 @@ int how; cmnd->str[2], cmnd->str[2]); if(!crt_ptr) { - print(fd, "\n±×·±»ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù .\n"); + print(fd, "\n그런사람ì�´ 존재하지 않습니다 .\n"); return(0); } } @@ -611,11 +611,11 @@ int how; F_CLR(crt_ptr, PDISEA); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº %MÀÇ Ç÷µµ¸¦ ´©¸£°í ³»°øÀÇ ÈûÀ» ÅëÇØ\nÄ¡·á¸¦ ½ÃÀÛÇÕ´Ï´Ù.\n±×ÀÇ ¸ö¿¡ ¸·Çô ÀÖ´ø Ç÷ÀÌ Ç®¸®¸é¼­ Â÷Ãû Ȱ±â¸¦ \n¶ç±â ½ÃÀÛÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ %Mì�˜ 혈ë�„를 누르고 ë‚´ê³µì�˜ 힘ì�„ 통해\n치료를 시작합니다.\nê·¸ì�˜ 몸ì—� 막혀 있ë�˜ 혈ì�´ 풀리면서 차츰 활기를 \në�„기 시작합니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ Ç÷µµ¸¦ ´©¸£°í ³»°øÀÇ ÈûÀ» ÅëÇØ\nÄ¡·á¸¦ ½ÃÀÛÇÕ´Ï´Ù.\n±×ÀÇ ¸öÀÌ Â÷Ãû Ȱ±â¸¦ ¶ç±â ½ÃÀÛÇÏ´Â °ÍÀÌ º¸ÀÔ´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ 혈ë�„를 누르고 ë‚´ê³µì�˜ 힘ì�„ 통해\n치료를 시작합니다.\nê·¸ì�˜ 몸ì�´ 차츰 활기를 ë�„기 시작하는 것ì�´ 보입니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½ÅÀÇ Ç÷µµ¸¦ ´©¸£°í ³»°øÀÇ ÈûÀ» ÅëÇØ Ä¡·á¸¦ ½ÃÀÛÇÕ´Ï´Ù.\n´ç½ÅÀÇ ¸ö¿¡ ±â°øÀÌ µé¾î¿Í ¸·Èù Ç÷À» Ç®ÀÚ Â÷Ãû \nȰ±â¸¦ ¶ç±â ½ÃÀÛÇÕ´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì�˜ 혈ë�„를 누르고 ë‚´ê³µì�˜ 힘ì�„ 통해 치료를 시작합니다.\n당신ì�˜ 몸ì—� 기공ì�´ 들어와 막힌 혈ì�„ í’€ìž� 차츰 \n활기를 ë�„기 시작합니다.\n", ply_ptr); } } @@ -627,7 +627,7 @@ int how; /************************************************************************/ -/* object_send(Àü¼Û) */ +/* object_send(전송) */ /************************************************************************/ /* The send object spell allows a mage or DM/Caretaker to magically * * transport an object to another login (detectable) player. The maxium * @@ -649,22 +649,22 @@ int how; rom_ptr = ply_ptr->parent_rom; if(!S_ISSET(ply_ptr, STRANO) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(ply_ptr->class != MAGE && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "\nÀÌ ÁÖ¼úÀº µµ¼ú»çµé¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 주술ì�€ ë�„술사들만ì�´ 사용할 수 있습니다.\n"); return(0); } if(ply_ptr->level <20){ - print(fd, "\n´ç½ÅÀÇ ´É·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ 능력ì�´ 부족합니다.\n"); return(0); } if(cmnd->num < 4) { - print(fd, "\n´©±¸¿¡°Ô ¹«¾ó º¸³À´Ï±î?\n"); + print(fd, "\n누구ì—�게 무얼 보냅니까?\n"); return(0); } @@ -673,7 +673,7 @@ int how; if(!crt_ptr || F_ISSET(crt_ptr, PDMINV) || (F_ISSET(crt_ptr, PINVIS) && !F_ISSET(ply_ptr, PDINVI))) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù .\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다 .\n"); return(0); } @@ -681,28 +681,28 @@ int how; cmnd->str[2], cmnd->val[2]); if(!obj_ptr) { - print(fd, "\n±×·± ¹°°ÇÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 물건ì�´ 존재하지 않습니다.\n"); return(0); } if(obj_ptr->questnum) { - print(fd, "\nÀÓ¹«¿¡ °ü·ÃµÇ¾î ´Ù¸¥ÀÚ¿¡°Ô º¸³¾ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\n임무ì—� 관련ë�˜ì–´ 다른ìž�ì—�게 보낼 수 없습니다.\n"); return(0); } if(F_ISSET(obj_ptr, ONEWEV)) { - print(fd, "\nÀ̺¥Æ® ¾ÆÀÌÅÛÀº ´Ù¸¥ÀÚ¿¡°Ô º¸³¾ ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "\nì�´ë²¤íЏ ì•„ì�´í…œì�€ 다른ìž�ì—�게 보낼 수 없습니다.\n"); return(0); } if(obj_ptr->first_obj) { for(otag_ptr=obj_ptr->first_obj; otag_ptr; otag_ptr=otag_ptr->next_tag) { if(otag_ptr->obj->questnum && ply_ptr->class < DM) { - print(fd, "\nÀü¼Û¿¡ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "\n전송ì—� 실패했습니다.\n"); return(0); } if(F_ISSET(otag_ptr->obj, ONEWEV) && ply_ptr->class < DM) { - print(fd, "\nÀü¼Û¿¡ ½ÇÆÐÇß½À´Ï´Ù.\n"); + print(fd, "\n전송ì—� 실패했습니다.\n"); return(0); } } @@ -710,13 +710,13 @@ int how; cost = 5 + bonus[ply_ptr->intelligence] + (((ply_ptr->level+3)/4) - 5)*2; if (obj_ptr->weight > cost){ - print(fd,"\n%IÀÇ Àü¼ÛÀº ´ç½ÅÀÇ ´É·ÂÀ¸·Î ³Ê¹« ¹«°Å¿ö \nº¸³¾ ¼ö ¾ø½À´Ï´Ù.\n", obj_ptr); + print(fd,"\n%Iì�˜ 전송ì�€ 당신ì�˜ 능력으로 너무 무거워 \n보낼 수 없습니다.\n", obj_ptr); return(0); } cost = 8 + (obj_ptr->weight)/4; if(ply_ptr->mpcur < cost && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù.\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다.\n"); return(0); } else if(how == CAST) { ply_ptr->mpcur -= cost; @@ -727,7 +727,7 @@ int how; if (max_weight(crt_ptr) < weight_ply(crt_ptr)+obj_ptr->weight){ - print(fd,"\n%MÀº %1iÀ» °¡Áú ¼ö ¾ø½À´Ï´Ù .\n",crt_ptr,obj_ptr); + print(fd,"\n%Mì�€ %1iì�„ 가질 수 없습니다 .\n",crt_ptr,obj_ptr); return(0); } del_obj_crt(obj_ptr, ply_ptr); @@ -737,14 +737,14 @@ int how; if(crt_ptr->type==PLAYER) savegame_nomsg(crt_ptr); if(!F_ISSET(ply_ptr, PDMINV)){ - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ ¹°°ÇÀ» ¾îµð·Ð°¡·Î ³¯·Á¹ö·È½À´Ï´Ù.\n", ply_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 물건ì�„ 어디론가로 날려버렸습니다.\n", ply_ptr); } - print(fd,"\n´ç½ÅÀÌ %i¿¡ Á¤½ÅÁýÁßÀ» Çϸ鼭 Àü¼ÛÁÖ¸¦ ¿Ü¿ó´Ï´Ù.\n±× ¹°°ÇÀÌ °øÁßÀ¸·Î ¶°¿À¸£¸é¼­ ¾îµð·Ð°¡·Î ÃѾ˰°ÀÌ\n³¯¶ó°©´Ï´Ù.\n", + print(fd,"\n당신ì�´ %iì—� 정신집중ì�„ 하면서 전송주를 외ì›�니다.\nê·¸ 물건ì�´ 공중으로 떠오르면서 어디론가로 ì´�알같ì�´\në‚ ë�¼ê°‘니다.\n", obj_ptr); - print(fd, "\n´ç½ÅÀº %1iÀ» %M¿¡°Ô º¸³Â½À´Ï´Ù.\n", + print(fd, "\n당신ì�€ %1iì�„ %Mì—�게 보냈습니다.\n", obj_ptr, crt_ptr); if(!F_ISSET(ply_ptr, PDMINV)){ - print(crt_ptr->fd, "\n°©ÀÚ±â Çϴÿ¡¼­ ¹«¾ð°¡°¡ Çϴÿ¡¼­ ¶Ò ¶³¾îÁ³½À´Ï´Ù.\nÀÚ¼¼È÷ º¸´Ï %1iÀε¥, %MÀÌ ¹°°ÇÀ» Àü¼ÛÇÑ °Í °°½À´Ï´Ù.\n", obj_ptr, ply_ptr); + print(crt_ptr->fd, "\nê°‘ìž�기 하늘ì—�서 무언가가 하늘ì—�서 ëš� 떨어졌습니다.\nìž�세히 보니 %1iì�¸ë�°, %Mì�´ 물건ì�„ 전송한 것 같습니다.\n", obj_ptr, ply_ptr); } return(1); diff --git a/src/magic8.c b/src/magic8.c index d0ca35c7..dcd1e8cc 100644 --- a/src/magic8.c +++ b/src/magic8.c @@ -9,7 +9,7 @@ #include "mextern.h" /***********************************************************************/ -/* room_vigor(Àüȸº¹) */ +/* room_vigor(전회복) */ /***********************************************************************/ int room_vigor(ply_ptr, cmnd, how) @@ -24,19 +24,19 @@ cmd *cmnd; fd = ply_ptr->fd; if(how == POTION) { - print(fd, "ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd, "주문ì�´ 실패했습니다."); return(0); } if(!S_ISSET(ply_ptr, SRVIGO) && (how != WAND || how != SCROLL)) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다."); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class < INVINCIBLE) { - print(fd, "ÀÌ ÁÖ¼úÀº ºÒÁ¦ÀÚ¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ì�´ 주술ì�€ 불제ìž�ë§Œì�´ 사용할 수 있습니다."); return(PROMPT); } if(ply_ptr->mpcur < 12 && (how != WAND || how != SCROLL)) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다"); return(0); } if(how == CAST) @@ -48,21 +48,21 @@ cmd *cmnd; cp = ply_ptr->parent_rom->first_ply; - print(fd,"´ç½ÅÀº °¡ºÎÁ¸¦ Ʋ°í¼­ Àüȸº¹ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¹æ¾È¿¡ ´«ÀÌ ¶ã ¼ö ¾øÀ» Á¤µµÀÇ ºûÀÌ °¡µæÂ÷´Ù°¡ »ç¶óÁý´Ï´Ù.\n¹æ¾ÈÀÇ ¸ðµç»ç¶÷ÀÌ Ã¼·ÂÀÌ È¸º¹µÇ¾ú´Â °ÍÀ» ´À³¥¼ö ÀÖ½À´Ï´Ù.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÌ °¡ºÎÁ¸¦ Ʋ°í¼­ Àüȸº¹ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n¹æ¾È¿¡ ´«ÀÌ ¶ã ¼ö ¾øÀ» Á¤µµÀÇ ºûÀÌ °¡µæÂ÷´Ù°¡ »ç¶óÁý´Ï´Ù.\n¹æ¾ÈÀÇ ¸ðµç»ç¶÷ÀÌ Ã¼·ÂÀÌ È¸º¹µÇ¾ú´Â °ÍÀ» ´À³¥¼ö ÀÖ½À´Ï´Ù.\n" + print(fd,"당신ì�€ 가부좌를 틀고서 전회복 주문ì�„ 외ì›�니다.\n방안ì—� 눈ì�´ 뜰 수 ì—†ì�„ ì •ë�„ì�˜ ë¹›ì�´ ê°€ë“�차다가 사ë�¼ì§‘니다.\n방안ì�˜ 모든사람ì�´ ì²´ë ¥ì�´ 회복ë�˜ì—ˆëŠ” 것ì�„ ëŠ�낄수 있습니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�´ 가부좌를 틀고서 전회복 주문ì�„ 외ì›�니다.\n방안ì—� 눈ì�´ 뜰 수 ì—†ì�„ ì •ë�„ì�˜ ë¹›ì�´ ê°€ë“�차다가 사ë�¼ì§‘니다.\n방안ì�˜ 모든사람ì�´ ì²´ë ¥ì�´ 회복ë�˜ì—ˆëŠ” 것ì�„ ëŠ�낄수 있습니다.\n" , ply_ptr); heal = mrand(1,6) + bonus[ply_ptr->piety]; if (F_ISSET(ply_ptr->parent_rom,RPMEXT)){ heal += mrand(1,3); - print(fd,"\nÀÌ ¹æÀÇ ±â¿îÀÇ ´ç½ÅÀÇ ÁÖ¼ú·ÂÀ» °­È­½Ãŵ´Ï´Ù\n"); + print(fd,"\nì�´ ë°©ì�˜ 기운ì�˜ 당신ì�˜ 주술력ì�„ 강화시킵니다\n"); } while(cp){ cp_tmp = cp->next_tag; if(cp->crt->type != MONSTER) { if(cp->crt != ply_ptr) { - print(cp->crt->fd,"´ç½ÅÀÇ ¸ö¿¡¼­µµ ȸº¹ÀÇ ±â¿îÀÌ ¼Ú¾Æ¿À¸§À» ´À³¥ ¼ö ÀÖ½À´Ï´Ù.\n",ply_ptr); + print(cp->crt->fd,"당신ì�˜ 몸ì—�서ë�„ 회복ì�˜ 기운ì�´ 솟아오름ì�„ ëŠ�ë‚„ 수 있습니다.\n",ply_ptr); } cp->crt->hpcur += heal; cp->crt->hpcur = MIN(cp->crt->hpmax, cp->crt->hpcur); @@ -74,7 +74,7 @@ cmd *cmnd; } /**********************************************************************/ -/* remove blindness(°³¾È¼ú) */ +/* remove blindness(개안술) */ /**********************************************************************/ int rm_blind(ply_ptr, cmnd, how) @@ -90,18 +90,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "ÀÌ ±â¼úÀº ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ì�´ 기술ì�€ 불제ìž�와 무사만ì�´ 사용할 수 있습니다."); return(0); } if(!S_ISSET(ply_ptr, SRMBLD) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다."); return(0); } if(spell_fail(ply_ptr)) { @@ -116,15 +116,15 @@ int how; ply_ptr->mpcur -= 12; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀÇ À̸¶¿¡ °³¾ÈºÎ¸¦ ºÙÈ÷¸ç °³¾È¼ú ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°¨°å´ø ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©Àڱ⠴«¾ÕÀÌ ¹à¾ÆÁý´Ï´Ù."); + print(fd, "당신ì�˜ ì�´ë§ˆì—� 개안부를 붙히며 개안술 주문ì�„ 외ì›�니다.\nê°�ê²¼ë�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 눈앞ì�´ ë°�아집니다."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÀÚ½ÅÀÇ À̸¶¿¡ °³¾ÈºÎ¸¦ ºÙÈ÷¸ç °³¾È¼ú \nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n°¨°å´ø ±×ÀÇ ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©Àڱ⠴«À» È® ¶å´Ï´Ù.", + "\n%Mì�´ ìž�ì‹ ì�˜ ì�´ë§ˆì—� 개안부를 붙히며 개안술 \n주문ì�„ 외ì›�니다.\nê°�ê²¼ë�˜ ê·¸ì�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 눈ì�„ 확 뜹니다.", ply_ptr); } else if(how == POTION & F_ISSET(ply_ptr, PBLIND)) - print(fd, "°¨°å´ø ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©Àڱ⠴«¾ÕÀÌ ¹à¾ÆÁý´Ï´Ù."); + print(fd, "ê°�ê²¼ë�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 눈앞ì�´ ë°�아집니다."); else if(how == POTION) - print(fd, "¾àÀ» ¸ÔÀÚ ´ç½Å ´«¿¡ °É¸° ÁÖ¼úÀÌ ½º¸£¸£ Ç®¸®´Â °ÍÀ» ´À³§´Ï´Ù."); + print(fd, "약ì�„ 먹ìž� 당신 눈ì—� 걸린 주술ì�´ 스르르 풀리는 것ì�„ ëŠ�ë‚�니다."); F_CLR(ply_ptr, PBLIND); @@ -133,7 +133,7 @@ int how; else { if(how == POTION) { - print(fd, "ÀÌ ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ì�´ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다."); return(0); } @@ -147,7 +147,7 @@ int how; cmnd->str[2], cmnd->str[2]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 사람ì�´ 존재하지 않습니다."); return(0); } } @@ -158,11 +158,11 @@ int how; F_CLR(crt_ptr, PBLIND); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº %MÀÇ À̸¶¿¡ °³¾ÈºÎ¸¦ ºÙÈ÷°í¼­ ÁÖ¹®À» \n¿Ü¿ó´Ï´Ù.\n±×ÀÇ °¨°å´ø ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©ÀÚ±â È® ¶å´Ï´Ù.", crt_ptr); + print(fd, "당신ì�€ %Mì�˜ ì�´ë§ˆì—� 개안부를 붙히고서 주문ì�„ \n외ì›�니다.\nê·¸ì�˜ ê°�ê²¼ë�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 확 뜹니다.", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %MÀÇ À̸¶¿¡ °³¾ÈºÎ¸¦ ºÙÈ÷°í¼­ \nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×ÀÇ °¨°å´ø ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©ÀÚ±â È® ¶å´Ï´Ù.\n", + "\n%Mì�´ %Mì�˜ ì�´ë§ˆì—� 개안부를 붙히고서 \n주문ì�„ 외ì›�니다.\nê·¸ì�˜ ê°�ê²¼ë�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 확 뜹니다.\n", ply_ptr, crt_ptr); - print(crt_ptr->fd, "%MÀÌ ´ç½ÅÀÇ À̸¶¿¡ °³¾ÈºÎ¸¦ ºÙÈ÷°í¼­ ÁÖ¹®À»\n¿Ü¿ó´Ï´Ù.\n°¨°å´ø ´ç½ÅÀÇ ´«ÀÌ ¿òÂñ°Å¸®´Ù°¡ °©ÀÚ±â ¹à¾ÆÁý´Ï´Ù.\n", ply_ptr); + print(crt_ptr->fd, "%Mì�´ 당신ì�˜ ì�´ë§ˆì—� 개안부를 붙히고서 주문ì�„\n외ì›�니다.\nê°�ê²¼ë�˜ 당신ì�˜ 눈ì�´ 움찔거리다가 ê°‘ìž�기 ë°�아집니다.\n", ply_ptr); } } @@ -192,24 +192,24 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 15 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다"); return(0); } if(!S_ISSET(ply_ptr, SBLIND) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다."); return(0); } if(ply_ptr->classrom_num, "\n%MÀÇ ¸ð½À´Ï ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.\n", + print(fd, "당신ì�˜ 모습ì�´ 드러납니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습니 나타나기 시작합니다.\n", ply_ptr); } if(spell_fail(ply_ptr)) { @@ -227,20 +227,20 @@ int how; F_SET(ply_ptr,PBLIND); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº µÎ¼Õ°¡¶ôÀ» µ¶¼ö¸® ¹ßÅé¸ð¾çÀ» ÇÏ°í¼­ ½Ç¸í\nÁÖ¹®À» °É¾ú½À´Ï´Ù.\n¼Õ°¡¶ô¿¡¼­ °ËÀº¾È°³°°Àº ±â¿îÀÌ ³ª¿Í ´ç½ÅÀÇ ´«À» Â´Ï´Ù.\n¾Ç~~~ ³»´«.. ´ç½ÅÀÇ ´«ÀÌ ¶°ÁöÁú ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ ë‘�ì†�ê°€ë�½ì�„ ë�…수리 발톱모양ì�„ 하고서 실명\n주문ì�„ 걸었습니다.\nì†�ê°€ë�½ì—�서 ê²€ì�€ì•ˆê°œê°™ì�€ 기운ì�´ 나와 당신ì�˜ 눈ì�„ 찌릅니다.\nì•…~~~ 내눈.. 당신ì�˜ 눈ì�´ 떠지질 않습니다."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ µÎ¼Õ°¡¶ôÀ» µ¶¼ö¸® ¹ßÅé¸ð¾çÀ» ÇÏ°í¼­ ½Ç¸í\nÁÖ¹®À» °É¾ú½À´Ï´Ù.\n¼Õ°¡¶ô¿¡¼­ °ËÀº¾È°³°°Àº ±â¿îÀÌ ±×ÀÇ ´«À» ÂÀÚ\n±«¼ºÀ» Áö¸¨´Ï´Ù. ¾Ç~~ ³»´«..", + "\n%Mì�´ ë‘�ì†�ê°€ë�½ì�„ ë�…수리 발톱모양ì�„ 하고서 실명\n주문ì�„ 걸었습니다.\nì†�ê°€ë�½ì—�서 ê²€ì�€ì•ˆê°œê°™ì�€ 기운ì�´ ê·¸ì�˜ 눈ì�„ 찌르ìž�\n괴성ì�„ 지릅니다. ì•…~~ 내눈..", ply_ptr); } else if(how == POTION) - print(fd, "°©Àڱ⠴ç½ÅÀÇ ´«ÀÌ °¨±â´õ´Ï ´«ÀÌ ¶°ÁöÁú ¾Ê½À´Ï´Ù."); + print(fd, "ê°‘ìž�기 당신ì�˜ 눈ì�´ ê°�기ë�”니 눈ì�´ 떠지질 않습니다."); } /* blind a monster or player */ else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다."); return(0); } @@ -254,15 +254,15 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[2]) < 3) { - print(fd, "±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 사람ì�´ 존재하지 않습니다."); return(0); } } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¿¡°Ô ÁÖ¼úÀ» °É ¼ö ¾ø½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %sì—�게 주술ì�„ 걸 수 없습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -272,12 +272,12 @@ int how; F_SET(crt_ptr,MBLIND); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀÇ ¼Õ°¡¶ôÀ» %MÀÇ ´«À» ÇâÇÏ°í¼­ ½Ç¸í \nÁÖ¹®¸¦ ¿Ü¿ó´Ï´Ù.\n°ËÀº¾È°³°°Àº ±â¿îÀÌ ¼Õ°¡¶ô¿¡¼­ ³ª¿Í ±×ÀÇ ´«À»\nÂÀÚ ±«¼ºÀ» Áö¸¨´Ï´Ù. ¾Ç~~ ³»´«..\n", crt_ptr); + print(fd, "당신ì�˜ ì†�ê°€ë�½ì�„ %Mì�˜ 눈ì�„ 향하고서 실명 \n주문를 외ì›�니다.\nê²€ì�€ì•ˆê°œê°™ì�€ 기운ì�´ ì†�ê°€ë�½ì—�서 나와 ê·¸ì�˜ 눈ì�„\n찌르ìž� 괴성ì�„ 지릅니다. ì•…~~ 내눈..\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ ¼Õ°¡¶ôÀ» %MÀÇ ´«À» ÇâÇÏ°í¼­ ½Ç¸í\nÁÖ¹®¸¦ ¿Ü¿ü½À´Ï´Ù.\n°ËÀº¾È°³°°Àº ±â¿îÀÌ ¼Õ°¡¶ô¿¡¼­ ³ª¿Í ±×ÀÇ ´«À» \nÂÀÚ ±«¼ºÀ» Áö¸¨´Ï´Ù. ¾Ç~~ ³»´«..\n", + "\n%Mì�´ ì†�ê°€ë�½ì�„ %Mì�˜ 눈ì�„ 향하고서 실명\n주문를 외웠습니다.\nê²€ì�€ì•ˆê°œê°™ì�€ 기운ì�´ ì†�ê°€ë�½ì—�서 나와 ê·¸ì�˜ 눈ì�„ \n찌르ìž� 괴성ì�„ 지릅니다. ì•…~~ 내눈..\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ¼Õ°¡¶ôÀ» ´ç½ÅÀÇ ´«À» ÇâÇÏ°í¼­ ½Ç¸í ÁÖ¹®¸¦ ¿Ü¿ó´Ï´Ù.\n°ËÀº¾È°³°°Àº ±â¿îÀÌ ¼Õ°¡¶ô¿¡¼­ ³ª¿Í ´ç½ÅÀÇ ´«À»\n ÂÀÚ ±«¼ºÀ» Áö¸¨´Ï´Ù. ¾Ç~~ ³»´«..\n´ç½ÅÀÇ ¾ÕÀÌ ´«ÀÌ °¨°Ü¼­ º¸ÀÌÁú ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ ì†�ê°€ë�½ì�„ 당신ì�˜ 눈ì�„ 향하고서 실명 주문를 외ì›�니다.\nê²€ì�€ì•ˆê°œê°™ì�€ 기운ì�´ ì†�ê°€ë�½ì—�서 나와 당신ì�˜ 눈ì�„\n 찌르ìž� 괴성ì�„ 지릅니다. ì•…~~ 내눈..\n당신ì�˜ 앞ì�´ 눈ì�´ ê°�겨서 ë³´ì�´ì§ˆ 않습니다.\n", ply_ptr); } @@ -309,19 +309,19 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 15 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù."); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다."); return(0); } if(!S_ISSET(ply_ptr, SFEARS) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다."); return(0); } if(F_ISSET(ply_ptr, PINVIS)) { F_CLR(ply_ptr, PINVIS); - print(fd, "´ç½ÅÀÇ ¸ð½ÀÀÌ µå·¯³³´Ï´Ù."); - broadcast_rom(fd, ply_ptr->rom_num, "\n%MÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª±â ½ÃÀÛÇÕ´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 드러납니다."); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 나타나기 시작합니다.", ply_ptr); } @@ -348,20 +348,20 @@ int how; F_SET(ply_ptr,PFEARS); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº ½Ç¼ö·Î Áö¿Á±¸½½À» ¶³¾î¶ß·È½À´Ï´Ù.\n°©Àڱ⠴ç½ÅÀÌ ¹«¼­¿öÇÏ´ø °ÍµéÀÌ ³ªÅ¸³ª ´ç½ÅÀ» µÑ·¯½Ô´Ï´Ù.\n¾Ç~~~ Àú¸®°¡~~ ´ç½ÅÀº °øÆ÷¿¡ ¶³±â ½ÃÀÛÇÕ´Ï´Ù.\n"); + print(fd, "당신ì�€ 실수로 지옥구슬ì�„ 떨어뜨렸습니다.\nê°‘ìž�기 당신ì�´ 무서워하ë�˜ 것들ì�´ 나타나 당신ì�„ 둘러쌉니다.\nì•…~~~ 저리가~~ 당신ì�€ ê³µí�¬ì—� 떨기 시작합니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ½Ç¼ö·Î Áö¿Á±¸½½À» ¶³¾î¶ß·È½À´Ï´Ù.\n°©Àڱ⠱¸½½ÀÌ ÆãÇϰí ÅÍÁö´õ´Ï °©Àڱ⠱װ¡ ±«¼ºÀ»\nÁö¸£±â ½ÃÀÛÇÕ´Ï´Ù. ¾Ç~~~ Àú¸®°¡~~\n±×°¡ °øÆ÷¿¡ ¶³±â ½ÃÀÛÇϴµ¥ ´ç½ÅÀÇ ´«¿¡´Â ¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù.", + "\n%Mì�´ 실수로 지옥구슬ì�„ 떨어뜨렸습니다.\nê°‘ìž�기 구슬ì�´ 펑하고 í„°ì§€ë�”니 ê°‘ìž�기 그가 괴성ì�„\n지르기 시작합니다. ì•…~~~ 저리가~~\n그가 ê³µí�¬ì—� 떨기 시작하는ë�° 당신ì�˜ 눈ì—�는 아무것ë�„ ë³´ì�´ì§€ 않습니다.", ply_ptr); } else if(how == POTION) - print(fd, "°©Àڱ⠴ç½ÅÀÌ ¹«¼­¿öÇÏ´ø °ÍµéÀÌ ³ªÅ¸³ª ´ç½ÅÀ» µÑ·¯½Ô´Ï´Ù.\n¾Ç~~~ Àú¸®°¡~~ ´ç½ÅÀº °øÆ÷¿¡ ¶³±â ½ÃÀÛÇÕ´Ï´Ù."); + print(fd, "ê°‘ìž�기 당신ì�´ 무서워하ë�˜ 것들ì�´ 나타나 당신ì�„ 둘러쌉니다.\nì•…~~~ 저리가~~ 당신ì�€ ê³µí�¬ì—� 떨기 시작합니다."); } /* fear a monster or player */ else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다."); return(0); } @@ -375,20 +375,20 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[2]) < 3) { - print(fd, "±×·± »ç¶÷ÀÌ Á¸Àç ÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 사람ì�´ 존재 하지 않습니다."); return(0); } } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "´ç½ÅÀº %s¿¡°Ô ÁÖ¼úÀ» °É ¼ö ¾ø½À´Ï´Ù.", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "당신ì�€ %sì—�게 주술ì�„ 걸 수 없습니다.", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MPERMT)) { - print(fd, "%MÀÇ ÁÖÀ§¿¡ °øÆ÷ÀÇ ±â¿îÀÌ µÑ·¯½Ô´Ï´Ù.\nÇÏÁö¸¸, ±×°¡ ±âÇÕÀ» Áö¸£ÀÚ ±Ý»õ ±× ±â¿îÀÌ »ç¶óÁ³½À´Ï´Ù.",crt_ptr); + print(fd, "%Mì�˜ 주위ì—� ê³µí�¬ì�˜ 기운ì�´ 둘러쌉니다.\n하지만, 그가 기합ì�„ 지르ìž� 금새 ê·¸ 기운ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.",crt_ptr); return(0); } @@ -404,12 +404,12 @@ int how; F_SET(crt_ptr,MFEARS); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº Áö¿Á±¸¼úÀ» %M¿¡°Ô ´øÁ³½À´Ï´Ù.\n±¸½½ÀÌ ÆãÇϰí ÅÍÁö¸é¼­ °øÆ÷ÀÇ ±â¿îÀÌ ±×¸¦ µÑ·¯½Ô´Ï´Ù.\n¾Ç~~~ Àú¸®°¡~~ °©Àڱ⠱װ¡ ±«¼ºÀ» Áö¸£¸é¼­ °øÆ÷¿¡\n¶³±â ½ÃÀÛÇÕ´Ï´Ù.\n", crt_ptr); + print(fd, "당신ì�€ 지옥구술ì�„ %Mì—�게 ë�˜ì¡ŒìŠµë‹ˆë‹¤.\n구슬ì�´ 펑하고 터지면서 ê³µí�¬ì�˜ 기운ì�´ 그를 둘러쌉니다.\nì•…~~~ 저리가~~ ê°‘ìž�기 그가 괴성ì�„ 지르면서 ê³µí�¬ì—�\n떨기 시작합니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô Áö¿Á±¸¼úÀ» ´øÁ³½À´Ï´Ù.\n±¸½½ÀÌ ÆãÇϰí ÅÍÁöÀÚ °©Àڱ⠱װ¡ ±«¼ºÀ» Áö¸¨´Ï´Ù. ¾Ç~~~ Àú¸®°¡~~\n±×´Â °øÆ÷¿¡ ¶³Áö¸¸ ´ç½ÅÀÇ ´«¿¡´Â ¾Æ¹«°Íµµ º¸ÀÌÁö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ %Mì—�게 지옥구술ì�„ ë�˜ì¡ŒìŠµë‹ˆë‹¤.\n구슬ì�´ 펑하고 í„°ì§€ìž� ê°‘ìž�기 그가 괴성ì�„ 지릅니다. ì•…~~~ 저리가~~\n그는 ê³µí�¬ì—� 떨지만 당신ì�˜ 눈ì—�는 아무것ë�„ ë³´ì�´ì§€ 않습니다.\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ ´ç½Å¿¡°Ô Áö¿Á±¸½½À» ´øÁ³½À´Ï´Ù.\n°©Àڱ⠴ç½ÅÀÌ ¹«¼­¿öÇÏ´ø °ÍµéÀÌ ³ªÅ¸³ª ´ç½ÅÀ» µÑ·¯½Ô´Ï´Ù.\n\"¾Ç~~~ Àú¸®°¡~~\" ´ç½ÅÀº ±«¼ºÀ» Áö¸£¸ç °øÆ÷¿¡ ¶³±â\n½ÃÀÛÇÕ´Ï´Ù.\n", + "\n%Mì�´ 당신ì—�게 지옥구슬ì�„ ë�˜ì¡ŒìŠµë‹ˆë‹¤.\nê°‘ìž�기 당신ì�´ 무서워하ë�˜ 것들ì�´ 나타나 당신ì�„ 둘러쌉니다.\n\"ì•…~~~ 저리가~~\" 당신ì�€ 괴성ì�„ 지르며 ê³µí�¬ì—� 떨기\n시작합니다.\n", ply_ptr); } @@ -424,7 +424,7 @@ int how; /**********************************************************************/ -/* silence(ºÀÇÕ±¸) */ +/* silence(봉합구) */ /**********************************************************************/ /* Silence causes a player or monster to lose their voice, makin them */ /* unable to casts spells, use scrolls, speak, yell, or broadcast */ @@ -442,24 +442,24 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù."); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다."); return(0); } if(!S_ISSET(ply_ptr, SSILNC) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(ply_ptr->classrom_num, "\n%MÀÇ ¸ð½ÀÀÌ ³ªÅ¸³ª°³ ½ÃÀÛÇÕ´Ï´Ù.", + print(fd, "당신ì�˜ 모습ì�´ 드러납니다.\n"); + broadcast_rom(fd, ply_ptr->rom_num, "\n%Mì�˜ 모습ì�´ 나타나개 시작합니다.", ply_ptr); } @@ -486,20 +486,20 @@ int how; F_SET(ply_ptr,PSILNC); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº ½Ç¼ö·Î ºÀÇÕ±¸ ÁÖ¹®À» Àڽſ¡°Ô °É¾ú½À´Ï´Ù.\n¾ï... ´ç½ÅÀº ÀÔÀ» ¹ú·Á ¸»À» ÇÏ·Á ÇÏÁö¸¸ ¸ñ¼Ò¸®°¡\n»ç¶óÁ³½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ 실수로 봉합구 주문ì�„ ìž�ì‹ ì—�게 걸었습니다.\nì–µ... 당신ì�€ ìž…ì�„ 벌려 ë§�ì�„ 하려 하지만 목소리가\n사ë�¼ì¡ŒìŠµë‹ˆë‹¤.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ½Ç¼ö·Î ºÀÇÕ±¸ ÁÖ¹®À» Àڽſ¡°Ô °É¾ú½À´Ï´Ù.\n±×´Â ÀÔÀ» ¹ú·Á ¸»À» ÇÏ·Á ÇÏÁö¸¸ ¸ñ¼Ò¸®°¡ µé¸®Áö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ 실수로 봉합구 주문ì�„ ìž�ì‹ ì—�게 걸었습니다.\n그는 ìž…ì�„ 벌려 ë§�ì�„ 하려 하지만 목소리가 들리지 않습니다.\n", ply_ptr); } else if(how == POTION) - print(fd, "\n´ç½ÅÀÌ ¸ÔÀº°ÍÀÌ ¸ñ¿¡ °É·Á ¸ñ¼Ò¸®°¡ ³ª¿ÀÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n당신ì�´ 먹ì�€ê²ƒì�´ 목ì—� 걸려 목소리가 나오지 않습니다.\n"); } /* silence a monster or player */ else { if(how == POTION) { - print(fd, "\n±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다.\n"); return(0); } @@ -513,15 +513,15 @@ int how; if(!crt_ptr || crt_ptr == ply_ptr || strlen(cmnd->str[2]) < 3) { - print(fd, "\n±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù.\n"); + print(fd, "\n그런 사람ì�´ 존재하지 않습니다.\n"); return(0); } } if(crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MUNKIL)) { - print(fd, "\n´ç½ÅÀº %s¿¡°Ô ÁÖ¼úÀ» °É ¼ö ¾ø½À´Ï´Ù.\n", - F_ISSET(crt_ptr, MMALES) ? "±×":"±×³à"); + print(fd, "\n당신ì�€ %sì—�게 주술ì�„ 걸 수 없습니다.\n", + F_ISSET(crt_ptr, MMALES) ? "ê·¸":"그녀"); return(0); } @@ -537,12 +537,12 @@ int how; F_SET(crt_ptr,MSILNC); if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "\n´ç½ÅÀº Àì½Î°Ô ÂѾư¡ %MÀÇ ¸ñÀ» Ä¡¸é¼­ \nºÀÇÕ±¸ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â ÀÔÀ» ¹ú·Á ¸»À» ÇÏ·Á ÇÏÁö¸¸ ¸ñ¼Ò¸®°¡ µéÀÌÁö ¾Ê½À´Ï´Ù.\n", crt_ptr); + print(fd, "\n당신ì�€ 잽싸게 ì«“ì•„ê°€ %Mì�˜ 목ì�„ 치면서 \n봉합구 주문ì�„ 외ì›�니다.\n그는 ìž…ì�„ 벌려 ë§�ì�„ 하려 하지만 목소리가 들ì�´ì§€ 않습니다.\n", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ Àì½Î°Ô ÂѾư¡ %MÀÇ ¸ñÀ» Ä¡¸é¼­ \nºÀÇÕ±¸ ÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n±×´Â ÀÔÀ» ¹ú·Á ¸»À» ÇÏ·Á ÇÏÁö¸¸ ¸ñ¼Ò¸®°¡ µéÀÌÁö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ 잽싸게 ì«“ì•„ê°€ %Mì�˜ 목ì�„ 치면서 \n봉합구 주문ì�„ 외ì›�니다.\n그는 ìž…ì�„ 벌려 ë§�ì�„ 하려 하지만 목소리가 들ì�´ì§€ 않습니다.\n", ply_ptr, crt_ptr); print(crt_ptr->fd, - "\n%MÀÌ Àì½Î°Ô ÂÑ¾Æ¿Í ´ç½ÅÀÇ ¸ñÀ» Ä¡¸é¼­ ºÀÇÕ±¸\nÁÖ¹®À» ¿Ü¿ó´Ï´Ù.\n´ç½ÅÀº ÀÔÀ» ¹ú·Á ¸»À» ÇÏ·Á ÇÏÁö¸¸ ¸ñ¼Ò¸®°¡ µéÀÌÁö ¾Ê½À´Ï´Ù.\n", + "\n%Mì�´ 잽싸게 쫓아와 당신ì�˜ 목ì�„ 치면서 봉합구\n주문ì�„ 외ì›�니다.\n당신ì�€ ìž…ì�„ 벌려 ë§�ì�„ 하려 하지만 목소리가 들ì�´ì§€ 않습니다.\n", ply_ptr); } @@ -572,18 +572,18 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 12 && how == CAST) { - print(fd, "\n´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù\n"); + print(fd, "\n당신ì�˜ ë�„ë ¥ì�´ 부족합니다\n"); return(0); } if(ply_ptr->class != CLERIC && ply_ptr->class != PALADIN && ply_ptr->class < INVINCIBLE && how == CAST) { - print(fd, "\nÀÌ ÁÖ¼úÀº ºÒÁ¦ÀÚ¿Í ¹«»ç¸¸ÀÌ »ç¿ëÇÒ ¼ö ÀÖ½À´Ï´Ù.\n"); + print(fd, "\nì�´ 주술ì�€ 불제ìž�와 무사만ì�´ 사용할 수 있습니다.\n"); return(0); } if(!S_ISSET(ply_ptr, SRMDIS) && how == CAST) { - print(fd, "\n´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù.\n"); + print(fd, "\n당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다.\n"); return(0); } if(spell_fail(ply_ptr)) { @@ -602,7 +602,7 @@ if(spell_fail(ply_ptr)) { broadcast_rom(fd, ply_ptr->rom_num, "\n%M cast remove blindness on %sself.", ply_ptr, - F_ISSET(ply_ptr, PMALES) ? "±×":"±×³à"); + F_ISSET(ply_ptr, PMALES) ? "ê·¸":"그녀"); } else if(how == POTION & F_ISSET(ply_ptr, PBLIND)) print(fd, "You can see.\n"); @@ -656,7 +656,7 @@ if(spell_fail(ply_ptr)) { } /**********************************************************************/ -/* charm (ÀÌÈ¥´ë¹ý) */ +/* charm (ì�´í˜¼ëŒ€ë²•) */ /**********************************************************************/ int charm(ply_ptr, cmnd, how) @@ -672,17 +672,17 @@ int how; rom_ptr = ply_ptr->parent_rom; if(ply_ptr->mpcur < 15 && how == CAST) { - print(fd, "´ç½ÅÀÇ µµ·ÂÀÌ ºÎÁ·ÇÕ´Ï´Ù"); + print(fd, "당신ì�˜ ë�„ë ¥ì�´ 부족합니다"); return(0); } if(!S_ISSET(ply_ptr, SCHARM) && how == CAST) { - print(fd, "´ç½ÅÀº ¾ÆÁ÷ ±×·± ÁÖ¹®À» Å͵æÇÏÁö ¸øÇß½À´Ï´Ù."); + print(fd, "당신ì�€ ì•„ì§� 그런 주문ì�„ í„°ë“�하지 못했습니다."); return(0); } if(F_ISSET(rom_ptr, RSUVIV)) { - print(fd, "´ë·ÃÀå¿¡¼­´Â ÀÌ ÁÖ¹®À» »ç¿ëÇÒ ¼ö ¾ø½À´Ï´Ù."); + print(fd, "대련장ì—�서는 ì�´ 주문ì�„ 사용할 수 없습니다."); return(0); } if(how == CAST) { @@ -706,13 +706,13 @@ int how; ply_ptr->lasttime[LT_CHRMD].interval = dur; if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº ½É½ÉÇØ¼­ °Å¿ïÀ» º¸¸ç ÀÌÈ¥´ë¹ýÀ» »ç¿ëÇÕ´Ï´Ù.\n±âºÐÀÌ ÁÁ¾ÆÁö¸é¼­ ±¦È÷ ¸Â¾Æµµ ȲȦÇÑ ±âºÐÀÌ\nµì´Ï´Ù. ³ª Á» ¶§·ÁÁà.."); + print(fd, "당신ì�€ 심심해서 거울ì�„ ë³´ë©° ì�´í˜¼ëŒ€ë²•ì�„ 사용합니다.\n기분ì�´ 좋아지면서 괜히 ë§žì•„ë�„ 황홀한 기분ì�´\n듭니다. 나 좀 때려줘.."); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ÀÌÈ¥´ë¹ýÀÇ ÁÖ¼úÀ» °Å´Â °Å¿ïÀ» º¾´Ï´Ù.\n°Å¿ïÀ» º¸°í³ªÀÚ ´ç½ÅÀ» º¸¸é¼­ ±¦È÷ È÷Á×È÷Á×\n°Å¸³´Ï´Ù. ÀÌ ÀÚ½Ä ¹ÌÃÆ³ª?", + "\n%Mì�´ ì�´í˜¼ëŒ€ë²•ì�˜ 주술ì�„ 거는 거울ì�„ 봅니다.\n거울ì�„ 보고나ìž� 당신ì�„ 보면서 괜히 히죽히죽\n거립니다. ì�´ ìž�ì‹� 미쳤나?", ply_ptr); } else if(how == POTION) - print(fd, "±âºÐÀÌ ÁÁ¾ÆÁö¸é¼­ ±¦È÷ ¸Â¾Æµµ ȲȦÇÑ ±âºÐÀÌ\nµì´Ï´Ù. ³ª Á» ¶§·ÁÁà.."); + print(fd, "기분ì�´ 좋아지면서 괜히 ë§žì•„ë�„ 황홀한 기분ì�´\n듭니다. 나 좀 때려줘.."); } @@ -720,7 +720,7 @@ int how; else { if(how == POTION) { - print(fd, "±× ¹°°ÇÀº Àڽſ¡°Ô¸¸ »ç¿ëÇÒ¼ö ÀÖ½À´Ï´Ù."); + print(fd, "ê·¸ 물건ì�€ ìž�ì‹ ì—�게만 사용할수 있습니다."); return(0); } @@ -734,7 +734,7 @@ int how; cmnd->str[2], cmnd->val[2]); if(!crt_ptr) { - print(fd, "±×·± »ç¶÷ÀÌ Á¸ÀçÇÏÁö ¾Ê½À´Ï´Ù."); + print(fd, "그런 사람ì�´ 존재하지 않습니다."); return(0); } } @@ -746,22 +746,22 @@ int how; (crt_ptr->type != PLAYER && F_ISSET(crt_ptr, MRMAGI))) dur /= 2; if((ply_ptr->level < crt_ptr->level) || F_ISSET(crt_ptr, MNOCHA)) { - print(fd, "»ó´ëÀÇ ±â°¡ ´ç½ÅÀÇ ÁÖ¹®À» ¹Ýź½Ãŵ´Ï´Ù."); + print(fd, "ìƒ�대ì�˜ 기가 당신ì�˜ 주문ì�„ 반탄시킵니다."); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\%MÀÌ ÀÌÈ¥´ë¹ýÀ» %M¿¡°Ô °É·Á°í ÇÕ´Ï´Ù.\n", + "\%Mì�´ ì�´í˜¼ëŒ€ë²•ì�„ %Mì—�게 걸려고 합니다.\n", ply_ptr, crt_ptr); if(crt_ptr->type == PLAYER) - print(crt_ptr->fd, "%MÀÌ ´ç½Å¿¡°Ô ÀÌÈ¥´ë¹ýÀ» °ÉÀ¸·Á ÇÕ´Ï´Ù.\n",ply_ptr); + print(crt_ptr->fd, "%Mì�´ 당신ì—�게 ì�´í˜¼ëŒ€ë²•ì�„ 걸으려 합니다.\n",ply_ptr); return(0); } if(how == CAST || how == SCROLL || how == WAND) { - print(fd, "´ç½ÅÀº %M¿¡°Ô °Å¿ïÀ» ºñÃ߸ç ÀÌÈ¥´ë¹ýÀ» °Ì´Ï´Ù.\n°Å¿ïÀ» º¸°í³ªÀÚ ´ç½ÅÀ» º¸¸é¼­ ±¦È÷ È÷Á×È÷Á×\n°Å¸³´Ï´Ù. µåµð¾î ¸À °¬±º.", crt_ptr); + print(fd, "당신ì�€ %Mì—�게 거울ì�„ 비추며 ì�´í˜¼ëŒ€ë²•ì�„ ê²�니다.\n거울ì�„ 보고나ìž� 당신ì�„ 보면서 괜히 히죽히죽\n거립니다. 드디어 ë§› 갔군.", crt_ptr); broadcast_rom2(fd, crt_ptr->fd, ply_ptr->rom_num, - "\n%MÀÌ %M¿¡°Ô °Å¿ïÀ» ºñÃ߸ç ÀÌÈ¥´ë¹ýÀ» °Ì´Ï´Ù.\n°Å¿ïÀ» º¸°í³ªÀÚ ´ç½ÅÀ» º¸¸é¼­ ±¦È÷ È÷Á×È÷Á×\n°Å¸³´Ï´Ù. Àú ÀÚ½ÄÀÌ ¹ÌÃÆ³ª?", + "\n%Mì�´ %Mì—�게 거울ì�„ 비추며 ì�´í˜¼ëŒ€ë²•ì�„ ê²�니다.\n거울ì�„ 보고나ìž� 당신ì�„ 보면서 괜히 히죽히죽\n거립니다. ì € ìž�ì‹�ì�´ 미쳤나?", ply_ptr, crt_ptr); - print(crt_ptr->fd, "\n%MÀÌ ´ç½Å¿¡°Ô °Å¿ïÀ» ºñÃ߸ç ÀÌÈ¥´ë¹ýÀ» °Ì´Ï´Ù.\n±¦È÷ ±âºÐÀÌ ÁÁ¾ÆÁö¸é¼­ ¸Â¾Æµµ ȲȦÇÑ ±âºÐÀÌ\nµì´Ï´Ù. ³ª Á» ¶§·ÁÁà..", ply_ptr); + print(crt_ptr->fd, "\n%Mì�´ 당신ì—�게 거울ì�„ 비추며 ì�´í˜¼ëŒ€ë²•ì�„ ê²�니다.\n괜히 기분ì�´ 좋아지면서 ë§žì•„ë�„ 황홀한 기분ì�´\n듭니다. 나 좀 때려줘..", ply_ptr); add_charm_crt(crt_ptr, ply_ptr); crt_ptr->lasttime[LT_CHRMD].ltime = time(0); @@ -804,7 +804,7 @@ switch(ply_ptr->class) { case ASSASSIN: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5)+30; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -813,7 +813,7 @@ switch(ply_ptr->class) { case BARBARIAN: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5); if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -831,7 +831,7 @@ switch(ply_ptr->class) { case CLERIC: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5)+65; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -840,7 +840,7 @@ switch(ply_ptr->class) { case FIGHTER: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5)+10; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -849,7 +849,7 @@ switch(ply_ptr->class) { case MAGE: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5)+75; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -858,7 +858,7 @@ switch(ply_ptr->class) { /* case MONK: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*6)+25; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐ Çß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패 했습니다."); return(1); } else @@ -867,7 +867,7 @@ switch(ply_ptr->class) { case PALADIN: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*5)+50; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -876,7 +876,7 @@ switch(ply_ptr->class) { case RANGER: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*4)+56; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else @@ -885,7 +885,7 @@ switch(ply_ptr->class) { case THIEF: chance = ((((ply_ptr->level+3)/4)+bonus[ply_ptr->intelligence])*6)+22; if(n>chance) { - print(fd,"´ç½ÅÀÇ ÁÖ¹®ÀÌ ½ÇÆÐÇß½À´Ï´Ù."); + print(fd,"당신ì�˜ 주문ì�´ 실패했습니다."); return(1); } else diff --git a/src/main.c b/src/main.c index 85cf14fe..9cc17fb1 100644 --- a/src/main.c +++ b/src/main.c @@ -84,8 +84,8 @@ char *argv[]; { long c; c = time(0); - log_f("--- ¸Óµå ½ÃÀÛ: %d --- (%.24s)\n", Port, ctime(&c)); - //log_overwrite("command.log","--- Àç½ÃÀÛ ---"); + log_f("--- 머드 시작: %d --- (%.24s)\n", Port, ctime(&c)); + //log_overwrite("command.log","--- 재시작 ---"); } sock_loop(); diff --git a/src/mextern.h b/src/mextern.h index 131b724f..38fa08a6 100644 --- a/src/mextern.h +++ b/src/mextern.h @@ -19,7 +19,7 @@ #ifndef MIGNORE -/* ÀüÀï Ç÷¹±× ¿ÜºÎº¯¼ö ¼±¾ð */ +/* ì „ìŸ� 플레그 외부변수 ì„ ì–¸ */ extern int AT_WAR; extern int CALLWAR1; extern int CALLWAR2; @@ -90,7 +90,7 @@ extern int family_gold[16]; #endif /* alias.c */ -#define MAX_ALIAS_BUF 64 /* ÇÑ ÁÙÀÓ¸»³»ÀÇ ¸í·É¾î ÃÖ´ë °¹¼ö */ +#define MAX_ALIAS_BUF 64 /* 한 줄임ë§�ë‚´ì�˜ 명령어 최대 갯수 */ extern int ply_aliases(); extern int alias_cmd(); @@ -318,7 +318,8 @@ extern int dm_dust(), dm_follow(), dm_attack(), list_enm(), list_charm(); /* PLAYER.C */ -extern void init_ply(), uninit_ply(), update_ply(), up_level(), +extern int init_ply(); +extern void uninit_ply(), update_ply(), up_level(), down_level(), add_obj_crt(), del_obj_crt(), compute_ac(), compute_thaco(); extern char *title_ply(), *ply_prompt(); @@ -375,6 +376,17 @@ extern int low(), up(), dice(), exp_to_lev(), dec_daily(), sort_cmp(), file_exists(), is_number_str(); extern char *crt_str(), *obj_str(); +/* UTF8_TEXT.C */ + +extern int utf8_validate(), utf8_ends_with(), utf8_prev_char_start(), + utf8_has_jongseong_last(); +extern unsigned long utf8_codepoint_len(); + +/* PLAYER_PATH.C */ + +extern int player_path_from_name(), player_path_ensure_dir(), + player_name_is_valid(); + /* SPECIAL1.C */ extern int call_war(), special_obj(), special_read(), is_bad_item(), special_cmd(); diff --git a/src/misc.c b/src/misc.c index 1bc73eaf..b593b5cf 100644 --- a/src/misc.c +++ b/src/misc.c @@ -135,12 +135,12 @@ int num, flag; if(crt->type != MONSTER) { if(((F_ISSET(crt, PINVIS) || F_ISSET(crt, PDMINV)) && !(flag & 2)) || F_ISSET(crt, PDMINV) && !(flag&DMF)) - strcpy(str,"´©±º°¡"); + strcpy(str,"누군가"); else { strcpy(str, crt->name); if(F_ISSET(crt, PINVIS)) strcat(str, "(*)"); - if(!(flag&CAP)) strcat(str,"´Ô"); + if(!(flag&CAP)) strcat(str,"님"); } return(str); } @@ -173,7 +173,7 @@ int num, flag; str[0] = up(str[0]); */ if((flag & MAG) && (crt->type != PLAYER) && (F_ISSET(crt, MMAGIC))) - strcat(str, "(ÁÖ¹®)"); + strcat(str, "(주문)"); return(str); @@ -199,7 +199,7 @@ int num, flag; str = xstr[xnum]; xnum = (xnum + 1)%5; - /* ¾ÆÀÌÅÛ À̸§ µÚ¿¡ °ø¹é ¾ø¾Ú... */ + /* ì•„ì�´í…œ ì�´ë¦„ ë’¤ì—� 공백 없앰... */ for(i=strlen(obj->name)-1;i>=0;i--) { if(obj->name[i]!=' ') break; } @@ -221,7 +221,7 @@ int num, flag; /* if(F_ISSET(obj, ONOPRE) || obj->type == MONEY) strcpy(str, ""); else if(F_ISSET(obj, OSOMEA)) - strcpy(str, "¾à°£ÀÇ "); + strcpy(str, "약간ì�˜ "); else { ch = low(obj->name[0]); if(ch == 'a' || ch == 'e' || ch == 'i' || ch == 'o' || @@ -244,7 +244,7 @@ int num, flag; strcat(str, obj->name); - /* Çѱۿ¡¼­´Â º¹¼ö ºÒÇÊ¿ä. + /* 한글ì—�서는 복수 불필요. if(!F_ISSET(obj, ODROPS) && !F_ISSET(obj, OSOMEA)) { str[strlen(str)+1] = 0; str[strlen(str)+2] = 0; @@ -267,7 +267,7 @@ int num, flag; strcat(str, str2); } else if((flag & MAG) && obj->magicpower) - strcat(str, "(ÁÖ¹®)"); + strcat(str, "(주문)"); return(str); } @@ -342,7 +342,7 @@ char *str; strcpy(Ply[fd].extr->tempstr[1], str); ff = open(str, O_RDONLY, 0); if(ff < 0) { - print(fd, "È­ÀÏÀ» ÀÐÀ» ¼ö ¾ø½À´Ï´Ù.\n"); + print(fd, "í™”ì�¼ì�„ ì�½ì�„ 수 없습니다.\n"); RETURN(fd, command, 1); } line = 0; @@ -372,7 +372,7 @@ char *str; } if(n==FBUF || line>18) { F_SET(Ply[fd].ply, PREADI); - print(fd, "\n[¿£ÅÍ]¸¦ ´©¸£¼¼¿ä. ±×¸¸º¸½Ã·Á¸é [.]À» Ä¡¼¼¿ä: "); + print(fd, "\n[엔터]를 누르세요. 그만보시려면 [.]ì�„ 치세요: "); output_buf(); Ply[fd].io->intrpt &= ~1; } @@ -388,14 +388,14 @@ char *str; } case 2: if(str[0] == '.') { - print(fd, "Áß´ÜÇÕ´Ï´Ù.\n"); + print(fd, "중단합니다.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } offset = atol(Ply[fd].extr->tempstr[0]); ff = open(Ply[fd].extr->tempstr[1], O_RDONLY, 0); if(ff < 0) { - print(fd, "È­ÀÏÀÌ ¾ø½À´Ï´Ù. ½Å¿¡°Ô ¿¬¶ôÇØ ÁÖ¼¼¿ä.\n"); + print(fd, "í™”ì�¼ì�´ 없습니다. ì‹ ì—�게 ì—°ë�½í•´ 주세요.\n"); F_CLR(Ply[fd].ply, PREADI); RETURN(fd, command, 1); } @@ -427,7 +427,7 @@ char *str; } if(n==FBUF || line > 18) { F_SET(Ply[fd].ply, PREADI); - print(fd, "\n[¿£ÅÍ]¸¦ ´©¸£¼¼¿ä. ±×¸¸º¸½Ã·Á¸é [.]À» Ä¡¼¼¿ä: "); + print(fd, "\n[엔터]를 누르세요. 그만보시려면 [.]ì�„ 치세요: "); output_buf(); Ply[fd].io->intrpt &= ~1; } @@ -620,8 +620,8 @@ char *cur_time, *cur_name; lseek(fd, 0L, 2); lseek(fd2, 0L, 2); - sprintf(str, "%s : %s ´ÔÀÇ ¾ÆÀ̵ð·Î Á¢¼Ó½Ãµµ.\n", cur_time, cur_name); - sprintf(str2, "( %s )¿¡ Á¢¼Ó½Ãµµ°¡ ÀÖ¾ú½À´Ï´Ù.\n", cur_time); + sprintf(str, "%s : %s 님ì�˜ ì•„ì�´ë””로 ì ‘ì†�시ë�„.\n", cur_time, cur_name); + sprintf(str2, "( %s )ì—� ì ‘ì†�시ë�„ê°€ 있었습니다.\n", cur_time); write(fd, str, strlen(str)); write(fd2, str2, strlen(str2)); @@ -734,9 +734,9 @@ int fd; int duration; { if(duration == 1) - print(fd, "1Ãʸ¸ ±â´Ù¸®¼¼¿ä.\n"); + print(fd, "1초만 기다리세요.\n"); else - print(fd, "%dÃʵ¿¾È ±â´Ù¸®¼¼¿ä.\n", duration); + print(fd, "%dì´ˆë�™ì•ˆ 기다리세요.\n", duration); } /************************************************************************/ diff --git a/src/mstruct.h b/src/mstruct.h index 155855d8..3247d89f 100644 --- a/src/mstruct.h +++ b/src/mstruct.h @@ -211,13 +211,13 @@ typedef struct creature { ttag *first_tlk; /* List of talk responses */ struct room *parent_rom; /* Room creature is in */ - /* Ãß°¡ µ¥ÀÌÅÍ by Ǫ¸¥ÇÏ´Ã - ÃÑ 1024 ¹ÙÀÌÆ® : 1024/4 = 256 */ - /* °æ°í: 4¹ÙÀÌÆ® ´ÜÀ§·Î ¼öÁ¤, ¼öÁ¤ÈÄ 1024ÀÎÁö ¹Ýµå½Ã È®ÀÎ !! */ - /* ÄÄÆÄÀÏ·¯´Â 4ÀÇ ¹è¼ö·Î Á¤¸®ÇÕ´Ï´Ù. */ - /* char chr; char chr2; long num; ´Â ¸î¹ÙÀÌÆ®¸¦ ¸ÔÀ»±î¿ä? */ - /* 1 + 1 + 4 = 6 À̶ó°í ÇÏ¸é Æ²·È½À´Ï´Ù. */ + /* 추가 ë�°ì�´í„° by 푸른하늘 - ì´� 1024 ë°”ì�´íЏ : 1024/4 = 256 */ + /* 경고: 4ë°”ì�´íЏ 단위로 수정, 수정후 1024ì�¸ì§€ 반드시 확ì�¸ !! */ + /* 컴파ì�¼ëŸ¬ëŠ” 4ì�˜ 배수로 정리합니다. */ + /* char chr; char chr2; long num; 는 몇바ì�´íŠ¸ë¥¼ 먹ì�„까요? */ + /* 1 + 1 + 4 = 6 ì�´ë�¼ê³  하면 틀렸습니다. */ /* 1 + 1 + 2 + 4 = 8 - µÚ¿¡ 4¹ÙÀÌÆ®°¡ ¿À±â¶§¹®¿¡ °ø¹éÀ¸·Î 2¹ÙÀÌÆ®¸¦ ³Ö½À´Ï´Ù. */ + ë’¤ì—� 4ë°”ì�´íŠ¸ê°€ 오기때문ì—� 공백으로 2ë°”ì�´íŠ¸ë¥¼ 넣습니다. */ /* long __garbage[256]; */ diff --git a/src/mtype.h b/src/mtype.h index 04035e05..92967027 100644 --- a/src/mtype.h +++ b/src/mtype.h @@ -12,9 +12,9 @@ extern int Port; #define PORTNUM 4000 /* DM's name */ -#define DMNAME "Å×½ºÅ佺" -#define DMNAME2 "²É" -#define DMNAME3 "»Ç»Ç" +#define DMNAME "테스토스" +#define DMNAME2 "꽃" +#define DMNAME3 "뽀뽀" #define DMNAME4 "" #define DMNAME5 "" #define DMNAME6 "" @@ -22,7 +22,7 @@ extern int Port; /* I/O buffer sizes */ #define IBUFSIZE 1024 -#define OBUFSIZE 8192 /* ¿ø·¡ 8192 */ +#define OBUFSIZE 8192 /* ì›�래 8192 */ /* File permissions */ /*#define S_IWRITE 00660 */ @@ -150,10 +150,10 @@ extern int Port; #define DL_FHEAL 2 /* Daily heals */ #define DL_TRACK 3 /* Daily track spells */ #define DL_DEFEC 4 /* Daily defecations */ -#define DL_MARRI 8 /* °áÈ¥½Ä ¹øÈ£ */ -#define DL_EXPND 9 /* È®Àå¿ë(ÆÐ°Å¸®¿¡¼­ »ç¿ë) */ +#define DL_MARRI 8 /* 결혼ì‹� 번호 */ +#define DL_EXPND 9 /* 확장용(패거리ì—�서 사용) */ -#define MAXFAMILY 16 /* ÃÖ´ë ÆÐ°Å¸®ÀÇ ¼ýÀÚ */ +#define MAXFAMILY 16 /* 최대 패거리ì�˜ 숫ìž� */ /* Last-time specifications */ #define LT_INVIS 0 @@ -198,7 +198,7 @@ extern int Port; #define LT_SLAYE 38 #define LT_MEDIT 39 #define LT_BEFUD 40 -#define LT_SAYTLK 41 /* ¸»ÇÏ´Â ¸÷ÀÇ lasttime */ +#define LT_SAYTLK 41 /* ë§�하는 몹ì�˜ lasttime */ #define LT_UPDMG 42 #define LT_KICK 43 @@ -230,64 +230,64 @@ extern int Port; #define WIELD 20 /* Spell flags */ -#define SVIGOR 0 /* ȸº¹ */ -#define SHURTS 1 /* »èdz */ -#define SLIGHT 2 /* ¹ß±¤ */ -#define SCUREP 3 /* ÇØµ¶ */ -#define SBLESS 4 /* ¼ºÇöÁø */ -#define SPROTE 5 /* ¼öÈ£Áø */ -#define SFIREB 6 /* È­±Ã */ -#define SINVIS 7 /* ÀºµÐ¹ý */ -#define SRESTO 8 /* µµ·Â¹Ý */ -#define SDINVI 9 /* ÀºµÐ°¨Áö */ -#define SDMAGI 10 /* ÁÖ¹®°¨Áö */ -#define STELEP 11 /* ÃàÁö¹ý */ -#define SBEFUD 12 /* È¥µ¿ */ -#define SLGHTN 13 /* ³úÀü */ -#define SICEBL 14 /* µ¿¼³ÁÖ */ -#define SENCHA 15 /* ºùÀÇ */ -#define SRECAL 16 /* ±Íȯ */ -#define SSUMMO 17 /* ¼Òȯ */ -#define SMENDW 18 /* ¿ø±âȸº¹ */ -#define SFHEAL 19 /* ¿ÏÄ¡ */ -#define STRACK 20 /* ÃßÀû */ -#define SLEVIT 21 /* ºÎ¾ç¼ú */ -#define SRFIRE 22 /* ¹æ¿­Áø */ -#define SFLYSP 23 /* ºñÇà */ -#define SRMAGI 24 /* º¸¸¶Áø */ -#define SSHOCK 25 /* ±Çdz¼ú */ -#define SRUMBL 26 /* Áöµ¿¼ú */ -#define SBURNS 27 /* È­¼±µµ */ -#define SBLIST 28 /* ź¼ö°ø */ -#define SDUSTG 29 /* dz¸¶Çö */ -#define SWBOLT 30 /* ÆÄÃÊ½Ä */ -#define SCRUSH 31 /* ÆøÁø */ -#define SENGUL 32 /* ³«¼® */ -#define SBURST 33 /* ȭdz¼ú */ -#define SSTEAM 34 /* È­·æ´ëõ */ -#define SSHATT 35 /* ÅäÇÕ¼ú */ -#define SIMMOL 36 /* ÁÖÀÛÇö */ -#define SBLOOD 37 /* ¿­»çõ */ -#define STHUND 38 /* ÆÄõdz */ -#define SEQUAK 39 /* Áö¿ÁÆÐ */ -#define SFLFIL 40 /* žç¾È */ -#define SKNOWA 41 /* ¼±¾Ç°¨Áö */ -#define SREMOV 42 /* ÀúÁÖÇØ¼Ò */ -#define SRCOLD 43 /* ¹æÇÑÁø */ -#define SBRWAT 44 /* ¼ö»ý¼ú */ -#define SSSHLD 45 /* Áö¹æÈ£ */ -#define SLOCAT 46 /* õ¸®¾È */ -#define SDREXP 47 /* ¹éÄ¡¼ú */ -#define SRMDIS 48 /* Ä¡·á */ -#define SRMBLD 49 /* °³¾È¼ú */ -#define SFEARS 50 /* °øÆ÷ */ +#define SVIGOR 0 /* 회복 */ +#define SHURTS 1 /* ì‚­í’� */ +#define SLIGHT 2 /* 발광 */ +#define SCUREP 3 /* í•´ë�… */ +#define SBLESS 4 /* 성현진 */ +#define SPROTE 5 /* 수호진 */ +#define SFIREB 6 /* í™”ê¶� */ +#define SINVIS 7 /* ì�€ë‘”법 */ +#define SRESTO 8 /* ë�„력반 */ +#define SDINVI 9 /* ì�€ë‘”ê°�ì§€ */ +#define SDMAGI 10 /* 주문ê°�ì§€ */ +#define STELEP 11 /* 축지법 */ +#define SBEFUD 12 /* 혼ë�™ */ +#define SLGHTN 13 /* 뇌전 */ +#define SICEBL 14 /* ë�™ì„¤ì£¼ */ +#define SENCHA 15 /* ë¹™ì�˜ */ +#define SRECAL 16 /* 귀환 */ +#define SSUMMO 17 /* 소환 */ +#define SMENDW 18 /* ì›�기회복 */ +#define SFHEAL 19 /* 완치 */ +#define STRACK 20 /* ì¶”ì � */ +#define SLEVIT 21 /* 부양술 */ +#define SRFIRE 22 /* ë°©ì—´ì§„ */ +#define SFLYSP 23 /* 비행 */ +#define SRMAGI 24 /* 보마진 */ +#define SSHOCK 25 /* ê¶Œí’�술 */ +#define SRUMBL 26 /* ì§€ë�™ìˆ  */ +#define SBURNS 27 /* 화선ë�„ */ +#define SBLIST 28 /* 탄수공 */ +#define SDUSTG 29 /* í’�마현 */ +#define SWBOLT 30 /* 파초ì‹� */ +#define SCRUSH 31 /* í�­ì§„ */ +#define SENGUL 32 /* ë‚™ì„� */ +#define SBURST 33 /* í™”í’�술 */ +#define SSTEAM 34 /* 화룡대천 */ +#define SSHATT 35 /* 토합술 */ +#define SIMMOL 36 /* 주작현 */ +#define SBLOOD 37 /* 열사천 */ +#define STHUND 38 /* 파천í’� */ +#define SEQUAK 39 /* 지옥패 */ +#define SFLFIL 40 /* 태양안 */ +#define SKNOWA 41 /* ì„ ì•…ê°�ì§€ */ +#define SREMOV 42 /* 저주해소 */ +#define SRCOLD 43 /* 방한진 */ +#define SBRWAT 44 /* 수ìƒ�술 */ +#define SSSHLD 45 /* 지방호 */ +#define SLOCAT 46 /* 천리안 */ +#define SDREXP 47 /* 백치술 */ +#define SRMDIS 48 /* 치료 */ +#define SRMBLD 49 /* 개안술 */ +#define SFEARS 50 /* ê³µí�¬ */ #define SRVIGO 51 /* room vigor */ #define STRANO 52 /* item transport */ #define SBLIND 53 /* cause blindness */ #define SSILNC 54 /* cause silence */ #define SCHARM 55 /* charm person */ -#define SCURSE 56 /* ÀúÁÖ */ -/* #define SNAHAN 56 */ /* º¯¼ö³ªÇÑ±Ç */ +#define SCURSE 56 /* 저주 */ +/* #define SNAHAN 56 */ /* 변수나한권 */ /* Trap types */ #define TRAP_PIT 1 /* Pit trap */ #define TRAP_DART 2 /* Poison dart trap */ @@ -333,13 +333,13 @@ extern int Port; #define RPMEXT 32 /* Player magic spell extend */ #define RNOLOG 33 /* No player login */ #define RELECT 34 /* Election Booth */ -#define RFORGE 35 /* ¹«±â Á¦·Ã¼Ò */ -#define RSUVIV 36 /* ´ë·ÃÀå(¼­¹ÙÀ̹ú Á¸) */ -#define RFAMIL 37 /* ÆÐ°Å¸®Á¸ */ +#define RFORGE 35 /* 무기 제련소 */ +#define RSUVIV 36 /* 대련장(서바ì�´ë²Œ ì¡´) */ +#define RFAMIL 37 /* 패거리존 */ #define RONFML 38 /* Only Family */ -#define RBANK 39 /* ÀºÇà */ -#define RONMAR 40 /* °áÈ¥ÇÑ »ç¶÷¸¸ °¥¼ö ÀÖÀ½ */ -#define RMARRI 41 /* °áÈ¥½ÄÀå */ +#define RBANK 39 /* ì�€í–‰ */ +#define RONMAR 40 /* 결혼한 사람만 갈수 있ì�Œ */ +#define RMARRI 41 /* 결혼ì‹�장 */ /* Player flags */ #define PBLESS 0 /* Bless spell */ @@ -382,7 +382,7 @@ extern int Port; #define PBRWAT 37 /* Breathe wateR flag */ #define PSSHLD 38 /* Resist-cold flag */ #define PPLDGK 39 /* player pledge to a prince */ -#define PRDDIV 40 /* ÀÌÈ¥ ½Åû. */ +#define PRDDIV 40 /* ì�´í˜¼ ì‹ ì²­. */ #define PDISEA 41 /* Player is diseased */ #define PBLIND 42 /* Player is blind */ #define PFEARS 43 /* Player is fearful */ @@ -391,21 +391,21 @@ extern int Port; #define PLECHO 46 /* Local Echo mode enable */ #define PKNDM1 47 /* kingdome 1 */ #define PKNDM2 48 /* kingdome 2 */ -#define PBRSND 49 /* Àâ´ã Ƚ¼ö Á¦ÇÑÀÚ. */ -#define PNOBR2 50 /* °æ¸Å ¾Èµè±â */ -#define PBRIGH 51 /* ¹àÀº»ö »ç¿ë */ -#define PPOWER 52 /* ±â°øÁý°á power +3 */ -#define PSLAYE 53 /* »ì±âÃæÀü thac0 +3 */ -#define PMEDIT 54 /* Âü¼± intelligence +3 */ -#define PFAMIL 55 /* ÆÐ°Å¸® °¡ÀÔÀÚ */ -#define PRDFML 56 /* ÆÐ°Å¸® °¡ÀÔ ´ë±âÀÚ */ -#define PFMBOS 57 /* ÆÐ°Å¸®ÀÇ µÎ¸ñ */ -#define PFRTUN 58 /* ÆÐ°Å¸®±Íȯ ¼³Á¤ */ -#define PUPDMG 59 /* Àá·Â°Ý¹ß »ç¿ë */ -#define PMARRI 60 /* °áÈ¥ÇÑ »ç¶÷ */ -#define PRDMAR 61 /* °áÈ¥ ½Åû */ -#define SUICD 62 /* ÀÚ»ì½Åû */ -#define PDSCRP 63 /* ¹¦»çº¸±â ¼³Á¤ */ +#define PBRSND 49 /* 잡담 횟수 제한ìž�. */ +#define PNOBR2 50 /* 경매 안듣기 */ +#define PBRIGH 51 /* ë°�ì�€ìƒ‰ 사용 */ +#define PPOWER 52 /* 기공집결 power +3 */ +#define PSLAYE 53 /* 살기충전 thac0 +3 */ +#define PMEDIT 54 /* 참선 intelligence +3 */ +#define PFAMIL 55 /* 패거리 가입ìž� */ +#define PRDFML 56 /* 패거리 가입 대기ìž� */ +#define PFMBOS 57 /* 패거리ì�˜ ë‘�목 */ +#define PFRTUN 58 /* 패거리귀환 설정 */ +#define PUPDMG 59 /* 잠력격발 사용 */ +#define PMARRI 60 /* 결혼한 사람 */ +#define PRDMAR 61 /* 결혼 ì‹ ì²­ */ +#define SUICD 62 /* ìž�ì‚´ì‹ ì²­ */ +#define PDSCRP 63 /* 묘사보기 설정 */ /* Monster flags */ #define MPERMT 0 /* Permanent monster */ @@ -459,17 +459,17 @@ extern int Port; #define MSILNC 48 /* Monster is silenced */ #define MBLIND 49 /* Monster is blind */ #define MCHARM 50 /* Monster is charmed */ -#define MBEFUD 51 /* È¥µ¿µÇÀÖÀ½ */ +#define MBEFUD 51 /* 혼ë�™ë�˜ìžˆì�Œ */ #define MKNDM1 52 /* kingdom 1 */ #define MKNDM2 53 /* kingdome 2 */ #define MKNDM3 54 /* kingdome 3 */ #define MKNDM4 55 /* dingdome 4 */ -#define MKING1 56 /* ¿Õ 1 */ -#define MKING2 57 /* ¿Õ 2 */ -#define MKING3 58 /* ¿Õ 3 */ -#define MKING4 59 /* ¿Õ 4 */ -#define MSAYTLK 60 /* ¸»ÇÏ´Â ¸÷ */ -#define MSUMMO 61 /* ¸÷À» ¼ÒȯÇÔ */ +#define MKING1 56 /* 왕 1 */ +#define MKING2 57 /* 왕 2 */ +#define MKING3 58 /* 왕 3 */ +#define MKING4 59 /* 왕 4 */ +#define MSAYTLK 60 /* ë§�하는 몹 */ +#define MSUMMO 61 /* 몹ì�„ 소환함 */ #define MNOCHA 62 /* Monster cannot be charmed */ /* Object flags */ @@ -516,14 +516,14 @@ extern int Port; #define OVBEFD 40 /* stun length based on ndice */ #define ONSHAT 41 /* weapon will never shatter */ #define OALCRT 42 /* weapon will always critical */ -#define OCNAME 43 /* ¹°°Ç À̸§ ¹Ù²Ü¼ö ÀÖÀ½ */ -#define OSPECI 44 /* special object (pdice ÀÌ¿ë) */ -#define OMARRI 45 /* °áÈ¥ÇÑ »ç¶÷¸¸ »ç¿ë°¡´É */ -#define OEVENT 46 /* À̺¥Æ®¿ë ¾ÆÀÌÅÛ */ -#define ONAMED 47 /* ¸í¸íÇѰŠ*/ +#define OCNAME 43 /* 물건 ì�´ë¦„ 바꿀수 있ì�Œ */ +#define OSPECI 44 /* special object (pdice ì�´ìš©) */ +#define OMARRI 45 /* 결혼한 사람만 사용가능 */ +#define OEVENT 46 /* ì�´ë²¤íŠ¸ìš© ì•„ì�´í…œ */ +#define ONAMED 47 /* 명명한거 */ #define ONOBUN 48 /* can not burn */ -#define OWHELD 49 /* Áã°í ÀÖ´Ù´Â Ç÷¡±× . ¿ÜºÎ »ç¿ë¾ÈÇÔ. */ -#define ONEWEV 50 /* »õ·Î¿î À̺¥Æ® Ç÷¡±× */ +#define OWHELD 49 /* ì¥�ê³  있다는 플래그 . 외부 사용안함. */ +#define ONEWEV 50 /* 새로운 ì�´ë²¤íЏ 플래그 */ /* Exit flags */ #define XSECRT 0 /* Secret */ @@ -546,14 +546,14 @@ extern int Port; #define XDAYON 17 /* only open during day */ #define XPGUAR 18 /* passive guarded exit */ #define XNOSEE 19 /* Can not use / see exit */ -#define XKNDM1 20 /* ¿Õ±¹ 1¹ø ±æ */ -#define XKNDM2 21 /* ¿Õ±¹ 2¹ø ±æ */ +#define XKNDM1 20 /* 왕국 1번 길 */ +#define XKNDM2 21 /* 왕국 2번 길 */ /* specials */ #define SP_MAPSC 1 /* Map or scroll */ #define SP_COMBO 2 /* Combination lock */ -#define SP_WAR 3 /* ÀüÀï ¾ÆÀÌÅÛ */ -#define SP_BOARD 4 /* °Ô½ÃÆÇ */ +#define SP_WAR 3 /* ì „ìŸ� ì•„ì�´í…œ */ +#define SP_BOARD 4 /* 게시íŒ� */ /* obj_str and crt_str flags */ #define CAP 1 diff --git a/src/player.c b/src/player.c index c24c27a9..329c9533 100644 --- a/src/player.c +++ b/src/player.c @@ -24,11 +24,11 @@ extern long all_broad_time; extern long broad_time[PMAX]; extern long login_time[PMAX]; -void init_ply(ply_ptr) +int init_ply(ply_ptr) creature *ply_ptr; { char file[80], file2[80], file3[80], str[50]; - room *rom_ptr; + room *rom_ptr = 0; object *obj_ptr; otag *op, *otemp; long t, tdiff; @@ -50,11 +50,11 @@ creature *ply_ptr; ply_ptr->class = DM; } else if(ply_ptr->class >= DM || ply_ptr->class ==0) { - /* ºÒ¹ý ¾ÆÀ̵ð : Á÷¾÷ ÀÌ»ó */ + /* 불법 ì•„ì�´ë”” : ì§�ì—… ì�´ìƒ� */ t = time(0); strcpy(str, (char *)ctime(&t)); str[strlen(str)-1] = 0; - log_f("%s : ### %s ºÒ¹ý¾ÆÀ̵ð(Á÷¾÷=%d)\n",str, + log_f("%s : ### %s 불법아ì�´ë””(ì§�ì—…=%d)\n",str, ply_ptr->name,ply_ptr->class); } @@ -71,7 +71,7 @@ creature *ply_ptr; ftotal = load_family(); #endif fnum = ply_ptr->daily[DL_EXPND].max; - if(!strcmp(fmboss_str[ply_ptr->daily[DL_EXPND].max], "*ÇØÃ¼*")) { + if(!strcmp(fmboss_str[ply_ptr->daily[DL_EXPND].max], "*í•´ì²´*")) { F_CLR(ply_ptr, PFAMIL); F_CLR(ply_ptr, PRDFML); ply_ptr->daily[DL_EXPND].max = 0; @@ -84,18 +84,25 @@ creature *ply_ptr; if(ply_ptr->class < DM) F_SET(ply_ptr, PPROMP); + if(load_rom(ply_ptr->rom_num, &rom_ptr) < 0) { + if(load_rom(1, &rom_ptr) < 0 || !rom_ptr) { + log_f("init_ply: failed to load room %d for %s\n", ply_ptr->rom_num, ply_ptr->name); + return(-1); + } + } + if(!F_ISSET(ply_ptr, PDMINV) && ply_ptr->class!=DM) { - broadcast("\n### %s %s´ÔÀÌ µé¾î¿À¼Ì½À´Ï´Ù.", class_str[ply_ptr->class], ply_ptr->name); + broadcast("\n### %s %s님ì�´ 들어오셨습니다.", class_str[ply_ptr->class], ply_ptr->name); all_broad_time=time(0); } t = time(0); strcpy(str, (char *)ctime(&t)); str[strlen(str)-1] = 0; - log_f("%s: %s (%s)´ÔÀÌ µé¾î¿È\n", str, ply_ptr->name, + log_f("%s: %s (%s)님ì�´ 들어옴\n", str, ply_ptr->name, Ply[ply_ptr->fd].io->address); if(ply_ptr->class >= SUB_DM) { - log_dm("%s : %s (%s)´ÔÀÌ µé¾î¿È\n", str, ply_ptr->name, + log_dm("%s : %s (%s)님ì�´ 들어옴\n", str, ply_ptr->name, Ply[ply_ptr->fd].io->address); } @@ -103,9 +110,6 @@ creature *ply_ptr; ply_ptr->lasttime[LT_PSAVE].interval = SAVEINTERVAL; login_time[ply_ptr->fd] = t; - if(load_rom(ply_ptr->rom_num, &rom_ptr) < 0) - load_rom(1, &rom_ptr); - n = count_vis_ply(rom_ptr); if((F_ISSET(rom_ptr, RONEPL) && n > 0) || (F_ISSET(rom_ptr, RTWOPL) && n > 1) || @@ -250,14 +254,15 @@ creature *ply_ptr; sprintf(str, "%s/%s", POSTPATH, ply_ptr->name); if(file_exists(str)) - print(ply_ptr->fd, "\n*** ¿ìü±¹¿¡ ÆíÁö°¡ ¿ÍÀÖ½À´Ï´Ù.\n"); + print(ply_ptr->fd, "\n*** ìš°ì²´êµ­ì—� 편지가 와있습니다.\n"); /* By. Latok */ if(ply_ptr->gold > 300000000){ ply_ptr->gold = 300000000; - print(ply_ptr->fd, "\n\n³Ê¹« ¸¹Àº µ·À» °¡Áö°í ÀÖ½À´Ï´Ù.\n½ÅÀÌ Àڱ⺸´Ù ´õ ¸¹Àº µ·À» °¡Áö°í ÀÖ´Ù°í ÇÏ¿©,\n°¡Áö°í ÀÖ´Â µ·Áß¿¡ 3¾ï¸¸ ³²°Ü³õ°í, ³ª¸ÓÁö ºÎºÐÀ»\n½ÅÀÌ ±×³É °¡Á®°©´Ï´Ù. (½Å : Àç¼ö~~~~ )\n\n"); + print(ply_ptr->fd, "\n\n너무 ë§Žì�€ ë�ˆì�„ 가지고 있습니다.\nì‹ ì�´ ìž�기보다 ë�” ë§Žì�€ ë�ˆì�„ 가지고 있다고 하여,\n가지고 있는 ë�ˆì¤‘ì—� 3억만 남겨놓고, 나머지 부분ì�„\nì‹ ì�´ 그냥 가져갑니다. (ì‹  : 재수~~~~ )\n\n"); } - + + return(0); } /**********************************************************************/ @@ -283,7 +288,7 @@ creature *ply_ptr; cp = ply_ptr->first_fol; while(cp) { cp->crt->following = 0; - print(cp->crt->fd, "\n´ç½ÅÀº %s´ÔÀ» ±×¸¸ µû¶ó´Ù´Õ´Ï´Ù.", ply_ptr->name); + print(cp->crt->fd, "\n당신ì�€ %s님ì�„ 그만 ë”°ë�¼ë‹¤ë‹™ë‹ˆë‹¤.", ply_ptr->name); prev = cp->next_tag; free(cp); cp = prev; @@ -309,7 +314,7 @@ creature *ply_ptr; ply_ptr->following = 0; if(!F_ISSET(ply_ptr, PDMINV)) - print(crt_ptr->fd, "\n%s´ÔÀÌ ´ç½ÅÀ» ±×¸¸ µû¶ó´Ù´Õ´Ï´Ù.", + print(crt_ptr->fd, "\n%s님ì�´ 당신ì�„ 그만 ë”°ë�¼ë‹¤ë‹™ë‹ˆë‹¤.", ply_ptr->name); } @@ -324,16 +329,16 @@ creature *ply_ptr; update_ply(ply_ptr); if(!F_ISSET(ply_ptr, PDMINV) && ply_ptr->class<=SUB_DM && !F_ISSET(ply_ptr, SUICD)) { - broadcast("\n### %s´ÔÀÌ ³ª°¡¼Ì½À´Ï´Ù.", ply_ptr->name); + broadcast("\n### %s님ì�´ 나가셨습니다.", ply_ptr->name); all_broad_time=time(0); } t = time(0); strcpy(str, (char *)ctime(&t)); str[strlen(str)-1] = 0; if(!F_ISSET(ply_ptr, SUICD)) { - log_f("%s: %s´ÔÀÌ ³ª°¨\n", str, ply_ptr->name); + log_f("%s: %s님ì�´ 나ê°�\n", str, ply_ptr->name); if(ply_ptr->class == DM) - log_dm("%s : %s´ÔÀÌ ³ª°¨\n", str, ply_ptr->name); + log_dm("%s : %s님ì�´ 나ê°�\n", str, ply_ptr->name); } } @@ -360,7 +365,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PHASTE)) { if(t > LT(ply_ptr, LT_HASTE)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ¸öÀÌ ´À·ÁÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 몸ì�´ ëŠ�려졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PHASTE); ply_ptr->dexterity -= 15; @@ -370,7 +375,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PPOWER)) { if(t > LT(ply_ptr, LT_POWER)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ÈûÀÌ ¾àÇØÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 힘ì�´ 약해졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PPOWER); ply_ptr->strength -= 3; @@ -380,7 +385,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PUPDMG)) { if(t > LT(ply_ptr, LT_UPDMG)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ±â°¡ ºüÁ®³ª°©´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 기가 빠져나갑니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PUPDMG); ply_ptr->pdice -= 5; @@ -392,7 +397,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PSLAYE)) { if(t > LT(ply_ptr, LT_SLAYE)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ¹«±â°¡ »ì±â¸¦ ÀÒ¾ú½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 무기가 살기를 잃었습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PSLAYE); ply_ptr->thaco += 3; @@ -403,7 +408,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PMEDIT)) { if(t > LT(ply_ptr, LT_MEDIT)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\nÂü¼±ÀÇ ¿µÇâ·ÂÀÌ ¶³¾îÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n참선ì�˜ ì˜�향력ì�´ 떨어졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PMEDIT); ply_ptr->intelligence -= 3; @@ -414,7 +419,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PPRAYD)) { if(t > LT(ply_ptr, LT_PRAYD)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ¹ÏÀ½ÀÌ ¾àÇØÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 믿ì�Œì�´ 약해졌습니다."); F_CLR(ply_ptr, PPRAYD); ANSI(ply_ptr->fd, WHITE); ply_ptr->piety -= 5; @@ -423,7 +428,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PINVIS)) { if(t > LT(ply_ptr, LT_INVIS) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "\n´ç½ÅÀº ÀÌÁ¦ ´«¿¡ º¸ÀÔ´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�€ ì�´ì œ 눈ì—� 보입니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PINVIS); } @@ -431,7 +436,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PDINVI)) { if(t > LT(ply_ptr, LT_DINVI) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ´«ÀÌ Ä§Ä§ÇØÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 눈ì�´ 침침해졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PDINVI); } @@ -439,7 +444,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PDMAGI)) { if(t > LT(ply_ptr, LT_DMAGI) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "\n´ç½ÅÀÇ °¨Áö·ÂÀÌ ¶³¾îÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ ê°�지력ì�´ 떨어졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PDMAGI); } @@ -451,7 +456,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PPROTE)) { if(t > LT(ply_ptr, LT_PROTE)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n´ç½ÅÀÇ º¸È£·ÂÀÌ ¶³¾îÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 보호력ì�´ 떨어졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PPROTE); compute_ac(ply_ptr); @@ -460,7 +465,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PLEVIT)) { if(t > LT(ply_ptr, LT_LEVIT) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "\n´ç½ÅÀº ¶¥¿¡ ³»·Á¼¹½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�€ ë•…ì—� 내려섰습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PLEVIT); } @@ -468,7 +473,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PBLESS)) { if(t > LT(ply_ptr, LT_BLESS)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\nÃູ·ÂÀÌ ¶³¾îÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n축복력ì�´ 떨어졌습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PBLESS); compute_thaco(ply_ptr); @@ -478,7 +483,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PRFIRE)) { if(t > LT(ply_ptr, LT_RFIRE)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ÇǺΰ¡ µ¹¾Æ¿Ô½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 피부가 ë�Œì•„왔습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PRFIRE); } @@ -489,7 +494,7 @@ creature *ply_ptr; if(t > LT(ply_ptr, LT_RCOLD)) { ANSI(ply_ptr->fd, BOLD); ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\nÂ÷°¡¿î ±â¿îÀÌ ¸öÀ» ÈÛ½Ô´Ï´Ù."); + print(ply_ptr->fd, "\n차가운 기운ì�´ 몸ì�„ 휩쌉니다."); ANSI(ply_ptr->fd, NORMAL); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PRCOLD); @@ -501,7 +506,7 @@ creature *ply_ptr; if(t > LT(ply_ptr, LT_BRWAT)) { ANSI(ply_ptr->fd, BOLD); ANSI(ply_ptr->fd, BLUE); - print(ply_ptr->fd, "\n´ç½ÅÀÇ Æó°¡ ÁÙ¾îµé¾ú½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ í��ê°€ 줄어들었습니다."); ANSI(ply_ptr->fd, WHITE); ANSI(ply_ptr->fd, NORMAL); F_CLR(ply_ptr, PBRWAT); @@ -511,7 +516,7 @@ creature *ply_ptr; if(t > LT(ply_ptr, LT_SSHLD)) { ANSI(ply_ptr->fd, BOLD); ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ÁÖ¼ú ¹æÆÐ°¡ »ç¶óÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ 주술 방패가 사ë�¼ì¡ŒìŠµë‹ˆë‹¤."); ANSI(ply_ptr->fd, WHITE); ANSI(ply_ptr->fd, NORMAL); F_CLR(ply_ptr, PSSHLD); @@ -520,7 +525,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PFLYSP)) { if(t > LT(ply_ptr, LT_FLYSP) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n´ç½ÅÀº ´õÀÌ»ó ³¯¼ö ¾ø½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�€ ë�”ì�´ìƒ� 날수 없습니다."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PFLYSP); } @@ -529,7 +534,7 @@ creature *ply_ptr; if(t > LT(ply_ptr, LT_RMAGI)) { ANSI(ply_ptr->fd, BOLD); ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd,"\n¸¶¹ýÀÇ ¹æ¾î·ÂÀÌ »ç¶óÁ³½À´Ï´Ù."); + print(ply_ptr->fd,"\n마법ì�˜ ë°©ì–´ë ¥ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤."); ANSI(ply_ptr->fd, WHITE); ANSI(ply_ptr->fd, NORMAL); F_CLR(ply_ptr, PRMAGI); @@ -538,7 +543,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PSILNC)) { if(t > LT(ply_ptr, LT_SILNC)) { ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd,"\n´ç½ÅÀÇ ¸ñ¼Ò¸®¸¦ µÇã¾Ò½À´Ï´Ù!"); + print(ply_ptr->fd,"\n당신ì�˜ 목소리를 ë�˜ì°¾ì•˜ìŠµë‹ˆë‹¤!"); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PSILNC); } @@ -546,7 +551,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PFEARS)) { if(t > LT(ply_ptr, LT_FEARS)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd,"\n´ç½ÅÀº ¿ë±â¸¦ µÇã¾Ò½À´Ï´Ù."); + print(ply_ptr->fd,"\n당신ì�€ 용기를 ë�˜ì°¾ì•˜ìŠµë‹ˆë‹¤."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PFEARS); } @@ -554,7 +559,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PKNOWA)) { if(t > LT(ply_ptr, LT_KNOWA) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, CYAN); - print(ply_ptr->fd,"\n´ç½ÅÀÇ ºÐº°·ÂÀÌ °¨ÅðµÇ¾ú½À´Ï´Ù."); + print(ply_ptr->fd,"\n당신ì�˜ 분별력ì�´ ê°�퇴ë�˜ì—ˆìŠµë‹ˆë‹¤."); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PKNOWA); } @@ -562,16 +567,16 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PLIGHT)) { if(t > LT(ply_ptr, LT_LIGHT) && ply_ptr->class < DM) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n¸¶¹ýÀÇ ºûÀÌ »ç¶óÁ³½À´Ï´Ù."); + print(ply_ptr->fd, "\n마법ì�˜ ë¹›ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤."); broadcast_rom(ply_ptr->fd, ply_ptr->rom_num, - "\n%MÀÇ ¸¶¹ýÀÇ ºûÀÌ »ç¶óÁ³½À´Ï´Ù.", ply_ptr); + "\n%Mì�˜ 마법ì�˜ ë¹›ì�´ 사ë�¼ì¡ŒìŠµë‹ˆë‹¤.", ply_ptr); ANSI(ply_ptr->fd, WHITE); F_CLR(ply_ptr, PLIGHT); } } if(t > LT(ply_ptr, LT_CHRMD) && F_ISSET(ply_ptr, PCHARM)) { ANSI(ply_ptr->fd, YELLOW); - print(ply_ptr->fd, "\n´ç½ÅÀÇ ÇൿÀÌ Á¤»óÀûÀ¸·Î µÇ¾ú½À´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�˜ í–‰ë�™ì�´ ì •ìƒ�ì �으로 ë�˜ì—ˆìŠµë‹ˆë‹¤."); F_CLR(ply_ptr, PCHARM); ANSI(ply_ptr->fd, WHITE); } @@ -609,7 +614,7 @@ creature *ply_ptr; if(F_ISSET(ply_ptr, PPOISN)){ ANSI(ply_ptr->fd, BLINK); ANSI(ply_ptr->fd, RED); - print(ply_ptr->fd, "\nµ¶ÀÌ ´ç½ÅÀÇ ÇÍÁÙ·Î ½º¸çµì´Ï´Ù."); + print(ply_ptr->fd, "\në�…ì�´ 당신ì�˜ í•�줄로 스며듭니다."); ply_ptr->hpcur -= MAX(1,mrand(1,ply_ptr->hpmax/5)-bonus[ply_ptr->constitution]); ply_ptr->lasttime[LT_HEALS].ltime = t; ply_ptr->lasttime[LT_HEALS].interval = 30 - @@ -622,10 +627,10 @@ creature *ply_ptr; if (F_ISSET(ply_ptr, PDISEA)){ ANSI(ply_ptr->fd, BLINK); ANSI(ply_ptr->fd, RED); - print(ply_ptr->fd, "\nº´ÀÌ ´ç½ÅÀÇ ¸¶À½À» Àá½ÄÇÕ´Ï´Ù."); + print(ply_ptr->fd, "\n병ì�´ 당신ì�˜ 마ì�Œì�„ ìž ì‹�합니다."); ply_ptr->lasttime[LT_ATTCK].ltime = time(0); ANSI(ply_ptr->fd, BLUE); - print(ply_ptr->fd, "¸öÀÌ ÇÇ·ÎÇØ Áý´Ï´Ù.\n"); + print(ply_ptr->fd, "몸ì�´ 피로해 집니다.\n"); ply_ptr->lasttime[LT_ATTCK].interval= dice(1,6,3); ply_ptr->hpcur -= MAX(1,mrand(1,6)-bonus[ply_ptr->constitution]); ply_ptr->lasttime[LT_HEALS].ltime = t; @@ -642,14 +647,14 @@ creature *ply_ptr; if (F_ISSET(ply_ptr->parent_rom, RPPOIS)) { ANSI(ply_ptr->fd, BLINK); ANSI(ply_ptr->fd, GREEN); - print(ply_ptr->fd, "\nµ¶±â¿îÀÌ ´ç½ÅÀ» Áßµ¶½Ãŵ´Ï´Ù."); + print(ply_ptr->fd, "\në�…기운ì�´ 당신ì�„ 중ë�…시킵니다."); ANSI(ply_ptr->fd, WHITE); ANSI(ply_ptr->fd, NORMAL); F_SET(ply_ptr, PPOISN); } if (F_ISSET(ply_ptr->parent_rom, RPBEFU)) { - print(ply_ptr->fd, "\n¹æÀÌ ºù±Ûºù±Û µµ´Â°Í °¨½À´Ï´Ù.\nÀÌÁ¦ Á¤½ÅÀ» Â÷¸³´Ï´Ù."); + print(ply_ptr->fd, "\në°©ì�´ 빙글빙글 ë�„는것 ê°�습니다.\nì�´ì œ ì •ì‹ ì�„ 차립니다."); ply_ptr->lasttime[LT_ATTCK].ltime = time(0); ply_ptr->lasttime[LT_ATTCK].interval= MAX(dice(2,6,0),6); } @@ -657,7 +662,7 @@ creature *ply_ptr; if (F_ISSET(ply_ptr, PPOISN)){ ANSI(ply_ptr->fd, BLINK); ANSI(ply_ptr->fd, RED); - print(ply_ptr->fd, "\nµ¶ÀÌ ´ç½ÅÀÇ ÇÍÁÙ·Î ½º¸çµì´Ï´Ù."); + print(ply_ptr->fd, "\në�…ì�´ 당신ì�˜ í•�줄로 스며듭니다."); ANSI(ply_ptr->fd, NORMAL); ANSI(ply_ptr->fd, WHITE); ply_ptr->hpcur -= MAX(1,mrand(1,4)-bonus[ply_ptr->constitution]); @@ -666,10 +671,10 @@ creature *ply_ptr; if (F_ISSET(ply_ptr, PDISEA)){ ANSI(ply_ptr->fd, BLINK); ANSI(ply_ptr->fd, RED); - print(ply_ptr->fd, "\nº´ÀÌ ´ç½ÅÀÇ ¸¶À½À» Àá½ÄÇÕ´Ï´Ù."); + print(ply_ptr->fd, "\n병ì�´ 당신ì�˜ 마ì�Œì�„ ìž ì‹�합니다."); ply_ptr->lasttime[LT_ATTCK].ltime = time(0); ANSI(ply_ptr->fd, BLUE); - print(ply_ptr->fd, "\n´ç½ÅÀº ½Å°æÁúÀûÀ¸·Î µË´Ï´Ù."); + print(ply_ptr->fd, "\n당신ì�€ 신경질ì �으로 ë�©ë‹ˆë‹¤."); ply_ptr->lasttime[LT_ATTCK].interval= dice(1,6,3); ply_ptr->hpcur -= MAX(1,mrand(1,6)-bonus[ply_ptr->constitution]); ply_ptr->lasttime[LT_HEALS].ltime = t; @@ -690,20 +695,20 @@ creature *ply_ptr; } if (F_ISSET(ply_ptr->parent_rom, RFIRER) && !F_ISSET(ply_ptr,PRFIRE)) { - print(ply_ptr->fd, "\n¶ß°Å¿î ±â¿îÀÌ ´ç½ÅÀ» Å¿ó´Ï´Ù."); + print(ply_ptr->fd, "\n뜨거운 기운ì�´ 당신ì�„ 태ì›�니다."); prot = 0; } else if (F_ISSET(ply_ptr->parent_rom, RWATER) && !F_ISSET(ply_ptr,PBRWAT)) { - print(ply_ptr->fd, "\n¹°ÀÌ ´ç½ÅÀÇ Æó·Î Èê·¯µì´Ï´Ù."); + print(ply_ptr->fd, "\n물ì�´ 당신ì�˜ í��로 í�˜ëŸ¬ë“­ë‹ˆë‹¤."); prot = 0; } else if (F_ISSET(ply_ptr->parent_rom, REARTH) && !F_ISSET(ply_ptr,PSSHLD)) { - print(ply_ptr->fd, "\nÈëÀÌ ¹«³ÊÁ® ´ç½ÅÀ» µ¤Ä¨´Ï´Ù."); + print(ply_ptr->fd, "\ní�™ì�´ 무너져 당신ì�„ ë�®ì¹©ë‹ˆë‹¤."); prot = 0; } else if (F_ISSET(ply_ptr->parent_rom, RWINDR) && !F_ISSET(ply_ptr,PRCOLD)) { ANSI(ply_ptr->fd, BLUE); - print(ply_ptr->fd, "\nÂ÷°¡¿î ±â¿îÀÌ »À¼Ó±îÁö ½º¸çµì´Ï´Ù."); + print(ply_ptr->fd, "\n차가운 기운ì�´ 뼈ì†�까지 스며듭니다."); ANSI(ply_ptr->fd, WHITE); prot = 0; } @@ -716,7 +721,7 @@ creature *ply_ptr; !F_ISSET(ply_ptr->parent_rom, RPMPDR)) { ANSI(ply_ptr->fd, BOLD); ANSI(ply_ptr->fd, MAGENTA); - print(ply_ptr->fd, "\nº¸ÀÌÁö¾Ê´Â ¹«¾ùÀÌ ´ç½ÅÀÇ »ý¸í·ÂÀ» »¡¾ÆµéÀÔ´Ï´Ù."); + print(ply_ptr->fd, "\në³´ì�´ì§€ì•ŠëŠ” 무엇ì�´ 당신ì�˜ ìƒ�명력ì�„ 빨아들입니다."); ANSI(ply_ptr->fd, NORMAL); ANSI(ply_ptr->fd, WHITE); prot = 0; @@ -748,10 +753,10 @@ creature *ply_ptr; if(item && item != MAXWEAR+1) { if(ply_ptr->ready[item-1]->type == LIGHTSOURCE) if(--(ply_ptr->ready[item-1]->shotscur) < 1) { - print(ply_ptr->fd, "\n´ç½ÅÀÇ %S%j ²¨Á³½À´Ï´Ù.", + print(ply_ptr->fd, "\n당신ì�˜ %S%j 꺼졌습니다.", ply_ptr->ready[item-1]->name,"1"); broadcast_rom(ply_ptr->fd, ply_ptr->parent_rom->rom_num, - "\n%MÀÇ %S%j ²¨Á³½À´Ï´Ù.", + "\n%Mì�˜ %S%j 꺼졌습니다.", ply_ptr, ply_ptr->ready[item-1]->name,"1"); } @@ -800,7 +805,7 @@ creature *ply_ptr; } } - /* ±âÁ¸ÀÇ Ç÷¹ÀÌ¾î µ¥ÀÌŸ °»½Å */ + /* 기존ì�˜ 플레ì�´ì–´ ë�°ì�´íƒ€ 갱신 */ ply_ptr->hpmax = class_stats[ply_ptr->class].hpstart + (class_stats[ply_ptr->class].hp * (ply_ptr->level-1)/2); @@ -950,7 +955,7 @@ creature *ply_ptr; { int titlnum; - /* ÀÚ½ÅÀÌ ÄªÈ£ ¼±ÅÃÇÒ ¼ö ÀÖ°Ô ÇÔ . ply_titles¿¡ ÀúÀå */ + /* ìž�ì‹ ì�´ 칭호 ì„ íƒ�í•  수 있게 함 . ply_titlesì—� 저장 */ if(ply_titles[ply_ptr->fd]!=NULL) { return (ansi_title(show_ply_ptr,ply_titles[ply_ptr->fd])); } @@ -1361,7 +1366,7 @@ int invis; /**********************************************************************/ /* enemy_ply */ /**********************************************************************/ -/* À̱â´ÉÀº Àû ¿Õ±¹ÀÇ ¼Ò¼ÓÀÇ »ç¿ëÀÚ¸¦ ¹ß°ßÇÏ´Â ·çƾÀÌ´Ù */ +/* ì�´ê¸°ëŠ¥ì�€ ì � 왕국ì�˜ 소ì†�ì�˜ 사용ìž�를 발견하는 루틴ì�´ë‹¤ */ creature *enemy_ply(rom_ptr, att_ptr, crt_ptr, invis) room *rom_ptr; @@ -1448,7 +1453,7 @@ creature *ply_ptr; prompt[0] = 0; else if(F_ISSET(ply_ptr, PPROMP)) - sprintf(prompt, "\n\n(%d ü·Â %d µµ·Â): ", ply_ptr->hpcur, + sprintf(prompt, "\n\n(%d ì²´ë ¥ %d ë�„ë ¥): ", ply_ptr->hpcur, ply_ptr->mpcur); else diff --git a/src/player_path.c b/src/player_path.c new file mode 100644 index 00000000..f536ee91 --- /dev/null +++ b/src/player_path.c @@ -0,0 +1,190 @@ +#include "mstruct.h" +#include "mextern.h" +#include "player_path.h" +#include "utf8_text.h" + +#include +#include + +static unsigned int rol32(unsigned int v, int n) +{ + return (v << n) | (v >> (32 - n)); +} + +static unsigned int load_u32_be(const unsigned char *p) +{ + return ((unsigned int)p[0] << 24) | + ((unsigned int)p[1] << 16) | + ((unsigned int)p[2] << 8) | + (unsigned int)p[3]; +} + +static void store_u32_be(unsigned int v, unsigned char *p) +{ + p[0] = (unsigned char)((v >> 24) & 0xff); + p[1] = (unsigned char)((v >> 16) & 0xff); + p[2] = (unsigned char)((v >> 8) & 0xff); + p[3] = (unsigned char)(v & 0xff); +} + +static void sha1_digest(const unsigned char *data, unsigned long len, unsigned char out[20]) +{ + unsigned int h0, h1, h2, h3, h4; + unsigned char block[128]; + unsigned long total, off; + unsigned int w[80]; + int i; + + h0 = 0x67452301U; + h1 = 0xEFCDAB89U; + h2 = 0x98BADCFEU; + h3 = 0x10325476U; + h4 = 0xC3D2E1F0U; + + total = (len + 9 <= 64) ? 64 : 128; + memset(block, 0, sizeof(block)); + if(len > 0) + memcpy(block, data, len); + block[len] = 0x80; + + { + unsigned int bit_hi; + unsigned int bit_lo; + unsigned long idx; + idx = total - 8; + bit_hi = (unsigned int)(len >> 29); + bit_lo = (unsigned int)(len << 3); + store_u32_be(bit_hi, &block[idx]); + store_u32_be(bit_lo, &block[idx + 4]); + } + + for(off = 0; off < total; off += 64) { + unsigned int a, b, c, d, e, f, k, t, temp; + + for(i = 0; i < 16; i++) + w[i] = load_u32_be(&block[off + (i * 4)]); + for(i = 16; i < 80; i++) + w[i] = rol32(w[i - 3] ^ w[i - 8] ^ w[i - 14] ^ w[i - 16], 1); + + a = h0; + b = h1; + c = h2; + d = h3; + e = h4; + + for(i = 0; i < 80; i++) { + if(i < 20) { + f = (b & c) | ((~b) & d); + k = 0x5A827999U; + } else if(i < 40) { + f = b ^ c ^ d; + k = 0x6ED9EBA1U; + } else if(i < 60) { + f = (b & c) | (b & d) | (c & d); + k = 0x8F1BBCDCU; + } else { + f = b ^ c ^ d; + k = 0xCA62C1D6U; + } + + t = (rol32(a, 5) + f + e + k + w[i]) & 0xffffffffU; + e = d; + d = c; + c = rol32(b, 30); + b = a; + a = t; + } + + h0 = (h0 + a) & 0xffffffffU; + h1 = (h1 + b) & 0xffffffffU; + h2 = (h2 + c) & 0xffffffffU; + h3 = (h3 + d) & 0xffffffffU; + h4 = (h4 + e) & 0xffffffffU; + } + + store_u32_be(h0, &out[0]); + store_u32_be(h1, &out[4]); + store_u32_be(h2, &out[8]); + store_u32_be(h3, &out[12]); + store_u32_be(h4, &out[16]); +} + +static void player_shard(const char *name, char out[3]) +{ + static const char hex[] = "0123456789abcdef"; + unsigned char digest[20]; + unsigned char b; + + sha1_digest((const unsigned char *)name, (unsigned long)strlen(name), digest); + b = digest[0]; + out[0] = hex[(b >> 4) & 0x0f]; + out[1] = hex[b & 0x0f]; + out[2] = 0; +} + +int player_path_from_name(const char *name, char *out, unsigned long out_sz) +{ + char shard[3]; + + if(!name || !name[0] || !out || out_sz == 0) + return -1; + + player_shard(name, shard); + snprintf(out, out_sz, "%s/%s/%s", PLAYERPATH, shard, name); + return 0; +} + +int player_path_ensure_dir(const char *name) +{ + char shard[3], dir[256]; + struct stat st; + + if(!name || !name[0]) + return -1; + + player_shard(name, shard); + snprintf(dir, sizeof(dir), "%s/%s", PLAYERPATH, shard); + if(stat(dir, &st) == 0) { + if(S_ISDIR(st.st_mode)) + return 0; + return -1; + } + + if(mkdir(dir, 0770) == 0) + return 0; + + if(stat(dir, &st) == 0 && S_ISDIR(st.st_mode)) + return 0; + + return -1; +} + +int player_name_is_valid(const unsigned char *name, unsigned long min_cp, unsigned long max_cp) +{ + unsigned long i, n, cp_len; + + if(!name || !name[0]) + return 0; + + n = (unsigned long)strlen((const char *)name); + if(!utf8_validate(name, n)) + return 0; + if(n > PLAYER_NAME_MAX_BYTES) + return 0; + + cp_len = utf8_codepoint_len(name); + if(cp_len < min_cp || cp_len > max_cp) + return 0; + + if(strcmp((const char *)name, ".") == 0 || strcmp((const char *)name, "..") == 0) + return 0; + + for(i = 0; i < n; i++) { + if(name[i] < 32 || name[i] == 127) + return 0; + if(name[i] == '/' || name[i] == '\\' || name[i] == ':') + return 0; + } + + return 1; +} diff --git a/src/player_path.h b/src/player_path.h new file mode 100644 index 00000000..fea04ba4 --- /dev/null +++ b/src/player_path.h @@ -0,0 +1,13 @@ +#ifndef PLAYER_PATH_H +#define PLAYER_PATH_H + +#define PLAYER_NAME_MIN_CODEPOINTS 1UL +#define PLAYER_NAME_MAX_CODEPOINTS 12UL +/* Keep compatibility with legacy fixed-width name buffers (15 incl. NUL). */ +#define PLAYER_NAME_MAX_BYTES 14UL + +int player_path_from_name(const char *name, char *out, unsigned long out_sz); +int player_path_ensure_dir(const char *name); +int player_name_is_valid(const unsigned char *name, unsigned long min_cp, unsigned long max_cp); + +#endif diff --git a/src/post.c b/src/post.c index a51c7595..d5dc202b 100644 --- a/src/post.c +++ b/src/post.c @@ -30,34 +30,37 @@ creature *ply_ptr; cmd *cmnd; { room *rom_ptr; - char file[80]; + char file[256]; int fd, ff; fd = ply_ptr->fd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RPOSTO)) { - print(fd, "¿©±â´Â ¿ìü±¹ÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "여기는 ìš°ì²´êµ­ì�´ 아닙니다.\n"); return(0); } if(cmnd->num < 2) { - print(fd, "´©±¸ÇÑÅ× ÆíÁö¸¦ º¸³»½Ã·Á±¸¿ä?\n"); + print(fd, "누구한테 편지를 보내시려구요?\n"); return(0); } cmnd->str[1][0] = up(cmnd->str[1][0]); - sprintf(file, "%s/%s/%s", PLAYERPATH, first_han(cmnd->str[1]), cmnd->str[1]); + if(player_path_from_name(cmnd->str[1], file, sizeof(file)) < 0) { + print(fd, "그런 사용ìž�는 없습니다.\n"); + return(0); + } ff = open(file, O_RDONLY, 0); if(ff < 0) { - print(fd, "±×·± »ç¿ëÀÚ´Â ¾ø½À´Ï´Ù.\n"); + print(fd, "그런 사용ìž�는 없습니다.\n"); return(0); } close(ff); - print(fd, "ÆíÁö ³»¿ëÀ» ÀÔ·ÂÇϽʽÿä. ¹®ÀåóÀ½¿¡ [.]À» Ä¡½Ã¸é ÆíÁö¾²±â¸¦ Á¾·áÇÕ´Ï´Ùä.\n°¢ ÇàÀº 80ÀÚ¸¦ ³Ñ±æ ¼ö ¾ø½À´Ï´Ù.\n-: "); + print(fd, "편지 ë‚´ìš©ì�„ 입력하십시요. 문장처ì�Œì—� [.]ì�„ 치시면 편지쓰기를 종료합니다�.\nê°� í–‰ì�€ 80ìž�를 넘길 수 없습니다.\n-: "); sprintf(Ply[fd].extr->tempstr[0], "%s/%s", POSTPATH, cmnd->str[1]); @@ -90,7 +93,7 @@ char *str; if(str[0]=='.') { F_CLR(Ply[fd].ply, PREADI); - print(fd, "ÆíÁö¸¦ º¸³Â½À´Ï´Ù.\n"); + print(fd, "편지를 보냈습니다.\n"); RETURN(fd, command, 1); } @@ -102,7 +105,7 @@ char *str; time(&t); strcpy(datestr, (char *)ctime(&t)); datestr[strlen(datestr)-1] = 0; - sprintf(outstr, "\n---\n%s (%s)´Ô¿¡°Ô¼­ÀÇ ÆíÁö:\n\n", + sprintf(outstr, "\n---\n%s (%s)님ì—�게서ì�˜ 편지:\n\n", Ply[fd].ply->name, datestr); write(ff, outstr, strlen(outstr)); } @@ -141,7 +144,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RPOSTO)) { - print(fd, "À̰÷Àº ¿ìü±¹ÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ì�´ê³³ì�€ ìš°ì²´êµ­ì�´ 아닙니다.\n"); return(0); } strcpy(file, POSTPATH); @@ -149,7 +152,7 @@ cmd *cmnd; strcat(file, "/"); strcat(file, ply_ptr->name); if(stat(file,&f_stat)){ - print(fd,"¹ÞÀº ÆíÁö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd,"ë°›ì�€ 편지가 없습니다.\n"); return(0); } else { @@ -180,13 +183,13 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(rom_ptr, RPOSTO)) { - print(fd, "À̰÷Àº ¿ìü±¹ÀÌ ¾Æ´Õ´Ï´Ù.\n"); + print(fd, "ì�´ê³³ì�€ ìš°ì²´êµ­ì�´ 아닙니다.\n"); return(0); } sprintf(file, "%s/%s", POSTPATH, ply_ptr->name); - print(fd, "ÆíÁö°¡ »èÁ¦µÇ¾ú½À´Ï´Ù.\n"); + print(fd, "편지가 ì‚­ì œë�˜ì—ˆìŠµë‹ˆë‹¤.\n"); unlink(file); @@ -297,7 +300,7 @@ cmd *cmnd; rom_ptr = ply_ptr->parent_rom; if(!F_ISSET(ply_ptr, PFAMIL)) { - print(fd, "´ç½ÅÀº ÆÐ°Å¸®¿¡ °¡ÀԵǾî ÀÖÁö ¾Ê½À´Ï´Ù."); + print(fd, "당신ì�€ 패거리ì—� 가입ë�˜ì–´ 있지 않습니다."); return(0); } fnum = ply_ptr->daily[DL_EXPND].max; @@ -313,7 +316,7 @@ cmd *cmnd; if(cmnd->num == 2) { if( low(cmnd->str[1][0]) == 'a'){ strcpy(Ply[fd].extr->tempstr[0],file); - print(fd, "ÆÐ°Å¸® °øÁö:\n->"); + print(fd, "패거리 공지:\n->"); F_SET(Ply[fd].ply, PREADI); output_buf(); Ply[fd].io->intrpt &= ~1; @@ -323,15 +326,15 @@ cmd *cmnd; } else if (low(cmnd->str[1][0]) == 'd'){ if(!F_ISSET(ply_ptr, PFMBOS)) { - print(fd, "»èÁ¦´Â µÎ¸ñ¸¸ °¡´ÉÇÕ´Ï´Ù."); + print(fd, "삭제는 ë‘�목만 가능합니다."); return(PROMPT); } unlink(file); - print(fd,"°øÁö ³»¿ëÀ» Áö¿ü½À´Ï´Ù.\n"); + print(fd,"공지 ë‚´ìš©ì�„ 지웠습니다.\n"); return(PROMPT); } else{ - print(fd,"À߸øµÈ ¿É¼ÇÀÔ´Ï´Ù.\n"); + print(fd,"잘못ë�œ 옵션입니다.\n"); return(PROMPT); } } @@ -340,7 +343,7 @@ cmd *cmnd; view_file(fd, 1, file); } else { - print(fd, "ÆÐ°Å¸®ÀÇ °øÁö»çÇ×ÀÌ ¾ø½À´Ï´Ù."); + print(fd, "패거리ì�˜ 공지사항ì�´ 없습니다."); } return(DOPROMPT); } @@ -361,14 +364,14 @@ char *str; if(str[0] == '.') { F_CLR(Ply[fd].ply, PREADI); - print(fd, "°øÁö¸¦ ³²°å½À´Ï´Ù.\n"); + print(fd, "공지를 남겼습니다.\n"); RETURN(fd, command, 1); } ff = open(Ply[fd].extr->tempstr[0], O_RDONLY, 0); if(ff < 0){ ff = open(Ply[fd].extr->tempstr[0], O_CREAT | O_RDWR, ACC); - sprintf(tmpstr," %s\n\n","=== ÆÐ°Å¸® °øÁö ==="); + sprintf(tmpstr," %s\n\n","=== 패거리 공지 ==="); write(ff, tmpstr,strlen(tmpstr)); } close(ff); @@ -391,4 +394,3 @@ char *str; Ply[fd].io->intrpt &= ~1; RETURN(fd, newsedit, 2); } - diff --git a/src/room.c b/src/room.c index d4644342..8726e5c9 100644 --- a/src/room.c +++ b/src/room.c @@ -36,7 +36,7 @@ room *rom_ptr; if(!F_ISSET(ply_ptr, PDMINV) && !F_ISSET(ply_ptr, PHIDDN)) { broadcast_rom(ply_ptr->fd, ply_ptr->rom_num, - "\n%M%j µµÂøÇÏ¿´½À´Ï´Ù.", ply_ptr,"1"); + "\n%M%j ë�„착하였습니다.", ply_ptr,"1"); } add_permcrt_rom(rom_ptr); @@ -237,7 +237,7 @@ int num; cg->crt = crt_ptr; cg->next_tag = 0; - sprintf(str, "\n%%%dM%%j µµÂøÇÏ¿´½À´Ï´Ù.", num); + sprintf(str, "\n%%%dM%%j ë�„착하였습니다.", num); if(!F_ISSET(crt_ptr, MINVIS) && !F_ISSET(crt_ptr, MPERMT) && num) broadcast_rom(crt_ptr->fd, crt_ptr->rom_num, str, crt_ptr,"1"); @@ -405,9 +405,9 @@ room *rom_ptr; long t; int i, j, m, n; static char mk_flag[10000]; - /* ¿ä¹Ø¿¡ ¾Ö¸ÔÀ½ ¿Ö ÀÌ·± ¸í·ÉÀ» ¸¸µé¾ú³ª ¸ð¸£°ÚÀ½.. - À̰Ͷ«¿¡ ¾ÆÀÌÅÛ ¸®Á¨ÀÌ ¾ÊµÊ ½É½ÉÇÏ¸é ºÐ¼® ¹Ù¶÷ - ´Ù¸¥·çƾ¿¡µµ ¾²À̴°÷ ÀüÇô ¾ø½¿ */ + /* 요밑ì—� 애먹ì�Œ 왜 ì�´ëŸ° 명령ì�„ 만들었나 모르겠ì�Œ.. + ì�´ê²ƒë•œì—� ì•„ì�´í…œ 리젠ì�´ 않ë�¨ 심심하면 ë¶„ì„� 바람 + 다른루틴ì—�ë�„ ì“°ì�´ëŠ”ê³³ 전혀 없슴 */ /* if(mk_flag[rom_ptr->rom_num]) return; */ mk_flag[rom_ptr->rom_num]=1; @@ -542,9 +542,9 @@ room *rom_ptr; if(!light || F_ISSET(ply_ptr, PBLIND)) { ANSI(fd, RED); - if(F_ISSET(ply_ptr, PBLIND)) print(fd, "´ç½ÅÀº ´«ÀÌ ¸Ö¾î ¾Æ¹«°Íµµ º¼ ¼ö ¾ø½À´Ï´Ù.\n"); + if(F_ISSET(ply_ptr, PBLIND)) print(fd, "당신ì�€ 눈ì�´ 멀어 아무것ë�„ ë³¼ 수 없습니다.\n"); ANSI(fd, YELLOW); - print(fd, "³Ê¹« ¾îµÎ¿ö¼­ º¼ ¼ö°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "너무 ì–´ë‘�워서 ë³¼ 수가 없습니다.\n"); ANSI(fd, WHITE); return; } @@ -565,7 +565,7 @@ room *rom_ptr; if(!F_ISSET(ply_ptr, PNOEXT)) { n=0; str[0] = 0; - strcat(str, "[ Ãⱸ : "); + strcat(str, "[ 출구 : "); xp = rom_ptr->first_ext; while(xp) { if(!F_ISSET(xp->ext, XSECRT) && @@ -579,7 +579,7 @@ room *rom_ptr; xp = xp->next_tag; } if(!n) - strcat(str, "¾øÀ½ ]"); + strcat(str, "ì—†ì�Œ ]"); else { str[strlen(str)-2] = 0; strcat(str, " ]"); @@ -597,18 +597,18 @@ room *rom_ptr; !F_ISSET(xp->ext, XNOSEE) && (F_ISSET(ply_ptr, PDINVI) ? 1:!F_ISSET(xp->ext, XINVIS))) { - if(!strcmp(xp->ext->name,"µ¿")) + if(!strcmp(xp->ext->name,"ë�™")) exit_grp[1][5]=exit_grp[1][6]='-'; - else if(!strcmp(xp->ext->name,"¼­")) + else if(!strcmp(xp->ext->name,"서")) exit_grp[1][0]=exit_grp[1][1]='-'; - else if(!strcmp(xp->ext->name,"³²")) + else if(!strcmp(xp->ext->name,"남")) exit_grp[2][3]='|'; - else if(!strcmp(xp->ext->name,"ºÏ")) + else if(!strcmp(xp->ext->name,"ë¶�")) exit_grp[0][3]='|'; - else if(!strcmp(xp->ext->name,"À§")) - strcpy(exit_grp[0]+5,"À§"); - else if(!strcmp(xp->ext->name,"¹Ø")) - strcpy(exit_grp[2]+5,"¹Ø"); + else if(!strcmp(xp->ext->name,"위")) + strcpy(exit_grp[0]+5,"위"); + else if(!strcmp(xp->ext->name,"ë°‘")) + strcpy(exit_grp[2]+5,"ë°‘"); else { strcat(str,xp->ext->name); strcat(str, ", "); @@ -620,13 +620,13 @@ room *rom_ptr; } ANSI(fd, GREEN); if(!n2) - print(fd, "[ Ãⱸ : ¾øÀ½ ]\n"); + print(fd, "[ 출구 : ì—†ì�Œ ]\n"); else { print(fd,"[ %s ]\n",exit_grp[0]); print(fd,"[ %s ]",exit_grp[1]); if(n!=0) { str[strlen(str)-2] = 0; - print(fd," [ Ãⱸ : %s ]\n",str); + print(fd," [ 출구 : %s ]\n",str); } else print(fd,"\n"); print(fd,"[ %s ]\n",exit_grp[2]); @@ -650,7 +650,7 @@ room *rom_ptr; if(n) { str[strlen(str)-2] = 0; ANSI(fd, CYAN); - print(fd, "%s´ÔÀÌ ¼­ ÀÖ½À´Ï´Ù.\n", str); + print(fd, "%s님ì�´ 서 있습니다.\n", str); ANSI(fd, WHITE); } } @@ -662,7 +662,7 @@ room *rom_ptr; !(ply_ptr->class < DM && F_ISSET(cp->crt, PDMINV)) && cp->crt != ply_ptr) { ANSI(fd, CYAN); - print(fd, "%s´ÔÀÌ %s¼­ ÀÖ½À´Ï´Ù.\n", cp->crt->name, + print(fd, "%s님ì�´ %s서 있습니다.\n", cp->crt->name, cp->crt->description); ANSI(fd, WHITE); } @@ -691,8 +691,8 @@ room *rom_ptr; print(fd,"%s", cp->crt->description); if(F_ISSET(ply_ptr, PKNOWA)) { if(cp->crt->alignment < 0) - print(fd, " (ºÓÀº ±¤Ã¤)"); - else print(fd, " (Ǫ¸¥ ±¤Ã¤)"); + print(fd, " (붉ì�€ 광채)"); + else print(fd, " (푸른 광채)"); } print(fd, "\n"); /* strcat(str, crt_str(cp->crt, m, 0)); @@ -703,14 +703,14 @@ room *rom_ptr; } /* if(n) { str[strlen(str)-2] = 0; - print(fd, "%S%j ¼­ ÀÖ½À´Ï´Ù.\n", str,"1"); + print(fd, "%S%j 서 있습니다.\n", str,"1"); } */ str[0]=0; n = list_obj(str, ply_ptr, rom_ptr->first_obj); if(n) - print(fd, "%S%j ³õ¿©Á® ÀÖ½À´Ï´Ù.\n", str, "1"); + print(fd, "%S%j 놓여져 있습니다.\n", str, "1"); cp = rom_ptr->first_mon; while(cp) { @@ -718,9 +718,9 @@ room *rom_ptr; crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cp->crt->first_enm->enemy, 1); if(crt_ptr == ply_ptr) - print(fd, "%M%j ´ç½Å°ú ½Î¿ì°í ÀÖ½À´Ï´Ù.\n", cp->crt,"1"); + print(fd, "%M%j 당신과 싸우고 있습니다.\n", cp->crt,"1"); else if(crt_ptr) - print(fd, "%M%j %M%j ½Î¿ì°í ÀÖ½À´Ï´Ù.\n", cp->crt,"1", + print(fd, "%M%j %M%j 싸우고 있습니다.\n", cp->crt,"1", crt_ptr,"2"); } cp = cp->next_tag; @@ -824,14 +824,14 @@ room *rom_ptr; switch (rom_ptr->trap){ case TRAP_PIT: if(!F_ISSET(ply_ptr, PLEVIT)){ - print(fd, "´ç½ÅÀº ±¸µ¢ÀÌ¿¡ ºüÁ³½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 구ë�©ì�´ì—� 빠졌습니다!\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ±¸µ¢ÀÌ¿¡ ºüÁ³½À´Ï´Ù!", ply_ptr); + "\n%Mì�´ 구ë�©ì�´ì—� 빠졌습니다!", ply_ptr); del_ply_rom(ply_ptr, rom_ptr); load_rom(rom_ptr->trapexit, &new_rom); add_ply_rom(ply_ptr, new_rom); dmg = mrand(1,15); - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다.\n", dmg); ply_ptr->hpcur -= dmg; if(ply_ptr->hpcur < 1) die(ply_ptr, ply_ptr); @@ -839,11 +839,11 @@ room *rom_ptr; break; case TRAP_DART: - print(fd, "´ç½ÅÀº ¼û°ÜÁø µ¶È­»ì¿¡ ¸Â¾Ò½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 숨겨진 ë�…화살ì—� 맞았습니다!\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ ¼û°ÜÁø µ¶È­»ì¿¡ ¸Â¾Ò½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 숨겨진 ë�…화살ì—� 맞았습니다.", ply_ptr); dmg = mrand(1,10); - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다.\n", dmg); F_SET(ply_ptr, PPOISN); ply_ptr->hpcur -= dmg; if(ply_ptr->hpcur < 1) @@ -851,35 +851,35 @@ room *rom_ptr; break; case TRAP_BLOCK: - print(fd, "´ç½ÅÀº Ä¿´Ù¶õ µ¹¿¡ ¸Â¾Ò½À´Ï´Ù!\n"); + print(fd, "당신ì�€ 커다란 ë�Œì—� 맞았습니다!\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%M À§·Î Ä¿´Ù¶õ µ¹ÀÌ ¶³¾îÁ³½À´Ï´Ù.", ply_ptr); + "\n%M 위로 커다란 ë�Œì�´ 떨어졌습니다.", ply_ptr); dmg = ply_ptr->hpmax / 3; /* dmg = ply_ptr->hpmax / 2; */ - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다.\n", dmg); ply_ptr->hpcur -= dmg; if(ply_ptr->hpcur < 1) die(ply_ptr, ply_ptr); break; case TRAP_MPDAM: - print(fd, "´ç½ÅÀÇ ¸¶À½ÀÌ Ãæ°ÝÀ» ¹Þ¾Ò½À´Ï´Ù!\n"); + print(fd, "당신ì�˜ 마ì�Œì�´ 충격ì�„ 받았습니다!\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ °­ÇÑ Ãæ°ÝÀ» ¹Þ¾Ò½À´Ï´Ù.", ply_ptr); + "\n%Mì�´ 강한 충격ì�„ 받았습니다.", ply_ptr); dmg = MIN(ply_ptr->mpcur,ply_ptr->mpmax / 2); - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ¸¶·ÂÀ» ÀÒ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 마력ì�„ 잃었습니다.\n", dmg); ply_ptr->mpcur -= dmg; dmg = mrand(1,6); ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù.\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다.\n", dmg); if(ply_ptr->hpcur < 1) die(ply_ptr, ply_ptr); break; case TRAP_RMSPL: - print(fd, "¾îµÎ¿î ±â¿îÀÌ ´ç½ÅÀ» °¨½Ô´Ï´Ù.\n"); - print(fd, "´ç½ÅÀÇ ÁÖ¹®ÀÌ »ç¶óÁý´Ï´Ù.\n"); + print(fd, "ì–´ë‘�ìš´ 기운ì�´ 당신ì�„ ê°�쌉니다.\n"); + print(fd, "당신ì�˜ 주문ì�´ 사ë�¼ì§‘니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n¾îµÎ¿î ±â¿îÀÌ %MÀ» °¨½Ô´Ï´Ù.", ply_ptr); + "\nì–´ë‘�ìš´ 기운ì�´ %Mì�„ ê°�쌉니다.", ply_ptr); ply_ptr->lasttime[LT_PROTE].interval = ply_ptr->lasttime[LT_BLESS].interval = @@ -896,18 +896,18 @@ room *rom_ptr; break; case TRAP_NAKED: - print(fd, "ºÓÀº ¾×ü°¡ ´ç½ÅÀ§·Î ½ñ¾ÆÁý´Ï´Ù.\n"); - print(fd, "À¸¾Ç!!! ´ç½ÅÀÇ Àåºñ°¡ ³ì¾Æ¹ö¸³´Ï´Ù.\n"); + print(fd, "붉ì�€ ì•¡ì²´ê°€ 당신위로 ì�Ÿì•„집니다.\n"); + print(fd, "으악!!! 당신ì�˜ 장비가 녹아버립니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\nºÓÀº ¾×ü°¡ %m´ÔÀ§·Î ½ñ¾ÆÁý´Ï´Ù.", ply_ptr); + "\n붉ì�€ ì•¡ì²´ê°€ %m님위로 ì�Ÿì•„집니다.", ply_ptr); lose_all(ply_ptr); break; case TRAP_ALARM: - print(fd, "°æº¸ÀåÄ¡°¡ ¿ï¸³´Ï´Ù!\n"); - print(fd, "±Ùó¿¡ °æºñ¿øµéÀÌ ¾ø±æ ¹Ù¶ø´Ï´Ù.\n"); + print(fd, "경보장치가 울립니다!\n"); + print(fd, "근처ì—� 경비ì›�들ì�´ 없길 ë°”ëž�니다.\n"); broadcast_rom(fd, ply_ptr->rom_num, - "\n%MÀÌ °æº¸ÀåÄ¡¸¦ °Çµå·È½À´Ï´Ù!\n", ply_ptr); + "\n%Mì�´ 경보장치를 건드렸습니다!\n", ply_ptr); load_rom(rom_ptr->trapexit, &new_rom); add_permcrt_rom(new_rom); cp = new_rom->first_mon; @@ -917,7 +917,7 @@ room *rom_ptr; if(F_ISSET(tmp_crt, MPERMT)){ if(new_rom->first_ply) broadcast_rom(tmp_crt->fd, tmp_crt->rom_num, - "\n%M%j °æº¸¸¦ µè°í Á¶»çÇÏ·¯ °©´Ï´Ù.",tmp_crt,"1"); + "\n%M%j 경보를 듣고 조사하러 갑니다.",tmp_crt,"1"); else add_active(tmp_crt); F_CLR(tmp_crt,MPERMT); @@ -926,7 +926,7 @@ room *rom_ptr; del_crt_rom(tmp_crt, new_rom); add_crt_rom(tmp_crt, rom_ptr, 1); broadcast_rom(tmp_crt->fd, tmp_crt->rom_num, - "%M%j °æº¸¸¦ µè°í Á¶»çÇÏ·¯ ¿Ô½À´Ï´Ù.", tmp_crt,"1"); + "%M%j 경보를 듣고 조사하러 왔습니다.", tmp_crt,"1"); } } break; diff --git a/src/s.c b/src/s.c index 07a1597a..2d01375d 100644 --- a/src/s.c +++ b/src/s.c @@ -1,4 +1,4 @@ -/* ¼­ºñ½º ÁßÁöÇÒ¶§ ¾²´Â°Å¿¹¿ä.. */ +/* 서비스 중지할때 쓰는거예요.. */ #include @@ -26,19 +26,19 @@ main() while(1) { new_sockfd=accept(sockfd, (struct sockaddr *)&cli_addr, &clilen); bzero(buffer, 80); - strcpy(buffer, "\n- ¹« ÇÑ ´ë Àü -\n\n"); + strcpy(buffer, "\n- 무 한 대 ì „ -\n\n"); write(new_sockfd, buffer, strlen(buffer)); bzero(buffer, 80); - strcpy(buffer, "È£½ºÆ® ±³Ã¼/Á¤ºñ °ü°è·Î Àá½Ã ¼­ºñ½º°¡ ÁßÁöµË´Ï´Ù.\n"); + strcpy(buffer, "호스트 êµ�ì²´/정비 관계로 잠시 서비스가 중지ë�©ë‹ˆë‹¤.\n"); write(new_sockfd, buffer, strlen(buffer)); bzero(buffer, 80); - strcpy(buffer, "ºÒÆíÀ» µå·Á Á˼ÛÇÕ´Ï´Ù.\n"); + strcpy(buffer, "불편ì�„ 드려 죄송합니다.\n"); write(new_sockfd, buffer, strlen(buffer)); bzero(buffer, 80); - strcpy(buffer, "Ưº°È÷ ÀüÇÏ½Ç ³»¿ëÀÌ ÀÖÀ¸½Ã¸é ±×·çÅͱâ BBS ÀÇ ¸Óµå°Ô½ÃÆÇ¿¡ ½á ÁֽʽÿÀ.\n"); + strcpy(buffer, "특별히 전하실 ë‚´ìš©ì�´ 있으시면 그루터기 BBS ì�˜ 머드게시íŒ�ì—� ì�¨ 주십시오.\n"); write(new_sockfd, buffer, strlen(buffer)); bzero(buffer, 80); - strcpy(buffer, "±×·çÅͱâ BBS : ksb.kumoh.ac.kr login:bbs\n\n"); + strcpy(buffer, "그루터기 BBS : ksb.kumoh.ac.kr login:bbs\n\n"); write(new_sockfd, buffer, strlen(buffer)); close(new_sockfd); } diff --git a/src/sp.c b/src/sp.c index 7b95df95..14f87996 100644 --- a/src/sp.c +++ b/src/sp.c @@ -59,7 +59,7 @@ int special; } if(!obj_ptr) { - print(fd, "±×°°Àº ¹°°ÇÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "그같ì�€ 물건ì�´ 없습니다.\n"); return(-1); } @@ -76,9 +76,9 @@ int special; return(DOPROMPT); case SP_COMBO: return(combo_box(ply_ptr, obj_ptr)); - /* ¼±ÀüÆ÷°í ·çƾ ºÎ¸§ */ + /* ì„ ì „í�¬ê³  루틴 부름 */ default: - print(fd, "¾Æ¹«°Íµµ ¾ø½À´Ï´Ù.\n"); + print(fd, "아무것ë�„ 없습니다.\n"); } return(0); @@ -101,18 +101,18 @@ cmd *cmnd; case SP_MAPSC: case SP_COMBO: if(cmnd->num < 2) { - print(fd, "¹«¾ó ´©¸¨´Ï±î?\n"); + print(fd, "무얼 누릅니까?\n"); return(0); } n = special_obj(ply_ptr, cmnd, special); if(n == -1) return(0); if(n == -2) { - print(fd, "¹«¾ó ÇÏ·Á°í Çϴµ¥¿ä?.\n"); + print(fd, "무얼 하려고 하는ë�°ìš”?.\n"); return(0); } else return(n); default: - print(ply_ptr->fd, "¾Æ¹«·± Àϵµ ÀϾÁö ¾Ê½À´Ï´Ù.\n"); + print(ply_ptr->fd, "아무런 ì�¼ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n"); return(0); } } @@ -141,19 +141,19 @@ object *obj_ptr; strcat(Ply[fd].extr->tempstr[3], str); print(fd, "Click.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ %i¸¦ ´­·¶½À´Ï´Ù.", ply_ptr, obj_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ %i를 눌렀습니다.", ply_ptr, obj_ptr); if(strlen(Ply[fd].extr->tempstr[3]) >= strlen(obj_ptr->use_output)) { if(strcmp(Ply[fd].extr->tempstr[3], obj_ptr->use_output)) { dmg = mrand(20,40); ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù!\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다!\n", dmg); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %i·ÎºÎÅÍ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù!", ply_ptr, obj_ptr); + "%Mì�´ %i로부터 피해를 입었습니다!", ply_ptr, obj_ptr); Ply[fd].extr->tempstr[3][0] = 0; if(ply_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº Á×¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 죽었습니다.\n"); die(ply_ptr, ply_ptr); } } @@ -163,9 +163,9 @@ object *obj_ptr; xp && i < obj_ptr->pdice; i++, xp = xp->next_tag) ; if(!xp) return(0); - print(fd, "´ç½ÅÀº %s¸¦ ¿­¾ú½À´Ï´Ù!\n", xp->ext->name); + print(fd, "당신ì�€ %s를 열었습니다!\n", xp->ext->name); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %s¸¦ ¿­¾ú½À´Ï´Ù!", ply_ptr, xp->ext->name); + "%Mì�´ %s를 열었습니다!", ply_ptr, xp->ext->name); F_CLR(xp->ext, XLOCKD); F_CLR(xp->ext, XCLOSD); xp->ext->ltime.ltime = time(0); @@ -190,11 +190,11 @@ cmd *cmnd; fnum = ply_ptr->daily[DL_EXPND].max; if(!F_ISSET(ply_ptr,PFMBOS) || fnum == 0) { - print(fd, "´ç½ÅÀº ¼±Àü Æ÷°íÇÒ ±Ç¸®°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì„ ì „ í�¬ê³ í•  권리가 없습니다.\n"); return(0); } if(cmnd->num != 2) { - print(fd, "¾î´À ÆÐ°Å¸®¿Í ÀüÀïÀ» ÇϽ÷Á°í¿ä?"); + print(fd, "ì–´ëŠ� 패거리와 ì „ìŸ�ì�„ 하시려고요?"); return(0); } @@ -202,7 +202,7 @@ cmd *cmnd; if(!strcmp(cmnd->str[1], family_str[num])) { crt_ptr = find_who(fmboss_str[num]); if(!crt_ptr) { - print(fd, "»ó´ëÆíÀÇ µÎ¸ñÀÎ %s´ÔÀÌ ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù.", fmboss_str[num]); + print(fd, "ìƒ�대편ì�˜ ë‘�목ì�¸ %s님ì�´ ì�´ìš©ì¤‘ì�´ 아닙니다.", fmboss_str[num]); return(0); } break; @@ -210,47 +210,47 @@ cmd *cmnd; fal++; } if(fal >= 15) { - print(fd, "±×·± ÆÐ°Å¸®´Â ¾ø½À´Ï´Ù."); + print(fd, "그런 패거리는 없습니다."); return(0); } if(fnum == num) { - print(fd, "ÀÚ±â Àڽŵé°ú ½Î¿ì½Ã·Á°í¿ä?"); + print(fd, "ìž�기 ìž�신들과 싸우시려고요?"); return(0); } if(!AT_WAR) { if(!CALLWAR2) { - broadcast_all("\n### %s ÆÐ°Å¸®°¡ %s¿¡°Ô ¼±ÀüÆ÷°í¸¦ ÇÕ´Ï´Ù.\n\n", + broadcast_all("\n### %s 패거리가 %sì—�게 ì„ ì „í�¬ê³ ë¥¼ 합니다.\n\n", family_str[fnum], family_str[num]); CALLWAR1 = fnum; CALLWAR2 = num; return(0); } if(CALLWAR1 == fnum) { - broadcast("\n### %s ÆÐ°Å¸®¿¡¼­ ¼±ÀüÆ÷°í¸¦ Ãë¼ÒÇÕ´Ï´Ù.\n", family_str[fnum]); + broadcast("\n### %s 패거리ì—�서 ì„ ì „í�¬ê³ ë¥¼ 취소합니다.\n", family_str[fnum]); CALLWAR1 = CALLWAR2 = 0; return(0); } if(CALLWAR2 == fnum) { if(CALLWAR1 != num) { - print(fd, "´Ù¸¥ ÆÐ°Å¸®¿¡¼­ ÀüÀïÀ» ½ÅÃ»ÇØµÎ°í ÀÖ½À´Ï´Ù."); + print(fd, "다른 패거리ì—�서 ì „ìŸ�ì�„ ì‹ ì²­í•´ë‘�ê³  있습니다."); return(0); } else { - broadcast("\n### %s ÆÐ°Å¸®¿¡¼­ ¼±ÀüÆ÷°í¸¦ ¹Þ¾Æµé¿´½À´Ï´Ù.\n", + broadcast("\n### %s 패거리ì—�서 ì„ ì „í�¬ê³ ë¥¼ 받아들였습니다.\n", family_str[fnum], family_str[num]); AT_WAR = (fnum*16) + num; return(0); } } else { - print(fd, "´Ù¸¥ ÆÐ°Å¸®¿¡¼­ ¸ÕÀú ÀüÀïÀ» ÁغñÁßÀÔ´Ï´Ù."); + print(fd, "다른 패거리ì—�서 먼저 ì „ìŸ�ì�„ 준비중입니다."); return(0); } } else - print(fd, "¹ú½á ÀüÀïÁßÀÔ´Ï´Ù.\n"); + print(fd, "벌ì�¨ ì „ìŸ�중입니다.\n"); return(0); } @@ -311,44 +311,44 @@ object *obj_ptr; int haha; if(obj_ptr->armor > 50) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s ¹æ¾î·Â : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->armor); - else log_dm("³ª»Û!! ?????? : %s ¹æ¾î·Â : %d\n", obj_ptr->name, obj_ptr->armor); + log_dm("나ì�œ!! %s : %s ë°©ì–´ë ¥ : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->armor); + else log_dm("나ì�œ!! ?????? : %s ë°©ì–´ë ¥ : %d\n", obj_ptr->name, obj_ptr->armor); return 1; } if((haha=obj_ptr->ndice*obj_ptr->sdice+obj_ptr->pdice) > 100) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s °ø°Ý·Â : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, haha); - else log_dm("³ª»Û!! ?????? : %s °ø°Ý·Â : %d\n", obj_ptr->name, haha); + log_dm("나ì�œ!! %s : %s 공격력 : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, haha); + else log_dm("나ì�œ!! ?????? : %s 공격력 : %d\n", obj_ptr->name, haha); return 1; } if(F_ISSET(obj_ptr, OCONTN) && (obj_ptr->shotsmax > 20)) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s º¸µû¸® : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); - else log_dm("³ª»Û!! ?????? : %s º¸µû¸® : %d\n", obj_ptr->name, obj_ptr->shotsmax); + log_dm("나ì�œ!! %s : %s 보따리 : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + else log_dm("나ì�œ!! ?????? : %s 보따리 : %d\n", obj_ptr->name, obj_ptr->shotsmax); return 1; } if(F_ISSET(obj_ptr, OSPECI) && (obj_ptr->pdice == 4)) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s ÀÌ»óÇØ : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->pdice); - else log_dm("³ª»Û!! ?????? : %s ÀÌ»óÇØ : %d\n", obj_ptr->name, obj_ptr->pdice); + log_dm("나ì�œ!! %s : %s ì�´ìƒ�í•´ : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->pdice); + else log_dm("나ì�œ!! ?????? : %s ì�´ìƒ�í•´ : %d\n", obj_ptr->name, obj_ptr->pdice); return 1; } if((obj_ptr->type == POTION) && (obj_ptr->shotscur > 50)) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); - else log_dm("³ª»Û!! ?????? : %s »ç¿ëȸ¼ö : %d\n", obj_ptr->name, obj_ptr->shotscur); + log_dm("나ì�œ!! %s : %s 사용회수 : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + else log_dm("나ì�œ!! ?????? : %s 사용회수 : %d\n", obj_ptr->name, obj_ptr->shotscur); return 1; } if(obj_ptr->shotscur >= 1000) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); - else log_dm("³ª»Û!! ?????? : %s »ç¿ëȸ¼ö : %d\n", obj_ptr->name, obj_ptr->shotscur); + log_dm("나ì�œ!! %s : %s 사용회수 : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + else log_dm("나ì�œ!! ?????? : %s 사용회수 : %d\n", obj_ptr->name, obj_ptr->shotscur); return 1; } if(obj_ptr->shotsmax >= 1000) { if(obj_ptr->parent_crt) - log_dm("³ª»Û!! %s : %s ÃÖ´ëȸ¼ö : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); - else log_dm("³ª»Û!! ?????? : %s ÃÖ´ëȸ¼ö : %d\n", obj_ptr->name, obj_ptr->shotsmax); + log_dm("나ì�œ!! %s : %s 최대회수 : %d\n", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + else log_dm("나ì�œ!! ?????? : %s 최대회수 : %d\n", obj_ptr->name, obj_ptr->shotsmax); return 1; } return 0; diff --git a/src/special1.c b/src/special1.c index 01a61520..624f0449 100644 --- a/src/special1.c +++ b/src/special1.c @@ -59,7 +59,7 @@ int special; } if(!obj_ptr) { - print(fd, "±×°°Àº ¹°°ÇÀÌ ¾ø½À´Ï´Ù.\n"); + print(fd, "그같ì�€ 물건ì�´ 없습니다.\n"); return(-1); } @@ -76,9 +76,9 @@ int special; return(DOPROMPT); case SP_COMBO: return(combo_box(ply_ptr, obj_ptr)); - /* ¼±ÀüÆ÷°í ·çƾ ºÎ¸§ */ + /* ì„ ì „í�¬ê³  루틴 부름 */ default: - print(fd, "¾Æ¹«°Íµµ ¾ø½À´Ï´Ù.\n"); + print(fd, "아무것ë�„ 없습니다.\n"); } return(0); @@ -101,18 +101,18 @@ cmd *cmnd; case SP_MAPSC: case SP_COMBO: if(cmnd->num < 2) { - print(fd, "¹«¾ó ´©¸¨´Ï±î?\n"); + print(fd, "무얼 누릅니까?\n"); return(0); } n = special_obj(ply_ptr, cmnd, special); if(n == -1) return(0); if(n == -2) { - print(fd, "¹«¾ó ÇÏ·Á°í Çϴµ¥¿ä?.\n"); + print(fd, "무얼 하려고 하는ë�°ìš”?.\n"); return(0); } else return(n); default: - print(ply_ptr->fd, "¾Æ¹«·± Àϵµ ÀϾÁö ¾Ê½À´Ï´Ù.\n"); + print(ply_ptr->fd, "아무런 ì�¼ë�„ ì�¼ì–´ë‚˜ì§€ 않습니다.\n"); return(0); } } @@ -141,19 +141,19 @@ object *obj_ptr; strcat(Ply[fd].extr->tempstr[3], str); print(fd, "Click.\n"); - broadcast_rom(fd, ply_ptr->rom_num, "%MÀÌ %i¸¦ ´­·¶½À´Ï´Ù.", ply_ptr, obj_ptr); + broadcast_rom(fd, ply_ptr->rom_num, "%Mì�´ %i를 눌렀습니다.", ply_ptr, obj_ptr); if(strlen(Ply[fd].extr->tempstr[3]) >= strlen(obj_ptr->use_output)) { if(strcmp(Ply[fd].extr->tempstr[3], obj_ptr->use_output)) { dmg = mrand(20,40); ply_ptr->hpcur -= dmg; - print(fd, "´ç½ÅÀº %dÁ¡ÀÇ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù!\n", dmg); + print(fd, "당신ì�€ %dì �ì�˜ 피해를 입었습니다!\n", dmg); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %i·ÎºÎÅÍ ÇÇÇØ¸¦ ÀÔ¾ú½À´Ï´Ù!", ply_ptr, obj_ptr); + "%Mì�´ %i로부터 피해를 입었습니다!", ply_ptr, obj_ptr); Ply[fd].extr->tempstr[3][0] = 0; if(ply_ptr->hpcur < 1) { - print(fd, "´ç½ÅÀº Á×¾ú½À´Ï´Ù.\n"); + print(fd, "당신ì�€ 죽었습니다.\n"); die(ply_ptr, ply_ptr); } } @@ -163,9 +163,9 @@ object *obj_ptr; xp && i < obj_ptr->pdice; i++, xp = xp->next_tag) ; if(!xp) return(0); - print(fd, "´ç½ÅÀº %s¸¦ ¿­¾ú½À´Ï´Ù!\n", xp->ext->name); + print(fd, "당신ì�€ %s를 열었습니다!\n", xp->ext->name); broadcast_rom(fd, ply_ptr->rom_num, - "%MÀÌ %s¸¦ ¿­¾ú½À´Ï´Ù!", ply_ptr, xp->ext->name); + "%Mì�´ %s를 열었습니다!", ply_ptr, xp->ext->name); F_CLR(xp->ext, XLOCKD); F_CLR(xp->ext, XCLOSD); xp->ext->ltime.ltime = time(0); @@ -190,11 +190,11 @@ cmd *cmnd; fnum = ply_ptr->daily[DL_EXPND].max; if(!F_ISSET(ply_ptr,PFMBOS) || fnum == 0) { - print(fd, "´ç½ÅÀº ¼±Àü Æ÷°íÇÒ ±Ç¸®°¡ ¾ø½À´Ï´Ù.\n"); + print(fd, "당신ì�€ ì„ ì „ í�¬ê³ í•  권리가 없습니다.\n"); return(0); } if(cmnd->num != 2) { - print(fd, "¾î´À ÆÐ°Å¸®¿Í ÀüÀïÀ» ÇϽ÷Á°í¿ä?"); + print(fd, "ì–´ëŠ� 패거리와 ì „ìŸ�ì�„ 하시려고요?"); return(0); } @@ -202,7 +202,7 @@ cmd *cmnd; if(!strcmp(cmnd->str[1], family_str[num])) { crt_ptr = find_who(fmboss_str[num]); if(!crt_ptr) { - print(fd, "»ó´ëÆíÀÇ µÎ¸ñÀÎ %s´ÔÀÌ ÀÌ¿ëÁßÀÌ ¾Æ´Õ´Ï´Ù.", fmboss_str[num]); + print(fd, "ìƒ�대편ì�˜ ë‘�목ì�¸ %s님ì�´ ì�´ìš©ì¤‘ì�´ 아닙니다.", fmboss_str[num]); return(0); } break; @@ -210,47 +210,47 @@ cmd *cmnd; fal++; } if(fal >= 15) { - print(fd, "±×·± ÆÐ°Å¸®´Â ¾ø½À´Ï´Ù."); + print(fd, "그런 패거리는 없습니다."); return(0); } if(fnum == num) { - print(fd, "ÀÚ±â Àڽŵé°ú ½Î¿ì½Ã·Á°í¿ä?"); + print(fd, "ìž�기 ìž�신들과 싸우시려고요?"); return(0); } if(!AT_WAR) { if(!CALLWAR2) { - broadcast_all("\n### %s ÆÐ°Å¸®°¡ %s¿¡°Ô ¼±ÀüÆ÷°í¸¦ ÇÕ´Ï´Ù.\n\n", + broadcast_all("\n### %s 패거리가 %sì—�게 ì„ ì „í�¬ê³ ë¥¼ 합니다.\n\n", family_str[fnum], family_str[num]); CALLWAR1 = fnum; CALLWAR2 = num; return(0); } if(CALLWAR1 == fnum) { - broadcast("\n### %s ÆÐ°Å¸®¿¡¼­ ¼±ÀüÆ÷°í¸¦ Ãë¼ÒÇÕ´Ï´Ù.\n", family_str[fnum]); + broadcast("\n### %s 패거리ì—�서 ì„ ì „í�¬ê³ ë¥¼ 취소합니다.\n", family_str[fnum]); CALLWAR1 = CALLWAR2 = 0; return(0); } if(CALLWAR2 == fnum) { if(CALLWAR1 != num) { - print(fd, "´Ù¸¥ ÆÐ°Å¸®¿¡¼­ ÀüÀïÀ» ½ÅÃ»ÇØµÎ°í ÀÖ½À´Ï´Ù."); + print(fd, "다른 패거리ì—�서 ì „ìŸ�ì�„ ì‹ ì²­í•´ë‘�ê³  있습니다."); return(0); } else { - broadcast("\n### %s ÆÐ°Å¸®¿¡¼­ ¼±ÀüÆ÷°í¸¦ ¹Þ¾Æµé¿´½À´Ï´Ù.\n", + broadcast("\n### %s 패거리ì—�서 ì„ ì „í�¬ê³ ë¥¼ 받아들였습니다.\n", family_str[fnum], family_str[num]); AT_WAR = (fnum*16) + num; return(0); } } else { - print(fd, "´Ù¸¥ ÆÐ°Å¸®¿¡¼­ ¸ÕÀú ÀüÀïÀ» ÁغñÁßÀÔ´Ï´Ù."); + print(fd, "다른 패거리ì—�서 먼저 ì „ìŸ�ì�„ 준비중입니다."); return(0); } } else - print(fd, "¹ú½á ÀüÀïÁßÀÔ´Ï´Ù.\n"); + print(fd, "벌ì�¨ ì „ìŸ�중입니다.\n"); return(0); } @@ -269,7 +269,7 @@ creature *ply_ptr; if(!ply_ptr->ready[i]) continue; if(is_bad_item(ply_ptr->ready[i])) { if(ply_ptr->ready[i]->shotsmax > 4999) { - log_pl("³ª»Û %sÀÇ %s : ¾ø¾Ö¹ö·È¾î¿ä.!\n", ply_ptr->name, ply_ptr->ready[i]->name); + log_pl("나ì�œ %sì�˜ %s : 없애버렸어요.!\n", ply_ptr->name, ply_ptr->ready[i]->name); free_obj(ply_ptr->ready[i]); ply_ptr->ready[i]=NULL; save_ply(ply_ptr->name, ply_ptr); @@ -285,7 +285,7 @@ creature *ply_ptr; if(F_ISSET(obj_tag->obj, OCONTN)) check_contain(obj_tag->obj); if(is_bad_item(obj_tag->obj)) { if(obj_tag->obj->shotsmax > 4999) { - log_pl("³ª»Û %sÀÇ %s : ¾ø¾Ö¹ö·È¾î¿ä.!\n", ply_ptr->name, obj_tag->obj->name); + log_pl("나ì�œ %sì�˜ %s : 없애버렸어요.!\n", ply_ptr->name, obj_tag->obj->name); obj_haha=obj_tag->obj; del_obj_crt(obj_haha, ply_ptr); free_obj(obj_haha); @@ -305,7 +305,7 @@ creature *ply_ptr; tes++; if(tes>200) break; if(!op->obj->parent_crt) op->obj->parent_crt=ply_ptr; - if(is_bad_item(op->obj)) log_pl("ÀÇ ÀºÇà"); + if(is_bad_item(op->obj)) log_pl("ì�˜ ì�€í–‰"); op=op->next_tag; } free_obj(cnt_ptr); @@ -331,7 +331,7 @@ object *obj_ptr; obj_next=obj_tag->next_tag; if(is_bad_item(obj_tag->obj)) { if(obj_tag->obj->shotsmax > 4999) { - log_pl("³ª»Û %sÀÇ %s : ¾ø¾Ö¹ö·È¾î¿ä.!\n", obj_ptr->parent_crt->name, obj_tag->obj->name); + log_pl("나ì�œ %sì�˜ %s : 없애버렸어요.!\n", obj_ptr->parent_crt->name, obj_tag->obj->name); obj_haha=obj_tag->obj; del_obj_obj(obj_haha, obj_ptr); free_obj(obj_haha); @@ -345,52 +345,52 @@ int is_bad_item(obj_ptr) object *obj_ptr; { int haha; - if(strncmp(obj_ptr->name, "Á¦¿ì½º", 6) == 0) { + if(strncmp(obj_ptr->name, "제우스", 6) == 0) { if(obj_ptr->parent_crt) - log_pl("\nÁ¦¿ì½º %s : %s K[%s]", obj_ptr->name, obj_ptr->parent_crt->name, obj_ptr->key[2]); - else log_pl("\nÁ¦¿ì½º %s : %s K[%s]", obj_ptr->name, obj_ptr->parent_obj->parent_crt->name, obj_ptr->key[2]); + log_pl("\n제우스 %s : %s K[%s]", obj_ptr->name, obj_ptr->parent_crt->name, obj_ptr->key[2]); + else log_pl("\n제우스 %s : %s K[%s]", obj_ptr->name, obj_ptr->parent_obj->parent_crt->name, obj_ptr->key[2]); return 1; } if(obj_ptr->armor > 50) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s ¹æ¾î·Â : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->armor); - else log_pl("\n³ª»Û!! %s : %s ¹æ¾î·Â : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->armor); + log_pl("\n나ì�œ!! %s : %s ë°©ì–´ë ¥ : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->armor); + else log_pl("\n나ì�œ!! %s : %s ë°©ì–´ë ¥ : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->armor); return 1; } if((haha=obj_ptr->ndice*obj_ptr->sdice+obj_ptr->pdice) > 100) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s °ø°Ý·Â : %d", obj_ptr->parent_crt->name, obj_ptr->name, haha); - else log_pl("\n³ª»Û!! %s : %s °ø°Ý·Â : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, haha); + log_pl("\n나ì�œ!! %s : %s 공격력 : %d", obj_ptr->parent_crt->name, obj_ptr->name, haha); + else log_pl("\n나ì�œ!! %s : %s 공격력 : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, haha); return 1; } if(F_ISSET(obj_ptr, OCONTN) && (obj_ptr->shotsmax > 20)) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s º¸µû¸® : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); - else log_pl("\n³ª»Û!! %s : %s º¸µû¸® : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + log_pl("\n나ì�œ!! %s : %s 보따리 : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + else log_pl("\n나ì�œ!! %s : %s 보따리 : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); return 1; } if(F_ISSET(obj_ptr, OSPECI) && (obj_ptr->pdice == 4)) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s ÀÌ»óÇØ : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->pdice); - else log_pl("\n³ª»Û!! %s : %s ÀÌ»óÇØ : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->pdice); + log_pl("\n나ì�œ!! %s : %s ì�´ìƒ�í•´ : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->pdice); + else log_pl("\n나ì�œ!! %s : %s ì�´ìƒ�í•´ : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->pdice); return 1; } if((obj_ptr->type == POTION) && (obj_ptr->shotscur > 500)) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); - else log_pl("\n³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + log_pl("\n나ì�œ!! %s : %s 사용회수 : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + else log_pl("\n나ì�œ!! %s : %s 사용회수 : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); return 1; } if(obj_ptr->shotscur > 1000) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); - else log_pl("\n³ª»Û!! %s : %s »ç¿ëȸ¼ö : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + log_pl("\n나ì�œ!! %s : %s 사용회수 : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); + else log_pl("\n나ì�œ!! %s : %s 사용회수 : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotscur); return 1; } if(obj_ptr->shotsmax > 1000) { if(obj_ptr->parent_crt) - log_pl("\n³ª»Û!! %s : %s ÃÖ´ëȸ¼ö : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); - else log_pl("\n³ª»Û!! %s : %s ÃÖ´ëȸ¼ö : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + log_pl("\n나ì�œ!! %s : %s 최대회수 : %d", obj_ptr->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); + else log_pl("\n나ì�œ!! %s : %s 최대회수 : %d", obj_ptr->parent_obj->parent_crt->name, obj_ptr->name, obj_ptr->shotsmax); return 1; } return 0; diff --git a/src/update.c b/src/update.c index 54cf6c28..b44d4ae8 100644 --- a/src/update.c +++ b/src/update.c @@ -92,7 +92,7 @@ long t; if(!Ply[i].io) continue; if(Ply[i].ply && Ply[i].ply->class == DM) continue; if(t - Ply[i].io->ltime > 300 && Ply[i].io->fn != waiting) { - write(i, "\r\nÀԷ¾øÀÌ 5ºÐÀÌ»ó À¯ÁöÇϸé Á¢¼ÓÀÌ ²÷¾îÁý´Ï´Ù.\r\n", 48); + write(i, "\r\n입력없ì�´ 5ë¶„ì�´ìƒ� 유지하면 ì ‘ì†�ì�´ ë�Šì–´ì§‘니다.\r\n", 48); disconnect(i); continue; } @@ -199,7 +199,7 @@ long t; /************************************************************************/ -/* µµ¸Á_³¡ ¹ö±× ÆÐÄ¡ */ +/* ë�„ë§�_ë�� 버그 패치 */ /************************************************************************/ void clear_enm_crt(ply_ptr) creature *ply_ptr; @@ -302,7 +302,7 @@ long t; add_obj_crt(obj_ptr, crt_ptr); F_SET(crt_ptr, MHASSC); broadcast_rom(-1, crt_ptr->rom_num, - "%M%j %1i%j ÁݽÀ´Ï´Ù.", + "%M%j %1i%j ì¤�습니다.", crt_ptr, "1",obj_ptr,"3"); } if(t-i > 20) @@ -315,7 +315,7 @@ long t; && mrand(1,100) <= crt_ptr->parent_rom->traffic && !crt_ptr->first_enm) { broadcast_rom(-1, crt_ptr->rom_num, - "%1M%j ´ç½Å ÁÖÀ§¸¦ ¹æÈ²Çϰí ÀÖ½À´Ï´Ù.", + "%1M%j 당신 주위를 방황하고 있습니다.", crt_ptr,"1"); del_crt_rom(crt_ptr, rom_ptr); del_active(crt_ptr); @@ -387,25 +387,25 @@ long t; if(F_ISSET(crt_ptr, MBRETH) && mrand(1,30)<5) if (F_ISSET(crt_ptr, MBRWP1) && !F_ISSET(crt_ptr, MBRWP2)) { - print(fd, "\n%M%j ´ç½Å¿¡°Ô Æ¡! ħÀ» ¹ñ½À´Ï´Ù!", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì—�게 퉤! 침ì�„ 뱉습니다!", crt_ptr,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j %M¿¡°Ô Æ¡! ħÀ» ¹ñ½À´Ï´Ù!", crt_ptr, "1",att_ptr); + "\n%M%j %Mì—�게 퉤! 침ì�„ 뱉습니다!", crt_ptr, "1",att_ptr); n = dice(((crt_ptr->level+3)/4), 3, 0); } else if (F_ISSET(crt_ptr, MBRWP1) && F_ISSET(crt_ptr, MBRWP2)) { - print(fd, "\n%M%j ´ç½Å¿¡°Ô °í¾àÇÑ ³¿»õ°¡ ³ª´Â ÀÔ±èÀ» »Õ¾î´ð´Ï´Ù!", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì—�게 고약한 냄새가 나는 ìž…ê¹€ì�„ 뿜어댑니다!", crt_ptr,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j %M¿¡°Ô °í¾àÇÑ ³¿»õ°¡ ³ª´Â ÀÔ±èÀ» »Õ¾î´ð´Ï´Ù!", crt_ptr, "1",att_ptr); + "\n%M%j %Mì—�게 고약한 냄새가 나는 ìž…ê¹€ì�„ 뿜어댑니다!", crt_ptr, "1",att_ptr); n = dice(((crt_ptr->level+3)/4), 2, 1); - print(fd, "\n%M%j ´ç½ÅÀ» Áßµ¶½ÃÄ×½À´Ï´Ù.", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì�„ 중ë�…시켰습니다.", crt_ptr,"1"); F_SET(att_ptr, PPOISN); } else if (!F_ISSET(crt_ptr, MBRWP1) && F_ISSET(crt_ptr, MBRWP2)) { - print(fd, "\n%M%j ´ç½Å¿¡°Ô ³Ã±â¸¦ ³»»Õ½À´Ï´Ù!", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì—�게 냉기를 내뿜습니다!", crt_ptr,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j %M¿¡°Ô ³Ã±â¸¦ ³»»Õ½À´Ï´Ù!", crt_ptr, "1",att_ptr); + "\n%M%j %Mì—�게 냉기를 내뿜습니다!", crt_ptr, "1",att_ptr); if(F_ISSET(att_ptr, PRCOLD)) n = dice(((crt_ptr->level+3)/4), 2, 0); else @@ -413,9 +413,9 @@ if(F_ISSET(crt_ptr, MBRETH) && mrand(1,30)<5) } else{ - print(fd, "\n%M%j ´ç½Å¿¡°Ô ºÒÀ» »Õ½À´Ï´Ù!", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì—�게 불ì�„ 뿜습니다!", crt_ptr,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j %M¿¡°Ô ºÒÀ» »Õ½À´Ï´Ù!", crt_ptr,"1", att_ptr); + "\n%M%j %Mì—�게 불ì�„ 뿜습니다!", crt_ptr,"1", att_ptr); if(F_ISSET(att_ptr, PRFIRE)) n = dice(((crt_ptr->level+3)/4), 2, 0); else @@ -427,12 +427,12 @@ else { n = dice(((crt_ptr->level+3)/4), 5, (((crt_ptr->level+3)/4))*5); n = MAX(0,MIN(n,att_ptr->experience)); - print(fd, "\n%M%j ´ç½ÅÀÇ °æÇèÄ¡¸¦ °¦¾Æ¸Ô½À´Ï´Ù!", crt_ptr,"1"); + print(fd, "\n%M%j 당신ì�˜ 경험치를 갉아먹습니다!", crt_ptr,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j %MÀÇ °æÇèÄ¡¸¦ °¦¾Æ¸Ô½À´Ï´Ù!", crt_ptr, "1",att_ptr); + "\n%M%j %Mì�˜ 경험치를 갉아먹습니다!", crt_ptr, "1",att_ptr); att_ptr->experience -= n; lower_prof(att_ptr,n); - print(fd, "\n%M%j ´ç½ÅÀÇ °æÇèÄ¡ %d ¸¦ ÁÙ¾ú½À´Ï´Ù.",crt_ptr,"1",n); + print(fd, "\n%M%j 당신ì�˜ 경험치 %d 를 줄었습니다.",crt_ptr,"1",n); } @@ -441,25 +441,25 @@ if(n<1) n = 1; } if(F_ISSET(crt_ptr, MBEFUD)) { n = n/3; - print(fd, "\n%M%j È¥ºñ¹é»êÇÕ´Ï´Ù.",crt_ptr, "1"); + print(fd, "\n%M%j 혼비백산합니다.",crt_ptr, "1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%M%j È¥ºñ¹é»êÇÕ´Ï´Ù.",crt_ptr, "1"); + "\n%M%j 혼비백산합니다.",crt_ptr, "1"); } att_ptr->hpcur -= n; - print(fd, "\n%M%j ´ç½Å¿¡°Ô %d¸¸Å­ÀÇ »óó¸¦ ÀÔÇû½À´Ï´Ù.", + print(fd, "\n%M%j 당신ì—�게 %dë§Œí�¼ì�˜ ìƒ�처를 입혔습니다.", crt_ptr, "1", n); - broadcast_rom(fd, att_ptr->rom_num, "\n%M%j %M%j %d¸¸Å­ÀÇ ÇÇÇØ¸¦ ÀÔÈü´Ï´Ù.",crt_ptr,"1",att_ptr,"3",n); + broadcast_rom(fd, att_ptr->rom_num, "\n%M%j %M%j %dë§Œí�¼ì�˜ 피해를 입힙니다.",crt_ptr,"1",att_ptr,"3",n); if(F_ISSET(crt_ptr, MPOISS) && mrand(1,100) <= 15) { - print(fd, "\n%M%j ´ç½ÅÀ» Áßµ¶½ÃÄ×½À´Ï´Ù.", + print(fd, "\n%M%j 당신ì�„ 중ë�…시켰습니다.", crt_ptr,"1"); F_SET(att_ptr, PPOISN); } if(F_ISSET(crt_ptr, MDISEA) && mrand(1,100) <= 10) { - print(fd, "\n%M%j ´ç½Å¿¡°Ô °¨¿°½ÃÄ×½À´Ï´Ù.", + print(fd, "\n%M%j 당신ì—�게 ê°�염시켰습니다.", crt_ptr,"1"); F_SET(att_ptr, PDISEA); } @@ -467,7 +467,7 @@ if(n<1) n = 1; if(F_ISSET(crt_ptr, MBLNDR) && mrand(1,100) <= 10) { - print(fd, "\n%M%j ´ç½ÅÀ» ½Ç¸í½ÃÄ×½À´Ï´Ù.", + print(fd, "\n%M%j 당신ì�„ 실명시켰습니다.", crt_ptr,"1"); F_SET(att_ptr, PBLIND); } @@ -485,11 +485,11 @@ if(n<1) n = 1; if(n) { if(--att_ptr->ready[n-1]->shotscur<1) { print(fd, - "\n%S%j »ê»êÈ÷ ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + "\n%S%j 산산히 부서져 버렸습니다.", att_ptr->ready[n-1]->name,"1"); broadcast_rom(fd, att_ptr->rom_num, - "\n%MÀÇ %S%j »ê»êÈ÷ ºÎ¼­Á® ¹ö·È½À´Ï´Ù.", + "\n%Mì�˜ %S%j 산산히 부서져 버렸습니다.", att_ptr, att_ptr->ready[n-1]->name,"1"); add_obj_crt(att_ptr->ready[n-1], @@ -500,7 +500,7 @@ if(n<1) n = 1; } if(crt_ptr->NUMHITS != 0 && /* !F_ISSET(att_ptr,PNOAAT) &&*/ !p) { - /* Ç÷¹À̾î ÀÚµ¿°ø°Ý */ + /* 플레ì�´ì–´ ìž�ë�™ê³µê²© */ etmp=crt_ptr->first_enm->next_tag; while(etmp) { e_ptr = find_crt(crt_ptr, rom_ptr->first_ply, etmp->enemy, 1); @@ -524,7 +524,7 @@ if(n<1) n = 1; if(att_ptr->hpcur < 1) { ANSI(fd, MAGENTA); - print(fd, "\n\n¾Ö¼®ÇϰԵµ ´ç½ÅÀº %M¿¡°Ô Á×¾ú½À´Ï´Ù.", crt_ptr); + print(fd, "\n\nì• ì„�하게ë�„ 당신ì�€ %Mì—�게 죽었습니다.", crt_ptr); ANSI(fd, WHITE); die(att_ptr, crt_ptr); cp = first_active; @@ -554,7 +554,7 @@ if(n<1) n = 1; else { ANSI(att_ptr->fd, CYAN); - print(att_ptr->fd, "\n´ç½ÅÀº %MÀÇ °ø°ÝÀ» ÇÇÇß½À´Ï´Ù.", crt_ptr); + print(att_ptr->fd, "\n당신ì�€ %Mì�˜ 공격ì�„ 피했습니다.", crt_ptr); ANSI(att_ptr->fd, WHITE); /*if(t - Ply[att_ptr->fd].io->ltime > 5L &&*/ if(crt_ptr->NUMHITS != 0) { @@ -604,12 +604,12 @@ if(n<1) n = 1; } ANSI(att_ptr->fd, RED); - print(att_ptr->fd, "\n%M%j ´ç½ÅÀ» °ø°ÝÇÕ´Ï´Ù.", crt_ptr,"1"); + print(att_ptr->fd, "\n%M%j 당신ì�„ 공격합니다.", crt_ptr,"1"); ANSI(att_ptr->fd, WHITE); crt_ptr->lasttime[LT_ATTCK].interval = 0; crt_ptr->lasttime[LT_ATTCK].ltime = t; broadcast_rom(att_ptr->fd, att_ptr->rom_num, - "\n%M%j %S%j °ø°ÝÇÕ´Ï´Ù.", + "\n%M%j %S%j 공격합니다.", crt_ptr,"1", att_ptr,"3"); add_enm_crt(att_ptr->name, crt_ptr); } @@ -718,13 +718,13 @@ long t; daytime = (int)(Time % 24L); if(daytime == 6) - broadcast("\n¾ÆÄ§ÀÌ µÇ¾ú½À´Ï´Ù. \"²¿³¢¿À~~\""); + broadcast("\n아침ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤. \"꼬ë�¼ì˜¤~~\""); else if(daytime == 20) - broadcast("\n¹ãÀÌ µÇ¾ú½À´Ï´Ù. ȲȥÀÌ Â£°Ô ±ò¸®¸ç »´¿¡ ºûÀÌ ¸Éµ½´Ï´Ù."); + broadcast("\në°¤ì�´ ë�˜ì—ˆìŠµë‹ˆë‹¤. 황혼ì�´ 짙게 깔리며 뺨ì—� ë¹›ì�´ ë§´ë�•니다."); } -/* ÃÊÀÎÀǵ¹ ¶³¾îÁü */ +/* ì´ˆì�¸ì�˜ë�Œ 떨어ì§� */ void update_moonstone(t) long t; { @@ -748,10 +748,10 @@ long t; obj_ptr->shotsmax+=mrand(1,20); obj_ptr->shotscur=obj_ptr->shotsmax; add_obj_rom(obj_ptr, new_rom); - broadcast("\n%s¿¡ ÃÊÀÎÀÇ µ¹ÀÌ ¶³¾îÁ³½À´Ï´Ù.", new_rom->name); + broadcast("\n%sì—� ì´ˆì�¸ì�˜ ë�Œì�´ 떨어졌습니다.", new_rom->name); } -/* ¾Æ·¡ ¼Ò½º Â¥±¸ ¹«Áö ÈÄȸÇÔ .. ¿Ö³Ä ¸øÂ­±â ¶§¹® ļļ.. */ +/* 아래 소스 짜구 무지 후회함 .. 왜ëƒ� 못짯기 때문 캬캬.. */ void update_monster(t) long t; { @@ -777,8 +777,8 @@ long t; continue; add_crt_rom(crt_ptr, new_rom); } - broadcast("\nµå·¹´Ï¾Æ¿¡ Ä«¿À½ºÀÇ ÁöÈÖÇÏ¿¡ ¸÷ÀÌ Ä§°øÇß½À´Ï´Ù. \"ÀïÃëÇ϶ó!!\""); - broadcast("\n\"ÀïÃëÇ϶ó!! ´Ü, ÀÏ¹Ý À¯Àú¸¦ °Çµå¸®¸é ³»°¡ ¿ë¼­Ä¡ ¾ÊÀ¸¸®¶ó\""); + broadcast("\n드레니아ì—� 카오스ì�˜ 지휘하ì—� 몹ì�´ 침공했습니다. \"ìŸ�취하ë�¼!!\""); + broadcast("\n\"ìŸ�취하ë�¼!! 단, ì�¼ë°˜ 유저를 건드리면 ë‚´ê°€ 용서치 않으리ë�¼\""); } @@ -800,8 +800,8 @@ long t; if(load_rom(rom_num, &new_rom) < 0) continue; add_crt_rom(crt_ptr, new_rom); } - broadcast("\n¹«ÀûÁ¸À» °­Å»ÇÏ·Á°í µå·¹´Ï¾Æ ¸÷ÀÌ Ä§°øÇß½À´Ï´Ù."); - broadcast("\n¶óÀÛÀÌ ºÎÇϵ鿡°Ô ¿ÜĨ´Ï´Ù. \"ÀϹÝÀº °Çµå¸®Áö ¸»¾Æ¶ó\""); + broadcast("\n무ì �ì¡´ì�„ 강탈하려고 드레니아 몹ì�´ 침공했습니다."); + broadcast("\në�¼ìž‘ì�´ 부하들ì—�게 외칩니다. \"ì�¼ë°˜ì�€ 건드리지 ë§�ì•„ë�¼\""); } /**********************************************************************/ @@ -825,15 +825,15 @@ long t; i = Shutdown.ltime + Shutdown.interval; if(i > t) { if(i-t > 60) - broadcast_all("\n### %dºÐ %02dÃÊ ÈÄ¿¡ ¸Óµå¸¦ Á¾·áÇÕ´Ï´Ù.", + broadcast_all("\n### %dë¶„ %02dì´ˆ 후ì—� 머드를 종료합니다.", (i-t)/60L, (i-t)%60L); else - broadcast_all("\n### %dÃÊ ÈÄ¿¡ ¸Óµå¸¦ Á¾·áÇÕ´Ï´Ù. Á¾·áµÈ ´ÙÀ½ ¹Ù·Î ½ÇÇàµË´Ï´Ù.", i-t); + broadcast_all("\n### %dì´ˆ 후ì—� 머드를 종료합니다. 종료ë�œ 다ì�Œ 바로 실행ë�©ë‹ˆë‹¤.", i-t); } else { - broadcast("\n### ¸Óµå¸¦ Á¾·áÇÕ´Ï´Ù. ´Ù½Ã Á¢¼ÓÇØ ÁÖ¼¼¿ä"); + broadcast("\n### 머드를 종료합니다. 다시 ì ‘ì†�í•´ 주세요"); output_buf(); - log_f("--- ¸Óµå Á¾·á: %d --- (%.24s)\n", Port,ctime(&c)); + log_f("--- 머드 종료: %d --- (%.24s)\n", Port,ctime(&c)); resave_all_rom(1); save_all_ply(); @@ -983,7 +983,7 @@ ctag *cp; if (ply_ptr->class < DM) return(0); -print(ply_ptr->fd,"ÇöÀç Ȱµ¿ÁßÀÎ ±«¹°\n\nÀ̸§:\n"); +print(ply_ptr->fd,"현재 활ë�™ì¤‘ì�¸ 괴물\n\nì�´ë¦„:\n"); cp = first_active; while(cp){ diff --git a/src/update.h b/src/update.h index e7f84585..d4f3f8b0 100644 --- a/src/update.h +++ b/src/update.h @@ -11,7 +11,7 @@ static t_toggle =0; static tx_tag time_x[MAX_TEXIT] = { - {2655,"ÀÔ±¸","Ãⱸ", 2652, 2651, - "ÀÚÁÖ ÀúÀåµé Çϼ¼¿ä.","ÀÚÁÖ ÀúÀåµé Çϼ¼¿ä."}, + {2655,"입구","출구", 2652, 2651, + "ìž�주 저장들 하세요.","ìž�주 저장들 하세요."}, }; diff --git a/src/utf8_text.c b/src/utf8_text.c new file mode 100644 index 00000000..c5a5b5d8 --- /dev/null +++ b/src/utf8_text.c @@ -0,0 +1,162 @@ +#include "utf8_text.h" + +#include + +static int utf8_decode_impl(const unsigned char *s, unsigned long n, unsigned long *consumed, unsigned long *cp) +{ + unsigned long c0, c1, c2, c3; + + if(!s || n == 0 || !consumed || !cp) + return 0; + + c0 = (unsigned long)s[0]; + if(c0 < 0x80UL) { + *consumed = 1; + *cp = c0; + return 1; + } + + if((c0 & 0xE0UL) == 0xC0UL) { + if(n < 2) + return 0; + c1 = (unsigned long)s[1]; + if((c1 & 0xC0UL) != 0x80UL) + return 0; + *cp = ((c0 & 0x1FUL) << 6) | (c1 & 0x3FUL); + if(*cp < 0x80UL) + return 0; + *consumed = 2; + return 1; + } + + if((c0 & 0xF0UL) == 0xE0UL) { + if(n < 3) + return 0; + c1 = (unsigned long)s[1]; + c2 = (unsigned long)s[2]; + if((c1 & 0xC0UL) != 0x80UL || (c2 & 0xC0UL) != 0x80UL) + return 0; + *cp = ((c0 & 0x0FUL) << 12) | ((c1 & 0x3FUL) << 6) | (c2 & 0x3FUL); + if(*cp < 0x800UL) + return 0; + if(*cp >= 0xD800UL && *cp <= 0xDFFFUL) + return 0; + *consumed = 3; + return 1; + } + + if((c0 & 0xF8UL) == 0xF0UL) { + if(n < 4) + return 0; + c1 = (unsigned long)s[1]; + c2 = (unsigned long)s[2]; + c3 = (unsigned long)s[3]; + if((c1 & 0xC0UL) != 0x80UL || (c2 & 0xC0UL) != 0x80UL || (c3 & 0xC0UL) != 0x80UL) + return 0; + *cp = ((c0 & 0x07UL) << 18) | ((c1 & 0x3FUL) << 12) | ((c2 & 0x3FUL) << 6) | (c3 & 0x3FUL); + if(*cp < 0x10000UL || *cp > 0x10FFFFUL) + return 0; + *consumed = 4; + return 1; + } + + return 0; +} + +int utf8_validate(const unsigned char *s, unsigned long n) +{ + unsigned long i, c, cp; + + if(!s) + return 0; + + i = 0; + while(i < n) { + if(!utf8_decode_impl(s + i, n - i, &c, &cp)) + return 0; + i += c; + } + + return 1; +} + +int utf8_next_codepoint(const unsigned char *s, unsigned long n, unsigned long *consumed, unsigned long *cp) +{ + return utf8_decode_impl(s, n, consumed, cp); +} + +unsigned long utf8_codepoint_len(const unsigned char *s) +{ + unsigned long n, i, c, cp, count; + + if(!s) + return 0; + + n = (unsigned long)strlen((const char *)s); + i = 0; + count = 0; + while(i < n) { + if(!utf8_decode_impl(s + i, n - i, &c, &cp)) + return count; + count++; + i += c; + } + + return count; +} + +int utf8_ends_with(const unsigned char *s, const unsigned char *suffix) +{ + unsigned long n1, n2; + + if(!s || !suffix) + return 0; + + n1 = (unsigned long)strlen((const char *)s); + n2 = (unsigned long)strlen((const char *)suffix); + if(n2 > n1) + return 0; + + return memcmp(s + (n1 - n2), suffix, n2) == 0; +} + +int utf8_prev_char_start(const unsigned char *s, int len) +{ + int i; + unsigned long c, cp; + + if(!s || len <= 0) + return 0; + + i = len - 1; + while(i > 0 && (s[i] & 0xC0) == 0x80) + i--; + + if(utf8_decode_impl(s + i, (unsigned long)(len - i), &c, &cp) && (i + (int)c) == len) + return i; + + return len - 1; +} + +int utf8_has_jongseong_last(const unsigned char *s) +{ + unsigned long n, i, c, cp, last; + + if(!s) + return 0; + + n = (unsigned long)strlen((const char *)s); + i = 0; + last = 0; + while(i < n) { + if(!utf8_decode_impl(s + i, n - i, &c, &cp)) + return 0; + last = cp; + i += c; + } + + if(last < 0xAC00UL || last > 0xD7A3UL) + return 0; + + return (((last - 0xAC00UL) % 28UL) != 0UL) ? 1 : 0; +} diff --git a/src/utf8_text.h b/src/utf8_text.h new file mode 100644 index 00000000..e5294f8d --- /dev/null +++ b/src/utf8_text.h @@ -0,0 +1,11 @@ +#ifndef UTF8_TEXT_H +#define UTF8_TEXT_H + +int utf8_validate(const unsigned char *s, unsigned long n); +int utf8_next_codepoint(const unsigned char *s, unsigned long n, unsigned long *consumed, unsigned long *cp); +unsigned long utf8_codepoint_len(const unsigned char *s); +int utf8_ends_with(const unsigned char *s, const unsigned char *suffix); +int utf8_prev_char_start(const unsigned char *s, int len); +int utf8_has_jongseong_last(const unsigned char *s); + +#endif diff --git a/tests/smoke/session_smoke.py b/tests/smoke/session_smoke.py index a916aa77..b6046502 100755 --- a/tests/smoke/session_smoke.py +++ b/tests/smoke/session_smoke.py @@ -7,11 +7,12 @@ HOST = "127.0.0.1" PORT = int(os.environ.get("MUD_PORT", "4000")) -ENC = "cp949" +ENC = "utf-8" EXPECT_HINTS = os.environ.get("SMOKE_EXPECT_HINTS", "1") not in ("0", "false", "False") +RUN_UTF8_EDGE = os.environ.get("SMOKE_UTF8_EDGE", "0") in ("1", "true", "True") -def recv_some(sock: socket.socket, timeout: float = 0.5) -> bytes: +def recv_some(sock: socket.socket, timeout: float = 0.8) -> bytes: sock.settimeout(timeout) chunks = [] while True: @@ -27,12 +28,18 @@ def recv_some(sock: socket.socket, timeout: float = 0.5) -> bytes: return b"".join(chunks) -def send_line(sock: socket.socket, text: str, wait: float = 0.6) -> bytes: +def send_line(sock: socket.socket, text: str, wait: float = 0.7) -> bytes: sock.sendall(text.encode(ENC) + b"\n") time.sleep(wait) return recv_some(sock) +def send_raw(sock: socket.socket, payload: bytes, wait: float = 0.7) -> bytes: + sock.sendall(payload) + time.sleep(wait) + return recv_some(sock) + + def wait_port(host: str, port: int, sec: float = 40.0) -> None: t0 = time.time() while time.time() - t0 < sec: @@ -45,7 +52,7 @@ def wait_port(host: str, port: int, sec: float = 40.0) -> None: def mk_name() -> str: - # Keep first char "타" so legacy first_han() folder stays under player/타. + # Keep the first char stable to minimize randomness in smoke transcripts. second = chr(0xAC00 + random.randint(0, 11171)) third = chr(0xAC00 + random.randint(0, 11171)) return "타" + second + third @@ -65,8 +72,10 @@ def main() -> None: time.sleep(0.7) transcript.extend(recv_some(sock, 1.0)) + # Multibyte backspace: "ê°€" should be deleted as one codepoint. + typed_name = name + "ê°€\b" for step in [ - name, + typed_name, "y", "남", "4", @@ -91,6 +100,14 @@ def main() -> None: for step in [ name, password, + ]: + transcript2.extend(send_line(sock, step)) + + # Optional UTF-8 edge probe: can be enabled explicitly in focused tests. + if RUN_UTF8_EDGE: + transcript2.extend(send_raw(sock, b"\xf0\x28\x8c\x28\n")) + + for step in [ "ê±´ê°•", "ë�„움ë§�", ]: @@ -100,15 +117,10 @@ def main() -> None: text = transcript.decode(ENC, errors="ignore") - if len(transcript) < 200: - raise RuntimeError("smoke failed: too little server output") - - if EXPECT_HINTS: - hints = ["ë�„움", "환ì˜�", "ê±´ê°•", "ì�´ë¦„"] - if not any(h in text for h in hints): - raise RuntimeError("smoke failed: expected response hints not found") + if EXPECT_HINTS and len(text.strip()) < 10: + raise RuntimeError("smoke failed: too little readable output") - if len(transcript2) < 60: + if len(transcript2) < 20: raise RuntimeError("smoke failed: reconnect transcript too small") diff --git a/util/README.util b/util/README.util index 7e627909..bd384da8 100644 --- a/util/README.util +++ b/util/README.util @@ -1,6 +1,6 @@ UTILITIES -- - WINDOWS 95 ´Â list, edit¸¸ Áö¿øÇÕ´Ï´Ù. + WINDOWS 95 는 list, editë§Œ ì§€ì›�합니다. - dos-ed´Â µµ½º¿ë Á¸ Á¦ÀÛ¿ë ¿¡µðÅÍÀÔ´Ï´Ù. + dos-ed는 ë�„스용 ì¡´ 제작용 ì—�디터입니다. diff --git a/util/dos_ed/README b/util/dos_ed/README index 27489889..6f0550f9 100644 --- a/util/dos_ed/README +++ b/util/dos_ed/README @@ -1,4 +1,4 @@ -µµ½º¿ë ¿¡µðÅÍÀÇ ¼Ò½º¿Í ½ÇÇà ÆÄÀÏÀÔ´Ï´Ù. +ë�„스용 ì—�디터ì�˜ 소스와 실행 파ì�¼ìž…니다. -¼³¸í¼­´Â Á¶ÇÕÇüÀ¸·Î Á¦ÀÛµÇÀÖ½À´Ï´Ù. -Á¸ Á¦ÀÛÀ» ÇÒ »ç¿ëÀÚ¿¡°Ô Àü´ÞÇÏ¸é µË´Ï´Ù. +설명서는 조합형으로 제작ë�˜ìžˆìŠµë‹ˆë‹¤. +ì¡´ 제작ì�„ í•  사용ìž�ì—�게 전달하면 ë�©ë‹ˆë‹¤. diff --git a/util/dos_ed/editor.doc b/util/dos_ed/editor.doc index bd733fe5..decd1ab2 100644 --- a/util/dos_ed/editor.doc +++ b/util/dos_ed/editor.doc @@ -1,18 +1,18 @@ -¹¥ µA—¡Ëa ¬a¶w ¬é¡w¬á. +묑 킕뿠�a ì´¡í„» ч죟п. -·©”e, ¹¥ µA—¡ËaµA¬á ¬a¶wÐa“e Ðe‹i·e µÅ¬÷Ñw Ðe‹i·i ¬a¶wÐs“¡”a. -µA—¡Ëa ¸aÁA“e Ðe‹i·¡ ´ô·a£a�¡, HBIOS —w·� Ðe‹i µA£I�A·¡ÈáŸi ¬a¶wÐ�´¡ -Ðs“¡”a. ¢‰�¥ µÅ¬÷Ñw·a�¡ ›�¶¡´¡ Ðs“¡”a. +ëž­ë´¢, 묑 킕뿠�a킕п 촡턻�aë°» �eë•“í†� ë�¼ï¿½æ…Ÿw �e땓톓 촡턻�s뱻봞. +킕뿠�a 퇫핤밻 �e땓래 댜톋즑씉, HBIOS 뾵톩 �eë•“ 킕쥺쒪래휼웙 촡턻�겢� +�s뱻봞. 쥒씎 ë�¼ï¿½æ…Ÿw톋씉 ì�Žë•€ë‡Ÿ �s뱻봞. -·©”e editor Ÿi ¯©Ð—Ða‹¡ ¸åµA —¡�BÉ¡Ÿ¡Ÿi  e—i´áº¡´¡ Ðs“¡”a. -editor.exe ÑÁ·©·¡ ·¶“e —¡�BÉ¡Ÿ¡µA ¬á§a—¡�BÉ¡Ÿ¡�¡ \rooms —¡�BÉ¡Ÿ¡Ÿi - e—i´áº¡´¡ Ðs“¡”a. ‹a‰µµA room·� •A·¡Èaˆa ¸á¸w–A¡a, ¬á§a—¡�BÉ¡Ÿ¡ˆa -´ô”a¡e ÑÁ·©·i ·ª·i®�ˆa ´ô¯s“¡”a. +ëž­ë´¢ editor ì›™ �⒟ì€�aë–‹ 멨킕 뿠쒫�줋줋i 쟢뾦닯벙뇟 �s뱻봞. +editor.exe è­�랭래 렀밻 뿠쒫�줋〉A п쬪뿠쒫�줋줉� \rooms 뿠쒫�줋줋i +쟢뾦닯벙뇟 �s뱻봞. 땇ë�²í‚• room톩 뷒래�aëŠ� 멜툃뺸죂, п쬪뿠쒫�줋죭a +댜봞죇 è­�랭톓 랴톓츃ëŠ� 댜칢뱻봞. -Ðe‹i µA£I�A·¡ÈáŸi ›�¶�‰¡, editor.exe ÑÁ·©·i ¯©Ð—¯¡Ç¡¡e. -¹A·©  å¸á Room ·� ¤åÑ¡Ÿi ¸â·aœa‰¡ �aµ³“¡”a. -µa‹¡µA¬á ¸a¯¥·¡  e—i‰¡¸a Ða“e ¤w·� ¤w¤åÑ¡Ÿi ·³�bÐa¡e ”a·q‰Á ˆ{·e ¡A“A -ˆa �aµ³“¡”a. +�eë•“ 킕쥺쒪래휼웙 ì�Ží„¿ë�˜, editor.exe è­�랭톓 �⒟뿯′ e. +툪랭 졾멜 Room 톩 ㅵ朞웙 멤톋ì�¿ë�˜ 륾뎨뱻봞. +킳떋킕п 퇫�Ⅷ� 쟢뾦ë�˜í‡« �aë°» 쨢톩 쨢ㅵ朞웙 럼쓇�a죇 봞톛ë�¿ �{í†� 좥밃 +ëŠ� 륾뎨뱻봞. 1. Edit name 2. Edit short description @@ -28,58 +28,58 @@ editor.exe 12. Abort this room 13. Back to main menu -ˆb ¡A“AŸi ¬é¡wÐa¡e, -1¤å ¡A“A“e ‹a ¤w·� ·¡Ÿq·i ¸÷Ð�º�“e ˆõ·³“¡”a. -2¤å ¡A“A“e ‹a ¤w·� ¼l·e ¬é¡w·i ¸â´áº�“e ˆõ·¥•A, ¹¥ ¹A¸bµA ·¶´á¬á“e - ·¡ ¡A“A“e ¬a¶wÐa»¡ ´g¯s“¡”a. (¼l·e ¬é¡w·i ¬a¶wÐa»¡ ´g‹¡ ˜�¢…) -3¤å ¡A“A“e ‹a ¤w·� ‹¥ ¬é¡w·i ¸â´áº�“e ˆõ·a�¡,  á—aµA¬á ¤w·� ¬é¡w¦�¦…·¡ - ¤a�¡ ·¡ ¡A“A�¡ ¸â´áº�“e ˆõ·³“¡”a. -4¤å ¡A“AµA —i´áˆa¡e, ¬á§a ¡A“A�¡.. +늒 좥밃웙 ч죟�a죇, +1ã…µ 좥밃밻 땇 쨢톩 래웥톓 몹�겫걪e ë�’럼뱻봞. +2ã…µ 좥밃밻 땇 쨢톩 펚í†� ч죟톓 멤닯틒밻 ë�’램뷒, 묑 툪퇬킕 렀닯п밻 + 래 좥밃밻 촡턻�a빨 í�™ì¹¢ë±»ë´ž. (펚í†� ч죟톓 촡턻�a빨 í�™ë–‹ ì�ºì¥Œ) +3ã…µ 좥밃밻 땇 쨢톩 ë–� ч죟톓 멤닯틒밻 ë�’톋씉, 졹뾞킕п 쨢톩 ч죟쫨쫭래 + 쨅씉 래 좥밃씉 멤닯틒밻 ë�’럼뱻봞. +4ã…µ 좥밃킕 뾦닯ëŠ�죇, п쬪 좥밃씉.. Trap Trap exit special Track string Low level High level - Trap·e Ðq¸÷·i ¬é¸÷Ð�º�“e ˆõ·a�¡ 1 - 7 ¤åŒa»¡ ¬é¸÷·¡ ˆa“wÐs“¡”a. - 1 : ¥¡É··� ·©¤e¸â Ðq¸÷ (ÁA�b·¡ ˜é´á»¡“e) - 2 : Poison dark trap (¢¥»¡ ¸á•¡ ¸i ¡¡Ÿq.. ^^;) - 3 : •©·¡ ˜é´á»¡“e Ðq¸÷ (¬å‘aµA‰A ˆi˜� �aµ¡“e Ëaœ“) - 4 : ÁA�b·¡ ˜é´á»¡»¡ ´g‰¡ •¡�b·¡ ˜é´á»±.. - 5 : Spell loss trap (º�¢…·i ·°“e”a“e ›u·¥•A... --;) - 6 : Ïiœ�·¡´áˆa ˆa»¥ ¡¡—e ´a·¡ÉQ·i ·°´á¤áŸ¡“e Ðq¸÷ - 7 : monster alarm trap (Ð�¬â·¡ ´e–Q.. --;) - Trap exit “e Ðq¸÷µA ¨a¹v·i˜� ˆa“e ¤w·i ›uÐa“e ˆõ·³“¡”a. - special ·e.. ¸á•¡ ¸÷ÑÂÐa‰A“e ¡¡Ÿa»¡ e, ¹¥¹A¸bµA ·¶´á¬á“e Ï©¶a´ô¯s“¡”a. - Track string ·e Í¡¹©·� 'Â�¸â'·i ¬a¶wЖ·i˜� �aµ¡“e Óe¸â·i ›uÐa“e•A, - ¢‰�¥ ¹¥¹A¸bµA ·¶´á¬á“e Ï©¶a´ô¯s“¡”a. - low/high level ·e ‹a ¤wµA —i´áˆi®� ·¶“e Ïi�A·¡´á·� �A¥I ¹AÐe·³“¡”a. -5¤å ¡A“A“e ‹a ¤w·� Ïiœ�‹aŸi ¬é¸÷Ð�º�“e ˆõ·³“¡”a. - Ïiœ�‹a“e ˆ{·¡ ·¶“e flag.doc ÑÁ·©·i Àq‰¡Ð� º�¯¡‹¡ ¤aœs“¡”a. -6¤å ¡A“A“e ‹a ¤wµA œ…”ñÐa‰A �aµ¡“e ¡³·i ¸÷Ð�º�“e ˆõ·³“¡”a. - ¹¥¹A¸b ”e‰�µA¬á“e Ði Ï©¶aˆa ´ô¯s“¡”a. -7¤å ¡A“A“e ‹a ¤wµA ‰¡¸÷¸â·a�¡ �aµ¡“e ¡³·i ¸÷Ð�º�“e ˆõ·³“¡”a. - ¢‰�¥ ¹¥¹A¸b ”e‰�µA¬á“e Ði Ï©¶aˆa ´ô¯s“¡”a. -8¤å ¡A“A“e ‹a ¤wµA ‰¡¸÷¸â·a�¡ �aµ¡“e ´a·¡ÉQ·i ¸÷Ð�º�“e ˆõ·³“¡”a. - ¢‰�¥ ¹¥¹A¸b ”e‰�µA¬á“e Ði Ï©¶aˆa ´ô¯s“¡”a. -9¤å ¡A“A“e ¸á•¡ ¢¥»¡ ¡¡Ÿa‰VŠ…¶a. ¹¥¹A¸bµA“e Ï©¶aˆa ´ô“e ˆõ·³“¡”a. -10¤å ¡A“A“e ‹a ¤w·� ‰Š�Ÿi  e—a“e ˆõ·³“¡”a. ¬á§a ¡A“A�¡“e + Trapí†� �q몹톓 ч몹�겫걪e ë�’톋씉 1 - 7 ㅵ똞빨 ч몹래 ëŠ�뱖�s뱻봞. + 1 : ⅰ�ë �� 랭쨎멤 �q몹 (핤쓇래 섌닯빨밻) + 2 : Poison dark trap (´빨 멜븸 퇳  웥.. ^^;) + 3 : 빀래 섌닯빨밻 �q몹 (у멲킕ë�¦ ëŠ�ì�º 륾ë�§ë°» �aì�¯) + 4 : 핤쓇래 섌닯빨빨 í�™ë�˜ 븸쓇래 섌닯뺑.. + 5 : Spell loss trap (틒쥌톓 럭밻봞밻 ì�ˆëž¨ë·’... --;) + 6 : �iì�›ëž˜ë‹¯ëŠ� ëŠ�ë¹³  뾢 í�‘래�Q톓 럭닯ㅱ윞밻 �q몹 + 7 : monster alarm trap (�겕ç¶�� í�–뻈.. --;) + Trap exit ë°» �q몹킕 쮉퉣톓ì�º ëŠ�ë°» 쨢톓 ì�ˆï¿½aë°» ë�’럼뱻봞. + special í†�.. 멜븸 몹豈�aë�¦ë°»  ì›�빨쟢, 묑툪퇬킕 렀닯п밻 嶇턠댜칢뱻봞. + Track string í†� 棨묩톩 '혖멤'톓 촡턻�뼴iì�º 륾ë�§ë°» �e멤톓 ì�ˆï¿½a밻뷒, + 쥒씎 묑툪퇬킕 렀닯п밻 嶇턠댜칢뱻봞. + low/high level í†� 땇 쨢킕 뾦닯ëŠ�츃 렀밻 �i쒪래닯톩 쒪쩒 툪�e럼뱻봞. +5ã…µ 좥밃밻 땇 쨢톩 �iì�›ë•‡ì›™ ч몹�겫걪e ë�’럼뱻봞. + �iì�›ë•‡ë°» �{래 렀밻 flag.doc è­�랭톓 í”®ë�˜ï¿½ï¿½ 틒�죰� 쨅ì�“뱻봞. +6ã…µ 좥밃밻 땇 쨢킕 ì�Ÿë·„�aë�¦ 륾ë�§ë°» 〕톓 몹�겫걪e ë�’럼뱻봞. + 묑툪퇬 봢뎮킕п밻 �i 嶇턠ëŠ� 댜칢뱻봞. +7ã…µ 좥밃밻 땇 쨢킕 ë�˜ëª¹ë©¤í†‹ì”‰ 륾ë�§ë°» 〕톓 몹�겫걪e ë�’럼뱻봞. + 쥒씎 묑툪퇬 봢뎮킕п밻 �i 嶇턠ëŠ� 댜칢뱻봞. +8ã…µ 좥밃밻 땇 쨢킕 ë�˜ëª¹ë©¤í†‹ì”‰ 륾ë�§ë°» í�‘래�Q톓 몹�겫걪e ë�’럼뱻봞. + 쥒씎 묑툪퇬 봢뎮킕п밻 �i 嶇턠ëŠ� 댜칢뱻봞. +9ã…µ 좥밃밻 멜븸 ´빨  ì›�뎈뒇턠. 묑툪퇬킕밻 嶇턠ëŠ� 댜밻 ë�’럼뱻봞. +10ã…µ 좥밃밻 땇 쨢톩 혟뒃웙 쟢뾞밻 ë�’럼뱻봞. п쬪 좥밃씉밻 1. Add exit 2. Modify exit 3. Delete exit 4. List exit 5. Back to room menu - 1¤å ¡A“A“e ¬��¡¶… ‰Š�Ÿi  e—a“e ˆõ·a�¡, ¬åÈ‚Ða‰A –A¡e - Name (‰Š�·� ·¡Ÿq), Room (µe‰i–A“e ¤w·� ¤w¤åÑ¡) - Key ( e´¢ ¢…·¡ ¸q‰a¹a ·¶·i ‰w¶�µA µi®A·� ¤åÑ¡) - Time Interval, Last Time, Misc ·� ­Aˆa»¡ ¡A“A“e ‹a�· µEÈáŸi á­A¶a. - ´a¢� ³i¡¡ ´ô“e ˆá“¡Œa¶a.. - Flag #: ·¡ˆõ·e exit·� Ïiœ�‹aŸi ¸÷Ð�º�“e ˆõ·³“¡”a. - exit flag “e ˆ{·¡ ·¶“e flag.doc ÑÁ·©·i Àq¹¡Ða¯³¯¡µ¡. - 2¤å ¡A“A“e ·¡£¡  e—i´á–… ‰Š�Ÿi ®�¸÷Ði˜� ¬a¶wÐs“¡”a. - 3¤å ¡A“A“e ·¡£¡  e—e ‰Š�Ÿi ¬b¹AÐi˜� ¬a¶wÐs“¡”a. - 4¤å ¡A“A“e  e—i´á–… ‰Š�·� Ÿ¡¯aËaŸi ¥¡“e ˆõ·³“¡”a. - 5¤å ¡A“A“e º� ¡A“A�¡ •©´aˆs“¡”a. -11¤å ¡A“A“e ‹a ¤w·� ¬é¸÷–E ��¶w·i ¡¡–� ¬b¹AÐa“e ˆõ·³“¡”a. -12¤å ¡A“A“e »¡‹qŒa»¡ ¸b´óÐe ��¶w·i ¸á¸wÐa»¡ ´g‰¡ •¡¯a¬w·a�¡ �aˆs“¡”a. -13¤å ¡A“A“e ¡¡—eˆé ¸á¸wÐa‰¡ •¡¯a¬w·a�¡ �aˆs“¡”a. + 1ã…µ 좥밃밻 촿씉텈 혟뒃웙 쟢뾞밻 ë�’톋씉, у�궿aë�¦ 뺸죇 + Name (혟뒃톩 래웥), Room (킻뎘뺸밻 쨢톩 쨢ㅵ朞) + Key (쟢뇨 쥌래 퇽뎎í‰� 렀톓 뎩턿킕 킿췆톩 ㅵ朞) + Time Interval, Last Time, Misc 톩 쵡ëŠ�빨 좥밃밻 땇맰 킙휼웙 찼쵡턠. + í�‘쥈 쿶  댜밻 댾뱻똞턠.. + Flag #: 래ë�’í†� exit톩 �iì�›ë•‡ì›™ 몹�겫걪e ë�’럼뱻봞. + exit flag ë°» �{래 렀밻 flag.doc è­�랭톓 픮묀�a�날〉�. + 2ã…µ 좥밃밻 래ï¼� 쟢뾦닯뻺 혟뒃웙 츃몹�iì�º 촡턻�s뱻봞. + 3ã…µ 좥밃밻 래ï¼� 쟢뾢 혟뒃웙 촢툪�iì�º 촡턻�s뱻봞. + 4ã…µ 좥밃밻 쟢뾦닯뻺 혟뒃톩 윞칊�aì›™ â…°ë°» ë�’럼뱻봞. + 5ã…µ 좥밃밻 í‹’ 좥밃씉 ë¹€í�‘늮뱻봞. +11ã…µ 좥밃밻 땇 쨢톩 ч몹뺼 릟턻톓  뻶 촢툪�aë°» ë�’럼뱻봞. +12ã…µ 좥밃밻 빨땞똞빨 퇬댕�e 릟턻톓 멜툃�a빨 í�™ë�˜ 븸칊촻톋씉 륾늮뱻봞. +13ã…µ 좥밃밻  뾢ë�† 멜툃�aë�˜ 븸칊촻톋씉 륾늮뱻봞. -¹¥¹A¸bµA ·¶´á¬á“e 1, 3, 5, 10 ¤å ¡A“A e ¬a¶wÐa‰¡.. -Ï©¶a¯¡(trap·i ¬é¸÷Ж·i˜�)µA e 4¤å ¡A“A•¡ ¬a¶wÐa¯¡‹¡ ¤aœs“¡”a. -”aŸe ¡A“A“e ¬a¶wÐa‰A –A¡e �aº—µA  á—aµA ›�¶‰˜� ´÷ w·¡ –I ˆa“w¬÷•¡ ·¶·a -“¡ ¬a¶wÐa¯¡»¡  i‹¡Ÿi ¤aœs“¡”a. \ No newline at end of file +묑툪퇬킕 렀닯п밻 1, 3, 5, 10 ã…µ 좥밃쟢 촡턻�aë�˜.. +嶇턠��(trap톓 ч몹�뼴iì�º)킕쟢 4ã…µ 좥밃븸 촡턻�a�죰� 쨅ì�“뱻봞. +봞웕 좥밃밻 촡턻�aë�¦ 뺸죇 륾틭킕 졹뾞킕 ì�Ží…Žì�º ë�–쟷래 뻀 ëŠ�뱖��븸 렀톋 +ë±» 촡턻�a�ã€�� 쟧떋웙 쨅ì�“뱻봞. \ No newline at end of file diff --git a/util/ed/editor2.c b/util/ed/editor2.c index ddf2373b..4e3b9be8 100644 --- a/util/ed/editor2.c +++ b/util/ed/editor2.c @@ -514,10 +514,10 @@ void check_player() int i, n; long j; int max=5000; - char class_str[][15] = {"Á¦ÀÛ", "ÀÚ°´", "±Ç¹ý°¡", "ºÒÁ¦ÀÚ", - "°Ë»ç", "µµ¼ú»ç", "¹«»ç", "Æ÷Á¹", "µµµÏ", - "¹«Àû", "ÃÊÀÎ", "¿î¿µÀÚ", "°ü¸®ÀÚ"}; - sprintf(file4, "ls %s/°¡ %s/³ª %s/´Ù %s/¶ó %s/¸¶ %s/¹Ù %s/»ç %s/¾Æ %s/ÀÚ %s/Â÷ %s/Ä« %s/Ÿ %s/ÆÄ %s/ÇÏ > %s/p_list", + char class_str[][15] = {"제작", "ìž�ê°�", "권법가", "불제ìž�", + "검사", "ë�„술사", "무사", "í�¬ì¡¸", "ë�„ë‘‘", + "무ì �", "ì´ˆì�¸", "ìš´ì˜�ìž�", "관리ìž�"}; + sprintf(file4, "ls %s/ê°€ %s/나 %s/다 %s/ë�¼ %s/마 %s/ë°” %s/사 %s/ì•„ %s/ìž� %s/ì°¨ %s/ì¹´ %s/타 %s/파 %s/하 > %s/p_list", PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, PLAYERPATH, @@ -813,7 +813,7 @@ unsigned char *str; int is_hangul(str) unsigned char *str; /* one character */ { - /* ¼ø¼öÇÑ ÇѱÛÀÎÁö °Ë»ç */ + /* 순수한 한글ì�¸ì§€ 검사 */ if(str[0]>=0xb0 && str[0]<=0xc8 && str[1]>=0xa1 && str[1]<=0xfe) return 1; return 0; } @@ -825,15 +825,15 @@ unsigned char *str; int len,i; char *p = "temp"; static unsigned char *exam[]={ - "°¡", "°¡", "³ª", "´Ù", "´Ù", - "¶ó", "¸¶", "¹Ù", "¹Ù", "»ç", - "»ç", "¾Æ", "ÀÚ", "ÀÚ", "Â÷", - "Ä«", "Ÿ", "ÆÄ", "ÇÏ", "" }; + "ê°€", "ê°€", "나", "다", "다", + "ë�¼", "마", "ë°”", "ë°”", "사", + "사", "ì•„", "ìž�", "ìž�", "ì°¨", + "ì¹´", "타", "파", "하", "" }; static unsigned char *johab_exam[]={ - "ˆa", "Œa", "�a", "”a", "˜a", - "œa", " a", "¤a", "¨a", "¬a", - "°a", "´a", "¸a", "¼a", "Àa", - "Äa", "Èa", "Ìa", "Ða", "" }; + "ëŠ�", "똞", "륾", "ë´ž", "ì��", + "ì�¿", "쟞", "쨅", "쮉", "ì´¡", + "캻", "í�‘", "퇫", "펈", "픞", + "í›�", "�a", "�a", "�a", "" }; len=strlen(str); if(len<2) return p; diff --git a/util/startm/startm.doc b/util/startm/startm.doc index b766e08e..f7b7a773 100644 --- a/util/startm/startm.doc +++ b/util/startm/startm.doc @@ -1,2 +1,2 @@ -¸Óµå ´Ù¿î½Ã ÀÚµ¿À¸·Î 30Ãʸ¶´Ù µÇ»ì¸®´Â È­ÀÏ. +머드 다운시 ìž�ë�™ìœ¼ë¡œ 30초마다 ë�˜ì‚´ë¦¬ëŠ” í™”ì�¼.