@@ -116,6 +116,10 @@ public enum ChatMessageType
|
|||||||
* A message received when somebody sends a trade offer.
|
* A message received when somebody sends a trade offer.
|
||||||
*/
|
*/
|
||||||
TRADE(101),
|
TRADE(101),
|
||||||
|
/**
|
||||||
|
* A message received when completing a trade or a duel
|
||||||
|
*/
|
||||||
|
TRANSACTION_COMPLETE(102),
|
||||||
/**
|
/**
|
||||||
* A message received when somebody sends a duel offer.
|
* A message received when somebody sends a duel offer.
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -154,11 +154,22 @@ public interface ScreenshotConfig extends Config
|
|||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ConfigItem(
|
||||||
|
keyName = "duels",
|
||||||
|
name = "Screenshot Duels",
|
||||||
|
description = "Configures whether or not screenshots are automatically taken of the duel end screen.",
|
||||||
|
position = 11
|
||||||
|
)
|
||||||
|
default boolean screenshotDuels()
|
||||||
|
{
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
@ConfigItem(
|
@ConfigItem(
|
||||||
keyName = "valuableDrop",
|
keyName = "valuableDrop",
|
||||||
name = "Screenshot Valuable drops",
|
name = "Screenshot Valuable drops",
|
||||||
description = "Configures whether or not screenshots are automatically taken when you receive a valuable drop.",
|
description = "Configures whether or not screenshots are automatically taken when you receive a valuable drop.",
|
||||||
position = 11
|
position = 12
|
||||||
)
|
)
|
||||||
default boolean screenshotValuableDrop()
|
default boolean screenshotValuableDrop()
|
||||||
{
|
{
|
||||||
@@ -169,7 +180,7 @@ public interface ScreenshotConfig extends Config
|
|||||||
keyName = "untradeableDrop",
|
keyName = "untradeableDrop",
|
||||||
name = "Screenshot Untradeable drops",
|
name = "Screenshot Untradeable drops",
|
||||||
description = "Configures whether or not screenshots are automatically taken when you receive an untradeable drop.",
|
description = "Configures whether or not screenshots are automatically taken when you receive an untradeable drop.",
|
||||||
position = 12
|
position = 13
|
||||||
)
|
)
|
||||||
default boolean screenshotUntradeableDrop()
|
default boolean screenshotUntradeableDrop()
|
||||||
{
|
{
|
||||||
@@ -180,7 +191,7 @@ public interface ScreenshotConfig extends Config
|
|||||||
keyName = "hotkey",
|
keyName = "hotkey",
|
||||||
name = "Screenshot hotkey",
|
name = "Screenshot hotkey",
|
||||||
description = "When you press this key a screenshot will be taken",
|
description = "When you press this key a screenshot will be taken",
|
||||||
position = 13
|
position = 14
|
||||||
)
|
)
|
||||||
default Keybind hotkey()
|
default Keybind hotkey()
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -123,6 +123,7 @@ public class ScreenshotPlugin extends Plugin
|
|||||||
private static final Pattern BOSSKILL_MESSAGE_PATTERN = Pattern.compile("Your (.+) kill count is: <col=ff0000>(\\d+)</col>.");
|
private static final Pattern BOSSKILL_MESSAGE_PATTERN = Pattern.compile("Your (.+) kill count is: <col=ff0000>(\\d+)</col>.");
|
||||||
private static final Pattern VALUABLE_DROP_PATTERN = Pattern.compile(".*Valuable drop: ([^<>]+)(?:</col>)?");
|
private static final Pattern VALUABLE_DROP_PATTERN = Pattern.compile(".*Valuable drop: ([^<>]+)(?:</col>)?");
|
||||||
private static final Pattern UNTRADEABLE_DROP_PATTERN = Pattern.compile(".*Untradeable drop: ([^<>]+)(?:</col>)?");
|
private static final Pattern UNTRADEABLE_DROP_PATTERN = Pattern.compile(".*Untradeable drop: ([^<>]+)(?:</col>)?");
|
||||||
|
private static final Pattern DUEL_END_PATTERN = Pattern.compile("You have now (won|lost) ([0-9]+) duels?\\.");
|
||||||
private static final ImmutableList<String> PET_MESSAGES = ImmutableList.of("You have a funny feeling like you're being followed",
|
private static final ImmutableList<String> PET_MESSAGES = ImmutableList.of("You have a funny feeling like you're being followed",
|
||||||
"You feel something weird sneaking into your backpack",
|
"You feel something weird sneaking into your backpack",
|
||||||
"You have a funny feeling like you would have been followed");
|
"You have a funny feeling like you would have been followed");
|
||||||
@@ -299,7 +300,7 @@ public class ScreenshotPlugin extends Plugin
|
|||||||
@Subscribe
|
@Subscribe
|
||||||
public void onChatMessage(ChatMessage event)
|
public void onChatMessage(ChatMessage event)
|
||||||
{
|
{
|
||||||
if (event.getType() != ChatMessageType.SERVER && event.getType() != ChatMessageType.FILTERED)
|
if (event.getType() != ChatMessageType.SERVER && event.getType() != ChatMessageType.FILTERED && event.getType() != ChatMessageType.TRANSACTION_COMPLETE)
|
||||||
{
|
{
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@@ -392,6 +393,18 @@ public class ScreenshotPlugin extends Plugin
|
|||||||
takeScreenshot(fileName);
|
takeScreenshot(fileName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (config.screenshotDuels())
|
||||||
|
{
|
||||||
|
Matcher m = DUEL_END_PATTERN.matcher(chatMessage);
|
||||||
|
if (m.find())
|
||||||
|
{
|
||||||
|
String result = m.group(1);
|
||||||
|
String count = m.group(2);
|
||||||
|
String fileName = "Duel " + result + " (" + count + ")";
|
||||||
|
takeScreenshot(fileName);
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Subscribe
|
@Subscribe
|
||||||
|
|||||||
Reference in New Issue
Block a user