Daily Task Indicators: delay the varbit check to allow them to initialize

This commit is contained in:
user35557
2018-05-23 16:23:02 +03:00
committed by Adam
parent a56c32f8ae
commit da55841b16

View File

@@ -32,10 +32,10 @@ import javax.inject.Inject;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import net.runelite.api.ChatMessageType; import net.runelite.api.ChatMessageType;
import net.runelite.api.Client; import net.runelite.api.Client;
import net.runelite.api.GameState;
import net.runelite.api.Varbits; import net.runelite.api.Varbits;
import net.runelite.api.events.ConfigChanged; import net.runelite.api.events.ConfigChanged;
import net.runelite.api.events.GameStateChanged; import net.runelite.api.events.GameStateChanged;
import net.runelite.api.events.GameTick;
import net.runelite.client.chat.ChatColor; import net.runelite.client.chat.ChatColor;
import net.runelite.client.chat.ChatColorType; import net.runelite.client.chat.ChatColorType;
import net.runelite.client.chat.ChatMessageBuilder; import net.runelite.client.chat.ChatMessageBuilder;
@@ -61,7 +61,7 @@ public class DailyTasksPlugin extends Plugin
@Inject @Inject
private ChatMessageManager chatMessageManager; private ChatMessageManager chatMessageManager;
private boolean hasSentHerbMsg, hasSentStavesMsg, hasSentEssenceMsg; private boolean hasSentHerbMsg, hasSentStavesMsg, hasSentEssenceMsg, check;
@Provides @Provides
DailyTasksConfig provideConfig(ConfigManager configManager) DailyTasksConfig provideConfig(ConfigManager configManager)
@@ -105,25 +105,44 @@ public class DailyTasksPlugin extends Plugin
@Subscribe @Subscribe
public void onGameStateChanged(GameStateChanged event) public void onGameStateChanged(GameStateChanged event)
{ {
if (event.getGameState().equals(GameState.LOGGED_IN)) switch (event.getGameState())
{ {
case HOPPING:
case LOGGED_IN:
//load the varbits on first available tick
check = true;
break;
}
}
@Subscribe
public void onGameTick(GameTick event)
{
if (!check)
{
return;
}
check = false;
if (config.showHerbBoxes() && !hasSentHerbMsg && checkCanCollectHerbBox()) if (config.showHerbBoxes() && !hasSentHerbMsg && checkCanCollectHerbBox())
{ {
sendChatMessage("You have herb boxes waiting to be collected at NMZ."); sendChatMessage("You have herb boxes waiting to be collected at NMZ.");
hasSentHerbMsg = true; hasSentHerbMsg = true;
} }
if (config.showStaves() && !hasSentStavesMsg && checkCanCollectStaves()) if (config.showStaves() && !hasSentStavesMsg && checkCanCollectStaves())
{ {
sendChatMessage("You have staves waiting to be collected from Zaff."); sendChatMessage("You have staves waiting to be collected from Zaff.");
hasSentStavesMsg = true; hasSentStavesMsg = true;
} }
if (config.showEssence() && !hasSentEssenceMsg && checkCanCollectEssence()) if (config.showEssence() && !hasSentEssenceMsg && checkCanCollectEssence())
{ {
sendChatMessage("You have pure essence waiting to be collected from Wizard Cromperty."); sendChatMessage("You have pure essence waiting to be collected from Wizard Cromperty.");
hasSentEssenceMsg = true; hasSentEssenceMsg = true;
} }
} }
}
private boolean checkCanCollectHerbBox() private boolean checkCanCollectHerbBox()
{ {