friendslist: update titles using onScriptPostFired rather than onGameTick

This commit is contained in:
melkypie
2020-03-15 18:45:20 +02:00
committed by Adam
parent a8d9d524ca
commit 902078cb62

View File

@@ -30,8 +30,9 @@ import net.runelite.api.Client;
import net.runelite.api.Friend;
import net.runelite.api.Ignore;
import net.runelite.api.NameableContainer;
import net.runelite.api.ScriptID;
import net.runelite.api.VarPlayer;
import net.runelite.api.events.GameTick;
import net.runelite.api.events.ScriptPostFired;
import net.runelite.api.widgets.Widget;
import net.runelite.api.widgets.WidgetInfo;
import net.runelite.client.eventbus.Subscribe;
@@ -62,43 +63,49 @@ public class FriendListPlugin extends Plugin
}
@Subscribe
public void onGameTick(GameTick tick)
public void onScriptPostFired(ScriptPostFired event)
{
final int world = client.getWorld();
final boolean isMember = client.getVar(VarPlayer.MEMBERSHIP_DAYS) > 0;
final NameableContainer<Friend> friendContainer = client.getFriendContainer();
final int friendCount = friendContainer.getCount();
if (friendCount >= 0)
if (event.getScriptId() == ScriptID.FRIENDS_UPDATE)
{
final int limit = isMember ? MAX_FRIENDS_P2P : MAX_FRIENDS_F2P;
final int world = client.getWorld();
final boolean isMember = client.getVar(VarPlayer.MEMBERSHIP_DAYS) > 0;
final NameableContainer<Friend> friendContainer = client.getFriendContainer();
final int friendCount = friendContainer.getCount();
if (friendCount >= 0)
{
final int limit = isMember ? MAX_FRIENDS_P2P : MAX_FRIENDS_F2P;
final String title = "Friends - W" +
world +
" (" +
friendCount +
"/" +
limit +
")";
final String title = "Friends - W" +
world +
" (" +
friendCount +
"/" +
limit +
")";
setFriendsListTitle(title);
setFriendsListTitle(title);
}
}
final NameableContainer<Ignore> ignoreContainer = client.getIgnoreContainer();
final int ignoreCount = ignoreContainer.getCount();
if (ignoreCount >= 0)
else if (event.getScriptId() == ScriptID.IGNORE_UPDATE)
{
final int limit = isMember ? MAX_IGNORES_P2P : MAX_IGNORES_F2P;
final int world = client.getWorld();
final boolean isMember = client.getVar(VarPlayer.MEMBERSHIP_DAYS) > 0;
final NameableContainer<Ignore> ignoreContainer = client.getIgnoreContainer();
final int ignoreCount = ignoreContainer.getCount();
if (ignoreCount >= 0)
{
final int limit = isMember ? MAX_IGNORES_P2P : MAX_IGNORES_F2P;
final String title = "Ignores - W" +
world +
" (" +
ignoreCount +
"/" +
limit +
")";
final String title = "Ignores - W" +
world +
" (" +
ignoreCount +
"/" +
limit +
")";
setIgnoreListTitle(title);
setIgnoreListTitle(title);
}
}
}