Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

rl upstream #469

Merged
merged 38 commits into from
Oct 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
0055e2a
timetracking: support huasca
abextm Sep 25, 2024
3525df0
item identification: add prayer regen and goading potions
Adam- Sep 26, 2024
4a230e9
timers: add goading and prayer regeneration
Adam- Sep 26, 2024
f0c9e12
loottracker: add potion packs
Adam- Sep 26, 2024
bb1ac18
bank tags: fix tabs container overlapping potion store
Adam- Sep 26, 2024
475ca15
bosstimer: properly upper case AMOXLIATL
YvesW Sep 26, 2024
a1a431c
agility: add colossal wyrm courses
Macweese Sep 25, 2024
f814d70
loot tracker: fix price type config changes not immediately reflecting
tylerwgrass Sep 24, 2024
174a893
skill calc: Add Huasca herb, Prayer regen and Goading potions
evilgenious448 Sep 26, 2024
664a573
skill calc: Add Mastering Mixology potions
evilgenious448 Sep 26, 2024
ff647ef
timers buffs: remove superfluous time and unit values
YvesW Sep 27, 2024
963f126
timers buffs: set removeOnDeath to false for var timers
YvesW Sep 27, 2024
88561d1
object indicators: reload points on profile change
Adam- Sep 27, 2024
8c4b95b
loot tracker: add Muddy Chest world metadata
Skretzo Sep 27, 2024
40d4730
clues: add varlamore part two steps
Felanbird Sep 25, 2024
31acfc6
loot tracker: hueycoatl
LlemonDuck Sep 27, 2024
51aa8d9
timetracking: add aldarin farming patch
Macweese Sep 27, 2024
631aabd
agility: add aldarin shortcuts
Macweese Sep 27, 2024
ba1d2c3
skill calculator: add colossal wyrm courses
Macweese Sep 25, 2024
5804084
crowdsourcing: track worn max cape instead of inventory one
samszotkowski Sep 29, 2024
05a3473
CoordinateClue: Fix Ortus Farm and Proudspire enemies
Zoinkwiz Sep 30, 2024
e527c1d
CoordinateClue: Add Isle of Souls enemy test
Nightfirecat Sep 30, 2024
72aba5c
ground items: replace "Only show own items" config with new "Ownershi…
Adam- Sep 30, 2024
f450cc3
HotColdLocation: Fix entrance to the Arceuus church spot
Nightfirecat Oct 1, 2024
bf71199
attack styles: add warning notification
Adam- Oct 1, 2024
2e2e83d
motherlode: remove dead config options
Alexsuperfly Oct 1, 2024
ede6587
Update Item IDs to 2024-10-02-rev225
Oct 2, 2024
166b824
Update Item variations to 2024-10-02-rev225
Oct 2, 2024
14c309e
Update Object IDs to 2024-10-02-rev225
Oct 2, 2024
c3834a2
devtools: rewrite zone border to not use worldpoint
Adam- Oct 2, 2024
219a0de
devtools: add tile flag devtool
Adam- Oct 2, 2024
8603656
roof removal: use dedicated event for building roofs
Adam- Oct 2, 2024
8dbd6a5
roof removal: (mixins) use dedicated event for building roofs
melxin Oct 2, 2024
33acc22
api: add float projection
Adam- Oct 2, 2024
c413f2e
api: add float projection
melxin Oct 2, 2024
0db7855
api: add DrawCallbacks zbuf api
melxin Oct 2, 2024
766d27f
wiki: avoid lookup on null items
Adam- Oct 3, 2024
aa4fc20
api: add WorldEntity#getWorldView
Adam- Oct 3, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions runelite-api/src/main/interfaces/interfaces.toml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,7 @@ scrollbar=14
search_button_background=42
deposit_inventory=44
deposit_equipment=46
potion_store=48
incinerator=49
incinerator_confirm=50
equipment_parent=74
Expand Down
2 changes: 2 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/AnimationID.java
Original file line number Diff line number Diff line change
Expand Up @@ -367,4 +367,6 @@ public final class AnimationID
public static final int GWENITH_WINDMILL_SPINNING = 6495;
public static final int LITHKREN_GENERATOR_SPINNING = 7898;
public static final int GIANTS_FOUNDRY_WATER_WHEEL_SPINNING = 9450;

