Attempt to fix autoloot
This commit is contained in:
parent
2d9736d6df
commit
6c70f57e8e
@ -3,7 +3,7 @@
|
|||||||
#include "GameObject.h"
|
#include "GameObject.h"
|
||||||
#include "ObjectAccessor.h"
|
#include "ObjectAccessor.h"
|
||||||
#include "Config.h"
|
#include "Config.h"
|
||||||
#include "WorldSession.h"
|
#include "LootMgr.h"
|
||||||
#include <sstream>
|
#include <sstream>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <list>
|
#include <list>
|
||||||
@ -12,6 +12,7 @@
|
|||||||
namespace
|
namespace
|
||||||
{
|
{
|
||||||
bool sEnabled = true;
|
bool sEnabled = true;
|
||||||
|
bool sServerAutoLoot = true;
|
||||||
uint32 sTickMs = 200;
|
uint32 sTickMs = 200;
|
||||||
float sScanRange = 30.0f;
|
float sScanRange = 30.0f;
|
||||||
std::vector<uint32> sBobberEntries;
|
std::vector<uint32> sBobberEntries;
|
||||||
@ -48,6 +49,17 @@ namespace
|
|||||||
if (go->getLootState() == GO_READY && go->GetGoType() == GAMEOBJECT_TYPE_FISHINGNODE)
|
if (go->getLootState() == GO_READY && go->GetGoType() == GAMEOBJECT_TYPE_FISHINGNODE)
|
||||||
{
|
{
|
||||||
go->Use(plr);
|
go->Use(plr);
|
||||||
|
|
||||||
|
if (sServerAutoLoot)
|
||||||
|
{
|
||||||
|
Loot* loot = &go->loot;
|
||||||
|
for (uint32 i = 0; i < loot->items.size(); ++i)
|
||||||
|
plr->StoreLootItem(i, loot);
|
||||||
|
|
||||||
|
plr->SendLootRelease(go->GetGUID());
|
||||||
|
go->SetLootState(GO_JUST_DEACTIVATED);
|
||||||
|
}
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -62,6 +74,7 @@ public:
|
|||||||
void OnAfterConfigLoad(bool) override
|
void OnAfterConfigLoad(bool) override
|
||||||
{
|
{
|
||||||
sEnabled = sConfigMgr->GetOption<bool>("AutoFish.Enabled", true);
|
sEnabled = sConfigMgr->GetOption<bool>("AutoFish.Enabled", true);
|
||||||
|
sServerAutoLoot = sConfigMgr->GetOption<bool>("AutoFish.ServerAutoLoot", true);
|
||||||
sTickMs = sConfigMgr->GetOption<uint32>("AutoFish.TickMs", 200u);
|
sTickMs = sConfigMgr->GetOption<uint32>("AutoFish.TickMs", 200u);
|
||||||
sScanRange = sConfigMgr->GetOption<float>("AutoFish.ScanRange", 30.0f);
|
sScanRange = sConfigMgr->GetOption<float>("AutoFish.ScanRange", 30.0f);
|
||||||
sBobberEntries = ParseEntryList(sConfigMgr->GetOption<std::string>("AutoFish.BobberEntries", "35591"));
|
sBobberEntries = ParseEntryList(sConfigMgr->GetOption<std::string>("AutoFish.BobberEntries", "35591"));
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user