머드클럽
머드게임이란?
게임은 어떤 환경에서?
본격적으로 게임해 볼까?
배너교환
머드강좌
일반 머드강좌
성천사님의 머드강좌
혼님의 머드강좌
방울꽃님의 머드강좌
리트님의 머드강좌
2Soo님의 머드강좌
내머드소개하기
접속가능머드
내머드소개하기
자료실
접속 프로그램
머드소스
머드 유틸리티
기타
커뮤니티
공지사항
등업신청
머드클럽에바란다
자유 게시판
질문 AND 답변
머드클럽 갤러리
구인구직
머드게임소개
사신전(死神戰)
사신전 소개
사신전 맵
사신전 명령어 모음집
천명(天命)
천명 소개
천명 맵
천명 명령어 모음집
마이페이지
로그인
회원가입
계정찾기
로그인
회원가입
계정찾기
텍스트머드클럽
검색
[circle]신세계 포탈과 이동 명령어
성천사
1
1,396
0
0
2018-09-05 14:49:59
<p>#define ITEM_PORTAL 53 // 포탈</p> <p>structs.h 안에 ITEM_TYPE 부분 찾아서 ITEM_PORTAL 포탈 종류를 추가해 넣습니다. 위에 숫자는 본인 소스의 제일 마지막 번호로 적으면 됩니다.</p> <p>const char *item_types[] = {</p> <p>constatns.c 안에 위 부분을 찾아서 제일 아래에 "포탈", 이라고 입력 해 넣습니다.</p> <p>oedit.c 안에 void oedit_disp_val1_menu(struct descriptor_data * d) 부분에</p> <p> case ITEM_PORTAL:<br /> send_to_char("고정이동방: ", d->character);<br /> break;</p> <p>위 내용 삽입</p> <p>void oedit_disp_val2_menu(struct descriptor_data * d) 부분에</p> <p> case ITEM_PORTAL:<br /> send_to_char("최소이동방: ", d->character);<br /> break;</p> <p>위 내용 삽입</p> <p>void oedit_disp_val3_menu(struct descriptor_data * d) 부분에</p> <p> case ITEM_PORTAL:<br /> send_to_char("최대이동방: ", d->character);<br /> break;</p> <p>위 내용 삽입</p> <p>void oedit_disp_val4_menu(struct descriptor_data * d) 부분에</p> <p> case ITEM_PORTAL:<br /> send_to_char("포탈사용후 사라짐(0은 꺼짐, 1은 켜짐) : ", d->character);<br /> break;</p> <p>위 내용 삽입</p> <p>아래의 내용은 act.movements.c 안에 있는 do_enter 명령어 부분을 전체 주석처리후 삽입해주면 됩니다.</p> <p>ACMD(do_enter)<br /> {<br /> struct obj_data *obj;<br /> struct char_data *tmp_char;<br /> char arg1[MAX_INPUT_LENGTH];<br /> char arg2[MAX_INPUT_LENGTH];<br /> int bits;<br /> sh_int location;</p> <p> if(IS_NPC(ch))<br /> return;</p> <p> one_argument(argument, arg1);</p> <p> if (!arg1) {<br /> send_to_char("사용법: <포탈이름> 이동rn"<br /> "rn"<br /> " 방 안에 포탈이 있을 경우 그 안으로 이동이 가능합니다.rn", ch);<br /> return;<br /> }</p> <p> bits = generic_find(arg1, FIND_OBJ_ROOM, ch, &tmp_char, &obj);</p> <p> if (!obj) {<br /> sprintf(buf, "%s%s 찾을 수 없습니다.rn", arg1, check_josa(arg1, 1));<br /> send_to_char(buf, ch);<br /> return;<br /> }</p> <p> if (GET_OBJ_TYPE(obj) != ITEM_PORTAL) {<br /> send_to_char("그곳으로는 이동 할 수 없습니다.rn", ch);<br /> return;<br /> }</p> <p> if(world[ch->in_room].number == 99 && GET_LEVEL(ch) < LVL_GOD) {<br /> send_to_char("당신은 수감중입니다.rn", ch);<br /> return;<br /> }<br /> </p> <p> if(FIGHTING(ch) && GET_LEVEL(ch) < LVL_GOD) {<br /> send_to_char("싸움중에는 포탈을 이용 할 수 없습니다.rn", ch);<br /> return;<br /> }</p> <p> if (GET_OBJ_DUR(obj) == 0) {</p> <p> send_to_char("포탈이 불안정해 이용 할 수 없습니다.rn", ch);<br /> return;<br /> }</p> <p> if (GET_OBJ_VAL(obj, 0) <= 0) {<br /> if (GET_OBJ_VAL(obj, 1) <= 0 && GET_OBJ_VAL(obj, 2) <= 0) {<br /> send_to_char("포탈에 목적지가 없습니다.rn", ch);<br /> return;<br /> }<br /> // 최소 최대 랜덤 목적지로 이동<br /> sprintf(arg2,"%d", number(GET_OBJ_VAL(obj, 1), GET_OBJ_VAL(obj, 2)));<br /> if ((location = find_target_room(ch, arg2)) < 0) {<br /> send_to_char("좌표가 존재하지 않습니다.rn", ch);<br /> return;<br /> }<br /> act("$n$j 어디론가 사라집니다.", TRUE, ch, 0, 0, TO_ROOM);</p> <p> if (GET_OBJ_DUR(obj) <= 0) {<br /> } else {<br /> GET_OBJ_DUR(obj) -= 1;<br /> send_to_room("포탈의 힘이 약해집니다.rn", ch->in_room);<br /> }<br /> if (GET_OBJ_VAL(obj, 3) > 0) {<br /> extract_obj(obj);<br /> send_to_room("포탈이 사라집니다.rn", ch->in_room);<br /> }</p> <p> char_from_room(ch);<br /> char_to_room(ch, location);<br /> } else {<br /> // 고정된 목적지<br /> sprintf(arg2,"%d", GET_OBJ_VAL(obj, 0));<br /> if ((location = find_target_room(ch, arg2)) < 0) {<br /> send_to_char("좌표가 존재하지 않습니다.rn", ch);<br /> return;<br /> }<br /> act("$n$j 어디론가 사라집니다.", TRUE, ch, 0, 0, TO_ROOM);<br /> if (GET_OBJ_DUR(obj) <= 0) {<br /> } else {<br /> GET_OBJ_DUR(obj) -= 1;<br /> send_to_room("포탈의 힘이 약해집니다.rn", ch->in_room);<br /> }<br /> if (GET_OBJ_VAL(obj, 3) > 0) {<br /> extract_obj(obj);<br /> send_to_room("포탈이 사라집니다.rn", ch->in_room);<br /> }</p> <p> char_from_room(ch);<br /> char_to_room(ch, location);<br /> }<br /> act("따듯한 바람과 함께 $n$j 나타납니다.", TRUE, ch, 0, 0, TO_ROOM);<br /> send_to_char("약간의 어지러움은 있지만 목적지로 안전하게 도착했습니다.rn", ch);<br /> save_char(ch, NOWHERE);<br /> return;<br /> }</p> <p> </p> <p>설치하는법을 대충 기억나는 대로 적어봤습니다.</p> <p>제 머드에서만 사용하는 기능은 다 뺀거 같은데 그래도 혹시나 오류가 날지도...</p> <p> </p>
0
0
새글
답변
수정
삭제
최신목록
전체목록
미확인장소 물건 수거
신세계 귀환소스
정회원 이상만 코멘트 사용이 가능합니다.
총 게시물 27개 / 검색된 게시물: 27개
접속금지, 접속허용 편의성 수정
0
57
0
0
성천사
2024-10-27
신세계 텍스트 출력
0
88
0
0
성천사
2024-08-06
신세계 시체생성
0
111
0
0
성천사
2024-06-12
삭제된 게시물입니다.
0
85
0
0
성천사
2024-06-12
신세계 C to VC6.0
0
275
0
0
성천사
2024-03-07
신세계 장비위치 구하기
0
159
0
0
성천사
2024-03-04
신세계 파일 존재여부 확인
0
228
0
0
성천사
2024-02-18
신세계 맙타입 전투
0
253
0
0
성천사
2023-12-02
신세계 addlog()
0
203
0
0
성천사
2023-10-25
신세계 캐릭터, 맙 이동 코드
0
204
0
0
성천사
2023-10-25
신세계 지정번호의 물건 찾기및 제거하기
0
322
0
0
성천사
2023-05-07
신세계 이동물건
1
552
0
0
성천사
2022-12-30
신세계 날씨변경 명령어
0
367
0
0
성천사
2022-12-25
[circle]
신세계 운영자 명령어 방청소
0
407
0
0
성천사
2022-10-08
[circle]
신세계 물건이름
0
465
0
0
성천사
2022-08-26
[circle]
신세계 공격대상
0
474
0
0
성천사
2022-08-19
[circle]
미확인장소 물건 수거
0
964
0
0
성천사
2019-09-23
[circle]
신세계 포탈과 이동 명령어
1
1397
0
0
성천사
2018-09-05
[circle]
신세계 귀환소스
0
8099
0
0
성천사
2009-09-15
[circle]
신세계 do_display
0
6780
0
0
성천사
2009-09-15
1
2
다음
검색
글쓰기
최신목록
전체목록
시작일
종료일
검색어
이름
제목
내용
검색
닫기
로그인
회원가입
계정찾기
개인정보처리방침
이용약관
PC화면
Copyright (c) 텍스트머드클럽. All rights reserved.
쪽지를 전송하고 있습니다. 잠시 기다려주세요.
쪽지보내기
받는이(ID/닉네임)
닉네임으로 입력
내용
쪽지가 도착하였습니다.
쪽지함
쪽지 내용을 읽어오고 있습니다. 잠시 기다려주세요.
--