public static final int HUEYCOATL_DEATH = 11679;
}
1 change: 1 addition & 0 deletions runelite-api/src/main/java/net/runelite/api/Constants.java
Original file line number Diff line number Diff line change
Expand Up @@ -88,6 +88,7 @@ public class Constants

public static final int TILE_FLAG_BRIDGE = 2;
public static final int TILE_FLAG_UNDER_ROOF = 4;
public static final int TILE_FLAG_VIS_BELOW = 8;

/**
* Flag for roof removal to remove the roofs above the player's current position.
Expand Down
33 changes: 33 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/FloatProjection.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
/*
* Copyright (c) 2024, Adam <[email protected]>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.runelite.api;

public interface FloatProjection extends Projection
{
/**
* Get the projection as a 4x4 matrix
*/
float[] getProjection();
}
4 changes: 2 additions & 2 deletions runelite-api/src/main/java/net/runelite/api/ItemID.java
Original file line number Diff line number Diff line change
Expand Up @@ -14291,8 +14291,8 @@ public final class ItemID
public static final int REAGENT_POUCH = 29996;
public static final int OPEN_REAGENT_POUCH = 29998;
public static final int POTION_STORAGE = 29999;
public static final int PREPOT_DEVICE = 30000;
public static final int PREPOT_DEVICE_DISASSEMBLED = 30002;
public static final int CHUGGING_BARREL = 30000;
public static final int CHUGGING_BARREL_DISASSEMBLED = 30002;
public static final int MOX_PASTE = 30005;
public static final int AGA_PASTE = 30007;
public static final int LYE_PASTE = 30009;
Expand Down
3 changes: 3 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/NullObjectID.java
Original file line number Diff line number Diff line change
Expand Up @@ -28808,5 +28808,8 @@ public final class NullObjectID
public static final int NULL_55399 = 55399;
public static final int NULL_55400 = 55400;
public static final int NULL_55401 = 55401;
public static final int NULL_55403 = 55403;
public static final int NULL_55404 = 55404;
public static final int NULL_55405 = 55405;
/* This file is automatically generated. Do not edit. */
}
8 changes: 6 additions & 2 deletions runelite-api/src/main/java/net/runelite/api/ObjectID.java
Original file line number Diff line number Diff line change
Expand Up @@ -26207,8 +26207,8 @@ public final class ObjectID
public static final int SKELETON_54679 = 54679;
public static final int SKELETON_54680 = 54680;
public static final int SKELETON_54681 = 54681;
public static final int ICEY_WATER = 54682;
public static final int ICEY_WATER_54683 = 54683;
public static final int ICY_WATER = 54682;
public static final int ICY_WATER_54683 = 54683;
public static final int GATE_54689 = 54689;
public static final int CAVE_54690 = 54690;
public static final int CAVE_54691 = 54691;
Expand Down Expand Up @@ -26578,5 +26578,9 @@ public final class ObjectID
public static final int HOUSE_ADVERTISEMENT_55352 = 55352;
public static final int PORTAL_55353 = 55353;
public static final int HOPPER_CONTROLS_55402 = 55402;
public static final int SHELVES_55406 = 55406;
public static final int SHELVES_55407 = 55407;
public static final int SHELVES_55408 = 55408;
public static final int SHELVES_55409 = 55409;
/* This file is automatically generated. Do not edit. */
}
4 changes: 3 additions & 1 deletion runelite-api/src/main/java/net/runelite/api/Scene.java
Original file line number Diff line number Diff line change
Expand Up @@ -137,7 +137,9 @@ public interface Scene extends Renderable
*/
void removeGroundObject(int plane, int x, int y);

void generateHouses();
void buildRoofs();

int[][][] getRoofs();

void setRoofRemovalMode(int flags);

Expand Down
20 changes: 20 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/Varbits.java
Original file line number Diff line number Diff line change
Expand Up @@ -939,6 +939,26 @@ public final class Varbits
*/
public static final int COLOSSEUM_DOOM = 9801;

public static final int BUFF_GOADING_POTION = 11294;

public static final int BUFF_PRAYER_REGENERATION = 11361;

/**
* The player's progress value for the colossal wyrm advanced basic course.
* <p>
* Max value = 6;
* </p>
*/
public static final int COLOSSAL_WYRM_COURSE_BASIC = 11292;

