Random Battle updates

- Fixed Stealth Rock (and Defog/Spin, which isn’t as big of a problem)
being on multiple Pokemon
- Reject Snow Cloak without Snow Warning on the team
- Reject Swift Swim without Drizzle/Rain Dance on the team
- Give Mega Venuasaur Chlorophyll as a starting ability (because
Overgrow is useless)
- Give RestTalk Pokemon Leftovers (so they don’t get Focus Sash if they
are the lead)
This commit is contained in:
The Immortal 2015-08-28 16:46:32 +04:00
parent bcdb9b2926
commit fb55d5a032

View File

@ -1222,7 +1222,7 @@ exports.BattleScripts = {
if (counter.setupType && hasMove['stormthrow']) rejected = true;
break;
case 'defog': case 'rapidspin':
if (counter.setupType || !!counter['speedsetup'] || (hasMove['rest'] && hasMove['sleeptalk']) || teamDetails.hazardClear > 1) rejected = true;
if (counter.setupType || !!counter['speedsetup'] || (hasMove['rest'] && hasMove['sleeptalk']) || teamDetails.hazardClear >= 1) rejected = true;
break;
case 'fakeout':
if (counter.setupType || hasMove['substitute'] || hasMove['switcheroo'] || hasMove['trick']) rejected = true;
@ -1244,7 +1244,7 @@ exports.BattleScripts = {
if (hasMove['rest'] && hasMove['sleeptalk']) rejected = true;
break;
case 'stealthrock':
if (counter.setupType || !!counter['speedsetup'] || hasMove['rest'] || teamDetails.stealthRock > 1) rejected = true;
if (counter.setupType || !!counter['speedsetup'] || hasMove['rest'] || teamDetails.stealthRock >= 1) rejected = true;
break;
case 'switcheroo': case 'trick':
if (counter.setupType || counter.Physical + counter.Special < 2) rejected = true;
@ -1618,12 +1618,14 @@ exports.BattleScripts = {
rejectAbility = !counter['sheerforce'];
} else if (ability === 'Simple') {
rejectAbility = !counter.setupType && !hasMove['cosmicpower'] && !hasMove['flamecharge'];
} else if (ability === 'Snow Cloak') {
rejectAbility = !teamDetails['hail'];
} else if (ability === 'Strong Jaw') {
rejectAbility = !counter['bite'];
} else if (ability === 'Sturdy') {
rejectAbility = !!counter['recoil'] && !counter['recovery'];
} else if (ability === 'Swift Swim') {
rejectAbility = !hasMove['raindance'];
rejectAbility = !hasMove['raindance'] && !teamDetails['rain'];
} else if (ability === 'Unburden') {
rejectAbility = template.baseStats.spe > 120 || (template.id === 'slurpuff' && !counter.setupType);
}
@ -1677,6 +1679,8 @@ exports.BattleScripts = {
ability = 'Magic Guard';
} else if (template.id === 'unfezant') {
ability = 'Super Luck';
} else if (template.id === 'venusaurmega') {
ability = 'Chlorophyll';
}
}
@ -1813,7 +1817,7 @@ exports.BattleScripts = {
item = 'Air Balloon';
} else if (hasMove['outrage'] && (counter.setupType || ability === 'Multiscale')) {
item = 'Lum Berry';
} else if (ability === 'Moody' || hasMove['clearsmog'] || hasMove['detect'] || hasMove['protect'] || hasMove['substitute']) {
} else if (ability === 'Moody' || hasMove['clearsmog'] || hasMove['detect'] || hasMove['protect'] || hasMove['sleeptalk'] || hasMove['substitute']) {
item = 'Leftovers';
} else if (hasMove['lightscreen'] || hasMove['reflect']) {
item = 'Light Clay';
@ -2100,6 +2104,8 @@ exports.BattleScripts = {
// Increment mega, stealthrock, and base species counters
if (isMegaSet) teamDetails.megaCount++;
if (set.ability === 'Snow Warning') teamDetails['hail'] = 1;
if (set.ability === 'Drizzle' || set.moves.indexOf('raindance') >= 0) teamDetails['rain'] = 1;
if (set.moves.indexOf('stealthrock') >= 0) teamDetails.stealthRock++;
if (set.moves.indexOf('defog') >= 0 || set.moves.indexOf('rapidspin') >= 0) teamDetails.hazardClear++;
baseFormes[template.baseSpecies] = 1;