cooking plugin: fix wine fermentation timer to begin at appropriate time

Co-authored-by: Adam <Adam@sigterm.info>
This commit is contained in:
Austin Bryant
2019-05-23 00:56:25 -04:00
committed by Adam
parent edf3abb75b
commit acaef50b91
2 changed files with 33 additions and 38 deletions

View File

@@ -31,7 +31,11 @@ import java.time.Instant;
import javax.inject.Inject;
import lombok.AccessLevel;
import lombok.Getter;
import static net.runelite.api.AnimationID.COOKING_WINE;
import net.runelite.api.ChatMessageType;
import net.runelite.api.Client;
import net.runelite.api.Player;
import net.runelite.api.events.AnimationChanged;
import net.runelite.api.events.ChatMessage;
import net.runelite.api.events.GameTick;
import net.runelite.client.config.ConfigManager;
@@ -50,7 +54,8 @@ import net.runelite.client.ui.overlay.OverlayManager;
@PluginDependency(XpTrackerPlugin.class)
public class CookingPlugin extends Plugin
{
private static final String WINE_MESSAGE = "You squeeze the grapes into the jug";
@Inject
private Client client;
@Inject
private CookingConfig config;
@@ -124,6 +129,27 @@ public class CookingPlugin extends Plugin
}
}
@Subscribe
public void onAnimationChanged(AnimationChanged animationChanged)
{
Player localPlayer = client.getLocalPlayer();
if (localPlayer != animationChanged.getActor())
{
return;
}
if (localPlayer.getAnimation() == COOKING_WINE && config.fermentTimer())
{
if (fermentTimerSession == null)
{
fermentTimerSession = new FermentTimerSession();
}
fermentTimerSession.updateLastWineMakingAction();
}
}
@Subscribe
public void onChatMessage(ChatMessage event)
{
@@ -134,22 +160,11 @@ public class CookingPlugin extends Plugin
final String message = event.getMessage();
if (message.startsWith(WINE_MESSAGE) && config.fermentTimer())
{
if (fermentTimerSession == null)
{
fermentTimerSession = new FermentTimerSession();
}
fermentTimerSession.updateLastWineMakingAction();
}
if (message.startsWith("You successfully cook")
|| message.startsWith("You successfully bake")
|| message.startsWith("You manage to cook")
|| message.startsWith("You roast a")
|| message.startsWith("You cook")
|| message.startsWith(WINE_MESSAGE))
|| message.startsWith("You cook"))
{
if (cookingSession == null)
{