dammejx
17-10-12, 05:16 PM
Code chuột phải item:
KItemList.cpp
BOOL KItemList::EatMecidine(int nIdx)
{
if (m_PlayerIdx <= 0)
return FALSE;
int nNpcIdx = Player[m_PlayerIdx].m_nIndex;
//int nGenre = Item[nIdx].GetGenre();
char DuongDanScript[100];
int nGenre = Item[nIdx].GetGenre();
int nDetailType = Item[nIdx].GetDetailType();
if (nGenre == item_task)
{
sprintf(DuongDanScript,"\\script\\itemquestkey\\%d .lua",nDetailType);
#ifdef _SERVER
Player[m_PlayerIdx].ExecuteScript(DuongDanScript, "main", 0);
Remove(nIdx);
ItemSet.Remove(nIdx);
#endif
}
_ASSERT(nGenre == item_medicine || nGenre == item_townportal);
if (nGenre == item_medicine)
Item[nIdx].ApplyMagicAttribToNPC(&Npc[nNpcIdx], 3);
if (nGenre == item_townportal)
{
if (!Npc[Player[m_PlayerIdx].m_nIndex].m_FightMode)
{
#ifndef _SERVER // ¿Í»§¶ËÏÈ¿´¿´ÊDz»ÊÇ·ÇÕ½¶·Ç ø£¬Èç¹ûÊǵĻ°¾Í±ð·¢¸øServerÁ Ë¡£
// ϵͳÏûÏ¢
KSystemMessage Msg;
Msg.byConfirmType = SMCT_CLICK;
Msg.byParamSize = 0;
Msg.byPriority = 1;
Msg.eType = SMT_PLAYER;
strcpy(Msg.szMessage, "ÎÞ·¨ÔÚÕâÀïʹÓÃÍÁµØ·û£¡");
CoreDataChanged(GDCNI_SYSTEM_MESSAGE, (unsigned int)&Msg, NULL);
#endif
return FALSE;
}
#ifdef _SERVER
Player[m_PlayerIdx].UseTownPortal();
#endif
}
#ifdef _SERVER
Remove(nIdx);
ItemSet.Remove(nIdx);
#endif
if (Npc[Player[m_PlayerIdx].m_nIndex].m_Doing == do_sit)
{
Npc[Player[m_PlayerIdx].m_nIndex].SendCommand(do_stand);
}
return TRUE;
}
#ifndef _SERVER
build thì ok, không có lỗi. nhưng test thì không hoạt động. ai giúp mình. đã chép coreclien với coreserver vào nhưng chuột phải không hoạt động
KItemList.cpp
BOOL KItemList::EatMecidine(int nIdx)
{
if (m_PlayerIdx <= 0)
return FALSE;
int nNpcIdx = Player[m_PlayerIdx].m_nIndex;
//int nGenre = Item[nIdx].GetGenre();
char DuongDanScript[100];
int nGenre = Item[nIdx].GetGenre();
int nDetailType = Item[nIdx].GetDetailType();
if (nGenre == item_task)
{
sprintf(DuongDanScript,"\\script\\itemquestkey\\%d .lua",nDetailType);
#ifdef _SERVER
Player[m_PlayerIdx].ExecuteScript(DuongDanScript, "main", 0);
Remove(nIdx);
ItemSet.Remove(nIdx);
#endif
}
_ASSERT(nGenre == item_medicine || nGenre == item_townportal);
if (nGenre == item_medicine)
Item[nIdx].ApplyMagicAttribToNPC(&Npc[nNpcIdx], 3);
if (nGenre == item_townportal)
{
if (!Npc[Player[m_PlayerIdx].m_nIndex].m_FightMode)
{
#ifndef _SERVER // ¿Í»§¶ËÏÈ¿´¿´ÊDz»ÊÇ·ÇÕ½¶·Ç ø£¬Èç¹ûÊǵĻ°¾Í±ð·¢¸øServerÁ Ë¡£
// ϵͳÏûÏ¢
KSystemMessage Msg;
Msg.byConfirmType = SMCT_CLICK;
Msg.byParamSize = 0;
Msg.byPriority = 1;
Msg.eType = SMT_PLAYER;
strcpy(Msg.szMessage, "ÎÞ·¨ÔÚÕâÀïʹÓÃÍÁµØ·û£¡");
CoreDataChanged(GDCNI_SYSTEM_MESSAGE, (unsigned int)&Msg, NULL);
#endif
return FALSE;
}
#ifdef _SERVER
Player[m_PlayerIdx].UseTownPortal();
#endif
}
#ifdef _SERVER
Remove(nIdx);
ItemSet.Remove(nIdx);
#endif
if (Npc[Player[m_PlayerIdx].m_nIndex].m_Doing == do_sit)
{
Npc[Player[m_PlayerIdx].m_nIndex].SendCommand(do_stand);
}
return TRUE;
}
#ifndef _SERVER
build thì ok, không có lỗi. nhưng test thì không hoạt động. ai giúp mình. đã chép coreclien với coreserver vào nhưng chuột phải không hoạt động