Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package ploosutils;
- import com.kbotpro.bot.BotEnvironment;
- import com.kbotpro.scriptsystem.various.ModuleConnector;
- import com.kbotpro.scriptsystem.wrappers.IComponent;
- import java.util.ArrayList;
- /**
- * Created by IntelliJ IDEA.
- * User: Martin
- * Date: 16-Apr-2010
- * Time: 00:56:55
- * To change this template use File | Settings | File Templates.
- */
- public class Prayers extends ModuleConnector {
- public Prayers(BotEnvironment botEnv) {
- this.botEnv = botEnv;
- }
- private final int SETTING_PRAYER = 1395;
- private final int PRAYER_INTERFACE = 271;
- private final int PRAYER_ICONS_INTERFACE = 8;
- private final int PRAYER_COUNT = 29;
- private final int MAX_SETTING_INDEX = 28;
- public final int STAT_ADJUSTMENT_ATTACK = 34;
- public final int STAT_ADJUSTMENT_STRENGTH = 33;
- public final int STAT_ADJUSTMENT_DEFENCE = 32;
- public final int STAT_ADJUSTMENT_RANGE = 31;
- public final int STAT_ADJUSTMENT_MAGIC = 30;
- private final int PRAYERS_MODERN = 0;
- private final int PRAYERS_ANCIENT = 1;
- public final Prayer PRAYER_THICK_SKIN = new Prayer("Thick Skin", 1, false, 0, 0);
- public final Prayer PRAYER_BURST_OF_STRENGTH = new Prayer("Burst of Strength", 4, false, 1, 1);
- public final Prayer PRAYER_CLARITY_OF_THOUGHT = new Prayer("Clarity of Thought", 7, false, 2, 2);
- public final Prayer PRAYER_SHARP_EYE = new Prayer("Sharp Eye", 8, false, 18, 3);
- public final Prayer PRAYER_MYSTIC_WILL = new Prayer("Mystic Will", 9, false, 19, 4);
- public final Prayer PRAYER_ROCK_SKIN = new Prayer("Rock Skin", 10, false, 3, 5);
- public final Prayer PRAYER_SUPERHUMAN_STRENGTH = new Prayer("Superhuman Strength", 13, false, 4, 6);
- public final Prayer PRAYER_IMPROVED_REFLEXES = new Prayer("Improved Reflexes", 16, false, 5, 7);
- public final Prayer PRAYER_RAPID_RESTORE = new Prayer("Rapid Restore", 19, false, 6, 8);
- public final Prayer PRAYER_RAPID_HEAL = new Prayer("Rapid Heal", 22, false, 7, 9);
- public final Prayer PRAYER_PROTECT_ITEM = new Prayer("Protect Item", 25, false, 8, 10);
- public final Prayer PRAYER_HAWK_EYE = new Prayer("Hawk Eye", 26, false, 20, 11);
- public final Prayer PRAYER_MYSTIC_LORE = new Prayer("Mystic Lore", 27, false, 21, 12);
- public final Prayer PRAYER_STEEL_SKIN = new Prayer("Steel Skin", 28, false, 9, 13);
- public final Prayer PRAYER_ULTIMATE_STRENGTH = new Prayer("Ultimate Strength", 31, false, 10, 14);
- public final Prayer PRAYER_INCREDIBLE_REFLEXES = new Prayer("Incredible Reflexes", 34, false, 11, 15);
- public final Prayer PRAYER_PROTECT_FROM_SUMMONING = new Prayer("Protect from Summoning", 35, true, 24, 16);
- public final Prayer PRAYER_PROTECT_FROM_MAGIC = new Prayer("Protect from Magic", 37, false, 12, 17);
- public final Prayer PRAYER_PROTECT_FROM_MISSILES = new Prayer("Protect from Missiles", 40, false, 13, 18);
- public final Prayer PRAYER_PROTECT_FROM_MELEE = new Prayer("Protect from Melee", 43, false, 14, 19);
- public final Prayer PRAYER_EAGLE_EYE = new Prayer("Eagle Eye", 44, false, 22, 20);
- public final Prayer PRAYER_MYSTIC_MIGHT = new Prayer("Mystic Might", 45, false, 23, 21);
- public final Prayer PRAYER_RETRIBUTION = new Prayer("Retribution", 46, true, 15, 22);
- public final Prayer PRAYER_REDEMPTION = new Prayer("Redemption", 49, true, 16, 23);
- public final Prayer PRAYER_SMITE = new Prayer("Smite", 52, true, 17, 24);
- public final Prayer PRAYER_CHIVALRY = new Prayer("Chivalry", 60, true, 25, 25);
- public final Prayer PRAYER_RAPID_RENEWAL = new Prayer("Rapid Renewal", 65, true, 27, 26);
- public final Prayer PRAYER_PIETY = new Prayer("Piety", 70, true, 26, 27);
- public final Prayer PRAYER_AUGURY = new Prayer("Augury", 77, true, 28, 28);
- public final Prayer[] PRAYERS = {
- PRAYER_THICK_SKIN, PRAYER_BURST_OF_STRENGTH, PRAYER_CLARITY_OF_THOUGHT, PRAYER_SHARP_EYE, PRAYER_MYSTIC_WILL,
- PRAYER_ROCK_SKIN, PRAYER_SUPERHUMAN_STRENGTH, PRAYER_IMPROVED_REFLEXES, PRAYER_RAPID_RESTORE, PRAYER_RAPID_HEAL,
- PRAYER_PROTECT_ITEM, PRAYER_HAWK_EYE, PRAYER_MYSTIC_LORE, PRAYER_STEEL_SKIN, PRAYER_ULTIMATE_STRENGTH,
- PRAYER_INCREDIBLE_REFLEXES, PRAYER_PROTECT_FROM_SUMMONING, PRAYER_PROTECT_FROM_MAGIC, PRAYER_PROTECT_FROM_MISSILES, PRAYER_PROTECT_FROM_MELEE,
- PRAYER_EAGLE_EYE, PRAYER_MYSTIC_MIGHT, PRAYER_RETRIBUTION, PRAYER_REDEMPTION, PRAYER_SMITE,
- PRAYER_CHIVALRY, PRAYER_RAPID_RENEWAL, PRAYER_PIETY, PRAYER_AUGURY
- };
- public void openTab() {
- botEnv.game.openTab(botEnv.game.TAB_PRAYER);
- }
- public int getPrayerLevel() {
- return botEnv.skills.getLevel(botEnv.skills.SKILL_PRAYER);
- }
- public int getPrayerPoints() {
- return botEnv.skills.getCurrentLevel(botEnv.skills.SKILL_PRAYER);
- }
- public int getStatAdjustment(int stat) {
- IComponent comp = botEnv.interfaces.getComponent(PRAYER_INTERFACE, stat);
- if (comp != null && comp.isValid()) {
- return Integer.parseInt(comp.getText());
- }
- return 0;
- }
- public Prayer getPrayer(int i) {
- return PRAYERS[i];
- }
- public Prayer[] getPrayers() {
- return PRAYERS;
- }
- public Prayer[] getActivePrayers() {
- ArrayList<Prayer> activePrayers = new ArrayList<Prayer>();
- for (Prayer p : PRAYERS) {
- if (isActive(p)) {
- activePrayers.add(p);
- }
- }
- return (Prayer[]) activePrayers.toArray();
- }
- /*
- public boolean[] getPrayerFlags() {
- boolean[] flags = new boolean[PRAYER_COUNT];
- int settingValue = botEnv.settings.getSetting(SETTING_PRAYER);
- for (int i = MAX_SETTING_INDEX; i >= 0; i--) {
- int value = (int) Math.pow(2, i);
- if (value <= settingValue) {
- settingValue -= value;
- flags[i] = true;
- } else {
- flags[i] = false;
- }
- }
- return flags;
- }
- */
- public boolean isActive(Prayer prayer) {
- int settingIndex = prayer.settingIndex;
- int settingValue = botEnv.settings.getSetting(SETTING_PRAYER);
- for (int i = MAX_SETTING_INDEX; i >= 0; i--) {
- int value = (int) Math.pow(2, i);
- if (value <= settingValue) {
- settingValue -= value;
- if (i == settingIndex) return true;
- }
- }
- return false;
- }
- public boolean hasLevel(Prayer prayer) {
- if (getPrayerLevel() < prayer.getLevelRequired()) return false;
- return true;
- }
- public boolean canActivate(Prayer prayer) {
- if (getPrayerPoints() > 0) return false;
- if (!hasLevel(prayer)) return false;
- return true;
- }
- public boolean activate(Prayer prayer) {
- if (!canActivate(prayer)) return false;
- if (isActive(prayer)) return true;
- openTab();
- IComponent icon = botEnv.interfaces.getComponent(PRAYER_INTERFACE, PRAYER_ICONS_INTERFACE).getChildren()[prayer.componentID];
- if (!icon.doAction("Activate")) return false;
- return true;
- }
- public boolean deactivate(Prayer prayer) {
- if (!isActive(prayer)) return true;
- openTab();
- IComponent icon = botEnv.interfaces.getComponent(PRAYER_INTERFACE, PRAYER_ICONS_INTERFACE).getChildren()[prayer.componentID];
- if (!icon.doAction("Deactivate")) return false;
- return true;
- }
- private class Prayer {
- private String prayerName = "";
- private int levelRequired = 1;
- private boolean membersOnly = false;
- private int settingIndex = 0;
- private int componentID = 0;
- private Prayer(String prayerName, int levelRequired, boolean membersOnly, int settingIndex, int componentID) {
- this.prayerName = prayerName;
- this.levelRequired = levelRequired;
- this.membersOnly = membersOnly;
- this.settingIndex = settingIndex;
- this.componentID = componentID;
- }
- public String getPrayerName() {
- return prayerName;
- }
- public int getLevelRequired() {
- return levelRequired;
- }
- public boolean isMembersOnly() {
- return membersOnly;
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment