the whole game

This commit is contained in:
Kolyah35
2026-03-02 22:04:18 +03:00
parent 816e9060b4
commit f0617a5d22
2069 changed files with 581500 additions and 0 deletions

View File

@@ -0,0 +1,41 @@
#include "BaseContainerMenu.h"
#include "../item/ItemInstance.h"
BaseContainerMenu::BaseContainerMenu( int containerType )
: containerId(-1),
containerType(containerType),
listener(NULL)
{
}
void BaseContainerMenu::setListener( IContainerListener* listener )
{
if (!(this->listener = listener))
return;
if (listener)
listener->refreshContainer(this, lastSlots = getItems());
}
void BaseContainerMenu::broadcastChanges()
{
//LOGI("broadcast: Base. Listener: %p\n", listener);
if (!listener)
return;
ItemList slots = getItems();
if (slots.size() != lastSlots.size()) {
listener->refreshContainer(this, lastSlots = slots);
return;
}
for (unsigned int i = 0; i < slots.size(); i++) {
ItemInstance& current = slots[i];
ItemInstance& expected = lastSlots[i];
if (!ItemInstance::matches(&expected, &current)) {
expected = current;
//LOGI("Broadcasting a change!\n");
listener->slotChanged(this, i, expected, isResultSlot(i));
}
}
}