auction removed
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -1,218 +0,0 @@
|
||||
#ifndef __INC_AUCTION_MANAGER_H
|
||||
#define __INC_AUCTION_MANAGER_H
|
||||
|
||||
#include "libsql/AsyncSQL.h"
|
||||
#include "common/auction_table.h"
|
||||
#include <unordered_map>
|
||||
#include <algorithm>
|
||||
|
||||
#define GRADE_LOW 30
|
||||
#define GRADE_MID 60
|
||||
#define GRADE_HIGH 90
|
||||
|
||||
template<>
|
||||
class hash<std::pair <DWORD, DWORD> >
|
||||
{ // hash functor
|
||||
public:
|
||||
typedef std::pair <DWORD, DWORD> _Kty;
|
||||
|
||||
size_t operator()(const _Kty& _Keyval) const
|
||||
{ // hash _Keyval to size_t value by pseudorandomizing transform
|
||||
ldiv_t _Qrem = ldiv((size_t)_Keyval.first + (size_t)_Keyval.second, 127773);
|
||||
|
||||
_Qrem.rem = 16807 * _Qrem.rem - 2836 * _Qrem.quot;
|
||||
if (_Qrem.rem < 0)
|
||||
_Qrem.rem += 2147483647;
|
||||
return ((size_t)_Qrem.rem);
|
||||
}
|
||||
};
|
||||
|
||||
bool CompareItemInfoByItemNameAC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
bool CompareItemInfoByItemNameDC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
|
||||
bool CompareItemInfoByCategoryAC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
bool CompareItemInfoByCategoryDC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
|
||||
bool CompareItemInfoByTimeAC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
bool CompareItemInfoByTimeDC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
|
||||
bool CompareItemInfoByCharNameAC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
bool CompareItemInfoByCharNameDC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
|
||||
bool CompareItemInfoByPriceAC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
bool CompareItemInfoByPriceDC (TAuctionItemInfo* i, TAuctionItemInfo* j);
|
||||
|
||||
class AuctionBoard
|
||||
{
|
||||
public:
|
||||
AuctionBoard() {}
|
||||
~AuctionBoard() {}
|
||||
|
||||
TAuctionItemInfo* GetItemInfo (DWORD key);
|
||||
bool DeleteItemInfo (DWORD key);
|
||||
bool InsertItemInfo (TAuctionItemInfo* item_info);
|
||||
bool UpdateItemInfo (TAuctionItemInfo* item_info);
|
||||
|
||||
|
||||
private:
|
||||
typedef std::unordered_map <DWORD, TAuctionItemInfo*> TItemInfoMap;
|
||||
TItemInfoMap item_map;
|
||||
|
||||
typedef std::map <DWORD, TAuctionItemInfo*> TItemMap;
|
||||
typedef std::unordered_map <DWORD, TItemMap*> TPCMap;
|
||||
|
||||
TPCMap offer_map;
|
||||
|
||||
// sorting을 위한 members
|
||||
public:
|
||||
typedef std::vector <TAuctionItemInfo*> TItemInfoVec;
|
||||
private:
|
||||
typedef std::map <std::string, TItemInfoVec*> SortByItemName;
|
||||
|
||||
SortByItemName item_name_map;
|
||||
|
||||
void Sort(TItemInfoVec& vec, BYTE order);
|
||||
|
||||
public:
|
||||
void SortedItemInfos (TItemInfoVec& vec, BYTE grade, BYTE category, int start_idx, BYTE size, BYTE order[5]);
|
||||
|
||||
// 나의 경매장을 위한 함수.
|
||||
void YourItemInfoList (TItemInfoVec& vec, DWORD player_id, int start_idx, BYTE size);
|
||||
|
||||
};
|
||||
class SaleBoard
|
||||
{
|
||||
private:
|
||||
typedef std::unordered_map <DWORD, TSaleItemInfo*> TItemInfoMap;
|
||||
TItemInfoMap item_map;
|
||||
|
||||
typedef std::map <DWORD, TSaleItemInfo*> TItemMap;
|
||||
typedef std::unordered_map <DWORD, TItemMap*> TPCMap;
|
||||
|
||||
TPCMap wisher_map;
|
||||
TPCMap seller_map;
|
||||
|
||||
bool DeleteFromPCMap (TPCMap& pc_map, DWORD player_id, DWORD item_id);
|
||||
bool InsertInPCMap (TPCMap& pc_map, DWORD player_id, TSaleItemInfo* item_info);
|
||||
|
||||
public:
|
||||
SaleBoard() {}
|
||||
~SaleBoard() {}
|
||||
|
||||
typedef std::vector <TSaleItemInfo*> TItemInfoVec;
|
||||
void WisherItemInfoList (TItemInfoVec& vec, DWORD wisher_id, int start_idx, BYTE size);
|
||||
|
||||
TSaleItemInfo* GetItemInfo (DWORD key);
|
||||
bool DeleteItemInfo (DWORD key);
|
||||
bool InsertItemInfo (TSaleItemInfo* item_info);
|
||||
};
|
||||
|
||||
class WishBoard
|
||||
{
|
||||
private:
|
||||
typedef std::map <DWORD, TWishItemInfo*> TItemMap;
|
||||
typedef std::unordered_map <DWORD, TItemMap*> TPCMap;
|
||||
TPCMap wisher_map;
|
||||
|
||||
public:
|
||||
typedef TWishItemInfo ItemInfo;
|
||||
|
||||
WishBoard() {}
|
||||
~WishBoard() {}
|
||||
|
||||
TWishItemInfo* GetItemInfo (DWORD wisher_id, DWORD item_num);
|
||||
bool DeleteItemInfo (DWORD wisher_id, DWORD item_num);
|
||||
bool InsertItemInfo (TWishItemInfo* item_info);
|
||||
};
|
||||
|
||||
class MyBidBoard
|
||||
{
|
||||
private:
|
||||
typedef std::pair <int, bool> BidInfo;
|
||||
typedef std::map <DWORD, BidInfo > TItemMap;
|
||||
typedef std::unordered_map <DWORD, TItemMap*> TMyBidBoard;
|
||||
// bidder_id가 key
|
||||
TMyBidBoard pc_map;
|
||||
|
||||
public:
|
||||
MyBidBoard() {}
|
||||
~MyBidBoard() {}
|
||||
|
||||
typedef std::vector <DWORD> TItemVec;
|
||||
|
||||
void YourBidInfo (TItemVec& vec, DWORD bidder_id, int start_idx, int size);
|
||||
|
||||
BidInfo GetMoney (DWORD player_id, DWORD item_id);
|
||||
bool Delete (DWORD player_id, DWORD item_id);
|
||||
// 이미 있으면 덮어 씌운다.
|
||||
void Insert (DWORD player_id, DWORD item_id, int money);
|
||||
void Lock (DWORD player_id, DWORD item_id);
|
||||
void UnLock (DWORD player_id, DWORD item_id);
|
||||
};
|
||||
|
||||
class AuctionManager : public singleton <AuctionManager>
|
||||
{
|
||||
private :
|
||||
typedef std::unordered_map<DWORD, LPITEM> TItemMap;
|
||||
TItemMap auction_item_map;
|
||||
|
||||
// auction에 등록된 정보 중 가격, 등등 아이템 테이블에 포함되지 않는 정보들을 관리하는 것들
|
||||
AuctionBoard Auction;
|
||||
SaleBoard Sale;
|
||||
WishBoard Wish;
|
||||
MyBidBoard MyBid;
|
||||
|
||||
public:
|
||||
bool InsertItem (LPITEM item);
|
||||
bool InsertItem (TPlayerItem* player_item);
|
||||
LPITEM GetInventoryItem (DWORD item_id);
|
||||
bool DeleteItem (DWORD item_id);
|
||||
|
||||
bool InsertAuctionItemInfo (TAuctionItemInfo* item_info);
|
||||
TAuctionItemInfo* GetAuctionItemInfo (DWORD item_id)
|
||||
{
|
||||
return Auction.GetItemInfo (item_id);
|
||||
}
|
||||
|
||||
bool InsertSaleItemInfo (TSaleItemInfo* item_info);
|
||||
TSaleItemInfo* GetSaleItemInfo (DWORD item_id)
|
||||
{
|
||||
return Sale.GetItemInfo (item_id);
|
||||
}
|
||||
|
||||
bool InsertWishItemInfo (TWishItemInfo* item_info);
|
||||
TWishItemInfo* GetWishItemInfo (DWORD wisher_id, DWORD item_id)
|
||||
{
|
||||
return Wish.GetItemInfo (wisher_id, item_id);
|
||||
}
|
||||
|
||||
void YourBidItemInfoList (AuctionBoard::TItemInfoVec& vec, DWORD bidder_id, int start_idx, int size);
|
||||
|
||||
void Boot (const char* &pdata, WORD size);
|
||||
|
||||
void get_auction_list (LPCHARACTER ch, int start_idx, int size, int cond);
|
||||
void get_my_auction_list (LPCHARACTER ch, int start_idx, int size);
|
||||
void get_my_purchase_list (LPCHARACTER ch, int start_idx, int size);
|
||||
void enroll_auction (LPCHARACTER ch, LPITEM item, BYTE empire, int bidPrice, int immidiatePurchasePrice);
|
||||
|
||||
void recv_result_auction (DWORD commander_id, TPacketDGResultAuction* cmd_result);
|
||||
|
||||
void bid (LPCHARACTER ch, DWORD item_id, int price);
|
||||
void immediate_purchase (LPCHARACTER ch, DWORD item_id);
|
||||
|
||||
void enroll_sale (LPCHARACTER ch, LPITEM item, DWORD wisher_id, int salePrice);
|
||||
void enroll_wish (LPCHARACTER ch, DWORD item_num, BYTE empire, int wishPrice);
|
||||
|
||||
void get_auctioned_item (LPCHARACTER ch, DWORD item_id, DWORD item_num);
|
||||
void buy_sold_item (LPCHARACTER ch, DWORD item_id);
|
||||
void cancel_auction (LPCHARACTER ch, DWORD item_id);
|
||||
void cancel_wish (LPCHARACTER ch, DWORD item_num);
|
||||
void cancel_sale (LPCHARACTER ch, DWORD item_id);
|
||||
|
||||
void rebid (LPCHARACTER ch, DWORD item_id, int price);
|
||||
void bid_cancel (LPCHARACTER ch, DWORD item_id);
|
||||
/*
|
||||
void close_auction (LPCHARACTER ch);*/
|
||||
};
|
||||
|
||||
#endif
|
||||
@@ -1,5 +0,0 @@
|
||||
typedef struct packet_auction_simple_item_info
|
||||
{
|
||||
BYTE header;
|
||||
BYTE size;
|
||||
} TPacketGCAuctionItemSimpleInfo;
|
||||
@@ -45,10 +45,6 @@
|
||||
#include "buff_on_attributes.h"
|
||||
#include "belt_inventory_helper.h"
|
||||
|
||||
//auction_temp
|
||||
#ifdef __AUCTION__
|
||||
#include "auction_manager.h"
|
||||
#endif
|
||||
const int ITEM_BROKEN_METIN_VNUM = 28960;
|
||||
|
||||
// CHANGE_ITEM_ATTRIBUTES
|
||||
|
||||
@@ -232,27 +232,7 @@ ACMD(do_click_mall);
|
||||
ACMD(do_ride);
|
||||
ACMD(do_get_item_id_list);
|
||||
ACMD(do_set_socket);
|
||||
#ifdef __AUCTION__
|
||||
// temp_auction 임시
|
||||
ACMD(do_get_auction_list);
|
||||
ACMD (do_get_my_auction_list);
|
||||
ACMD (do_get_my_purchase_list);
|
||||
ACMD(do_get_item_id_list);
|
||||
ACMD(do_enroll_auction);
|
||||
ACMD (do_auction_bid);
|
||||
ACMD (do_auction_impur);
|
||||
ACMD (do_enroll_wish);
|
||||
ACMD (do_enroll_sale);
|
||||
|
||||
ACMD (do_get_auctioned_item);
|
||||
ACMD (do_buy_sold_item);
|
||||
ACMD (do_cancel_auction);
|
||||
ACMD (do_cancel_wish);
|
||||
ACMD (do_cancel_sale);
|
||||
|
||||
ACMD (do_rebid);
|
||||
ACMD (do_bid_cancel);
|
||||
#endif
|
||||
// 코스츔 상태보기 및 벗기
|
||||
ACMD(do_costume);
|
||||
ACMD(do_set_stat);
|
||||
@@ -541,27 +521,7 @@ struct command_info cmd_info[] =
|
||||
|
||||
{ "item_id_list", do_get_item_id_list, 0, POS_DEAD, GM_LOW_WIZARD },
|
||||
{ "set_socket", do_set_socket, 0, POS_DEAD, GM_LOW_WIZARD },
|
||||
#ifdef __AUCTION__
|
||||
// auction 임시
|
||||
{ "auction_list", do_get_auction_list, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "my_auction_list", do_get_my_auction_list, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "my_purchase_list", do_get_my_purchase_list, 0, POS_DEAD, GM_PLAYER },
|
||||
|
||||
|
||||
{ "enroll_auction", do_enroll_auction, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "bid", do_auction_bid, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "impur", do_auction_impur, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "enroll_wish", do_enroll_wish, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "enroll_sale", do_enroll_sale, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "get_auctioned_item", do_get_auctioned_item, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "buy_sold_item", do_buy_sold_item, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "cancel_auction", do_cancel_auction, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "cancel_wish", do_cancel_wish, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "cancel_sale", do_cancel_sale, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "rebid", do_rebid, 0, POS_DEAD, GM_PLAYER },
|
||||
{ "bid_cancel", do_bid_cancel, 0, POS_DEAD, GM_PLAYER },
|
||||
|
||||
#endif
|
||||
{ "costume", do_costume, 0, POS_DEAD, GM_PLAYER },
|
||||
|
||||
{ "tcon", do_set_stat, POINT_HT, POS_DEAD, GM_LOW_WIZARD },
|
||||
|
||||
@@ -34,9 +34,6 @@
|
||||
#include "threeway_war.h"
|
||||
#include "log.h"
|
||||
#include "common/VnumHelper.h"
|
||||
#ifdef __AUCTION__
|
||||
#include "auction_manager.h"
|
||||
#endif
|
||||
|
||||
extern int g_server_id;
|
||||
|
||||
@@ -2499,186 +2496,3 @@ ACMD(do_ride)
|
||||
// 타거나 내릴 수 없을때
|
||||
ch->ChatPacket(CHAT_TYPE_INFO, LC_TEXT("말을 먼저 소환해주세요."));
|
||||
}
|
||||
|
||||
#ifdef __AUCTION__
|
||||
// temp_auction
|
||||
ACMD(do_get_item_id_list)
|
||||
{
|
||||
for (int i = 0; i < INVENTORY_MAX_NUM; i++)
|
||||
{
|
||||
LPITEM item = ch->GetInventoryItem(i);
|
||||
if (item != NULL)
|
||||
ch->ChatPacket(CHAT_TYPE_INFO, "name : %s id : %d", item->GetProto()->szName, item->GetID());
|
||||
}
|
||||
}
|
||||
|
||||
// temp_auction
|
||||
|
||||
ACMD(do_enroll_auction)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
char arg3[256];
|
||||
char arg4[256];
|
||||
two_arguments (two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3), arg4, sizeof(arg4));
|
||||
|
||||
DWORD item_id = strtoul(arg1, NULL, 10);
|
||||
BYTE empire = strtoul(arg2, NULL, 10);
|
||||
int bidPrice = strtol(arg3, NULL, 10);
|
||||
int immidiatePurchasePrice = strtol(arg4, NULL, 10);
|
||||
|
||||
LPITEM item = ITEM_MANAGER::instance().Find(item_id);
|
||||
if (item == NULL)
|
||||
return;
|
||||
|
||||
AuctionManager::instance().enroll_auction(ch, item, empire, bidPrice, immidiatePurchasePrice);
|
||||
}
|
||||
|
||||
ACMD(do_enroll_wish)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
char arg3[256];
|
||||
one_argument (two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3));
|
||||
|
||||
DWORD item_num = strtoul(arg1, NULL, 10);
|
||||
BYTE empire = strtoul(arg2, NULL, 10);
|
||||
int wishPrice = strtol(arg3, NULL, 10);
|
||||
|
||||
AuctionManager::instance().enroll_wish(ch, item_num, empire, wishPrice);
|
||||
}
|
||||
|
||||
ACMD(do_enroll_sale)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
char arg3[256];
|
||||
one_argument (two_arguments(argument, arg1, sizeof(arg1), arg2, sizeof(arg2)), arg3, sizeof(arg3));
|
||||
|
||||
DWORD item_id = strtoul(arg1, NULL, 10);
|
||||
DWORD wisher_id = strtoul(arg2, NULL, 10);
|
||||
int salePrice = strtol(arg3, NULL, 10);
|
||||
|
||||
LPITEM item = ITEM_MANAGER::instance().Find(item_id);
|
||||
if (item == NULL)
|
||||
return;
|
||||
|
||||
AuctionManager::instance().enroll_sale(ch, item, wisher_id, salePrice);
|
||||
}
|
||||
|
||||
// temp_auction
|
||||
// packet으로 통신하게 하고, 이건 삭제해야한다.
|
||||
ACMD(do_get_auction_list)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
char arg3[256];
|
||||
two_arguments (one_argument (argument, arg1, sizeof(arg1)), arg2, sizeof(arg2), arg3, sizeof(arg3));
|
||||
|
||||
AuctionManager::instance().get_auction_list (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10), strtoul(arg3, NULL, 10));
|
||||
}
|
||||
//
|
||||
//ACMD(do_get_wish_list)
|
||||
//{
|
||||
// char arg1[256];
|
||||
// char arg2[256];
|
||||
// char arg3[256];
|
||||
// two_arguments (one_argument (argument, arg1, sizeof(arg1)), arg2, sizeof(arg2), arg3, sizeof(arg3));
|
||||
//
|
||||
// AuctionManager::instance().get_wish_list (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10), strtoul(arg3, NULL, 10));
|
||||
//}
|
||||
ACMD (do_get_my_auction_list)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().get_my_auction_list (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_get_my_purchase_list)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().get_my_purchase_list (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_auction_bid)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().bid (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_auction_impur)
|
||||
{
|
||||
char arg1[256];
|
||||
one_argument (argument, arg1, sizeof(arg1));
|
||||
|
||||
AuctionManager::instance().immediate_purchase (ch, strtoul(arg1, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_get_auctioned_item)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().get_auctioned_item (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_buy_sold_item)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
one_argument (argument, arg1, sizeof(arg1));
|
||||
|
||||
AuctionManager::instance().get_auctioned_item (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_cancel_auction)
|
||||
{
|
||||
char arg1[256];
|
||||
one_argument (argument, arg1, sizeof(arg1));
|
||||
|
||||
AuctionManager::instance().cancel_auction (ch, strtoul(arg1, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_cancel_wish)
|
||||
{
|
||||
char arg1[256];
|
||||
one_argument (argument, arg1, sizeof(arg1));
|
||||
|
||||
AuctionManager::instance().cancel_wish (ch, strtoul(arg1, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_cancel_sale)
|
||||
{
|
||||
char arg1[256];
|
||||
one_argument (argument, arg1, sizeof(arg1));
|
||||
|
||||
AuctionManager::instance().cancel_sale (ch, strtoul(arg1, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_rebid)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().rebid (ch, strtoul(arg1, NULL, 10), strtoul(arg2, NULL, 10));
|
||||
}
|
||||
|
||||
ACMD (do_bid_cancel)
|
||||
{
|
||||
char arg1[256];
|
||||
char arg2[256];
|
||||
two_arguments (argument, arg1, sizeof(arg1), arg2, sizeof(arg2));
|
||||
|
||||
AuctionManager::instance().bid_cancel (ch, strtoul(arg1, NULL, 10));
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -41,9 +41,6 @@ DWORD g_dwTrafficProfileFlushCycle = 3600;
|
||||
|
||||
int test_server = 0;
|
||||
int speed_server = 0;
|
||||
#ifdef __AUCTION__
|
||||
int auction_server = 0;
|
||||
#endif
|
||||
bool distribution_test_server = false;
|
||||
bool china_event_server = false;
|
||||
bool guild_mark_server = true;
|
||||
@@ -614,16 +611,7 @@ void config_init(const string& st_localeServiceName)
|
||||
str_to_number(speed_server, value_string);
|
||||
continue;
|
||||
}
|
||||
#ifdef __AUCTION__
|
||||
TOKEN("auction_server")
|
||||
{
|
||||
printf("-----------------------------------------------\n");
|
||||
printf("AUCTION_SERVER\n");
|
||||
printf("-----------------------------------------------\n");
|
||||
str_to_number(auction_server, value_string);
|
||||
continue;
|
||||
}
|
||||
#endif
|
||||
|
||||
TOKEN("distribution_test_server")
|
||||
{
|
||||
str_to_number(distribution_test_server, value_string);
|
||||
|
||||
@@ -46,13 +46,7 @@
|
||||
|
||||
#include "DragonSoul.h"
|
||||
|
||||
#ifdef __AUCTION__
|
||||
#include "auction_manager.h"
|
||||
#endif
|
||||
extern BYTE g_bAuthServer;
|
||||
#ifdef __AUCTION__
|
||||
extern int auction_server;
|
||||
#endif
|
||||
extern void gm_insert(const char * name, BYTE level);
|
||||
extern BYTE gm_get_level(const char * name, const char * host, const char* account );
|
||||
extern void gm_host_insert(const char * host);
|
||||
@@ -787,10 +781,7 @@ void CInputDB::Boot(const char* data)
|
||||
for (WORD i = 0; i < size; ++i, ++kObj)
|
||||
CManager::instance().LoadObject(kObj, true);
|
||||
}
|
||||
#ifdef __AUCTION__
|
||||
// Auction
|
||||
AuctionManager::instance().Boot(data);
|
||||
#endif
|
||||
|
||||
set_global_time(*(time_t *) data);
|
||||
data += sizeof(time_t);
|
||||
|
||||
@@ -2467,12 +2458,7 @@ int CInputDB::Analyze(LPDESC d, BYTE bHeader, const char * c_pData)
|
||||
case HEADER_DG_RESPOND_CHANNELSTATUS:
|
||||
RespondChannelStatus(DESC_MANAGER::instance().FindByHandle(m_dwHandle), c_pData);
|
||||
break;
|
||||
#ifdef __AUCTION__
|
||||
case HEADER_DG_AUCTION_RESULT:
|
||||
if (auction_server)
|
||||
AuctionManager::instance().recv_result_auction(m_dwHandle, (TPacketDGResultAuction*)c_pData);
|
||||
break;
|
||||
#endif
|
||||
|
||||
default:
|
||||
return (-1);
|
||||
}
|
||||
|
||||
@@ -1993,52 +1993,6 @@ bool CItem::OnAfterCreatedItem()
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
#ifdef __AUCTION__
|
||||
|
||||
// 경매장
|
||||
// window를 경매장으로 한다.
|
||||
|
||||
bool CItem::MoveToAuction()
|
||||
{
|
||||
LPCHARACTER owner = GetOwner();
|
||||
if (owner == NULL)
|
||||
{
|
||||
sys_err ("Item those owner is not exist cannot regist in auction");
|
||||
return false;
|
||||
}
|
||||
|
||||
if (GetWindow() == AUCTION)
|
||||
{
|
||||
sys_err ("Item is already in auction.");
|
||||
}
|
||||
|
||||
SetWindow(AUCTION);
|
||||
owner->SetItem(m_bCell, NULL);
|
||||
Save();
|
||||
ITEM_MANAGER::instance().FlushDelayedSave(this);
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
void CItem::CopyToRawData (TPlayerItem* new_item)
|
||||
{
|
||||
if (new_item != NULL)
|
||||
return;
|
||||
|
||||
new_item->id = m_dwID;
|
||||
new_item->window = m_bWindow;
|
||||
new_item->pos = m_bCell;
|
||||
new_item->count = m_dwCount;
|
||||
|
||||
new_item->vnum = GetVnum();
|
||||
thecore_memcpy (new_item->alSockets, m_alSockets, sizeof (m_alSockets));
|
||||
thecore_memcpy (new_item->aAttr, m_aAttr, sizeof (m_aAttr));
|
||||
|
||||
new_item->owner = m_pOwner->GetPlayerID();
|
||||
}
|
||||
#endif
|
||||
|
||||
bool CItem::IsDragonSoul()
|
||||
{
|
||||
return GetType() == ITEM_DS;
|
||||
|
||||
@@ -234,11 +234,6 @@ class CItem : public CEntity
|
||||
void ClearMountAttributeAndAffect();
|
||||
bool IsNewMountItem();
|
||||
|
||||
#ifdef __AUCTION__
|
||||
// 경매장
|
||||
bool MoveToAuction ();
|
||||
void CopyToRawData (TPlayerItem* item);
|
||||
#endif
|
||||
// 독일에서 기존 캐시 아이템과 같지만, 교환 가능한 캐시 아이템을 만든다고 하여,
|
||||
// 오리지널 아이템에, 교환 금지 플래그만 삭제한 새로운 아이템들을 새로운 아이템 대역에 할당하였다.
|
||||
// 문제는 새로운 아이템도 오리지널 아이템과 같은 효과를 내야하는데,
|
||||
|
||||
@@ -70,10 +70,6 @@
|
||||
#include "FileMonitor_FreeBSD.h"
|
||||
#endif
|
||||
|
||||
#ifdef __AUCTION__
|
||||
#include "auction_manager.h"
|
||||
#endif
|
||||
|
||||
// #ifndef OS_WINDOWS
|
||||
// #include <gtest/gtest.h>
|
||||
// #endif
|
||||
@@ -144,9 +140,6 @@ int g_shutdown_core_pulse;
|
||||
bool g_bShutdown=false;
|
||||
|
||||
extern int speed_server;
|
||||
#ifdef __AUCTION__
|
||||
extern int auction_server;
|
||||
#endif
|
||||
extern void CancelReloadSpamEvent();
|
||||
|
||||
void ContinueOnFatalError()
|
||||
@@ -506,10 +499,6 @@ int main(int argc, char **argv)
|
||||
CSpeedServerManager SSManager;
|
||||
DSManager dsManager;
|
||||
|
||||
#ifdef __AUCTION__
|
||||
AuctionManager auctionManager;
|
||||
#endif
|
||||
|
||||
if (!start(argc, argv)) {
|
||||
CleanUpForEarlyExit();
|
||||
return 0;
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
#ifndef __INC_PACKET_H__
|
||||
#define __INC_PACKET_H__
|
||||
#pragma once
|
||||
|
||||
enum
|
||||
{
|
||||
@@ -2348,4 +2347,3 @@ typedef struct SPacketGCStateCheck
|
||||
} TPacketGCStateCheck;
|
||||
|
||||
#pragma pack()
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user