Advertisement
shottah

RBOT | Void Crystals (v 1.1)

Jun 8th, 2018
2,152
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 12.41 KB | None | 0 0
  1. using RBot;
  2. using System.Windows.Forms;
  3.  
  4. public class Script {
  5.  
  6.     public static readonly string [] CORE = {"Diamond of Nulgath", "Tainted Gem", "Dark Crystal Shard", "Unidentified 13", "Dessicated Heart", "Legion Blade", "Archfiend's Favor", "Nulgath's Approval",
  7.     "Cubes", "Escherion's Chain", "Defeated Makai", "Strand of Vath's Hair", "O-dokuro's Tooth", "Aracara's Fang", "Hydra Scale", "Essence of Nulgath", "Gem of Nulgath", "Totem of Nulgath",
  8.     "Fragment of Chaos", "Blood Gem of the Archfiend"};
  9.    
  10.     public static readonly int TotemID = 5357;
  11.     public static readonly int GemNulID = 6136;
  12.    
  13.     public void ScriptMain(ScriptInterface bot){
  14.    
  15.         bot.Events.PlayerDeath += (a) => {
  16.             bot.Schedule(11000, (b) => {
  17.                 bot.Player.Jump("Enter", "Spawn");
  18.                 ScriptManager.RestartScript();
  19.             });
  20.         };
  21.        
  22.    
  23.         bot.Skills.Add(1, 1f);
  24.         bot.Skills.Add(2, 1f);
  25.         bot.Skills.Add(3, 1f);
  26.         bot.Skills.Add(4, 1f);
  27.         bot.Skills.StartTimer();
  28.        
  29.         bot.Options.ExitCombatBeforeQuest = true;
  30.         bot.Options.DisableFX = true;
  31.         bot.Options.SafeTimings = true;
  32.         bot.Options.RestPackets = true;
  33.        
  34.         foreach (string s in CORE) {
  35.             bot.Drops.Add(s);
  36.         }
  37.         bot.Drops.RejectElse = true;
  38.         bot.Drops.Start();
  39.        
  40.         bot.Player.LoadBank();
  41.         bot.Inventory.BankAllCoinItems();
  42.        
  43.         if (!bot.Bank.Contains("Diamond of Nulgath", 200) && !bot.Inventory.Contains("Diamond of Nulgath", 200)) {
  44.             for (int i = 3; i < 8; i++) {
  45.                 if (bot.Bank.Contains(CORE[i]))
  46.                     bot.Bank.ToInventory(CORE[i]);
  47.             }
  48.             bot.Bank.ToInventory("Diamond of Nulgath");
  49.        
  50.             Diamonds(bot, 200);
  51.             bot.Inventory.BankAllCoinItems();
  52.         }
  53.        
  54.         if (!bot.Bank.Contains("Tainted Gem", 200) && !bot.Inventory.Contains("Tainted Gem", 200)) {
  55.             bot.Inventory.BankAllCoinItems();
  56.             bot.Bank.ToInventory("Tainted Gem");
  57.             bot.Bank.ToInventory("Cubes");
  58.            
  59.             TaintedGems(bot, 200);
  60.             bot.Inventory.BankAllCoinItems();
  61.         }
  62.        
  63.        
  64.         if (!bot.Bank.Contains("Gem of Nulgath", 150) && !bot.Inventory.Contains("Gem of Nuglath", 150)) {
  65.             bot.Bank.ToInventory("Gem of Nulgath");
  66.             bot.Bank.ToInventory("Essence of Nulgath");
  67.             bot.Bank.ToInventory("Defeated Makai");
  68.             Voucher_4778(bot, "Gem of Nulgath", GemNulID ,150);
  69.         }
  70.        
  71.         if (!bot.Bank.Contains("Totem of Nulgath", 15) && !bot.Inventory.Contains("Totem of Nulgath", 15)) {
  72.             bot.Bank.ToInventory("Totem of Nulgath");
  73.             bot.Bank.ToInventory("Essence of Nulgath");
  74.             bot.Bank.ToInventory("Defeated Makai");
  75.             Voucher_4778(bot, "Totem of Nulgath", TotemID , 15);
  76.         }
  77.        
  78.         if (!bot.Bank.Contains("Blood Gem of the Archfiend", 30) && !bot.Inventory.Contains("Blood Gem of the Archfiend", 30)) {
  79.             bot.Bank.ToInventory("Blood Gem of the Archfiend");
  80.             bot.Bank.ToInventory("Fragment of Chaos");
  81.             bot.Bank.ToInventory("Tendurrr the Assistant");
  82.             BloodGem(bot, 30);
  83.             bot.Inventory.BankAllCoinItems();
  84.         }
  85.        
  86.         if (!bot.Bank.Contains("Dark Crystal Shard", 200) && !bot.Inventory.Contains("Dark Crystal Shard", 200)) {
  87.            
  88.             for (int i = 9; i < 15; i++) {
  89.                 if (bot.Bank.Contains(CORE[i]))
  90.                     bot.Bank.ToInventory(CORE[i]);
  91.             }
  92.             bot.Bank.ToInventory("Essence of Nulgath");
  93.             bot.Bank.ToInventory("Dark Crystal Shard");
  94.            
  95.             DarkCrystalShard(bot, 200);
  96.             bot.Inventory.BankAllCoinItems();
  97.         }
  98.        
  99.         bot.Drops.Stop();
  100.     }
  101.    
  102.     public void Diamonds(ScriptInterface bot, int quantity){
  103.         if (bot.Inventory.Contains("Diamond of Nulgath", quantity)) return;
  104.        
  105.         if (bot.Map.Name != "evilwarnul")
  106.             bot.Player.Join("evilwarnul-1e99", "r2", "Up");
  107.         if (bot.Player.Cell != "r2")
  108.             bot.Player.Jump("r2", "Up");
  109.        
  110.         bot.Player.SetSpawnPoint();
  111.        
  112.         while(!bot.Inventory.Contains("Diamond of Nulgath", quantity) && !bot.ShouldExit()){
  113.             if (!bot.Quests.IsInProgress(2219))
  114.                 bot.Quests.EnsureAccept(2219);
  115.                
  116.             if (!bot.Quests.CanComplete(2219))
  117.                 while (!bot.Inventory.Contains("Dessicated Heart", 20) ||
  118.                 !bot.Inventory.Contains("Legion Blade", 1) || !bot.Inventory.ContainsTempItem("Legion Champion Medal", 5) ||
  119.                 !bot.Inventory.ContainsTempItem("Undead Skull", 3) || !bot.Inventory.ContainsTempItem("Legion Helm", 5)) {
  120.                     if (bot.Monsters.Exists("Skull Warrior"))
  121.                         bot.Player.Kill("Skull Warrior");
  122.                     if (bot.Monsters.Exists("Skeletal Warrior"))
  123.                         bot.Player.Kill("Skeletal Warrior");
  124.                     else
  125.                         bot.Player.Kill("*");
  126.                 }
  127.                    
  128.             if (bot.Quests.CanComplete(2219)) {
  129.                 bot.Player.WalkTo(170,407);
  130.                 bot.Player.WalkTo(141, 228);
  131.                 bot.Sleep(1000);
  132.                 bot.Quests.EnsureComplete(2219);
  133.                 bot.Player.Jump("r2", "Up");
  134.             }
  135.         }
  136.     }
  137.    
  138.     public void TaintedGems(ScriptInterface bot, int quantity){
  139.         if (bot.Inventory.Contains("Tainted Gem", quantity)) return;
  140.        
  141.         while (!bot.Inventory.Contains("Tainted Gem", quantity)) {
  142.             if (!bot.Quests.IsInProgress(569))
  143.                 bot.Quests.EnsureAccept(569);
  144.                
  145.             if (bot.Map.Name != "boxes") {
  146.                 bot.Player.Join("boxes-9999", "Enter", "Spawn");
  147.                 bot.Sleep(500);
  148.                 bot.Player.Jump("Fort2", "Right");
  149.                 bot.Sleep(500);
  150.                 bot.Player.WalkTo(879, 290);
  151.                 bot.Player.WalkTo(635, 301);
  152.             }
  153.            
  154.             while (!bot.Inventory.Contains("Cubes", 500)) {
  155.                 bot.Player.Kill("*");
  156.             }
  157.            
  158.             bot.Player.Jump("Enter", "Spawn");
  159.        
  160.             bot.Player.Join("mountfrost-1e99", "War", "Left");
  161.             while (!bot.Inventory.ContainsTempItem("Ice Cubes", 6)) {
  162.                 bot.Player.Kill("*");
  163.             }
  164.             bot.Player.Jump("Enter", "Spawn");
  165.             while (bot.Quests.CanComplete(569)) {
  166.                 bot.Quests.EnsureComplete(569);
  167.                 bot.Quests.EnsureAccept(569);
  168.                 bot.Sleep(1000);
  169.             }
  170.             bot.Player.Jump("War", "Left");
  171.         }
  172.     }
  173.    
  174.     public void Voucher_4778 (ScriptInterface bot, string item, int id, int quantity=1) {
  175.         bot.Bank.ToInventory(item);
  176.         if (quantity == 1) {
  177.             if (!bot.Quests.IsInProgress(4778)) bot.Quests.EnsureAccept(4778);
  178.             Makai(bot, "Essence of Nulgath", 60);
  179.             if (bot.Quests.CanComplete(4778)) bot.Quests.EnsureComplete(4778, id);
  180.         } else {
  181.             while (!bot.Inventory.Contains(item, quantity)) {
  182.                 if (!bot.Quests.IsInProgress(4778)) bot.Quests.EnsureAccept(4778);
  183.                 Makai(bot, "Essence of Nulgath", 60);
  184.                 if (bot.Quests.CanComplete(4778)) bot.Quests.EnsureComplete(4778, id);
  185.             }
  186.         }
  187.         bot.Inventory.ToBank(item);
  188.     }
  189.    
  190.     public void DoVoucher(ScriptInterface bot, int quantity) {
  191.         if (!bot.Inventory.Contains("Gem of Nulgath", 200) && !bot.Bank.Contains("Gem of Nulgath", 200)) Voucher_4778(bot, "Gem of Nulgath", GemNulID, quantity);
  192.         else if (!bot.Inventory.Contains("Totem of Nulgath", 15) && !bot.Bank.Contains("Totem of Nulgath", 15)) Voucher_4778(bot, "Totem of Nulgath", TotemID, quantity);
  193.         return;
  194.     }
  195.    
  196.     public void DarkCrystalShard(ScriptInterface bot, int quantity) {
  197.         if (bot.Inventory.Contains("Dark Crystal Shard", quantity)) return;
  198.        
  199.         while (!bot.Inventory.Contains("Dark Crystal Shard", quantity)) {
  200.             if (!bot.Quests.IsInProgress(570)) bot.Quests.EnsureAccept(570);
  201.            
  202.             if (!bot.Inventory.Contains("Defeated Makai", 50)) Makai(bot, "Defeated Makai", 50);
  203.             if (bot.Inventory.Contains("Essence of Nulgath", 60)) DoVoucher(bot, 1);
  204.             if (!bot.Inventory.Contains("Escherion's Chain")) Escherion(bot);
  205.             if (!bot.Inventory.Contains("O-dokuro's Tooth")) Odokuro(bot);
  206.             if (!bot.Inventory.Contains("Strand of Vath's Hair")) Vath(bot);
  207.             if (!bot.Inventory.Contains("Aracara's Fang")) Aracara(bot);
  208.             if (!bot.Inventory.Contains("Hydra Scale")) Hydra(bot);
  209.             if (!bot.Inventory.ContainsTempItem("Tibicenas' Chain")) Tibicenas(bot);
  210.            
  211.             if (bot.Quests.CanComplete(570)) bot.Quests.EnsureComplete(570);
  212.         }
  213.        
  214.         bot.Drops.Stop();
  215.     }
  216.    
  217.    
  218.    
  219.     public void Makai (ScriptInterface bot, string item, int quantity) {
  220.         if (bot.Inventory.Contains(item, quantity)) return;
  221.        
  222.         if (bot.Map.Name != "tercessuinotlim") {
  223.             bot.Player.Join("Citadel-1e99", "m22", "Right");
  224.            
  225.             if (bot.Map.Name != "tercessuinotlim") {
  226.                 bot.Player.Join("Tercessuinotlim", "m2", "Left");
  227.                 bot.Sleep(2000);
  228.             }
  229.         } else {
  230.             bot.Player.Jump("m2", "Left");
  231.         }
  232.        
  233.         bot.Player.SetSpawnPoint();
  234.         bot.Player.WalkTo(313,315);
  235.         while (!bot.Inventory.Contains(item, quantity)) {
  236.             bot.Player.Kill("Dark Makai");
  237.         }
  238.     }
  239.    
  240.     public void Escherion (ScriptInterface bot) {
  241.         if (bot.Inventory.Contains("Escherion's Chain")) return;
  242.        
  243.         if (bot.Map.Name != "escherion") bot.Player.Join("Escherion", "Boss", "Left");
  244.         if (bot.Player.Cell != "Boss") bot.Player.Jump("Boss", "Left");
  245.        
  246.         while(!bot.Inventory.Contains("Escherion's Chain")){
  247.             if (bot.Monsters.Exists("Staff of Inversion")) bot.Player.Kill("Staff of Inversion");
  248.             else bot.Player.Kill("Escherion");
  249.         }
  250.         bot.Player.Jump("Enter", "Spawn");
  251.     }
  252.    
  253.     public void Odokuro (ScriptInterface bot) {
  254.         if (bot.Inventory.Contains("O-dokuro's Tooth")) return;
  255.            
  256.         if (bot.Map.Name != "yokaiwar") bot.Player.Join("Yokaiwar", "Boss", "Left");
  257.         if (bot.Player.Cell != "Boss") bot.Player.Jump("Boss", "Left");
  258.        
  259.         while(!bot.Inventory.Contains("O-dokuro's Tooth")){
  260.             bot.Player.Kill("O-Dokuro's Head");
  261.         }
  262.         bot.Player.Jump("Enter", "Spawn");
  263.     }
  264.    
  265.     public void Vath (ScriptInterface bot) {
  266.         if (bot.Inventory.Contains("Strand of Vath's Hair")) return;
  267.            
  268.         if (bot.Map.Name != "stalagbite") bot.Player.Join("Stalagbite", "r2", "Left");
  269.         if (bot.Player.Cell != "r2") bot.Player.Jump("r2", "Left");
  270.        
  271.         bot.Player.SetSpawnPoint();
  272.         while(!bot.Inventory.Contains("Strand of Vath's Hair")){
  273.             if (bot.Monsters.Exists("Stalagbite")) bot.Player.Kill("Stalagbite");
  274.             else bot.Player.Kill("Vath");
  275.         }
  276.         bot.Player.Jump("Enter", "Spawn");
  277.     }
  278.    
  279.     public void Aracara (ScriptInterface bot) {
  280.         if (bot.Inventory.Contains("Aracara's Fang")) return;
  281.            
  282.         if (bot.Map.Name != "faerie") bot.Player.Join("Faerie", "TopRock", "Center");
  283.         if (bot.Player.Cell != "TopRock") bot.Player.Jump("TopRock", "Center");
  284.        
  285.         while(!bot.Inventory.Contains("Aracara's Fang")){
  286.             bot.Player.Kill("Aracara");
  287.         }
  288.         bot.Player.Jump("Enter", "Spawn");
  289.     }
  290.    
  291.     public void Hydra (ScriptInterface bot) {
  292.         if (bot.Inventory.Contains("Hydra Scale")) return;
  293.            
  294.         if (bot.Map.Name != "hydra") bot.Player.Join("Hydra", "Boss", "Left");
  295.         if (bot.Player.Cell != "Boss") bot.Player.Jump("Boss", "Left");
  296.        
  297.         bot.Player.Kill("Hydra Head");
  298.        
  299.         bot.Player.Jump("Enter", "Spawn");
  300.     }
  301.    
  302.     public void Tibicenas (ScriptInterface bot) {
  303.         if (bot.Inventory.ContainsTempItem("Tibicenas' Chain")) return;
  304.        
  305.         if (bot.Map.Name != "djinn") bot.Player.Join("Djinn", "r5", "Center");
  306.         if (bot.Player.Cell != "r5") bot.Player.Jump("r5", "Center");
  307.        
  308.         bot.Player.SetSpawnPoint();
  309.         while(!bot.Inventory.ContainsTempItem("Tibicenas' Chain")){
  310.             while (bot.Map.PlayerCount < 2) bot.Sleep(1000);
  311.             bot.Player.Kill("Tibicenas");
  312.             bot.Player.Rest(true);
  313.             bot.Wait.ForFullyRested();
  314.         }
  315.         bot.Player.Jump("Enter", "Spawn");
  316.     }
  317.    
  318.     public void BloodGem (ScriptInterface bot, int quantity) {
  319.         if (bot.Inventory.Contains("Blood Gem of the Archfiend", 30)) return;
  320.        
  321.         while (!bot.Inventory.Contains("Blood Gem of the Archfiend", 30)) {
  322.             if (!bot.Quests.IsInProgress(3743)) bot.Quests.EnsureAccept(3743);
  323.             if (!bot.Inventory.Contains("Fragment of Chaos", 80)) ChaosFragment(bot, 80);
  324.             if (!bot.Inventory.Contains("Tendurrr the Assistant")) Makai(bot, "Tendurrr the Assistant", 1);
  325.             if (!bot.Inventory.ContainsTempItem("Broken Betrayal Blade", 8)) BrokenBetrayal(bot);
  326.             if (bot.Quests.CanComplete(3743)) bot.Quests.EnsureComplete(3743);
  327.         }
  328.    
  329.     }
  330.    
  331.     public void ChaosFragment (ScriptInterface bot, int quantity) {
  332.         if (bot.Inventory.Contains("Fragment of Chaos", 80)) return;
  333.        
  334.         if (bot.Map.Name != "lair")
  335.             bot.Player.Join("lair--6969", "Enter", "Spawn");
  336.         else
  337.             bot.Player.Jump("Enter", "Spawn");
  338.        
  339.         bot.Player.SetSpawnPoint();
  340.        
  341.         while (!bot.Inventory.Contains("Fragment of Chaos", 80)) {
  342.             bot.Player.Kill("*");
  343.         }
  344.        
  345.         bot.Sleep(2000);
  346.     }
  347.    
  348.     public void BrokenBetrayal (ScriptInterface bot) {
  349.         if (bot.Inventory.ContainsTempItem("Broken Betrayal Blade", 8)) return;
  350.        
  351.         if (bot.Map.Name != "evilwarnul")
  352.             bot.Player.Join("evilwarnul-9999", "r12", "Left");
  353.         else
  354.             bot.Player.Jump("r12", "Left");
  355.         bot.Bank.ToInventory("Archfiend's Favor");
  356.         bot.Bank.ToInventory("Nulgath's Approval");
  357.         while(!bot.Inventory.ContainsTempItem("Broken Betrayal Blade", 8)){
  358.             if (bot.Monsters.Exists("Legion Fenrir"))
  359.                 bot.Player.Kill("Legion Fenrir");
  360.             else
  361.                 bot.Player.Kill("*");
  362.         }
  363.         bot.Inventory.ToBank("Archfiend's Favor");
  364.         bot.Inventory.ToBank("Nulgath's Approval");
  365.         bot.Player.Jump("Enter", "Spawn");
  366.     }
  367. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement