#ifdef ENABLE_DICE_SYSTEM
#include "party.h"
#endif
//arat;
//fonksiyondan sonra ekle;
#ifdef ENABLE_DICE_SYSTEM
{
switch (lua_gettop(L))
{
break;
case 2:
case 3:
item = ITEM_MANAGER::instance().CreateItem((DWORD)lua_tonumber(L, 1), (int)lua_tonumber(L, 2));
break;
default:
lua_pushnumber(L, 0);
return
}
DWORD dwVnum;
if
{
dwVnum = (int)lua_tonumber(L, 1);
}
else if (!ITEM_MANAGER::instance().GetVnum(lua_tostring(L, 1), dwVnum))
{
sys_err("QUEST Make item call error : wrong item name : %s", lua_tostring(L, 1));
lua_pushnumber(L, 0);
return
}
int icount = 1;
if (lua_isnumber(L, 2) && lua_tonumber(L, 2) > 0)
{
icount = (int)rint(lua_tonumber(L, 2));
if (icount <= 0)
{
sys_err("QUEST Make item call error : wrong item count : %g", lua_tonumber(L, 2));
lua_pushnumber(L, 0);
return 1;
}
}
LPCHARACTER ch = CQuestManager::instance().GetCurrentCharacterPtr();
LPITEM item = ITEM_MANAGER::instance().CreateItem(dwVnum, icount);
if (ch->GetParty())
{
FPartyDropDiceRoll f(item, ch);
f.Process(NULL);
}
else
PIXEL_POSITION pos;
pos.x = ch->GetX() + number(-200, 200);
pos.y = ch->GetY() + number(-200, 200);
item->AddToGround(ch->GetMapIndex(), pos);
item->StartDestroyEvent();
sys_log(0, "QUEST [REWARD] item %s to %s", lua_tostring(L, 1), ch->GetName());
LogManager::instance().QuestRewardLog(CQuestManager::instance().GetCurrentPC()->GetCurrentQuestName().c_str(), ch->GetPlayerID(), ch->GetLevel(), dwVnum, icount);
lua_pushnumber(L, (item) ? item->GetID() : 0);
return
}
#endif
//tekrar arat;
{
//altına ekle;
#ifdef ENABLE_DICE_SYSTEM
{
#endif