경매 소스
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
번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
---|---|---|---|---|
17 | 프롬프트 그래프화 #2 | 그리움 | 2007.04.12 | 280 |
16 | 낚시 | 그리움 | 2007.04.12 | 280 |
15 | 운영자명령 "보고" | 그리움 | 2007.04.12 | 280 |
14 | 이동하는 몹 | 그리움 | 2007.04.12 | 283 |
13 | 머드에서 몹 심기 | 그리움 | 2007.04.12 | 287 |
12 | 온라인 리붓 | 그리움 | 2007.04.12 | 287 |
11 | 방전체 공격루틴 #2 | 그리움 | 2007.04.12 | 287 |
10 | 개척 소스 | 그리움 | 2007.04.12 | 302 |
9 | 감옥/퇴소 | 그리움 | 2007.04.12 | 338 |
8 | 물건, 몹의 번호 찾아내기. | 그리움 | 2007.07.04 | 392 |
7 | 몹 소환하여 소환몹이 대신 싸우게 하기 | 그리움 | 2007.11.23 | 398 |
6 | 주민등록번호 검사 소스 | 그리움 | 2007.04.12 | 420 |
5 | 무한대전 방 데이터 Convert | 그리움 | 2007.11.23 | 423 |
4 | 연타기능 - 연타수 자동 | 그리움 | 2007.04.12 | 447 |
3 | 게시판 버그 해결 방법. | 그리움 | 2007.04.12 | 470 |
2 | 연타기능 - 직업별 연타 | 그리움 | 2007.04.12 | 479 |
1 | *괴물이름 방폭 버그 수정 | 그리움 | 2007.04.12 | 533 |