패거리 레벨 조정 소스
2007.04.12 11:40
☞ 패거리 레벨 조정 소스
#include
#include "mstruct.h"
#include "mextern.h"
int family_lv_edit(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
creature *crt_ptr;
int fd, ftotal;
fd = ply_ptr->fd;
#ifdef CHECKFAMILY
ftotal = load_family();
if(!strcmp(ply_ptr->name, fmboss_str[ply_ptr->daily[DL_EXPND].max])) {
F_SET(ply_ptr, PFMBOS); }
else F_CLR(ply_ptr, PFMBOS);
#endif
if(cmnd->num < 3) {
print(fd, "\n사용법: 사용자 등급 레벨조정");
return(0);
}
if(cmnd->num == 1) {
print(fd, "\n자기 자신의 패거리 등급은 조정할 수 없습니다.");
return(0);
}
cmnd->str[1][0] = up(cmnd->str[1][0]);
crt_ptr = find_who(cmnd->str[1]);
if(!crt_ptr || crt_ptr == ply_ptr || F_ISSET(crt_ptr, PDMINV)) {
print(fd, "\n그런 사람은 존재하지 않습니다.\n");
return(0);
}
if(!F_ISSET(crt_ptr, PFAMIL) || (ply_ptr->daily[DL_EXPND].max !=
crt_ptr->daily[DL_EXPND].max)) {
print(fd,"\n당신의 패거리원이 아닙니다!");
return(0);
}
if(!strcmp(cmnd->str[2], "부문주")) {
if(!F_ISSET(ply_ptr, PFMBOS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
if(S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주 등급입니다.");
return(0);
}
S_SET(crt_ptr, SUBBOSS);
print(fd, "\n%M의 등급이 부문주로 설정 되었습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 부문주로 설정 되었습니다.");
if(S_ISSET(crt_ptr, MEMBER)) {
S_CLR(crt_ptr, MEMBER);
}
if(S_ISSET(crt_ptr, SUBMEMBER)) {
S_CLR(crt_ptr, SUBMEMBER);
}
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "-부문주")) {
if(!F_ISSET(ply_ptr, PFMBOS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
if(!S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주가 아닙니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급을 감등 시켰습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 한단계 감등 되었습니다.");
S_CLR(crt_ptr, SUBBOSS);
S_SET(crt_ptr, MEMBER);
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "정회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
}
if(F_ISSET(crt_ptr, PFMBOS)) {
print(fd, "\n그사람은 당신 패거리의 문주입니다.");
return(0);
}
if(S_ISSET(crt_ptr, MEMBER)) {
print(fd, "\n그사람은 현재 정회원 등급입니다.");
return(0);
}
if(S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주 등급입니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급이 정회원으로 설정 되었습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 정회원으로 승급되었습니다.");
S_SET(crt_ptr, MEMBER);
if(S_ISSET(crt_ptr, SUBMEMBER)) {
S_CLR(crt_ptr, SUBMEMBER);
}
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "-정회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
if(!S_ISSET(crt_ptr, MEMBER)) {
print(fd, "\n그사람은 정회원 등급이 아닙니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급을 한단계 감등 시켰습니다.",crt_ptr);
print(crt_ptr->fd,"\n당신의 패거리 등급이 준회원으로 감등 되었습니다.");
S_CLR(crt_ptr, MEMBER);
S_SET(crt_ptr, SUBMEMBER);
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "준회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
print(fd, "\n준회원은 패거리의 가장 낮은 등급입니다.");
return(0);
}
else {
print(fd, "\n등급 : (-)부문주/(-)정회원/준회원");
return(0);
}
}
#include
#include "mstruct.h"
#include "mextern.h"
int family_lv_edit(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
creature *crt_ptr;
int fd, ftotal;
fd = ply_ptr->fd;
#ifdef CHECKFAMILY
ftotal = load_family();
if(!strcmp(ply_ptr->name, fmboss_str[ply_ptr->daily[DL_EXPND].max])) {
F_SET(ply_ptr, PFMBOS); }
else F_CLR(ply_ptr, PFMBOS);
#endif
if(cmnd->num < 3) {
print(fd, "\n사용법: 사용자 등급 레벨조정");
return(0);
}
if(cmnd->num == 1) {
print(fd, "\n자기 자신의 패거리 등급은 조정할 수 없습니다.");
return(0);
}
cmnd->str[1][0] = up(cmnd->str[1][0]);
crt_ptr = find_who(cmnd->str[1]);
if(!crt_ptr || crt_ptr == ply_ptr || F_ISSET(crt_ptr, PDMINV)) {
print(fd, "\n그런 사람은 존재하지 않습니다.\n");
return(0);
}
if(!F_ISSET(crt_ptr, PFAMIL) || (ply_ptr->daily[DL_EXPND].max !=
crt_ptr->daily[DL_EXPND].max)) {
print(fd,"\n당신의 패거리원이 아닙니다!");
return(0);
}
if(!strcmp(cmnd->str[2], "부문주")) {
if(!F_ISSET(ply_ptr, PFMBOS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
if(S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주 등급입니다.");
return(0);
}
S_SET(crt_ptr, SUBBOSS);
print(fd, "\n%M의 등급이 부문주로 설정 되었습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 부문주로 설정 되었습니다.");
if(S_ISSET(crt_ptr, MEMBER)) {
S_CLR(crt_ptr, MEMBER);
}
if(S_ISSET(crt_ptr, SUBMEMBER)) {
S_CLR(crt_ptr, SUBMEMBER);
}
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "-부문주")) {
if(!F_ISSET(ply_ptr, PFMBOS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
if(!S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주가 아닙니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급을 감등 시켰습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 한단계 감등 되었습니다.");
S_CLR(crt_ptr, SUBBOSS);
S_SET(crt_ptr, MEMBER);
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "정회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
}
if(F_ISSET(crt_ptr, PFMBOS)) {
print(fd, "\n그사람은 당신 패거리의 문주입니다.");
return(0);
}
if(S_ISSET(crt_ptr, MEMBER)) {
print(fd, "\n그사람은 현재 정회원 등급입니다.");
return(0);
}
if(S_ISSET(crt_ptr, SUBBOSS)) {
print(fd, "\n그사람은 현재 부문주 등급입니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급이 정회원으로 설정 되었습니다.",crt_ptr);
print(crt_ptr->fd, "\n당신의 패거리 등급이 정회원으로 승급되었습니다.");
S_SET(crt_ptr, MEMBER);
if(S_ISSET(crt_ptr, SUBMEMBER)) {
S_CLR(crt_ptr, SUBMEMBER);
}
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "-정회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
if(!S_ISSET(crt_ptr, MEMBER)) {
print(fd, "\n그사람은 정회원 등급이 아닙니다.");
return(0);
}
print(fd, "\n%M의 패거리 등급을 한단계 감등 시켰습니다.",crt_ptr);
print(crt_ptr->fd,"\n당신의 패거리 등급이 준회원으로 감등 되었습니다.");
S_CLR(crt_ptr, MEMBER);
S_SET(crt_ptr, SUBMEMBER);
savegame_nomsg(crt_ptr);
return(0);
}
else
if(!strcmp(cmnd->str[2], "준회원")) {
if(!F_ISSET(ply_ptr, PFMBOS) && !S_ISSET(ply_ptr, SUBBOSS)) {
print(fd, "\n당신에게는 그럴만한 권한이 없습니다!");
return(0);
}
print(fd, "\n준회원은 패거리의 가장 낮은 등급입니다.");
return(0);
}
else {
print(fd, "\n등급 : (-)부문주/(-)정회원/준회원");
return(0);
}
}
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
37 | 레벨을 32767까지 가능하게 | 그리움 | 2007.04.12 | 200 |
36 | 직업 추가하기 #2 | 그리움 | 2007.04.12 | 199 |
35 | 이도류 | 그리움 | 2007.04.12 | 199 |
34 | 기술추가 | 그리움 | 2007.04.12 | 199 |
33 | 귀환장소 변경소스 #2 | 그리움 | 2007.04.12 | 198 |
32 | 베팅소스 | 그리움 | 2007.04.12 | 198 |
31 | 방 전체공격 소스 | 그리움 | 2007.04.12 | 197 |
30 | 자동으로 돈줍기 #2 | 그리움 | 2007.04.12 | 197 |
» | 패거리 레벨 조정 소스 | 그리움 | 2007.04.12 | 195 |
28 | 자기 아파트 자기가 방설명 넣기 | 그리움 | 2007.04.12 | 195 |
27 | 지도 소스 #2 | 그리움 | 2007.04.12 | 195 |
26 | 패거리창고 소스 | 그리움 | 2007.04.12 | 194 |
25 | 안시 문자열로 인한 공백 | 그리움 | 2007.04.12 | 193 |
24 | 배경색 바꾸기 | 그리움 | 2007.04.12 | 192 |
23 | 안시 문자열로 인한 공백 #2 | 그리움 | 2007.04.12 | 191 |
22 | 귀환장소 설정 | 그리움 | 2007.04.12 | 190 |
21 | 이동력 추가하기 | 그리움 | 2007.04.12 | 188 |
20 | 명성치 도입 | 그리움 | 2007.04.12 | 187 |
19 | 출구 정렬 | 그리움 | 2007.04.12 | 186 |
18 | 분신을 만드는 기술 | 그리움 | 2007.04.12 | 183 |