mirror of
https://github.com/smogon/pokemon-showdown.git
synced 2026-04-26 18:57:15 -05:00
Implement a few trivial unimplemented/not fully implemented moves.
Chatter, Freeze Shock, Judgment, Secret Sword, Sketch, Skull Bash, and Synchronoise should all work properly now.
This commit is contained in:
parent
1056df57a7
commit
6e713d05f0
41
movedex.js
41
movedex.js
|
|
@ -1325,6 +1325,9 @@ exports.BattleMovedex = {
|
||||||
name: "Chatter",
|
name: "Chatter",
|
||||||
pp: 20,
|
pp: 20,
|
||||||
priority: 0,
|
priority: 0,
|
||||||
|
onSecondaryHit: function(target, source) {
|
||||||
|
if (source.template.species !== 'Chatot') return false;
|
||||||
|
},
|
||||||
secondary: {
|
secondary: {
|
||||||
chance: 31,
|
chance: 31,
|
||||||
volatileStatus: 'confusion'
|
volatileStatus: 'confusion'
|
||||||
|
|
@ -3565,6 +3568,18 @@ exports.BattleMovedex = {
|
||||||
name: "Freeze Shock",
|
name: "Freeze Shock",
|
||||||
pp: 5,
|
pp: 5,
|
||||||
priority: 0,
|
priority: 0,
|
||||||
|
beforeMoveCallback: function(pokemon) {
|
||||||
|
if (pokemon.removeVolatile('FreezeShock')) return;
|
||||||
|
this.add('prepare-move '+pokemon.id+' FreezeShock');
|
||||||
|
pokemon.addVolatile('FreezeShock');
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
effect: {
|
||||||
|
duration: 2,
|
||||||
|
onModifyPokemon: function(pokemon) {
|
||||||
|
pokemon.lockMove('FreezeShock');
|
||||||
|
}
|
||||||
|
},
|
||||||
secondary: {
|
secondary: {
|
||||||
chance: 30,
|
chance: 30,
|
||||||
status: 'par'
|
status: 'par'
|
||||||
|
|
@ -5304,7 +5319,10 @@ exports.BattleMovedex = {
|
||||||
priority: 0,
|
priority: 0,
|
||||||
secondary: false,
|
secondary: false,
|
||||||
target: "normal",
|
target: "normal",
|
||||||
type: "Normal"
|
type: "Normal",
|
||||||
|
typeCallback: function(pokemon) {
|
||||||
|
return this.runEvent('Plate', pokemon, null, 'Judgment', 'Normal');
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"JumpKick": {
|
"JumpKick": {
|
||||||
num: 26,
|
num: 26,
|
||||||
|
|
@ -8439,6 +8457,7 @@ exports.BattleMovedex = {
|
||||||
accuracy: 100,
|
accuracy: 100,
|
||||||
basePower: 85,
|
basePower: 85,
|
||||||
category: "Special",
|
category: "Special",
|
||||||
|
defensiveCategory: "Physical",
|
||||||
desc: "Inflicts damage based on the target's Defense, not Special Defense.",
|
desc: "Inflicts damage based on the target's Defense, not Special Defense.",
|
||||||
id: "SecretSword",
|
id: "SecretSword",
|
||||||
name: "Secret Sword",
|
name: "Secret Sword",
|
||||||
|
|
@ -8795,6 +8814,7 @@ exports.BattleMovedex = {
|
||||||
name: "Sketch",
|
name: "Sketch",
|
||||||
pp: 1,
|
pp: 1,
|
||||||
priority: 0,
|
priority: 0,
|
||||||
|
onHit: false,
|
||||||
secondary: false,
|
secondary: false,
|
||||||
target: "normal",
|
target: "normal",
|
||||||
type: "Normal"
|
type: "Normal"
|
||||||
|
|
@ -8839,6 +8859,19 @@ exports.BattleMovedex = {
|
||||||
pp: 15,
|
pp: 15,
|
||||||
isContact: true,
|
isContact: true,
|
||||||
priority: 0,
|
priority: 0,
|
||||||
|
beforeMoveCallback: function(pokemon) {
|
||||||
|
if (pokemon.removeVolatile('SkullBash')) return;
|
||||||
|
this.add('message '+pokemon.id+' lowered its head! (placeholder)');
|
||||||
|
pokemon.addVolatile('SkullBash');
|
||||||
|
this.boost({def:1});
|
||||||
|
return true;
|
||||||
|
},
|
||||||
|
effect: {
|
||||||
|
duration: 2,
|
||||||
|
onModifyPokemon: function(pokemon) {
|
||||||
|
pokemon.lockMove('SkullBash');
|
||||||
|
}
|
||||||
|
},
|
||||||
secondary: false,
|
secondary: false,
|
||||||
target: "normal",
|
target: "normal",
|
||||||
type: "Normal"
|
type: "Normal"
|
||||||
|
|
@ -10082,11 +10115,15 @@ exports.BattleMovedex = {
|
||||||
accuracy: 100,
|
accuracy: 100,
|
||||||
basePower: 70,
|
basePower: 70,
|
||||||
category: "Special",
|
category: "Special",
|
||||||
desc: null,
|
desc: "Hits any Pokémon that shares a type with the user.",
|
||||||
id: "Synchronoise",
|
id: "Synchronoise",
|
||||||
name: "Synchronoise",
|
name: "Synchronoise",
|
||||||
pp: 15,
|
pp: 15,
|
||||||
priority: 0,
|
priority: 0,
|
||||||
|
onHit: function(target, source) {
|
||||||
|
if (target.hasType(source.types[0]) || target.hasType(source.types[1])) return;
|
||||||
|
return false;
|
||||||
|
},
|
||||||
secondary: false,
|
secondary: false,
|
||||||
target: "normal",
|
target: "normal",
|
||||||
type: "Psychic"
|
type: "Psychic"
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user