Merge pull request #6881 from Nightfirecat/add-dmmt-worldtypes

Add DMMT world types, handle them in plugins, update SDMM teleblock timers
This commit is contained in:
Adam
2018-12-09 12:19:43 -05:00
committed by GitHub
9 changed files with 32 additions and 11 deletions

View File

@@ -35,7 +35,8 @@ public enum HiscoreEndpoint
HARDCORE_IRONMAN("Hardcore Ironman", "https://services.runescape.com/m=hiscore_oldschool_hardcore_ironman/index_lite.ws"),
ULTIMATE_IRONMAN("Ultimate Ironman", "https://services.runescape.com/m=hiscore_oldschool_ultimate/index_lite.ws"),
DEADMAN("Deadman", "https://services.runescape.com/m=hiscore_oldschool_deadman/index_lite.ws"),
SEASONAL_DEADMAN("Seasonal Deadman", "https://services.runescape.com/m=hiscore_oldschool_seasonal/index_lite.ws");
SEASONAL_DEADMAN("Seasonal Deadman", "https://services.runescape.com/m=hiscore_oldschool_seasonal/index_lite.ws"),
DEADMAN_TOURNAMENT("Deadman Tournament", "https://services.runescape.com/m=hiscore_oldschool_tournament/index_lite.ws");
private final String name;
private final HttpUrl hiscoreURL;

View File

@@ -34,5 +34,6 @@ public enum WorldType
LAST_MAN_STANDING,
TOURNAMENT,
DEADMAN,
SEASONAL_DEADMAN
SEASONAL_DEADMAN,
DEADMAN_TOURNAMENT
}

View File

@@ -35,6 +35,7 @@ enum ServiceWorldType
PVP_HIGH_RISK(WorldType.PVP_HIGH_RISK, 1 << 10),
LAST_MAN_STANDING(WorldType.LAST_MAN_STANDING, 1 << 14),
TOURNAMENT(WorldType.TOURNAMENT, 1 << 25),
DEADMAN_TOURNAMENT(WorldType.DEADMAN_TOURNAMENT, 1 << 26),
DEADMAN(WorldType.DEADMAN, 1 << 29),
SEASONAL_DEADMAN(WorldType.SEASONAL_DEADMAN, 1 << 30);

View File

@@ -60,6 +60,10 @@ public enum WorldType
* Tournament world type.
*/
TOURNAMENT(1 << 25),
/**
* Deadman Tournament world type.
*/
DEADMAN_TOURNAMENT(1 << 26),
/**
* Deadman world type.
*/
@@ -76,8 +80,9 @@ public enum WorldType
this.mask = mask;
}
private static EnumSet<WorldType> PVP_WORLD_TYPES = EnumSet.of(
private static final EnumSet<WorldType> PVP_WORLD_TYPES = EnumSet.of(
DEADMAN,
DEADMAN_TOURNAMENT,
PVP,
PVP_HIGH_RISK,
SEASONAL_DEADMAN

View File

@@ -108,8 +108,12 @@ public class OpponentInfoPlugin extends Plugin
return;
}
EnumSet<WorldType> worldType = client.getWorldType();
if (worldType.contains(WorldType.SEASONAL_DEADMAN))
final EnumSet<WorldType> worldType = client.getWorldType();
if (worldType.contains(WorldType.DEADMAN_TOURNAMENT))
{
hiscoreEndpoint = HiscoreEndpoint.DEADMAN_TOURNAMENT;
}
else if (worldType.contains(WorldType.SEASONAL_DEADMAN))
{
hiscoreEndpoint = HiscoreEndpoint.SEASONAL_DEADMAN;
}

View File

@@ -555,7 +555,8 @@ public class ScreenshotPlugin extends Plugin
final EnumSet<WorldType> worldTypes = client.getWorldType();
final boolean dmm = worldTypes.contains(WorldType.DEADMAN);
final boolean sdmm = worldTypes.contains(WorldType.SEASONAL_DEADMAN);
final boolean isDmmWorld = dmm || sdmm;
final boolean dmmt = worldTypes.contains(WorldType.DEADMAN_TOURNAMENT);
final boolean isDmmWorld = dmm || sdmm || dmmt;
String playerDir = client.getLocalPlayer().getName();
if (isDmmWorld)

View File

@@ -448,7 +448,9 @@ public class TimersPlugin extends Plugin
if (config.showTeleblock() && event.getMessage().equals(HALF_TELEBLOCK_MESSAGE))
{
if (client.getWorldType().contains(WorldType.DEADMAN))
if (client.getWorldType().contains(WorldType.DEADMAN)
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN)
&& !client.getWorldType().contains(WorldType.DEADMAN_TOURNAMENT))
{
createGameTimer(DMM_FULLTB);
}
@@ -673,7 +675,8 @@ public class TimersPlugin extends Plugin
if (actor.getGraphic() == BIND.getGraphicId())
{
if (client.isPrayerActive(Prayer.PROTECT_FROM_MAGIC)
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN))
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN)
&& !client.getWorldType().contains(WorldType.DEADMAN_TOURNAMENT))
{
createGameTimer(HALFBIND);
}
@@ -686,7 +689,8 @@ public class TimersPlugin extends Plugin
if (actor.getGraphic() == SNARE.getGraphicId())
{
if (client.isPrayerActive(Prayer.PROTECT_FROM_MAGIC)
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN))
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN)
&& !client.getWorldType().contains(WorldType.DEADMAN_TOURNAMENT))
{
createGameTimer(HALFSNARE);
}
@@ -699,7 +703,8 @@ public class TimersPlugin extends Plugin
if (actor.getGraphic() == ENTANGLE.getGraphicId())
{
if (client.isPrayerActive(Prayer.PROTECT_FROM_MAGIC)
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN))
&& !client.getWorldType().contains(WorldType.SEASONAL_DEADMAN)
&& !client.getWorldType().contains(WorldType.DEADMAN_TOURNAMENT))
{
createGameTimer(HALFENTANGLE);
}

View File

@@ -31,7 +31,8 @@ enum XpWorldType
NORMAL,
TOURNEY,
DMM,
SDMM;
SDMM,
DMMT;
static XpWorldType of(WorldType type)
{
@@ -43,6 +44,8 @@ enum XpWorldType
return DMM;
case SEASONAL_DEADMAN:
return SDMM;
case DEADMAN_TOURNAMENT:
return DMMT;
default:
return NORMAL;
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.9 KiB