경매 소스
2007.04.12 13:03
번 호 : 33
게시자 : 머드개발 (머드개발)
등록일 : 1999-10-11 10:30
제 목 : [충격공개] 경매소스
제목: [충격공개] 경매소스
이름: 머드개발 석봉운 99/9/29 10:52 조회:61 쪽:1/12 번호:33/35
───────────────────────────────────────
이소스는 아직까진 공개된곳이 전혀 없는걸로 알고 있습니다.
#include "mstruct.h"
#include "mextern.h"
#include
long sellgold, nextgold;
int issell = 0;
creature *sell_ply;
creature *buy_ply;
object *sell_obj;
long sellcount;
int sell_object(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
int fd;
char objs[40];
long objn;
object *obj_ptr;
fd = ply_ptr->fd;
if (cmnd->num < 2) {
if (issell) {
print(fd, "당신은 경매중인 물건의 정보를 봅니다.\n");
return(0);
} else {
print(fd, "무엇을 경매하실려구요?\n");
return(0);
}
}
if (issell) {
print(fd, "현재 경매가 진행중입니다.\n");
return(0);
}
if (cmnd->num == 2) {
sellgold = 10;
strcpy(objs, cmnd->str[1]);
objn = cmnd->val[1];
} else {
if (strcmp(&cmnd->str[1][strlen(cmnd->str[1])-2], "냥")
|| strlen(cmnd->str[1])<3) {
print(fd, "그것은 돈이 아닙니다.\n");
return(0);
}
sscanf(cmnd->str[1],"%ld", &sellgold);
if (sellgold < 10) sellgold = 10;
strcpy(objs, cmnd->str[2]);
objn = cmnd->val[2];
}
obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, objs, objn);
if (!obj_ptr) {
print(fd, "당신은 그것을 가지고 있지 않습니다.\n");
return(0);
}
if (sellgold > ply_ptr->gold || sellgold < 0) {
print(fd, "당신은 그만한 돈이 없습니다\n");
return(0);
}
del_obj_crt(obj_ptr, ply_ptr);
issell = 1;
nextgold = sellgold;
sellcount = 550;
sell_obj = obj_ptr;
sell_ply = ply_ptr;
print(fd, "당신은 경매물품 '%s'를 내 놓습니다.\n", obj_ptr->name);
return(0);
}
int buy_object(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
int fd;
long gold, sellg;
fd = ply_ptr->fd;
if (!issell) {
print(fd, "현재는 경매중이 아닙니다.\n");
return(0);
}
if (cmnd->num < 2) {
print(fd, "얼마에 매입을 하실려구요?\n");
return(0);
} else {
if (!strcmp(ply_ptr->name, sell_ply->name)) {
print(fd, "당신은 경매자이므로 매입을 할수가 없습니다.\n");
return(0);
}
if (strcmp(&cmnd->str[1][strlen(cmnd->str[1])-2], "냥")
|| strlen(cmnd->str[1]) < 3) {
print(fd, "그것은 돈이 아닙니다.\n");
return(0);
}
sscanf(cmnd->str[1],"%ld", &gold);
if (gold > ply_ptr->gold) {
print(fd, "당신은 그만한 돈이 없습니다.\n");
return(0);
}
if (gold < nextgold) {
print(fd, "경매에 응하시려면 %ld냥 이상을 지불하여야 합니다.\n",nextgold);
return(0);
}
nextgold = gold + gold/10;
if (nextgold < 0) nextgold = 0x7fffffff;
if (buy_ply && buy_ply->fd != -1 && issell == 2) {
print(buy_ply->fd, "당신은 경매에 지불하였던 돈을 되돌려받습니다\n");
buy_ply->gold += sellgold;
}
issell = 2;
sellcount = 550;
sellgold = gold;
buy_ply = ply_ptr;
ply_ptr->gold -= gold;
print(fd, "당신은 %ld냥을 경매대금으로 지불하고 경매에응찰합니다\n", sellgold);
return(0);
}
}
void sell_rtn()
{
if (issell == 1) {
if (sellcount == 550) {
broadcast("\n경매 경매자: %s 물품: %s 금액: %ld냥\n",
sell_ply->name, sell_obj->name, sellgold);
broadcast("도움 경매: [###냥] 물건 경매 매입: ###냥 매입\n");
}
else if(sellcount == 275) {
broadcast("\n경매 경매자: %s 물품: %s 금액: %ld냥\n",
sell_ply->name, sell_obj->name, sellgold);
broadcast(" 경매완료 15초전입니다.\n");
}
else if(sellcount == 0) {
broadcast("\n경매 경매에 응하는 사람이 없어 중단합니다.\n");
if (sell_ply && sell_ply->fd != -1) {
print(sell_ply->fd, "당신은 경매물품을 돌려받습니다.\n");
add_obj_crt(sell_obj, sell_ply);
}
issell = 0;
}
} else {
if (sellcount == 550) {
broadcast("\n매입 물품: %s 응찰자: %s 매입금액: %ld냥\n",
sell_obj->name, buy_ply->name, sellgold);
}
else if (sellcount == 275) {
broadcast("\n매입 물품: %s 응찰자: %s 매입금액: %ld냥\n",
sell_obj->name, buy_ply->name, sellgold);
broadcast(" ^[[=13F매입완료 15초전입니다.\n");
} else if (sellcount == 0) {
broadcast("\n매입 물품: %s 매입자: %s 매입금액: %ld냥[경매완료]\n",
sell_obj->name, buy_ply->name, sellgold);
if (sell_ply && buy_ply->fd != -1) {
print(sell_ply->fd, "당신은 물품이 경매되어 경매대금을받습니다.\n");
sell_ply->gold += sellgold;
}
if (buy_ply && buy_ply->fd != -1) {
print(buy_ply->fd, "당신은 경매 입찰되어 물품을 받습니다.\n");
add_obj_crt(sell_obj, buy_ply);
}
issell = 0;
}
}
sellcount -= 25;
}
출처 : INS Mordor 게시판
홈지기 "그륨"
게시자 : 머드개발 (머드개발)
등록일 : 1999-10-11 10:30
제 목 : [충격공개] 경매소스
제목: [충격공개] 경매소스
이름: 머드개발 석봉운 99/9/29 10:52 조회:61 쪽:1/12 번호:33/35
───────────────────────────────────────
이소스는 아직까진 공개된곳이 전혀 없는걸로 알고 있습니다.
#include "mstruct.h"
#include "mextern.h"
#include
long sellgold, nextgold;
int issell = 0;
creature *sell_ply;
creature *buy_ply;
object *sell_obj;
long sellcount;
int sell_object(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
int fd;
char objs[40];
long objn;
object *obj_ptr;
fd = ply_ptr->fd;
if (cmnd->num < 2) {
if (issell) {
print(fd, "당신은 경매중인 물건의 정보를 봅니다.\n");
return(0);
} else {
print(fd, "무엇을 경매하실려구요?\n");
return(0);
}
}
if (issell) {
print(fd, "현재 경매가 진행중입니다.\n");
return(0);
}
if (cmnd->num == 2) {
sellgold = 10;
strcpy(objs, cmnd->str[1]);
objn = cmnd->val[1];
} else {
if (strcmp(&cmnd->str[1][strlen(cmnd->str[1])-2], "냥")
|| strlen(cmnd->str[1])<3) {
print(fd, "그것은 돈이 아닙니다.\n");
return(0);
}
sscanf(cmnd->str[1],"%ld", &sellgold);
if (sellgold < 10) sellgold = 10;
strcpy(objs, cmnd->str[2]);
objn = cmnd->val[2];
}
obj_ptr = find_obj(ply_ptr, ply_ptr->first_obj, objs, objn);
if (!obj_ptr) {
print(fd, "당신은 그것을 가지고 있지 않습니다.\n");
return(0);
}
if (sellgold > ply_ptr->gold || sellgold < 0) {
print(fd, "당신은 그만한 돈이 없습니다\n");
return(0);
}
del_obj_crt(obj_ptr, ply_ptr);
issell = 1;
nextgold = sellgold;
sellcount = 550;
sell_obj = obj_ptr;
sell_ply = ply_ptr;
print(fd, "당신은 경매물품 '%s'를 내 놓습니다.\n", obj_ptr->name);
return(0);
}
int buy_object(ply_ptr, cmnd)
creature *ply_ptr;
cmd *cmnd;
{
int fd;
long gold, sellg;
fd = ply_ptr->fd;
if (!issell) {
print(fd, "현재는 경매중이 아닙니다.\n");
return(0);
}
if (cmnd->num < 2) {
print(fd, "얼마에 매입을 하실려구요?\n");
return(0);
} else {
if (!strcmp(ply_ptr->name, sell_ply->name)) {
print(fd, "당신은 경매자이므로 매입을 할수가 없습니다.\n");
return(0);
}
if (strcmp(&cmnd->str[1][strlen(cmnd->str[1])-2], "냥")
|| strlen(cmnd->str[1]) < 3) {
print(fd, "그것은 돈이 아닙니다.\n");
return(0);
}
sscanf(cmnd->str[1],"%ld", &gold);
if (gold > ply_ptr->gold) {
print(fd, "당신은 그만한 돈이 없습니다.\n");
return(0);
}
if (gold < nextgold) {
print(fd, "경매에 응하시려면 %ld냥 이상을 지불하여야 합니다.\n",nextgold);
return(0);
}
nextgold = gold + gold/10;
if (nextgold < 0) nextgold = 0x7fffffff;
if (buy_ply && buy_ply->fd != -1 && issell == 2) {
print(buy_ply->fd, "당신은 경매에 지불하였던 돈을 되돌려받습니다\n");
buy_ply->gold += sellgold;
}
issell = 2;
sellcount = 550;
sellgold = gold;
buy_ply = ply_ptr;
ply_ptr->gold -= gold;
print(fd, "당신은 %ld냥을 경매대금으로 지불하고 경매에응찰합니다\n", sellgold);
return(0);
}
}
void sell_rtn()
{
if (issell == 1) {
if (sellcount == 550) {
broadcast("\n경매 경매자: %s 물품: %s 금액: %ld냥\n",
sell_ply->name, sell_obj->name, sellgold);
broadcast("도움 경매: [###냥] 물건 경매 매입: ###냥 매입\n");
}
else if(sellcount == 275) {
broadcast("\n경매 경매자: %s 물품: %s 금액: %ld냥\n",
sell_ply->name, sell_obj->name, sellgold);
broadcast(" 경매완료 15초전입니다.\n");
}
else if(sellcount == 0) {
broadcast("\n경매 경매에 응하는 사람이 없어 중단합니다.\n");
if (sell_ply && sell_ply->fd != -1) {
print(sell_ply->fd, "당신은 경매물품을 돌려받습니다.\n");
add_obj_crt(sell_obj, sell_ply);
}
issell = 0;
}
} else {
if (sellcount == 550) {
broadcast("\n매입 물품: %s 응찰자: %s 매입금액: %ld냥\n",
sell_obj->name, buy_ply->name, sellgold);
}
else if (sellcount == 275) {
broadcast("\n매입 물품: %s 응찰자: %s 매입금액: %ld냥\n",
sell_obj->name, buy_ply->name, sellgold);
broadcast(" ^[[=13F매입완료 15초전입니다.\n");
} else if (sellcount == 0) {
broadcast("\n매입 물품: %s 매입자: %s 매입금액: %ld냥[경매완료]\n",
sell_obj->name, buy_ply->name, sellgold);
if (sell_ply && buy_ply->fd != -1) {
print(sell_ply->fd, "당신은 물품이 경매되어 경매대금을받습니다.\n");
sell_ply->gold += sellgold;
}
if (buy_ply && buy_ply->fd != -1) {
print(buy_ply->fd, "당신은 경매 입찰되어 물품을 받습니다.\n");
add_obj_crt(sell_obj, buy_ply);
}
issell = 0;
}
}
sellcount -= 25;
}
출처 : INS Mordor 게시판
홈지기 "그륨"
댓글 0
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
57 | 특수 아이템 만들기 | 그리움 | 2007.04.12 | 253 |
56 | 몹과 자신을 "비교" | 그리움 | 2007.04.12 | 219 |
55 | 패거리 전쟁시 적과 아군 구분 | 그리움 | 2007.04.12 | 216 |
54 | 순위 소스 | 그리움 | 2007.04.12 | 215 |
53 | 개량형 우체국 | 그리움 | 2007.04.12 | 228 |
52 | 명성치 도입 | 그리움 | 2007.04.12 | 229 |
51 | 자기 아파트 방설명은 자기가 #2 | 그리움 | 2007.04.12 | 222 |
50 | 이동력 추가하기 | 그리움 | 2007.04.12 | 225 |
» | 경매 소스 | 그리움 | 2007.04.12 | 217 |
48 | 글자색, 배경색 15색 사용하기 | 그리움 | 2007.04.12 | 213 |
47 | Ctrl+Enter 패치하기 | 그리움 | 2007.04.12 | 198 |
46 | 패거리 상점 만들기 | 그리움 | 2007.04.12 | 199 |
45 | 귀환장소 설정 | 그리움 | 2007.04.12 | 228 |
44 | 출구 정렬 | 그리움 | 2007.04.12 | 222 |
43 | 게시판 검색 기능 추가하기 | 그리움 | 2007.04.12 | 207 |
42 | 암호 *****로 보이게 하기 | 그리움 | 2007.04.12 | 215 |
41 | 레벨을 32767까지 가능하게 | 그리움 | 2007.04.12 | 236 |
40 | 잡담 안시 사용하기 | 그리움 | 2007.04.12 | 236 |
39 | 지도 소스 #2 | 그리움 | 2007.04.12 | 230 |
38 | 베팅소스 | 그리움 | 2007.04.12 | 242 |