머드클럽
머드게임이란?
게임은 어떤 환경에서?
본격적으로 게임해 볼까?
배너교환
머드강좌
일반 머드강좌
성천사님의 머드강좌
혼님의 머드강좌
방울꽃님의 머드강좌
리트님의 머드강좌
2Soo님의 머드강좌
내머드소개하기
접속가능머드
내머드소개하기
자료실
접속 프로그램
머드소스
머드 유틸리티
기타
커뮤니티
공지사항
등업신청
머드클럽에바란다
자유 게시판
질문 AND 답변
머드클럽 갤러리
구인구직
머드게임소개
사신전(死神戰)
사신전 소개
사신전 맵
사신전 명령어 모음집
천명(天命)
천명 소개
천명 맵
천명 명령어 모음집
마이페이지
로그인
회원가입
계정찾기
로그인
회원가입
계정찾기
텍스트머드클럽
검색
[mordor]갑옷제작쏘스
머드사랑
0
3,267
0
0
2003-12-06 03:56:48
/**********************/ <br />/* makeitem */ <br />/**********************/ <br /> <br />void make_item(); <br />int makeitem(ply_ptr, cmnd) <br />creature *ply_ptr; <br />cmd *cmnd; <br />{ <br /> room *rom_ptr; <br /> object *obj_ptr; <br /> int fd; <br /> fd = ply_ptr->fd; <br /> rom_ptr = ply_ptr->parent_rom; <br /> <br /> if(!F_ISSET(rom_ptr, RFORGE)) { <br /> print(fd, "여기는 대장간이 아닙니다."); <br /> return(0); <br /> } <br /> <br /> <br /> F_SET(ply_ptr, PNOBRD); <br /> make_item(fd, 1, NULL); <br /> F_CLR(ply_ptr, PNOBRD); <br /> <br /> return(DOPROMPT); <br />} <br /> <br />char forge1[PMAX][16]; <br />char forge2[PMAX][16]; <br />void make_item(fd, param, str) <br />int fd; <br />int param; <br />char *str; <br />{ <br /> int i; <br /> long sum=0; <br /> int num[5]; <br /> creature *ply_ptr; <br /> object *obj_ptr; <br /> ply_ptr=Ply[fd].ply; <br /> <br /> switch(param) { <br /> case 1: <br /> print(fd,"\n\n"); <br /> print(fd, "1.머리 2.얼굴 3.목 4.몸\n"); <br /> print(fd, "5.팔 6.손 7.손가락 8.다리\n"); <br /> print(fd, "9.발 @.방패 *.쥐는것\n\n"); <br /> print(fd, "어디에 입을 장비를 원하세요: " ); <br /> F_SET(Ply[fd].ply,PREADI); <br /> output_buf(); <br /> Ply[fd].io->intrpt &= ~1; <br /> RETURN(fd, make_item, 2); <br /> case 2: <br /> F_CLR(Ply[fd].ply,PREADI); <br /> <br /> if(str[0] == '@' || str[0] == '1' || str[0] == '2'|| <br /> str[0] == '3' || str[0] == '4' || str[0] == '5' || <br /> str[0] == '6' || str[0] == '7' || str[0] == '8' || <br /> str[0] == '9' || str[0] == '*' ) { <br /> <br /> if(str[0] == '1') { <br /> if(load_obj(50, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '2') { <br /> if(load_obj(51, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '3') { <br /> if(load_obj(52, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '4') { <br /> if(load_obj(53, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '5') { <br /> if(load_obj(54, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '6') { <br /> if(load_obj(55, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '7') { <br /> if(load_obj(56, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '8') { <br /> if(load_obj(57, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> if(str[0] == '9') { <br /> if(load_obj(58, &obj_ptr) < 0) { <br /> print(ply_ptr->fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> <br /> if(str[0] == '@') { <br /> if(load_obj(59, &obj_ptr) < 0) { <br /> print(fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> <br /> if(str[0] == '*') { <br /> if(load_obj(60, &obj_ptr) < 0) { <br /> print(fd, "에러!\n"); <br /> return; <br /> } <br /> } <br /> } <br /> <br /> else { <br /> print(fd, "잘못 입력 하셨습니다.\n선택: "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 2); <br /> } <br /> <br /> /* 포인터 obj_ptr을 long형으로 바꿔 저장. */ <br /> sprintf(forge1[fd],"%lu",(long)obj_ptr); <br /> <br /> print(fd, "\n\n"); <br />print(fd, "======================================================\n"); <br />print(fd, " 재료 방어력 특성치 회복치 레벨 가격\n"); <br />print(fd, " ------------------------------------------------------\n"); <br />print(fd, " 1.강 철 방어+3 파괴+1 5 100000냥\n"); <br />print(fd, " 2.금강석 방어+5 파괴+3 10 300000냥\n"); <br />print(fd, " 3.귀금속 방어+7 파괴+5 15 500000냥\n"); <br />print(fd, " 4.세라믹 방어+11 파괴+8 회복+3 40 1000000냥\n"); <br />print(fd, " 5.티타늄 방어+20 파괴+15 회복+5 100 5000000냥\n\n"); <br />print(fd, "선택해주세요: "); <br /> <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 3); <br /> case 3: <br /> F_CLR(Ply[fd].ply,PREADI); <br /> obj_ptr=(object *)atol(forge1[fd]); <br /> switch(low(str[0])) { <br /> case '1': <br /> obj_ptr->armor = 3; <br /> obj_ptr->odestructive = 1; <br /> obj_ptr->limit = 5; <br /> sum = 100000; <br /> break; <br /> case '2': <br /> obj_ptr->armor = 5; <br /> obj_ptr->odestructive = 3; <br /> sum = 300000; <br /> obj_ptr->limit = 10; <br /> break; <br /> case '3': <br /> obj_ptr->armor = 7; <br /> obj_ptr->odestructive = 5; <br /> obj_ptr->limit = 15; <br /> sum = 500000; <br /> break; <br /> case '4': <br /> obj_ptr->armor = 11; <br /> obj_ptr->odestructive = 8; <br /> obj_ptr->repower =3; <br /> obj_ptr->limit = 40; <br /> sum = 1000000; <br /> break; <br /> case '5': <br /> obj_ptr->armor = 20; <br /> obj_ptr->odestructive = 15; <br /> obj_ptr->repower = 5; <br /> obj_ptr->limit = 100; <br /> sum = 5000000; <br /> break; <br /> default: print(fd, "잘못 입력 하셨습니다. 선택: "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 3); <br /> } <br /> sprintf(forge2[fd],"%lu",sum); <br /> print(fd, "\n담금질을 많이 할수록 수명이 늘어납니다."); <br /> print(fd, "\n몇번의 담금질을 원하십니까?\n"); <br /> print(fd, "\n1. 100번 가격: 50000"); <br /> print(fd, "\n2. 200번 가격: 200000"); <br /> print(fd, "\n3. 300번 가격: 500000"); <br /> print(fd, "\n4. 400번 가격: 1000000"); <br /> print(fd, "\n5. 500번 가격: 2000000"); <br /> print(fd, "\n선택: "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 4); <br /> case 4: <br /> F_CLR(Ply[fd].ply,PREADI); <br /> obj_ptr=(object *)atol(forge1[fd]); <br /> sum=atol(forge2[fd]); <br /> switch(low(str[0])) { <br /> case '1': <br /> obj_ptr->shotsmax = 100; <br /> obj_ptr->shotscur = 100; <br /> sum += 50000; <br /> break; <br /> case '2': <br /> obj_ptr->shotsmax = 200; <br /> obj_ptr->shotscur = 200; <br /> sum += 200000; <br /> break; <br /> case '3': <br /> obj_ptr->shotsmax = 300; <br /> obj_ptr->shotscur = 300; <br /> sum += 500000; <br /> break; <br /> case '4': <br /> obj_ptr->shotsmax = 400; <br /> obj_ptr->shotscur = 400; <br /> sum += 1000000; <br /> break; <br /> case '5': <br /> obj_ptr->shotsmax = 500; <br /> obj_ptr->shotscur = 500; <br /> sum += 2000000; <br /> break; <br /> default: print(fd, "선택: "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 4); <br /> } <br /> sprintf(forge2[fd],"%lu",sum); <br /> print(fd, "\n물건의 이름을 결정해 주세요."); <br /> print(fd, "\n다시 바꿀수 없으니 신중히 결정 하십시요.\n"); <br /> print(fd, ": "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 5); <br /> case 5: <br /> F_CLR(Ply[fd].ply,PREADI); <br /> obj_ptr=(object *)atol(forge1[fd]); <br /> if(strchr(str,'(') || strchr(str,')')) { <br /> print(fd,"이름에는 괄호가 들어갈수 없습니다.\n이름을 다시 넣으십시요:"); <br /> RETURN(fd, make_item, 5); <br /> } <br /> if(strlen(str) > 20) { <br /> print(fd, "입력된 이름이 너무 깁니다.\n이름을 다시 넣으십시요(3자이상 20자이하): "); <br /> RETURN(fd, make_item, 5); <br /> } <br /> if(strlen(str) < 3) { <br /> print(fd, "입력된 이름이 너무 짧습니다.\n이름을 다시 넣으십시요(3자이상 20자이하): "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 5); <br /> } <br /> strncpy(obj_ptr->name, str, 20); <br /> print(fd, "\n모든것에 만족하십니까? (예/아니오)\n"); <br /> print(fd, ": "); <br /> F_SET(Ply[fd].ply,PREADI); <br /> RETURN(fd, make_item, 6); <br /> case 6: <br /> F_CLR(Ply[fd].ply,PREADI); <br /> obj_ptr=(object *)atol(forge1[fd]); <br /> sum=atol(forge2[fd]); <br /> if(!strncmp(str,"예",2)) { <br /> if (ply_ptr->gold < sum) { <br /> print(fd, "\n주인이 인상을 찡그립니다. '돈도 없으면서! 쳇~!'"); <br /> free(obj_ptr); <br /> break; <br /> } <br /> add_obj_crt(obj_ptr,ply_ptr); <br /> print(fd, "\n주인이 당신에게 방금 제작한 장비를 넘겨줍니다."); <br /> broadcast_rom(fd, ply_ptr->rom_num, <br /> "\n%M이 주인에게 새로제작된 장비를 넘겨받습니다.",ply_ptr); <br /> ply_ptr->gold -= sum; <br /> } <br /> else { <br /> print(fd,"취소 하였습니다."); <br /> free(obj_ptr); <br /> } <br /> break; <br /> } <br /> RETURN(fd, command, 1); <br />} <br />
0
0
새글
답변
수정
삭제
최신목록
전체목록
폭탄
경매쏘스
0
Comments
-표시할 내용이 없습니다.-
코멘트를 삭제할 비밀번호를 입력하세요.
비밀번호:
댓글에 답하기
입력
닫기
정회원 이상만 코멘트 쓰기가 가능합니다.
총 게시물 107개 / 검색된 게시물: 107개
누구든지 머드 강의를 올리수 있는 곳입니다...^^
[mordor]
탈주문
0
2768
0
0
머드사랑
2003-12-15
[mordor]
직업추가쏘스
0
2701
0
0
머드사랑
2003-12-11
[mordor]
폭탄
0
2601
0
0
머드사랑
2003-12-10
[mordor]
갑옷제작쏘스
0
3268
0
0
머드사랑
2003-12-06
[mordor]
경매쏘스
0
3078
0
0
머드사랑
2003-12-03
[mordor]
자기 아파트 자기가 꾸미기 쏘스
1
3357
0
0
머드사랑
2003-12-01
[mordor]
체력,도력 프롬프트 움직임 방지
0
4237
0
0
머드사랑
2003-11-30
이전
1
2
3
4
5
6
검색
글쓰기
최신목록
전체목록
시작일
종료일
분류별 검색
전체보기
기타
circle
hanlp
mordor
소스분석
흑염
천무혼
검색어
이름
제목
내용
검색
닫기
로그인
회원가입
계정찾기
개인정보처리방침
이용약관
PC화면
Copyright (c) 텍스트머드클럽. All rights reserved.
쪽지를 전송하고 있습니다. 잠시 기다려주세요.
쪽지보내기
받는이(ID/닉네임)
닉네임으로 입력
내용
쪽지가 도착하였습니다.
쪽지함
쪽지 내용을 읽어오고 있습니다. 잠시 기다려주세요.
--