/**
* The player's progress value for the colossal wyrm advanced agility course.
* <p>
* Max value = 6;
* </p>
*/
public static final int COLOSSAL_WYRM_COURSE_ADVANCED = 11293;

/**
* See <a href="https://oldschool.runescape.wiki/w/File:Ernest_the_Chicken_-_Oil_can_map.png">Draynor manor basement</a>
*/
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,4 +26,5 @@

public interface WorldEntity
{
WorldView getWorldView();
}
7 changes: 7 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/WorldView.java
Original file line number Diff line number Diff line change
Expand Up @@ -202,4 +202,11 @@ Projectile createProjectile(int id, int plane, int startX, int startY, int start
* @see InstanceTemplates
*/
int[][][] getInstanceTemplateChunks();

/**
* Gets an array of map region IDs that are currently loaded.
*
* @return the map regions
*/
int[] getMapRegions();
}
41 changes: 41 additions & 0 deletions runelite-api/src/main/java/net/runelite/api/events/PreMapLoad.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
/*
* Copyright (c) 2024, Adam <[email protected]>
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
*
* 1. Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright notice,
* this list of conditions and the following disclaimer in the documentation
* and/or other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
package net.runelite.api.events;

import lombok.Value;
import net.runelite.api.Scene;
import net.runelite.api.WorldView;

/**
* This event is run from the maploader thread prior to the map load completing.
* Most client operations can't be done from this thread safely.
* You probably don't want to use this event.
*/
@Value
public class PreMapLoad
{
WorldView worldView;
Scene scene;
}
Original file line number Diff line number Diff line change
Expand Up @@ -24,36 +24,57 @@
*/
package net.runelite.api.hooks;

import java.util.Set;
import net.runelite.api.GameObject;
import net.runelite.api.Model;
import net.runelite.api.Projection;
import net.runelite.api.Renderable;
import net.runelite.api.Scene;
import net.runelite.api.SceneTileModel;
import net.runelite.api.SceneTilePaint;
import net.runelite.api.Texture;
import net.runelite.api.TileObject;
import net.runelite.api.WorldView;

public interface DrawCallbacks
{
/**
* GPU mode on.
*/
int GPU = 1;
int GPU = 0x1;
/**
* GPU hillskew support. Enables the {@link Model#getUnskewedModel()}
* API to get the unskewed model.
*/
int HILLSKEW = 2;
int HILLSKEW = 0x2;
/**
* Requests normals be computed for models. Enables the {@link Model#getVertexNormalsX()}
* {@link Model#getVertexNormalsY()} {@link Model#getVertexNormalsZ()} API.
*/
int NORMALS = 4;
int NORMALS = 0x4;
/**
* Disable vertex snapping for animations
*/
int NO_VERTEX_SNAPPING = 0x8;
/**
* Enable zbuf renderer.
*/
int ZBUF = 0x10;

void draw(Projection projection, Scene scene, Renderable renderable, int orientation, int x, int y, int z, long hash);
int PASS_OPAQUE = 0;
int PASS_ALPHA = 1;

void drawScenePaint(Scene scene, SceneTilePaint paint, int plane, int tileX, int tileZ);
default void draw(Projection projection, Scene scene, Renderable renderable, int orientation, int x, int y, int z, long hash)
{
}

void drawSceneTileModel(Scene scene, SceneTileModel model, int tileX, int tileZ);
default void drawScenePaint(Scene scene, SceneTilePaint paint, int plane, int tileX, int tileZ)
{
}

default void drawSceneTileModel(Scene scene, SceneTileModel model, int tileX, int tileZ)
{
}

/**
* Called when a frame should be drawn.
Expand All @@ -64,23 +85,65 @@ public interface DrawCallbacks

/**
* Called before the scene is drawn
* @param cameraX
* @param cameraY
* @param cameraZ
* @param cameraPitch
* @param cameraYaw
* @param plane
*/
void drawScene(int cameraX, int cameraY, int cameraZ, int cameraPitch, int cameraYaw, int plane);
default void drawScene(int cameraX, int cameraY, int cameraZ, int cameraPitch, int cameraYaw, int plane)
{
}

/**
* Called after the scene has been drawn
*/
void postDrawScene();
default void postDrawScene()
{
}

void animate(Texture texture, int diff);
default void animate(Texture texture, int diff)
{
}

void loadScene(Scene scene);
default void loadScene(Scene scene)
{
}

void swapScene(Scene scene);
}

