감옥/퇴소

2007.04.12 13:10

그리움 조회 수:385 추천:57

자료출처 : GAME BBS (Telnet gamebbs.co.kr)

ADMIN13 Mordor Mud Study (2894 / 26) 1/9
───────────────────────────────────────
제 목 : [소스] 작대기님 감옥/퇴소명령 계량판 찬성 : 0 반대 : 0
올린이 : ohhye (염관호 ) 읽음 : 42 날짜 : 2000/07/13 10:47
------------------------------------------------------------------------------
작대기님이 올리신 소스는..
아이디 체크가 안되더군요..
즉, 히네시스와 히네라는 사용자가 접속해 있을때
[히네 감옥] 하면 둘 다 감옥에 가게 되는겁니다..
그래서 아이디 체크부분을 추가로 넣고 조금 다듬어 봤습니다.
다른 소스에서 응용해서 한거라 별로 시간도 안들었습니다.
이 소스는 [히네 감옥] 하면 [히네]만 감옥에 가도록 되어있습니다..
그리고 명령어마다 플레그 설정해 주는건 아래 어떤분이 올리신 글
참고하시면 되겠네요.

int gamok(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
      /****** 추가된 부분 ******/
       char addr[80];
      /*************************/
       creature *crt_ptr;
       room *rom_ptr, *new_rom;
       int fd;
       fd = ply_ptr->fd;
       rom_ptr = ply_ptr->parent_rom;

       if(ply_ptr->class < DM)
               return(PROMPT);

crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[1], cmnd->val[1]);

/* 여기서부터 추가된 부분 */

     if(cmnd->str[1][0] == '@')
             strcpy(addr, &cmnd->str[1][1]);
else {
        cmnd->str[1][0] = up(cmnd->str[1][0]);
     crt_ptr = find_who(cmnd->str[1]);
     if(!crt_ptr) {
        print(ply_ptr->fd, "이름을 정확하게 모두 입력하세요.\n");
        return(0);
     }
         strcpy(addr, Ply[crt_ptr->fd].io->address);
         }

/* 여기까지. */

broadcast("\n%s님이 감옥으로 끌려갑니다.\n", crt_ptr->name);
       F_SET(crt_ptr,PGAM);
       del_ply_rom(crt_ptr, rom_ptr);
       load_rom(3, &new_rom);
       add_ply_rom(crt_ptr, new_rom);
return(0);
}

int regamok(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
      /****** 추가된 부분 ******/
       char addr[80];
      /*************************/
       creature *crt_ptr;
       room *rom_ptr, *new_rom;
       int fd;
       fd = ply_ptr->fd;
       rom_ptr = ply_ptr->parent_rom;

       if(ply_ptr->class < DM)
               return(PROMPT);

crt_ptr = find_crt(ply_ptr, rom_ptr->first_ply, cmnd->str[1], cmnd->val[1]);

/* 추가된 부분 */

       if(cmnd->str[1][0] == '@')
       strcpy(addr, &cmnd->str[1][1]);
     else {
       cmnd->str[1][0] = up(cmnd->str[1][0]);
       crt_ptr = find_who(cmnd->str[1]);
       if(!crt_ptr) {
   print(ply_ptr->fd, "이름을 정확하게 모두 입력하세요. 좀 --;; \n");
           return(0);
           }
       strcpy(addr, Ply[crt_ptr->fd].io->address);
       }
/* 여기까지 */

     broadcast("\n%s님이 감옥에서 퇴소하였습니다.\n", crt_ptr->name);
       F_CLR(crt_ptr,PGAM);
       del_ply_rom(crt_ptr, rom_ptr);
       load_rom(1001, &new_rom);
       add_ply_rom(crt_ptr, new_rom);
       return(0);
}

몇줄은 뒤에가 약간 누락된거 같은데..
저런건 다 아시겠죠?
); <- 이거 -_-;;
그럼 이만..
- 히네시스 -
맨날 계량만 하는 히네 -_- 계량품 인스에도 올릴까 -,.-

홈지기 "그륨"

Home-Page Ranking
  • 1위. 헤츠리
    6246점
  • 2위. 리타
    3720점
  • 3위. 소울
    3149점
  • 4위. 블루아사
    3083점
  • 5위. 카온
    2987점
  • 6위. 호날두
    2883점
  • 7위. 패르
    2415점
  • 8위. 마천랑
    2266점
  • 9위. 카이져
    2077점
  • 10위. 암흑광마
    2003점
天外天 Ranking
1위. 야이얀廢人
2위. 시이廢人
3위. 리타廢人
4위. 호리병廢人
5위. 극악서생廢人
6위. 보현진인廢人
7위. 헤츠리廢人
8위. 공비廢人
9위. 아톰廢人
10위. 타요廢人
새롬 데이터맨 IMF


XE Login