Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import flash.utils.Timer;
- import flash.events.MouseEvent;
- import flash.events.TimerEvent;
- //Array Definitions. These will hold all of the values needed.
- var Quests:Array = [0];
- var arr:Array = [0];
- var drops:Array = [0];
- var mapItems:Array = [0];
- //Integer definitions. These will work as the position check;
- var curQuest:int;
- var Pos:int = 0;
- var dropID:int;
- var drpIndex:int = 0;
- var curMap:int;
- var mapIndex:int = 0;
- //Timer Definitions
- //this is the main Timer. Even if your bot will not fight, you need to start it.
- var botCore:Timer = new Timer(2500);
- //this timer is used for skill management. Don't touch!
- var myTimer:Timer;
- //same as above
- var skill:Timer = new Timer(3500);
- //This is the timer handling all of the combat.
- var main:Timer = new Timer(3000);
- //Boolean Definitions, those values will set wether the bot will activate the functions or not
- var enabledQuests:Boolean = false;
- var enabledDrops:Boolean = false;
- var enabledMapItems:Boolean = false;
- var pvpRelated:Boolean = false;
- botCore.addEventListener(TimerEvent.TIMER, coreFunctions);
- go.addEventListener(MouseEvent.CLICK, startAction);
- function startAction(e:MouseEvent)
- {
- go.enabled = false;
- _stop.enabled = true;
- getSkills(Game.world.myAvatar.objData.strClassName);
- switch (curBot.selectedItem.data)
- {
- case "1" ://arcangrove
- Quests = [794,795,796,797,798,799,800,801];
- Game.world.getQuests(Quests);
- botCore.start();
- main.start();
- if (Game.world.strMapName == "arcangrove")
- {
- Game.world.moveToCell("Back", "Right");
- }
- else
- {
- Game.world.gotoTown("arcangrove-999999", "Back", "Right");
- }
- break;
- //Etherstorm Airstorm Rep;
- case "2" :
- Quests = [1596,1578];
- drops = [10700];
- enabledQuests = true;
- botCore.start();
- main.start();
- Game.world.getQuests(Quests);
- if (Game.world.strMapName == "airstorm")
- {
- Game.world.moveToCell("r12", "Left");
- }
- else
- {
- Game.world.gotoTown("airstorm-999999", "r12", "Left");
- }
- break;
- //Alchemy Reagents. Refer here for examples on how to enable drop accepting.
- case "3" :
- drops = [11475,11478];
- main.start();
- enabledDrops = true;
- enabledQuests = false;
- botCore.start();
- if (Game.world.strMapName == "lair")
- {
- Game.world.moveToCell("Enter", "Spawn");
- }
- else
- {
- Game.world.gotoTown("lair-9999999", "Enter", "Spawn");
- }
- break;
- //Chronospan Rep;
- case "4" :
- Quests = [2197,2203,2204,2205,2208];
- Game.world.getQuests(Quests);
- enabledQuests = true;
- botCore.start();
- main.start();
- if (Game.world.strMapName == "thespan")
- {
- Game.world.moveToCell("Enter", "Left");
- }
- else
- {
- Game.world.gotoTown("thespan-99999999", "Enter", "Left");
- }
- break;
- case "5" :
- main.start();
- if (Game.world.strMapName == "pirates")
- {
- Game.world.moveToCell("BlackEnd", "Right");
- }
- else
- {
- Game.world.gotoTown("pirates-99999999", "BlackEnd", "Right");
- }//Undead Pirates XP;
- break;
- case "6" :
- if (Game.world.myAvatar.isUpgraded())
- {
- Quests = [1009,1010,1013,1014,1006];
- Game.world.getQuests(Quests);
- main.start();
- botCore.start();
- enabledQuests = true;
- if (Game.world.strMapName == "skyguard")
- {
- Game.world.moveToCell("r2", "Up");
- }
- else
- {
- Game.world.gotoTown("skyguard-99999999", "r2", "Up");
- }
- }
- else
- {
- Game.MsgBox.notify("this is A Member Bot Only");
- go.enabled = true;
- _stop.enabled = false;
- }//Skyguard Rep;
- break;
- case "7" ://Horc Rep. Refer here for one map item example
- Quests = [1200,1201,1203,1205,1206,1207,1208,1209,1210];
- mapItems = [500,502,505,513];
- Game.world.getQuests(Quests);
- enabledQuests = true;
- enabledMapItems = true;
- botCore.start();
- main.start();
- if (Game.world.strMapName == "bloodtusk")
- {
- Game.world.moveToCell("r15", "Left");
- }
- else
- {
- Game.world.gotoTown("bloodtusk-9999999", "r15", "Left");
- }
- break;
- case "8"://Troll Rep;
- Quests = [1180,1181,1183,1185,1186];
- mapItems = [500,502,503,505];
- Game.world.getQuests(Quests);
- enabledQuests = true;
- enabledMapItems = true;
- botCore.start();
- main.start();
- if(Game.world.strMapName == "bloodtusk")
- {
- Game.world.moveToCell("r15", "Left");
- }
- else
- {
- Game.world.gotoTown("bloodtusk-99999", "r15", "Left");
- }
- break;
- case "9":
- Quests = [1071, 1072, 1073, 1074, 1076];
- Game.world.getQuests(Quests);
- mapItems = [424,561,567,568];
- enabledQuests = true;
- enabledMapItems = true;
- main.start();
- botCore.start();
- if(Game.world.strMapName == "doomwood")
- {
- Game.world.moveToCell("r8", "Right");
- }
- else
- {
- Game.world.gotoTown("doomwood-999999", "r8", "Right");
- }//Doomwood Rep;
- break;
- case "10":
- Quests = [320,321,324,325,327];
- Game.world.getQuests(Quests);
- enabledQuests = true;
- botCore.start();
- main.start();
- if(Game.world.strMapName == "pines")
- {
- Game.world.moveToCell("Enter", "Spawn");
- }else
- {
- Game.world.gotoTown("pines-999999", "Enter", "Spawn");
- }//DwarfHold Rep;
- break;
- case "11"://mythsong rep
- if(Game.world.myAvatar.isUpgraded())
- {
- Quests = [633,634,635,647];
- }
- else
- {
- Quests = [633,634,635];
- }
- Game.world.getQuests(Quests);
- enabledQuests = true;
- main.start();
- botCore.start();
- if(Game.world.strMapName == "mythsong")
- {
- Game.world.moveToCell("Path", "Right");
- }
- else
- {
- Game.world.gotoTown("mythsong-999999", "Path", "Right");
- }
- break;
- case "12"://Tainted Gem bot.
- Quests = [569];
- drops = [4708,4769];
- enabledQuests = true;
- enabledDrops = true;
- Game.world.getQuests(Quests);
- main.start();
- botCore.start();
- if(Game.world.strMapName == "boxes")
- {
- Game.world.moveToCell("Enter", "Spawn");
- }
- else
- {
- Game.world.gotoTown('boxes-999999', 'Enter', 'Spawn');
- }
- break;
- case "13"://Horc + Troll bot.
- Quests = [1200,1201,1203,1180,1181,1183];
- mapItems = [500];
- Game.world.getQuests(Quests);
- enabledQuests = true;
- enabledMapItems = true;
- main.start();
- botCore.start();
- if(Game.world.strMapName == "bloodtusk"){Game.world.moveToCell("r15", "Left");}
- else{Game.world.gotoTown("bloodtusk-99999", "r15", "Left")};
- break;
- }
- }
- function coreFunctions(e:TimerEvent)
- {
- if (enabledQuests)
- {
- curQuest = Quests[Pos];
- Pos++;
- if (! Game.world.isQuestInProgress(curQuest))
- {
- Game.world.acceptQuest(curQuest);
- }
- if (Game.world.isQuestInProgress(curQuest) && Game.world.canTurnInQuest(curQuest))
- {
- Game.world.tryQuestComplete(curQuest);
- }
- if (Pos >= Quests.length)
- {
- Pos = 0;
- }
- }
- if (enabledDrops)// o
- {
- dropID = drops[drpIndex];
- drpIndex++;
- Game.sfc.sendXtMessage("zm", "getDrop", [dropID], "str");
- if (drpIndex >= drops.length)
- {
- drpIndex = 0;
- }
- }
- if (enabledMapItems)
- {
- curMap = mapItems[mapIndex];
- mapIndex++;
- Game.world.getMapItem(curMap);
- if (mapIndex >= mapItems.length)
- {
- mapIndex = 0;
- }
- }
- }
- _stop.addEventListener(MouseEvent.CLICK, stopAll);
- function stopAll(e:MouseEvent)
- {
- Quests = [0];
- drops = [0];
- mapItems = [0];
- go.enabled = true;
- _stop.enabled = false;
- botCore.stop();
- main.stop();
- skill.stop();
- enabledDrops = false;
- enabledQuests = false;
- enabledMapItems = false;
- }
- /////////////////////////////////////////////////////////////////////////;
- main.addEventListener(TimerEvent.TIMER, attacK);
- function attacK(e:TimerEvent)
- {
- if (Game.world.mapLoadInProgress)
- {
- trace("not ready");
- return;
- }
- else
- {
- var restMode:Boolean = false;
- var curTarget:Object;
- var allMon:Object = Game.world.getMonstersByCell(Game.world.strFrame);
- for each (var mon:Object in allMon)
- {
- var monData:Object = mon.dataLeaf;
- if (mon != Game.world.myAvatar.target && monData.MonID != 63 && monData.MonID != 254 && monData.MonID != 355 && monData.MonID != 808 && monData.MonID != 809 && monData.MonID != 938 && monData.intState >= 1)
- {
- curTarget = mon;
- }
- }
- if (Game.world.myAvatar.dataLeaf.intHP <= 600 && Game.world.myAvatar.dataLeaf.intState == 1)
- {
- Game.world.rest();
- restMode = true;
- }
- if (Game.world.myAvatar.dataLeaf.intHP >= Game.world.myAvatar.dataLeaf.intHPMax)
- {
- restMode = false;
- }
- if (! restMode && Game.world.myAvatar.dataLeaf.intState == 1 && ! restMode && ! Game.world.myAvatar.target)
- {
- Game.world.setTarget(curTarget);
- }
- if (Game.world.myAvatar.target && ! Game.world.myAvatar.target.isMyAvatar && ! restMode)
- {
- Game.world.approachTarget();
- skill.start();
- }
- if (curTarget != null)
- {
- if (curTarget.dataLeaf.intState < 1)
- {
- curTarget = null;
- }
- }
- if(Game.world.myAvatar.objData.intState <1)
- {
- rp.start();
- skill.stop();
- }
- if (! Game.world.myAvatar.target && ! restMode && curTarget == null && Game.world.strMapName == "curseblue" || ! Game.world.myAvatar.target && ! restMode && curTarget == null && Game.world.strMapName == "mythsong" || ! Game.world.myAvatar.target && ! restMode && curTarget == null && Game.world.strMapName == "thespan"|| ! Game.world.myAvatar.target && ! restMode && curTarget == null && Game.world.strMapName == "boxes")
- {
- MoveToProper();
- }
- }
- }
- function MoveToProper()
- {
- if(Game.world.strMapName == "curseblue"){
- switch (Game.world.strFrame)
- {
- case "Enter" :
- Game.world.moveToCell("r2", "Left");
- break;
- case "r2" :
- Game.world.moveToCell("r3", "Right");
- break;
- case "r3" :
- Game.world.moveToCell("r4", "Left");
- break;
- case "r4" :
- Game.world.moveToCell("r5", "Left");
- break;
- case "r5" :
- Game.world.moveToCell("Enter", "Spawn");
- break;
- default :
- break;
- }
- }
- if(Game.world.strMapName == "mythsong")
- {
- switch(Game.world.strFrame)
- {
- case "Path":
- //%xt%zm%moveToCell%1317%Cross%Left%
- Game.world.moveToCell("Cross", "Left");
- break;
- case "Cross":
- Game.world.moveToCell("Path", "Right");
- break;
- default:
- break;
- }
- }
- if(Game.world.strMapName == "thespan")
- {
- switch(Game.world.strFrame)
- {
- case "Enter":
- Game.world.moveToCell("r2", "Right");
- break;
- case "r2":
- Game.world.moveToCell("r3", "Up");
- break;
- case "r3":
- Game.world.moveToCell("Enter", "Left");
- break;
- default:
- break;
- }
- }
- if(Game.world.strMapName == "battleunderb")
- {
- switch(Game.world.strFrame)
- {
- case "r1":
- Game.world.moveToCell("r2", "Left");
- break;
- case "r2":
- Game.world.moveToCell("r1", "Right");
- break;
- default:
- break;
- }
- }
- if(Game.world.strMapName == "boxes")
- {
- switch(Game.world.strFrame)
- {
- case "Enter":
- Game.world.moveToCell("Closet", "Right");
- break;
- case "Closet":
- Game.world.moveToCell("Fort1", "Right");
- break;
- case "Fort1":
- Game.world.moveToCell("Enter", "Spawn");
- default:
- break;
- }
- }
- }
- ///////////////////////////////////////////////
- skill.addEventListener(TimerEvent.TIMER, useSkillz);
- function getSkills(className:String)
- {
- trace("Getting recommended skills for: " + className);
- var noClass:Array = className.split(" Class");
- className = noClass.join("");
- switch (className)
- {// No Class
- case "No" :
- break;// Healer Classes
- case "Healer" :
- case "Acolyte" :
- case "Witch" :
- arr = [1,3,2];
- break;//Mage Classes
- case "Mage" :
- case "Sorcerer" :
- arr = [2,1];
- break;//Warrior Classes
- case "Warrior" :
- case "Warlord" :
- case "Beast Warrior" :
- case "Pumpkin Lord" :
- arr = [1,1,2];
- break;//Rogue Classes
- case "Rogue" :
- case "Barber" :
- case "Leprechaun" :
- case "Pirate" :
- case "Alpha Pirate" :
- case "Renegade" :
- case "Vampire" :
- arr = [3,1,2];
- break;//Berserker Classes
- case "Berserker" :
- case "Beta Berserker" :
- arr = [4,1,2];
- break;//Ninja Classes
- case "Ninja" :
- case "Assassin" :
- arr = [3,1];
- break;//Rustbucket Classes
- case "Enforcer" :
- case "Rustbucket" :
- case "Protosartorium" :
- arr = [1];
- break;
- case "Elemental Dracomancer" :
- arr = [4,3,2];
- break;
- //Special Classes
- case "Bard" :
- arr = [1,4,3];
- break;
- case "CardClasher" :
- arr = [1,2];
- break;
- case "Chaos Shaper" :
- break;
- case "Chronomancer" :
- break;
- case "ClawSuit" :
- break;
- case "Defender" :
- arr = [1,1,1,2];
- break;
- case "DoomKnight" :
- arr = [1,1,1,2];
- break;
- case "Dragonlord" :
- arr = [2,3];
- break;
- case "Dragonslayer" :
- arr = [1,2];
- break;
- case "Evolved Shaman" :
- arr = [2,3,1];
- break;
- case "Evolved ClawSuit" :
- arr = [1,2];
- break;
- case "Giftbox" :
- break;
- case "Guardian" :
- arr = [1,1,2,3];
- break;
- case "Necromancer" :
- arr = [2,2,2,2,2,4];
- break;
- case "Paladin" :
- arr = [4,1];
- break;
- case "Ranger" :
- case "Troll Spellsmith" :
- arr = [4,4,4,4,4,2,1];
- break;
- case "Shaman" :
- arr = [1,2];
- break;
- case "Starlord" :
- break;
- case "UndeadSlayer" :
- break;
- case "Vindicator Of They" :
- arr = [2,2,3,4];
- break;
- case "MindBreaker" :
- arr = [1,3];
- break;
- default :
- break;
- }
- }
- ////////////////////////////////////////////
- var ran:int;
- var index:int = 0;
- var noSkills:Boolean;
- var actObj:Object;
- function useSkillz(e:TimerEvent)
- {
- ran = arr[index];
- index++;
- if (Game.world.myAvatar.objData.intMP <= 20)
- {
- switch (Game.world.myAvatar.objData.strClassName)
- {
- case "Troll Spellsmith Class" :
- case "Necromancer" :
- case "Ninja Class" :
- actObj = Game.world.actions.active[3];
- break;
- default :
- break;
- }
- skill.delay = actObj.cd + 100;
- }
- else
- {
- actObj = Game.world.actions.active[ran];
- }
- if (Game.world.myAvatar.target && ! Game.world.myAvatar.target.isMyAvatar && Game.world.myAvatar.target.dataLeaf.intHP > 1 && Game.world.myAvatar.objData.intMP > actObj.mp)
- {
- if (actObj.isOK && actObj.cd < 15000 && actObj.mp < Game.world.myAvatar.objData.intMP)
- {
- Game.world.testAction(actObj);
- Game.world.approachTarget();
- }
- if (! noSkills && actObj.cd >= 15000 && actObj.isOK)
- {
- noSkills = true;
- trace(noSkills);
- Game.world.testAction(actObj);
- Game.world.approachTarget();
- setup();
- }
- }
- if (actObj.cd < 15000)
- {
- skill.delay = actObj.cd;
- }
- if (index >= arr.length || !Game.world.myAvatar.target)
- {
- index = 0;
- }
- }
- function setup()
- {
- trace("just checking...");
- myTimer = new Timer(actObj.cd);
- myTimer.addEventListener(TimerEvent.TIMER, restoreSkill);
- myTimer.start();
- }
- function restoreSkill(e:Event)
- {
- noSkills = false;//sSelect.visible = true;
- trace("OK.");
- trace("OK.");
- trace("OK.");
- trace("OK.");
- myTimer.stop();
- }
- ///////////////////////////////////////////
- var rp:Timer = new Timer(11500, 1);
- rp.addEventListener(TimerEvent.TIMER, reSpawn);
- function reSpawn(e:Event){
- var resMC:MovieClip = MovieClip(Game.ui.mcRes);
- resMC.resC = 10;
- resMC.visible = false;
- resMC.gotoAndStop(1);
- Game.world.setSpawnPoint(Game.world.strFrame, Game.world.strPad);
- Game.world.resPlayer();
- //rp.stop();
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement