project: More mixins

This commit is contained in:
Owain van Brakel
2021-10-27 02:47:38 +02:00
parent 37b1099942
commit 8bc6acddb9
2 changed files with 28 additions and 2 deletions

View File

@@ -950,6 +950,25 @@ public abstract class RSClientMixin implements RSClient
return (RSItemContainer) itemContainers.get(inventory.getId());
}
@Inject
@Override
public RSItemContainer getItemContainer(int id)
{
RSNodeHashTable itemContainers = getItemContainers();
for (Object itemContainer : itemContainers)
{
RSItemContainer container = ((RSItemContainer) itemContainer);
if (((RSItemContainer) itemContainer).getId() == id)
{
return container;
}
}
return null;
}
@Inject
@Override
public boolean isFriended(String name, boolean mustBeLoggedIn)

View File

@@ -44,6 +44,13 @@ public abstract class RSItemContainerMixin implements RSItemContainer
@Shadow("changedItemContainers")
private static int[] changedItemContainers;
@Inject
@Override
public int getId()
{
return (int) this.getHash();
}
@Inject
@Override
public Item[] getItems()
@@ -131,7 +138,7 @@ public abstract class RSItemContainerMixin implements RSItemContainer
int containerId = changedItemContainers[changedId];
RSNodeHashTable itemContainers = client.getItemContainers();
RSItemContainer changedContainer = (RSItemContainer) itemContainers.get(containerId);
RSItemContainer changedContainerInvOther = (RSItemContainer) itemContainers.get(containerId | 0x8000);
@@ -140,7 +147,7 @@ public abstract class RSItemContainerMixin implements RSItemContainer
ItemContainerChanged event = new ItemContainerChanged(containerId, changedContainer);
client.getCallbacks().postDeferred(event);
}
if (changedContainerInvOther != null)
{
ItemContainerChanged event = new ItemContainerChanged(containerId | 0x8000, changedContainerInvOther);