From 5ed4a13610ea088459f6319323c1462c4486f1ad Mon Sep 17 00:00:00 2001 From: The Immortal Date: Sat, 18 Jul 2015 03:04:54 +0400 Subject: [PATCH] Random Battle: Improve Pyroar and Rapidash - Reject Sunny Day if the Pokemon lacks an ability that benefits, and lacks SolarBeam - Add Dark Pulse to Pyroar to fix the issue raised in #2063 - Reordered the Status cases to weather/status/recovery/other instead of just alphabetical --- data/formats-data.js | 2 +- data/scripts.js | 30 +++++++++++++++++------------- 2 files changed, 18 insertions(+), 14 deletions(-) diff --git a/data/formats-data.js b/data/formats-data.js index e3d72a7e8e..cd1fc1c790 100644 --- a/data/formats-data.js +++ b/data/formats-data.js @@ -4944,7 +4944,7 @@ exports.BattleFormatsData = { tier: "LC" }, pyroar: { - randomBattleMoves: ["sunnyday","fireblast","hypervoice","solarbeam","willowisp"], + randomBattleMoves: ["sunnyday","fireblast","hypervoice","solarbeam","willowisp","darkpulse"], randomDoubleBattleMoves: ["hypervoice","fireblast","willowisp","protect","sunnyday","solarbeam"], tier: "NU" }, diff --git a/data/scripts.js b/data/scripts.js index 26e6c96071..2609e7c329 100644 --- a/data/scripts.js +++ b/data/scripts.js @@ -1358,21 +1358,12 @@ exports.BattleScripts = { break; // Status: - case 'raindance': case 'sunnyday': + case 'raindance': if ((hasMove['rest'] && hasMove['sleeptalk']) || counter.Physical + counter.Special < 2) rejected = true; break; - case 'rest': - if (!hasMove['sleeptalk'] && movePool.indexOf('sleeptalk') >= 0) rejected = true; - if (hasMove['moonlight'] || hasMove['painsplit'] || hasMove['recover'] || hasMove['synthesis']) rejected = true; - break; - case 'roar': - if (hasMove['dragontail']) rejected = true; - break; - case 'roost': case 'softboiled': case 'synthesis': - if (hasMove['wish']) rejected = true; - break; - case 'substitute': - if (hasMove['dracometeor'] || (hasMove['leafstorm'] && !hasAbility['Contrary']) || hasMove['pursuit'] || hasMove['taunt'] || hasMove['uturn'] || hasMove['voltswitch']) rejected = true; + case 'sunnyday': + if (!hasAbility['Chlorophyll'] && !hasAbility['Flower Gift'] && !hasAbility['Forecast'] && !hasMove['solarbeam']) rejected = true; + if ((hasMove['rest'] && hasMove['sleeptalk']) || counter.Physical + counter.Special < 2) rejected = true; break; case 'stunspore': case 'thunderwave': if (counter.setupType || !!counter['speedsetup']) rejected = true; @@ -1386,6 +1377,19 @@ exports.BattleScripts = { case 'willowisp': if (hasMove['lavaplume'] || hasMove['sacredfire'] || hasMove['scald'] || hasMove['spore']) rejected = true; break; + case 'rest': + if (!hasMove['sleeptalk'] && movePool.indexOf('sleeptalk') >= 0) rejected = true; + if (hasMove['moonlight'] || hasMove['painsplit'] || hasMove['recover'] || hasMove['synthesis']) rejected = true; + break; + case 'roost': case 'softboiled': case 'synthesis': + if (hasMove['wish']) rejected = true; + break; + case 'roar': + if (hasMove['dragontail']) rejected = true; + break; + case 'substitute': + if (hasMove['dracometeor'] || (hasMove['leafstorm'] && !hasAbility['Contrary']) || hasMove['pursuit'] || hasMove['taunt'] || hasMove['uturn'] || hasMove['voltswitch']) rejected = true; + break; } // Increased/decreased priority moves unneeded with moves that boost only speed