Skip to content

Commit 055cb06

Browse files
authored
Merge pull request #1797 from chsami/development
Merge development into main after successful CI.
2 parents 155b5f1 + 7dd81fa commit 055cb06

28 files changed

Lines changed: 579 additions & 33 deletions

File tree

cache/src/main/java/net/runelite/cache/WorldMapManager.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ public void load() throws IOException
6262
Index index = store.getIndex(IndexType.WORLDMAP);
6363
Archive compositeMapArchive = index.findArchiveByName("compositemap");
6464
WorldMapCompositeLoader worldMapCompositeLoader = new WorldMapCompositeLoader();
65+
worldMapCompositeLoader.configureForRevision(index.getRevision());
6566

6667
ArchiveFiles compositeMapFiles = compositeMapArchive.getFiles(storage.loadArchive(compositeMapArchive));
6768
for (FSFile compositeFile : compositeMapFiles.getFiles())

cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapCompositeLoader.java

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,9 +31,17 @@
3131

3232
public class WorldMapCompositeLoader
3333
{
34+
private boolean rev238 = true;
35+
36+
public WorldMapCompositeLoader configureForRevision(int rev)
37+
{
38+
rev238 = rev > 425;
39+
return this;
40+
}
41+
3442
public WorldMapCompositeDefinition load(byte[] buffer)
3543
{
36-
WorldMapDataLoader worldMapDataLoader = new WorldMapDataLoader();
44+
WorldMapDataLoader worldMapDataLoader = new WorldMapDataLoader(rev238);
3745
WorldMapElementLoader worldMapElementLoader = new WorldMapElementLoader();
3846

3947
WorldMapCompositeDefinition worldMapCompositeDefinition = new WorldMapCompositeDefinition();

cache/src/main/java/net/runelite/cache/definitions/loaders/WorldMapDataLoader.java

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,18 @@
3030

3131
public class WorldMapDataLoader
3232
{
33+
private final boolean rev238;
34+
35+
public WorldMapDataLoader()
36+
{
37+
this(true);
38+
}
39+
40+
public WorldMapDataLoader(boolean rev238)
41+
{
42+
this.rev238 = rev238;
43+
}
44+
3345
public MapSquareDefinition loadMapSquare(InputStream in)
3446
{
3547
int worldMapDataType = in.readUnsignedByte();
@@ -46,8 +58,11 @@ public MapSquareDefinition loadMapSquare(InputStream in)
4658
mapSquareDefinition.sourceSquareZ = in.readUnsignedShort();
4759
mapSquareDefinition.displaySquareX = in.readUnsignedShort();
4860
mapSquareDefinition.displaySquareZ = in.readUnsignedShort();
49-
mapSquareDefinition.groupId = in.readBigSmart2();
50-
mapSquareDefinition.fileId = in.readBigSmart2();
61+
if (!rev238)
62+
{
63+
mapSquareDefinition.groupId = in.readBigSmart2();
64+
mapSquareDefinition.fileId = in.readBigSmart2();
65+
}
5166

5267
return mapSquareDefinition;
5368
}
@@ -72,8 +87,11 @@ public ZoneDefinition loadZone(InputStream in)
7287
zoneDefinition.displaySquareZ = in.readUnsignedShort();
7388
zoneDefinition.displayZoneX = in.readUnsignedByte();
7489
zoneDefinition.displayZoneZ = in.readUnsignedByte();
75-
zoneDefinition.groupId = in.readBigSmart2();
76-
zoneDefinition.fileId = in.readBigSmart2();
90+
if (!rev238)
91+
{
92+
zoneDefinition.groupId = in.readBigSmart2();
93+
zoneDefinition.fileId = in.readBigSmart2();
94+
}
7795

7896
return zoneDefinition;
7997
}

gradle.properties

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,10 @@ org.gradle.caching=false
2929

3030
project.build.group=net.runelite
3131
project.build.version=1.12.28
32+
runelite.injected-client.version=1.12.28
3233

3334
glslang.path=
34-
microbot.version=2.6.5
35+
microbot.version=2.6.6
3536
microbot.commit.sha=nogit
3637
microbot.repo.url=http://138.201.81.246:8081/repository/microbot-snapshot/
3738
microbot.repo.username=

runelite-client/build.gradle.kts

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,8 @@ fun loadRootProperty(name: String): String? {
3838

3939
val microbotVersionProvider = providers.gradleProperty("microbot.version")
4040
.orElse(loadRootProperty("microbot.version") ?: "0.0.0")
41+
val injectedClientVersionProvider = providers.gradleProperty("runelite.injected-client.version")
42+
.orElse(loadRootProperty("runelite.injected-client.version") ?: project.version.toString())
4143

4244
plugins {
4345
java
@@ -326,7 +328,7 @@ java {
326328
dependencies {
327329
api("net.runelite:runelite-api:${project.version}")
328330
implementation(project(":jshell"))
329-
runtimeOnly("net.runelite:injected-client:${project.version}")
331+
runtimeOnly("net.runelite:injected-client:${injectedClientVersionProvider.get()}")
330332

331333
api(libs.rl.http.api)
332334
api(libs.rl.discord)

runelite-client/src/main/java/net/runelite/client/plugins/discord/DiscordGameEventType.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -623,6 +623,7 @@ public static DiscordGameEventType fromSkill(final Skill skill)
623623
case RUNECRAFT: return TRAINING_RUNECRAFT;
624624
case HUNTER: return TRAINING_HUNTER;
625625
case CONSTRUCTION: return TRAINING_CONSTRUCTION;
626+
case SAILING: return TRAINING_SAILING;
626627
default: return null;
627628
}
628629
}

runelite-client/src/main/java/net/runelite/client/plugins/entityhider/EntityHiderPlugin.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,10 @@ public class EntityHiderPlugin extends Plugin
6060
private static final Set<Integer> THRALL_IDS = ImmutableSet.of(
6161
NpcID.ARCEUUS_THRALL_GHOST_LESSER, NpcID.ARCEUUS_THRALL_SKELETON_LESSER, NpcID.ARCEUUS_THRALL_ZOMBIE_LESSER, // Lesser Thrall (ghost, skeleton, zombie)
6262
NpcID.ARCEUUS_THRALL_GHOST_SUPERIOR, NpcID.ARCEUUS_THRALL_SKELETON_SUPERIOR, NpcID.ARCEUUS_THRALL_ZOMBIE_SUPERIOR, // Superior Thrall (ghost, skeleton, zombie)
63-
NpcID.ARCEUUS_THRALL_GHOST_GREATER, NpcID.ARCEUUS_THRALL_SKELETON_GREATER, NpcID.ARCEUUS_THRALL_ZOMBIE_GREATER // Greater Thrall (ghost, skeleton, zombie)
63+
NpcID.ARCEUUS_THRALL_GHOST_GREATER, NpcID.ARCEUUS_THRALL_SKELETON_GREATER, NpcID.ARCEUUS_THRALL_ZOMBIE_GREATER, // Greater Thrall (ghost, skeleton, zombie)
64+
NpcID.THRALL_IMP_MAGIC_LESSER, NpcID.THRALL_IMP_RANGED_LESSER, NpcID.THRALL_IMP_MELEE_LESSER, // Leagues 6 Cosmetic Override for lesser thralls
65+
NpcID.THRALL_IMP_MAGIC_SUPERIOR, NpcID.THRALL_IMP_RANGED_SUPERIOR, NpcID.THRALL_IMP_MELEE_SUPERIOR, // Leagues 6 Cosmetic Override for superior thralls
66+
NpcID.THRALL_IMP_MAGIC_GREATER, NpcID.THRALL_IMP_RANGED_GREATER, NpcID.THRALL_IMP_MELEE_GREATER // Leagues 6 Cosmetic Override for greater thralls
6467
);
6568
private static final Set<Integer> RANDOM_EVENT_NPC_IDS = ImmutableSet.of(
6669
NpcID.MACRO_BEEKEEPER_INVITATION,

runelite-client/src/main/java/net/runelite/client/plugins/poh/PohIcons.java

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,16 @@ public enum PohIcons
6767
CIVITASILLAFORTIS("civitasillafortis",
6868
ObjectID.POH_PORTAL_TEAK_FORTIS, ObjectID.POH_PORTAL_MAG_FORTIS, ObjectID.POH_PORTAL_MARBLE_FORTIS, ObjectID.POH_PORTAL_LEAGUE_5_FORTIS
6969
),
70+
TROLLHEIM("trollheim", ObjectID.POH_PORTAL_TEAK_TROLLHEIM, ObjectID.POH_PORTAL_MAG_TROLLHEIM, ObjectID.POH_PORTAL_MARBLE_TROLLHEIM, ObjectID.POH_PORTAL_LEAGUE_5_TROLLHEIM),
71+
PADDEWWA("paddewwa", ObjectID.POH_PORTAL_TEAK_PADDEWWA, ObjectID.POH_PORTAL_MAG_PADDEWWA, ObjectID.POH_PORTAL_MARBLE_PADDEWWA, ObjectID.POH_PORTAL_LEAGUE_5_PADDEWWA),
72+
LASSAR("lassar", ObjectID.POH_PORTAL_TEAK_LASSAR, ObjectID.POH_PORTAL_MAG_LASSAR, ObjectID.POH_PORTAL_MARBLE_LASSAR, ObjectID.POH_PORTAL_LEAGUE_5_LASSAR),
73+
DAREEYAK("dareeyak", ObjectID.POH_PORTAL_TEAK_DAREEYAK, ObjectID.POH_PORTAL_MAG_DAREEYAK, ObjectID.POH_PORTAL_MARBLE_DAREEYAK, ObjectID.POH_PORTAL_LEAGUE_5_DAREEYAK),
74+
OURANIA("ourania", ObjectID.POH_PORTAL_TEAK_OURANIA, ObjectID.POH_PORTAL_MAG_OURANIA, ObjectID.POH_PORTAL_MARBLE_OURANIA, ObjectID.POH_PORTAL_LEAGUE_5_OURANIA),
75+
BARBARIAN("barbarian", ObjectID.POH_PORTAL_TEAK_BARBARIAN, ObjectID.POH_PORTAL_MAG_BARBARIAN, ObjectID.POH_PORTAL_MARBLE_BARBARIAN, ObjectID.POH_PORTAL_LEAGUE_5_BARBARIAN),
76+
KHAZARD("khazard", ObjectID.POH_PORTAL_TEAK_KHAZARD, ObjectID.POH_PORTAL_MAG_KHAZARD, ObjectID.POH_PORTAL_MARBLE_KHAZARD, ObjectID.POH_PORTAL_LEAGUE_5_KHAZARD),
77+
ICEPLATEAU("iceplateau", ObjectID.POH_PORTAL_TEAK_ICEPLATEAU, ObjectID.POH_PORTAL_MAG_ICEPLATEAU, ObjectID.POH_PORTAL_MARBLE_ICEPLATEAU, ObjectID.POH_PORTAL_LEAGUE_5_ICEPLATEAU),
78+
RESPAWN("respawn", ObjectID.POH_PORTAL_TEAK_RESPAWN, ObjectID.POH_PORTAL_MAG_RESPAWN, ObjectID.POH_PORTAL_MARBLE_RESPAWN, ObjectID.POH_PORTAL_LEAGUE_5_RESPAWN),
79+
BOAT("boat", ObjectID.POH_PORTAL_TEAK_BOAT, ObjectID.POH_PORTAL_MAG_BOAT, ObjectID.POH_PORTAL_MARBLE_BOAT, ObjectID.POH_PORTAL_LEAGUE_5_BOAT),
7080
ALTAR("altar",
7181
ObjectID.POH_ALTAR_SARADOMIN_1, ObjectID.POH_ALTAR_ZAMORAK_1, ObjectID.POH_ALTAR_GUTHIX_1, ObjectID.POH_ALTAR_SARADOMIN_2, ObjectID.POH_ALTAR_ZAMORAK_2, ObjectID.POH_ALTAR_GUTHIX_2, ObjectID.POH_ALTAR_SARADOMIN_3, ObjectID.POH_ALTAR_ZAMORAK_3,
7282
ObjectID.POH_ALTAR_GUTHIX_3, ObjectID.POH_ALTAR_SARADOMIN_4, ObjectID.POH_ALTAR_ZAMORAK_4, ObjectID.POH_ALTAR_GUTHIX_4, ObjectID.POH_ALTAR_SARADOMIN_5, ObjectID.POH_ALTAR_ZAMORAK_5, ObjectID.POH_ALTAR_GUTHIX_5, ObjectID.POH_ALTAR_SARADOMIN_6,

runelite-client/src/main/java/net/runelite/client/plugins/poh/PohOverlay.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,7 +47,8 @@ public class PohOverlay extends Overlay
4747
PohIcons.TROLLSTRONGHOLD, PohIcons.CARRALLANGER, PohIcons.CATHERBY, PohIcons.WEISS, PohIcons.GHORROCK,
4848
PohIcons.APEATOLLDUNGEON, PohIcons.BARROWS, PohIcons.BATTLEFRONT, PohIcons.CEMETERY, PohIcons.DRAYNORMANOR,
4949
PohIcons.FENKENSTRAINSCASTLE, PohIcons.HARMONYISLAND, PohIcons.ARCEUUSLIBRARY, PohIcons.MINDALTAR, PohIcons.SALVEGRAVEYARD,
50-
PohIcons.WESTARDOUGNE, PohIcons.CIVITASILLAFORTIS,
50+
PohIcons.WESTARDOUGNE, PohIcons.CIVITASILLAFORTIS, PohIcons.TROLLHEIM, PohIcons.PADDEWWA, PohIcons.LASSAR, PohIcons.DAREEYAK,
51+
PohIcons.OURANIA, PohIcons.BARBARIAN, PohIcons.KHAZARD, PohIcons.ICEPLATEAU, PohIcons.RESPAWN, PohIcons.BOAT
5152
};
5253

5354
private static final int MAX_DISTANCE = 2350;

runelite-client/src/main/java/net/runelite/client/ui/overlay/Overlay.java

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,15 @@ public abstract class Overlay implements LayoutableRenderableEntity
5656
@Nullable
5757
private final Plugin plugin;
5858
private Point preferredLocation;
59+
@Getter(AccessLevel.PACKAGE)
60+
@Setter(AccessLevel.PACKAGE)
61+
private OverlayOrigin origin = OverlayOrigin.AUTO;
62+
@Getter(AccessLevel.PACKAGE)
63+
@Setter(AccessLevel.PACKAGE)
64+
private OverlayOriginX originX = OverlayOriginX.LEFT;
65+
@Getter(AccessLevel.PACKAGE)
66+
@Setter(AccessLevel.PACKAGE)
67+
private OverlayOriginY originY = OverlayOriginY.TOP;
5968
private Dimension preferredSize;
6069
private OverlayPosition preferredPosition;
6170
private Rectangle bounds = new Rectangle();

0 commit comments

Comments
 (0)