gdle/Source/Gem.cpp

41 lines
No EOL
754 B
C++

#include "StdAfx.h"
#include "Gem.h"
#include "UseManager.h"
#include "Player.h"
#include "SpellcastingManager.h"
CGemWeenie::CGemWeenie()
{
}
CGemWeenie::~CGemWeenie()
{
}
int CGemWeenie::Use(std::shared_ptr<CPlayerWeenie> player)
{
if (!player->FindContainedItem(GetID()))
{
player->NotifyUseDone(WERROR_NONE);
return WERROR_NONE;
}
CGenericUseEvent *useEvent = new CGenericUseEvent;
useEvent->_target_id = GetID();
player->ExecuteUseEvent(useEvent);
return WERROR_NONE;
}
int CGemWeenie::DoUseResponse(std::shared_ptr<CWeenieObject> player)
{
if (DWORD spell_did = InqDIDQuality(SPELL_DID, 0))
{
MakeSpellcastingManager()->CastSpellInstant(player->GetID(), spell_did);
}
DecrementStackOrStructureNum();
return WERROR_NONE;
}