프롬프트 그래프화 #2

2007.04.12 13:08

그리움 조회 수:280 추천:64

자료출처 : GAMEBBS (telent gamebbs.co.kr)

───────────────────────────────────────
제 목 : [소스] 프롬프트의 그래픽화. 찬성 : 0 반대 : 0
올린이 : memoless (박종진 ) 읽음 : 18 날짜 : 2000/06/01 06:19
------------------------------------------------------------------------------

/**************************************************************

       염관호(ohhye)님 부탁으로 올립니다..

       편의에 의해서 안시프린트(printa 등)를 사용하지 않고

       바로 안시코드로 작성되었습니다.

       기존 소스에 완전히 교체하여 사용하시면 됩니다.

       이때 ^[[는 vi편집기에서 ctrl+v를 누르신후 Esc를 누르신 후

       [를 덧붙여 주시면 됩니다.

       (컨트롤+v -> Esc -> [ ..... 앞의 ^[ 한 문자입니다.)

       이 소스코드의 소유권은 현재 mud.jcity.net 5000 의

       연대무한에 있으며.. 상업적으로 절대로 사용할 수 없습니다.


                                                 다.인.

**************************************************************/

/************************************************************/
/* ply_prompt */
/************************************************************/
/* This function returns
             the prompt that the player should be seeing */

/* code by DAiN..!! */

char *ply_prompt(ply_ptr)
creature *ply_ptr;
{

static char prompt[256]; /* [40]에서 256으로 확장 */
int fd;

int i, pmax;
char pmt[2][100];
char idx_pmt[12][8] = {"^[[=7F[","^[[=9F>",">","^[[=13F>",
">","^[[=12F>",">","^[[=14F>",">","^[[=15F>",">","^[[=7F]"};

fd = ply_ptr->fd;

if(fd < 0 || F_ISSET(ply_ptr, PSPYON) || F_ISSET(ply_ptr, PREADI))
prompt[0] = 0;

else if(F_ISSET(ply_ptr, PPROMP)) {
   strcpy(pmt[0],idx_pmt[0]);
   pmax=ply_ptr->hpmax;
   for(i=1;i<11;i++) {
     if(10*ply_ptr->hpcur >= pmax*i) strcat(pmt[0],idx_pmt[i]);
     else strcat(pmt[0]," ");
   }
   strcat(pmt[0],idx_pmt[11]);
   strcat(pmt[0],"^[[0m");

   strcpy(pmt[1],idx_pmt[0]);
   pmax=ply_ptr->mpmax;
   for(i=1;i<11;i++) {
     if(10*ply_ptr->mpcur >= pmax*i) strcat(pmt[1],idx_pmt[i]);
     else strcat(pmt[1]," ");
   }
   strcat(pmt[1],idx_pmt[11]);
   strcat(pmt[1],"^[[0m");

   sprintf(prompt, "\n\n^[[=15FHP :%d %12s ^[[=15FMP :%d
%12s ^[[=7F: ",ply_ptr->hpcur,pmt[0],ply_ptr->mpcur,pmt[1]);

}

else {
  strcpy(prompt, "\n\n: ");
}
return prompt;
}

홈지기 "그륨"


XE Login