Jump to content

Noob needs some help


Scorncial

Recommended Posts

I'm stille getting used to the API, so it's kinda hard to find ...

Also, you gold me the coin id, bit how could I find such things myself?

 

I would use Names instead of ID's if you can, will stop the script breaking if they change the ID's in a Runescape update.. happy.png

 

Keep exploring the API. happy.png

 

Precise.

Edited by Precise
Link to comment
Share on other sites

I'm stille getting used to the API, so it's kinda hard to find ...

Also, you gold me the coin id, bit how could I find such things myself?

 

the client debugger interface :)

Found under the settings icon at the client.

 

Then enable inventory debug or anything else that you want to see/debug

 

Khaleesi

Link to comment
Share on other sites

completeDialogue(java.lang.String... options)
Completes the current dialogue using the specified options when available.

How exactly should I use this so he picks the first option?

 

sHpgMoe.png

 

This is the code I currently have, Eclispe is giving an error at each line starting with "Dialogues.", what's the proble there and how can I solve it? DO you guys have any other suggestions on things I could improve?

import org.osbot.rs07.api.model.NPC;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;
import org.osbot.rs07.api.Dialogues;

import java.awt.*;
 
@ScriptManifest(author = "Me", info = "Buys Woad leaves from Wyson the gardener in Falador Park", name = "Woad Leaf Buyer", version = 0.1, logo = "")
public class main extends Script {
 
    @Override
    public void onStart() {
        log("Woad Leaf Buyer has started.");
    }
 
    @Override
    public int onLoop() throws InterruptedException {
    	
    	if(!(inventory.getAmount(995) < 20)) {
			stop();
		}  	
		NPC gardener = npcs.closest("Wyson the gardener");
		if (gardener != null) {
			gardener.interact("Talk-to");
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.selectOption(2, 1);
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.selectOption(4, 4);
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.clickContinue();
			return random(200, 300);
			Dialogues.clickContinue();
		}
        return random(200, 300);
    }
 
    @Override
    public void onExit() {
        log("Thanks for running my first script");
    }
 
    @Override
    public void onPaint(Graphics2D g) {
 
    }
 
}
Link to comment
Share on other sites

Now it tells me "org.osbot.rs07.api.Dialogues is never used" on line 4 and on line 26: "dialogues.clickContinue(); is unreachable code".

import org.osbot.rs07.api.model.NPC;
import org.osbot.rs07.script.Script;
import org.osbot.rs07.script.ScriptManifest;
import org.osbot.rs07.api.Dialogues;

import java.awt.*;
 
@ScriptManifest(author = "Me", info = "Buys Woad leaves from Wyson the gardener in Falador Park", name = "Woad Leaf Buyer", version = 0.1, logo = "")
public class main extends Script {
 
    @Override
    public void onStart() {
        log("Woad Leaf Buyer has started.");
    }
 
    @Override
    public int onLoop() throws InterruptedException {
    	
    	if(!(inventory.getAmount(995) < 20)) {
			stop();
		}  	
		NPC gardener = npcs.closest("Wyson the gardener");
		if (gardener != null) {
			gardener.interact("Talk-to");
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.selectOption(2, 1);
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.selectOption(4, 4);
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.clickContinue();
			return random(200, 300);
			dialogues.clickContinue();
		}
        return random(200, 300);
    }
 
    @Override
    public void onExit() {
        log("Thanks for running Woad Leaf Buyer");
    }
 
    @Override
    public void onPaint(Graphics2D g) {
 
    }
 
}
Link to comment
Share on other sites

Yeah, any code after a return is not executed, therefore unreachable in your code. Replace return random(200, 300) with sleep(200, 300) or better yet conditional sleeps (look at API).

 

It's giving me another error, when I change "return random" with "sleep", Eclipse tells me: "Tha method sleep(long) in the type MethodProvider is not applicable for the arguments (int, int). So I suppose it's not possible to sleep a random amount of time?

 

And it still gives me the unreacable error on the first "dialogues.clickContinue();".

Edited by Scorncial
Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...