Advertisement
mnchngrngs

Untitled

Nov 22nd, 2019
127
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 7.40 KB | None | 0 0
  1. Quagmire: {
  2. description: "Travel to an extremely muddy dimension. It's hard to walk out here, making Overkill useless and Agility difficult. Your Trimps start each run with 100 stacks of Motivated, increasing all Loot gained by 40% per stack (including Radon). After each Zone, your Trimps gain 1 stack of Exhausted, reducing Trimp damage and breed speed by 10% per stack in the World, and 5% per stack in maps (compounding). For every 10 stacks of Exhausted, your Trimps will also attack 100ms slower. You'll also have access to run a special map called 'The Black Bog', which will always scale to Zone level. Completing 'The Black Bog' will reduce your Trimps' Exhausted by 1 stack, but will also reduce their Motivated by 1 stack. Exhausted stacks can be negative, and will increase damage and breed speed. Completing Z70 or reaching 0 Motivated stacks with this Challenge active will end the Challenge, returning the World to normal. If the Challenge is ended by completing Z70, you will gain an additional 150% of all Radon earned.",
  3. motivatedStacks: 100,
  4. exhaustedStacks: 0,
  5. completed: false,
  6. blockU1: true,
  7. allowU2: true,
  8. allowSquared: false,
  9. completeAfterZone: 70,
  10. heldHelium: 0,
  11. heliumThrough: 70,
  12. unlockString: " reach Zone 70",
  13. fireAbandon: true,
  14. filter: function(){
  15. return (getHighestLevelCleared(true) >= 69);
  16. },
  17. start: function(){
  18. createMap(-1, "The Black Bog", "Darkness", 10, 150, 3, true);
  19. this.drawStacks();
  20. },
  21. onComplete: function(){
  22. var reward = game.challenges.Quagmire.heldHelium;
  23. reward *= 1.5;
  24. message("You have completed the Quagmire challenge! You have gained an extra " + prettify(reward) + " Radon, and your world has been returned to normal.", "Notices");
  25. addHelium(reward);
  26. game.challenges.Quagmire.abandon();
  27. },
  28. drawStacks: function(){
  29. manageStacks('Motivated', this.motivatedStacks, true, 'quagmireMotivatedStacks', 'glyphicon glyphicon-gift iconPadLeft', this.stackTooltip("Motivated"), false);
  30. manageStacks('Exhausted', this.exhaustedStacks, true, 'quagmireExhaustedStacks', 'glyphicon glyphicon-bed iconPadLeft', this.stackTooltip("Exhausted"), false);
  31. },
  32. onLoad: function() {
  33. this.drawStacks();
  34. },
  35. onNextWorld: function(){
  36. this.exhaustedStacks++;
  37. this.drawStacks();
  38. },
  39. stackTooltip: function(which){
  40. if (which == "Motivated"){
  41. return "Your Trimps are Motivated, increasing all Loot gained (including Radon) by " + prettify((game.challenges.Quagmire.getLootMult() - 1) * 100) + "%.";
  42. }
  43. var exhaustMult = game.challenges.Quagmire.getExhaustMult();
  44. if (exhaustMult < 1) return "Your Trimps are exhausted, having only " + prettify(exhaustMult * 100) + "% of their normal damage and breed speed.";
  45. return "Your Trimps are not at all exhausted, and have " + prettify((exhaustMult - 1) * 100) + "% more damage and breed speed.";
  46. },
  47. abandon: function(){
  48. this.motivatedStacks = 100;
  49. this.exhaustedStacks = 0;
  50. game.global.challengeActive = "";
  51. manageStacks('Motivated', null, true, 'quagmireMotivatedStacks', null, null, true);
  52. manageStacks('Exhausted', null, true, 'quagmireExhaustedStacks', null, null, true);
  53. this.removeBog();
  54. },
  55. getSpeedPenalty: function(){
  56. if (this.exhaustedStacks < 10) return 0;
  57. var slowCount = Math.floor(this.exhaustedStacks / 10);
  58. return (slowCount * 100);
  59. },
  60. getLootMult: function(){
  61. return 1 + (this.motivatedStacks * 0.4);
  62. },
  63. removeBog: function(){
  64. var bogMap = this.getBogMap();
  65. if (!bogMap) return;
  66. if (game.global.mapsActive && game.global.currentMapId == bogMap.id){
  67. mapsClicked(true);
  68. }
  69. bogMap.noRecycle = false;
  70. recycleMap(getMapIndex(bogMap.id), false, false, true);
  71. if (game.global.preMapsActive) mapsSwitch(true, true);
  72. },
  73. getBogMap: function(){
  74. for (var x = 0; x < game.global.mapsOwnedArray.length; x++){
  75. if (game.global.mapsOwnedArray[x].location == "Darkness"){
  76. return game.global.mapsOwnedArray[x];
  77. }
  78. }
  79. return false;
  80. },
  81. getExhaustMult: function(){
  82. if (this.exhaustedStacks == 0) return 1;
  83. var mult = 1;
  84. var mod = (game.global.mapsActive) ? 0.05 : 0.1;
  85. if (this.exhaustedStacks < 0) mult = Math.pow((1 + mod), Math.abs(this.exhaustedStacks));
  86. else mult = Math.pow((1 - mod), this.exhaustedStacks);
  87. return mult;
  88. }
  89. },
  90.  
  91. if (what == "attack" && game.global.challengeActive == "Quagmire" && game.challenges.Quagmire.exhaustedStacks != 0){
  92. var mult = game.challenges.Quagmire.getExhaustMult();
  93. currentCalc *= mult;
  94. var dispPercent = "";
  95. var dispTotal = "";
  96. if (mult < 1){
  97. textString += "<tr style='color: red'>";
  98. dispPercent = (game.global.mapsActive) ? "-5%" : "-10%";
  99. dispTotal = "x " + prettify(mult);
  100. }
  101. else{
  102. textString += "<tr>";
  103. dispPercent = (game.global.mapsActive) ? "5%" : "10%";
  104. dispTotal = "+ " + prettify((mult - 1) * 100) + "%";
  105. }
  106. textString += "<td class='bdTitle'>Exhausted (Quagmire)</td><td>" + dispPercent + "</td><td>" + game.challenges.Quagmire.exhaustedStacks + "</td><td>" + dispTotal + "</td><td class='bdNumberSm'>" + prettify(currentCalc) + "</td>" + getFluctuation(currentCalc, minFluct, maxFluct) + "</tr>";
  107. }
  108.  
  109. if (item.location == "Darkness"){
  110. btnClass += " blackMap";
  111. level = '<span class="glyphicon glyphicon-globe"></span>';
  112. tooltip = " onmouseover=\"tooltip('Void Map', 'customText', event, 'This Map will scale in level to your current Zone Number. Completing this map will reduce your stacks of Exhausted and Motivated by 1.');\" onmouseout=\"tooltip('hide')\"";
  113. }
  114.  
  115. if (game.global.challengeActive == "Quagmire" && game.challenges.Quagmire.exhaustedStacks != 0){
  116. var mult = game.challenges.Quagmire.getExhaustMult();
  117. currentCalc *= mult;
  118. var dispTotal = "";
  119. if (mult < 1){
  120. textString += "<tr style='color: red'>";
  121. dispTotal = "x " + prettify(mult);
  122. }
  123. else{
  124. textString += "<tr>";
  125. dispTotal = "+ " + prettify((mult - 1) * 100) + "%";
  126. }
  127. textString += "<td class='bdTitle'>Exhausted</td><td class='bdPercent'>" + dispTotal + "</td><td class='bdNumber'>" + prettify(currentCalc) + "</td></tr>";
  128. }
  129.  
  130. if (game.global.challengeActive == "Quagmire"){
  131. potencyMod = potencyMod.mul(game.challenges.Quagmire.getExhaustMult());
  132. }
  133.  
  134. if (game.global.challengeActive == "Quagmire") number *= game.challenges.Quagmire.getExhaustMult();
  135.  
  136. function battleCoordinator(makeUp) {
  137. if (!game.global.fighting) {
  138. battle(null);
  139. return;
  140. }
  141. if (game.options.menu.pauseGame.enabled) return;
  142. game.global.battleCounter += (1000 / game.settings.speed);
  143. var num = (getPerkLevel("Agility")) ? 1000 * Math.pow(1 - game.portal.Agility.modifier, getPerkLevel("Agility")) : 1000;
  144. if (game.talents.hyperspeed.purchased) num -= 100;
  145. if (game.talents.hyperspeed2.purchased)
  146. var hsZoneMod = game.talents.liquification3.purchased ? 0.75 : 0.5;
  147. if (game.global.world <= Math.floor((getHighestLevelCleared(false, true) + 1) * hsZoneMod)){
  148. num -= 100;
  149. }
  150. else if (game.global.mapExtraBonus == "fa")
  151. num -= 100;
  152. if (!game.global.mapsActive && game.global.gridArray[0].name == "Liquimp" && num < 400)
  153. num = 400;
  154. if (game.global.challengeActive == "Quagmire") num += game.challenges.Quagmire.getSpeedPenalty();
  155. if (game.global.battleCounter >= num) {
  156. game.global.battleCounter -= num; //Thanks grabz
  157. fight(makeUp);
  158. }
  159. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement