-
Posts
390 -
Joined
-
Last visited
-
Days Won
1 -
Feedback
100%
jca last won the day on November 30 2018
jca had the most liked content!
Profile Information
-
Gender
Male
-
Location:
England
-
Interests
Goldfarming
Recent Profile Visitors
2150 profile views
jca's Achievements
Black Poster (5/10)
61
Reputation
-
Yes
-
Never use the same IP with your mules.
-
FYI it was breaking because you're calling getInventory() before the inventory is available. Most API functions should be saved for your onLoop() as they require the game to be loaded / an account logged in to work correctly.
-
Thanks! Maybe, maybe not. It probably helps. Botting times were random, sometimes 8-12 hours, sometimes less than 5. But I was doing other skills in between, mainly farming runs. I’ve also achieved 99 woodcutting and cooking with similar script.
-
How to recheck the state of an RS2Object? (check if rock has been mined)
jca replied to sombotdude's topic in Scripting Help
Look at using the stored rocks position and writing a condition that finds the same rock on that position and checks if it doesn’t have ore, rather than checking the referenced rock. private boolean checkRockHasOreAtPosition(Position p){ RS2Object rock = getObjects().getAll() .stream() .filter(obj -> obj.getPosition().equals(p) && Rock.CLAY.hasOre(obj)) .findFirst() .orElse(null); return rock != null; } Something like that -
If they are asynchronous just execute them in your onStart or a function that is guaranteed to run once and you’ll also be fine.
-
Is the NPC mage already set by the time you reach the condition? In the Boolean function call NPC mage = getNpcs().closest(“mage”); before returning. That may help...
-
inventory#contains will check if any item in the provided array is in the inventory. There's probably a better way, but I use a separate function private boolean inventoryContainsAllItems(String... items){ for( String item : items ){ if ( !getInventory().contains(item) ) return false; } return true; }
-
Check out my thread below
-
Ah I’m not really, I just wondered if there was a way. Again, theoretically dealing with a large area feels like it should be handled by region checking. But I can stick with areas, thanks for your thoughts and @Eliot
-
That’s still defining an area... it’s not an issue. Just if there was an option with regions it feels better to use. But maybe it’s not possible.
-
Yeah... well that’s one option. The area I need to check is huge (the size of the region, basically 104x104). My logic is if it’s already defined as a region and I could check that then it makes more sense then defining a massive area. But if there’s not really a better way then areas will have to do.
-
Identify the region my player is in so I can then perform logic, for example @Eliot if ( isInRegion(region) ){ doA(); } else { doB(); }