DarkflameServer/dScripts/NPCAddRemoveItem.h
2023-10-09 15:31:25 -05:00

21 lines
690 B
C++

#pragma once
#include "CppScripts.h"
struct ItemSetting {
std::vector<LOT> items; // The items to add/remove
bool add; // Add items on mission accept
bool remove; // Remove items on mission complete
};
/**
* Scripts that allows for the addition and removal of sets of items by an NPC
*/
class NPCAddRemoveItem : virtual public CppScripts::Script {
protected:
void OnMissionDialogueOK(Entity* self, Entity* target, int missionID, eMissionState missionState) override;
virtual std::map<uint32_t, std::vector<ItemSetting>> GetSettings();
private:
void OnStartup(Entity* self) override;
std::map<uint32_t, std::vector<ItemSetting>> m_MissionItemSettings;
};