-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathFeedBrazier.java
More file actions
80 lines (69 loc) · 2.49 KB
/
Copy pathFeedBrazier.java
File metadata and controls
80 lines (69 loc) · 2.49 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
import org.rspeer.runetek.adapter.component.Item;
import org.rspeer.runetek.adapter.scene.SceneObject;
import org.rspeer.runetek.api.Game;
import org.rspeer.runetek.api.commons.Time;
import org.rspeer.runetek.api.component.Interfaces;
import org.rspeer.runetek.api.component.tab.Inventory;
import org.rspeer.runetek.api.movement.position.Position;
import org.rspeer.runetek.api.scene.Players;
import org.rspeer.runetek.api.scene.SceneObjects;
import org.rspeer.script.Script;
import org.rspeer.script.ScriptMeta;
import org.rspeer.ui.Log;
@ScriptMeta(developer = "Sri", name = "Brazier", desc = "Firemaking")
public class FeedBrazier extends Script {
private String state = "chopBruma";
private int oldPlayerHp;
private Position brazierPosition = new Position(1638, 3997);
private int lowDelta = 80;
private int highDelta = 170;
public int getRand(int low, int high) {
int highRand = org.rspeer.runetek.api.commons.math.Random.high(low, high);
int lowRand = org.rspeer.runetek.api.commons.math.Random.low(low, high);
int rand;
if (org.rspeer.runetek.api.commons.math.Random.nextInt(0, 100) < 50) {
rand = lowRand;
}
else {
rand = highRand;
}
return rand;
}
public void randomWait(int low, int high) {
low = low + lowDelta;
high = high + highDelta;
int sleepTime = getRand(low, high);
Time.sleep(sleepTime);
}
public void continualCheckHealth() {
for (int i = 0; i < 3; i++) {
if (checkHealth()) {
randomWait(600, 1300);
};
}
}
public boolean checkHealth() {
int hp = Integer.parseInt(Interfaces.getComponent(160, 5).getText());
int hpMin = (50 + getRand(0, 20));
// Log.info("Player health: " + hp + " Min health: " + hpMin);
if (hp < hpMin) {
Log.info("Player health low");
if (Inventory.contains(i -> i.getName().contains("Saradomin"))) {
Log.info("Drinking brew");
Item brew = Inventory.getFirst(i -> i.getName().contains("Saradomin"));
brew.interact("Drink");
randomWait(500, 1000);
return true;
}
}
return false;
}
@Override
public int loop() {
SceneObject brazier = SceneObjects.getNearest(29314);
Log.info("Feeding Brazier");
brazier.interact("Feed");
randomWait(600, 1200);
return -1;
}
}