default boolean tileInFrustum(Scene scene, int pitchSin, int pitchCos, int yawSin, int yawCos, int cameraX, int cameraY, int cameraZ, int plane, int msx, int msy)
{
return true;
}

default void loadScene(WorldView worldView, Scene scene)
{
}

default void despawnWorldView(WorldView worldView)
{
}

default void prepareSceneDraw(
Scene scene,
float cameraX, float cameraY, float cameraZ, float cameraPitch, float cameraYaw,
int minLevel, int level, int maxLevel, Set<Integer> hideRoofIds)
{
}

default void drawPass(Projection projection, Scene scene, int pass)
{
}

default void drawZone(Projection projection, Scene scene, int pass, int zx, int zz)
{
}

default void drawDynamic(Scene scene, TileObject tileObject, Renderable r, Model m, int orient, int x, int y, int z)
{
}

default void drawTemp(Scene scene, GameObject gameObject, Model m)
{
}

default void invalidateZone(Scene scene, int zx, int zz)
{
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,9 @@ public enum AgilityShortcut
// Nature Grotto bridge
BRIDGE_3522,
// Rocky Ledges Viyeldi cave
ROCKY_LEDGE, ROCKY_LEDGE_2960, ROCKY_LEDGE_2961, ROCKS_2962, ROCKS_2963, ROCKS_2964),
ROCKY_LEDGE, ROCKY_LEDGE_2960, ROCKY_LEDGE_2961, ROCKS_2962, ROCKS_2963, ROCKS_2964,
// Villa Lucens backstage theatre
LOOSE_ROCKS_54720, LOOSE_ROCKS_54721, LOOSE_ROCKS_54722),
WEISS_BROKEN_FENCE(1, "Shortcut", null, /* base id */ NullObjectID.NULL_46815)
{
@Override
Expand Down Expand Up @@ -192,6 +194,7 @@ public boolean matches(Client client, TileObject object)
ARCEUUS_ESSENCE_MINE_EAST_SCRAMBLE(52, "Rock Climb", new WorldPoint(1770, 3851, 0), ROCKS_27987, ROCKS_27988),
KARAMJA_VOLCANO_GRAPPLE_NORTH(53, "Grapple Rock", new WorldPoint(2873, 3143, 0), STRONG_TREE_17074),
KARAMJA_VOLCANO_GRAPPLE_SOUTH(53, "Grapple Rock", new WorldPoint(2874, 3128, 0), STRONG_TREE_17074),
ALDARIN_ROCKS(54, "Rocks", new WorldPoint(1340, 2916, 0), ROCKS_54775, ROCKS_54776),
MOTHERLODE_MINE_WALL_EAST(54, "Wall", new WorldPoint(3124, 9703, 0), DARK_TUNNEL_10047),
MOTHERLODE_MINE_WALL_WEST(54, "Wall", new WorldPoint(3118, 9702, 0), DARK_TUNNEL_10047),
MISCELLANIA_DOCK_STEPPING_STONE(55, "Stepping Stone", new WorldPoint(2572, 3862, 0), STEPPING_STONE_11768),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -68,7 +68,8 @@
public class LootManager
{
private static final Map<Integer, Integer> NPC_DEATH_ANIMATIONS = ImmutableMap.of(
NpcID.CAVE_KRAKEN, AnimationID.CAVE_KRAKEN_DEATH
NpcID.CAVE_KRAKEN, AnimationID.CAVE_KRAKEN_DEATH,
NpcID.THE_HUEYCOATL_14012, AnimationID.HUEYCOATL_DEATH
);

private final EventBus eventBus;
Expand Down Expand Up @@ -438,6 +439,11 @@ else if (playerLocationLastTick.getY() > y)
final WorldArea bossArea = npc.getWorldArea();
return List.of(new WorldArea(bossArea.getX() - 1, bossArea.getY() - 1, 3, 3, bossArea.getPlane()));
}
case NpcID.THE_HUEYCOATL_14012:
{
final WorldArea bossArea = npc.getWorldArea();
return List.of(new WorldArea(bossArea.getX() - 2, bossArea.getY() - 10, 10, 10, bossArea.getPlane()));
}
}

return Collections.singletonList(npc.getWorldArea());
Expand Down
Loading
Loading