mirror of
https://github.com/smogon/pokemon-showdown-client.git
synced 2026-03-21 17:50:29 -05:00
32064 lines
605 KiB
JavaScript
32064 lines
605 KiB
JavaScript
/*
|
|
|
|
License: CC0 (public domain)
|
|
<http://creativecommons.org/publicdomain/zero/1.0/>
|
|
|
|
|
|
This license DOES extend to all images in the fx/ folder, with the exception of icicle.png, lightning.png, and bone.png.
|
|
|
|
icicle.png and lightning.png by Clint Bellanger are triple-licensed GPLv2/GPLv3/CC-BY-SA-3.0.
|
|
<http://opengameart.org/content/icicle-spell>
|
|
<http://opengameart.org/content/lightning-shock-spell>
|
|
|
|
|
|
rocks.png, rock1.png, rock2.png by PO user "Gilad" is licensed GPLv3.
|
|
|
|
|
|
This license DOES NOT extend to any images in the sprites/ folder.
|
|
|
|
|
|
This license DOES NOT extend to any other files of the Pokemon replay viewer.
|
|
|
|
*/
|
|
|
|
var BattleEffects = {
|
|
wisp: {
|
|
url: 'wisp.png',
|
|
w: 100, h: 100
|
|
},
|
|
poisonwisp: {
|
|
url: 'poisonwisp.png',
|
|
w: 100, h: 100
|
|
},
|
|
waterwisp: {
|
|
url: 'waterwisp.png',
|
|
w: 100, h: 100
|
|
},
|
|
mudwisp: {
|
|
url: 'mudwisp.png',
|
|
w: 100, h: 100
|
|
},
|
|
fireball: {
|
|
url: 'fireball.png',
|
|
w: 64, h: 64
|
|
},
|
|
bluefireball: {
|
|
url: 'bluefireball.png',
|
|
w: 64, h: 64
|
|
},
|
|
icicle: {
|
|
url: 'icicle.png', // http://opengameart.org/content/icicle-spell
|
|
w: 80, h: 60
|
|
},
|
|
lightning: {
|
|
url: 'lightning.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 41, h: 229
|
|
},
|
|
rocks: {
|
|
url: 'rocks.png', // Pokemon Online - Gilad
|
|
w: 100, h: 100
|
|
},
|
|
rock1: {
|
|
url: 'rock1.png', // Pokemon Online - Gilad
|
|
w: 64, h: 80
|
|
},
|
|
rock2: {
|
|
url: 'rock2.png', // Pokemon Online - Gilad
|
|
w: 66, h: 72
|
|
},
|
|
rock3: {
|
|
url: 'rock3.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 66, h: 72
|
|
},
|
|
leaf1: {
|
|
url: 'leaf1.png',
|
|
w: 32, h: 26
|
|
},
|
|
leaf2: {
|
|
url: 'leaf2.png',
|
|
w: 40, h: 26
|
|
},
|
|
bone: {
|
|
url: 'bone.png',
|
|
w: 29, h: 29
|
|
},
|
|
caltrop: {
|
|
url: 'caltrop.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 80, h: 80
|
|
},
|
|
poisoncaltrop: {
|
|
url: 'poisoncaltrop.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 80, h: 80
|
|
},
|
|
shadowball: {
|
|
url: 'shadowball.png',
|
|
w: 100, h: 100
|
|
},
|
|
energyball: {
|
|
url: 'energyball.png',
|
|
w: 100, h: 100
|
|
},
|
|
electroball: {
|
|
url: 'electroball.png',
|
|
w: 100, h: 100
|
|
},
|
|
mistball: {
|
|
url: 'mistball.png',
|
|
w: 100, h: 100
|
|
},
|
|
iceball: {
|
|
url: 'iceball.png',
|
|
w: 100, h: 100
|
|
},
|
|
flareball: {
|
|
url: 'flareball.png',
|
|
w: 100, h: 100
|
|
},
|
|
pokeball: {
|
|
url: 'pokeball.png',
|
|
w: 24, h: 24
|
|
},
|
|
fist: {
|
|
url: 'fist.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 55, h: 49
|
|
},
|
|
fist1: {
|
|
url: 'fist1.png',
|
|
w: 49, h: 55
|
|
},
|
|
foot: {
|
|
url: 'foot.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 50, h: 75
|
|
},
|
|
topbite: {
|
|
url: 'topbite.png',
|
|
w: 108, h: 64
|
|
},
|
|
bottombite: {
|
|
url: 'bottombite.png',
|
|
w: 108, h: 64
|
|
},
|
|
web: {
|
|
url: 'web.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 120, h: 122
|
|
},
|
|
leftclaw: {
|
|
url: 'leftclaw.png',
|
|
w: 44, h: 60
|
|
},
|
|
rightclaw: {
|
|
url: 'rightclaw.png',
|
|
w: 44, h: 60
|
|
},
|
|
leftslash: {
|
|
url: 'leftslash.png', // by Pokemon Showdown user Modeling Clay
|
|
w: 57, h: 56
|
|
},
|
|
rightslash: {
|
|
url: 'rightslash.png', // by Pokemon Showdown user Modeling Clay
|
|
w: 57, h: 56
|
|
},
|
|
leftchop: {
|
|
url: 'leftchop.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 100, h: 130
|
|
},
|
|
rightchop: {
|
|
url: 'rightchop.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 100, h: 130
|
|
},
|
|
angry: {
|
|
url: 'angry.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 30, h: 30
|
|
},
|
|
heart: {
|
|
url: 'heart.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 30, h: 30
|
|
},
|
|
pointer: {
|
|
url: 'pointer.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 100, h: 100
|
|
},
|
|
sword: {
|
|
url: 'sword.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 48, h: 100
|
|
},
|
|
impact: {
|
|
url: 'impact.png', // by Pokemon Showdown user SailorCosmos
|
|
w: 127, h: 119
|
|
},
|
|
stare: {
|
|
url: 'stare.png',
|
|
w: 100, h: 35
|
|
},
|
|
shine: {
|
|
url: 'shine.png', // by Smogon user Jajoken
|
|
w: 127, h: 119
|
|
},
|
|
feather: {
|
|
url: 'feather.png', // Ripped from http://www.clker.com/clipart-black-and-white-feather.html
|
|
w: 100, h: 38
|
|
},
|
|
shell: {
|
|
url: 'shell.png', // by Smogon user Jajoken
|
|
w: 100, h: 91.5
|
|
},
|
|
petal: {
|
|
url: 'petal.png', // by Smogon user Jajoken
|
|
w: 60, h: 60
|
|
},
|
|
gear: {
|
|
url: 'gear.png', // by Smogon user Jajoken
|
|
w: 100, h: 100
|
|
},
|
|
alpha: {
|
|
url: 'alpha.png', // Ripped from Pokemon Global Link
|
|
w: 80, h: 80
|
|
},
|
|
omega: {
|
|
url: 'omega.png', // Ripped from Pokemon Global Link
|
|
w: 80, h: 80
|
|
},
|
|
rainbow: {
|
|
url: 'rainbow.png',
|
|
w: 128, h: 128
|
|
},
|
|
zsymbol: {
|
|
url: 'z-symbol.png', // From http://froggybutt.deviantart.com/art/Pokemon-Z-Move-symbol-633125033
|
|
w: 150, h: 100
|
|
},
|
|
none: {
|
|
// this is for passing to battle.pos() and battle.posT() for CSS effects
|
|
w: 100, h: 100
|
|
}
|
|
};
|
|
(function () {
|
|
if (!window.Tools || !Tools.resourcePrefix) return;
|
|
for (var i in BattleEffects) {
|
|
if (!BattleEffects[i].url) continue;
|
|
BattleEffects[i].url = Tools.fxPrefix + BattleEffects[i].url;
|
|
}
|
|
})();
|
|
var BattleBackdropsThree = [
|
|
'bg-gen3.png',
|
|
'bg-gen3-cave.png',
|
|
'bg-gen3-ocean.png',
|
|
'bg-gen3-sand.png',
|
|
'bg-gen3-forest.png',
|
|
'bg-gen3-arena.png'
|
|
];
|
|
var BattleBackdropsFour = [
|
|
'bg-gen4.png',
|
|
'bg-gen4-cave.png',
|
|
'bg-gen4-snow.png',
|
|
'bg-gen4-indoors.png',
|
|
'bg-gen4-water.png'
|
|
];
|
|
var BattleBackdropsFive = [
|
|
'bg-beach.png',
|
|
'bg-beachshore.png',
|
|
'bg-desert.png',
|
|
'bg-meadow.png',
|
|
'bg-thunderplains.png',
|
|
'bg-city.png',
|
|
'bg-earthycave.png',
|
|
'bg-mountain.png',
|
|
'bg-volcanocave.png',
|
|
'bg-dampcave.png',
|
|
'bg-forest.png',
|
|
'bg-river.png',
|
|
'bg-deepsea.png',
|
|
'bg-icecave.png',
|
|
'bg-route.png'
|
|
];
|
|
var BattleBackdrops = [
|
|
'bg-aquacordetown.jpg',
|
|
'bg-beach.jpg',
|
|
'bg-city.jpg',
|
|
'bg-dampcave.jpg',
|
|
'bg-darkbeach.jpg',
|
|
'bg-darkcity.jpg',
|
|
'bg-darkmeadow.jpg',
|
|
'bg-deepsea.jpg',
|
|
'bg-desert.jpg',
|
|
'bg-earthycave.jpg',
|
|
'bg-elite4drake.jpg',
|
|
'bg-forest.jpg',
|
|
'bg-icecave.jpg',
|
|
'bg-leaderwallace.jpg',
|
|
'bg-library.jpg',
|
|
'bg-meadow.jpg',
|
|
'bg-orasdesert.jpg',
|
|
'bg-orassea.jpg',
|
|
'bg-skypillar.jpg'
|
|
];
|
|
var BattleStats = {
|
|
atk: 'Attack', def: 'Defense', spa: 'Special Attack', spd: 'Special Defense', spe: 'Speed', accuracy: 'accuracy', evasion: 'evasiveness', spc: 'Special'
|
|
};
|
|
var BattleItems = {
|
|
};
|
|
var BattleOtherAnims = {
|
|
attack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, 'linear');
|
|
}
|
|
},
|
|
contactattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(500);
|
|
}
|
|
},
|
|
xattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
}
|
|
},
|
|
slashattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(500);
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
clawattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('leftclaw', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftclaw', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightclaw', {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightclaw', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
punchattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
bite: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('topbite', {
|
|
x: defender.x,
|
|
y: defender.y + 50,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0,
|
|
time: 370
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('bottombite', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0,
|
|
time: 370
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
kick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
fastattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 260
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 560
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 310
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 610
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 300,
|
|
opacity: .5
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.x,
|
|
z: defender.behind(100),
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel');
|
|
defender.delay(260);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
sneakattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: attacker.leftof(-20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-120),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
opacity: 1,
|
|
time: 250
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(330);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(350);
|
|
}
|
|
},
|
|
spinattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 60,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic2');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(500);
|
|
}
|
|
},
|
|
bound: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 0
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
attacker.anim({
|
|
y: attacker.y + 15,
|
|
z: attacker.behind(10),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
attacker.delay(25);
|
|
attacker.anim({
|
|
x: attacker.leftof(-10),
|
|
y: attacker.y + 15,
|
|
z: attacker.behind(5),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
}
|
|
},
|
|
selfstatus: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
lightstatus: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.1,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: .5,
|
|
time: 600
|
|
}, 'linear');
|
|
}
|
|
},
|
|
chargestatus: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 60,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 60,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 70,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
heal: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 5,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 10,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 20,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 25,
|
|
y: attacker.y + 20,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: attacker.x - 25,
|
|
y: attacker.y - 40,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel');
|
|
}
|
|
},
|
|
shiny: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect('#000000', 800, 0.3, 100);
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 450
|
|
}, {
|
|
y: attacker.y + 35,
|
|
opacity: 0,
|
|
time: 675
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 475
|
|
}, {
|
|
x: attacker.x + 25,
|
|
y: attacker.y + 30,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: attacker.x - 25,
|
|
y: attacker.y + 30,
|
|
opacity: 0,
|
|
time: 725
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 5,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 550
|
|
}, {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 5,
|
|
opacity: 0,
|
|
time: 775
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 650
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y - 5,
|
|
opacity: 0,
|
|
time: 875
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 675
|
|
}, {
|
|
y: attacker.y - 20,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'decel');
|
|
}
|
|
},
|
|
flight: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: attacker.leftof(-200),
|
|
y: attacker.y + 80,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(100),
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 175
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(700);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
shake: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
attacker.anim({x: attacker.x - 10, time: 200});
|
|
attacker.anim({x: attacker.x + 10, time: 300});
|
|
attacker.anim({x: attacker.x, time: 200});
|
|
}
|
|
},
|
|
dance: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
attacker.anim({x: attacker.x - 10});
|
|
attacker.anim({x: attacker.x + 10});
|
|
attacker.anim({x: attacker.x});
|
|
}
|
|
},
|
|
consume: {
|
|
anim: function (battle, args) {
|
|
var defender = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.leftof(-25),
|
|
y: defender.y + 40,
|
|
z: defender.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.leftof(-15),
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'swing', 'fade');
|
|
|
|
defender.delay(400);
|
|
defender.anim({
|
|
y: defender.y + 5,
|
|
yscale: 1.1,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
y: defender.y + 5,
|
|
yscale: 1.1,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
}
|
|
},
|
|
leech: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .7,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 500,
|
|
opacity: 0.1
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .7,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 550,
|
|
opacity: 0.1
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600,
|
|
opacity: 0.1
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
drain: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 500,
|
|
opacity: 0
|
|
}, 'ballistic2');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 550,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600,
|
|
opacity: 0
|
|
}, 'ballistic2Under');
|
|
}
|
|
},
|
|
hydroshot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 75
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
sound: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 0
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 150
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
gravity: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
y: attacker.y - 20,
|
|
yscale: 0.5,
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.delay(200);
|
|
attacker.anim({
|
|
time: 300
|
|
});
|
|
}
|
|
},
|
|
futuresighthit: {
|
|
anim: function (battle, args) {
|
|
var defender = args[0];
|
|
battle.backgroundEffect('#AA44BB', 250, 0.6);
|
|
battle.backgroundEffect('#AA44FF', 250, 0.6, 400);
|
|
defender.anim({
|
|
scale: 1.2,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
scale: 1,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
scale: 1.4,
|
|
time: 150
|
|
});
|
|
defender.anim({
|
|
scale: 1,
|
|
time: 150
|
|
});
|
|
battle.activityWait(700);
|
|
}
|
|
},
|
|
doomdesirehit: {
|
|
anim: function (battle, args) {
|
|
var defender = args[0];
|
|
|
|
battle.backgroundEffect('#ffffff', 600, 0.6);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
defender.delay(100);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
itemoff: {
|
|
anim: function (battle, args) {
|
|
var defender = args[0];
|
|
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 40,
|
|
z: defender.behind(70),
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'ballistic2');
|
|
}
|
|
},
|
|
anger: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('angry', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
bidecharge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: attacker.x - 2.5,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x + 2.5,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x - 2.5,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x + 2.5,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x - 2.5,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
bideunleash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.6
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 75
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
spectralthiefboost: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#000000 30%, #440044', 1400, 0.5);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
xscale: 0.5,
|
|
yscale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 2,
|
|
xscale: 4,
|
|
opacity: 0.1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1
|
|
}, {
|
|
x: defender.x + 50,
|
|
scale: 3,
|
|
xscale: 3.5,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1
|
|
}, {
|
|
x: defender.x - 50,
|
|
scale: 3,
|
|
xscale: 3.5,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 35,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
scale: 0.25,
|
|
time: 50
|
|
}, {
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 35,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
scale: 0.25,
|
|
time: 100
|
|
}, {
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
scale: 0.5,
|
|
time: 150
|
|
}, {
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
scale: 0.25,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'accel');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 450
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
time: 950
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
xscale: 0.5,
|
|
yscale: 1,
|
|
opacity: 0.5,
|
|
time: 750
|
|
}, {
|
|
scale: 2,
|
|
xscale: 4,
|
|
opacity: 0.1,
|
|
time: 1200
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x + 35,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
opacity: 0.4,
|
|
scale: 0.25,
|
|
time: 750
|
|
}, {
|
|
y: attacker.y,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x - 35,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
scale: 0.25,
|
|
time: 800
|
|
}, {
|
|
y: attacker.y,
|
|
opacity: 0,
|
|
time: 1150
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
scale: 0.25,
|
|
time: 950
|
|
}, {
|
|
y: attacker.y,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
scale: 0.25,
|
|
time: 1000
|
|
}, {
|
|
y: attacker.y,
|
|
opacity: 0,
|
|
time: 1350
|
|
}, 'decel');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: attacker.x + 75,
|
|
opacity: 0.3,
|
|
time: 1200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: attacker.x - 75,
|
|
opacity: 0.3,
|
|
time: 1200
|
|
}, 'linear', 'fade');
|
|
|
|
defender.anim({
|
|
x: defender.x - 15,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 15,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 15,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 15,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 15,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 15,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
schoolingin: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#0000DD', 600, 0.2);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.5,
|
|
opacity: 1
|
|
}, {
|
|
scale: 3,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 0.3
|
|
}, {
|
|
scale: 3.25,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.leftof(200),
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.leftof(-140),
|
|
y: attacker.y - 60,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.leftof(-140),
|
|
y: attacker.y + 50,
|
|
z: attacker.behind(170),
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.behind(-250),
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.leftof(240),
|
|
y: attacker.y - 80,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic2Under');
|
|
}
|
|
},
|
|
schoolingout: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#0000DD', 600, 0.2);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 1
|
|
}, {
|
|
scale: 2,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 3.25,
|
|
opacity: 0.3
|
|
}, {
|
|
scale: 2.5,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.leftof(200),
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: attacker.leftof(-140),
|
|
y: attacker.y - 60,
|
|
z: attacker.z,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: attacker.leftof(-140),
|
|
y: attacker.y + 50,
|
|
z: attacker.behind(170),
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.behind(-250),
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, {
|
|
x: attacker.leftof(240),
|
|
y: attacker.y - 80,
|
|
z: attacker.z,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, 'ballistic2Under');
|
|
}
|
|
},
|
|
primalalpha: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#0000DD', 500, 0.4);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('alpha', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
}
|
|
},
|
|
primalomega: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 500, 0.4);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('omega', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
}
|
|
},
|
|
megaevo: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#835BA5', 500, 0.6);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rainbow', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
zpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect('linear-gradient(#000000 20%, #0000DD)', 1800, 0.4);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 60,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 60,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 70,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.7,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 0.2,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('zsymbol', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'decel', 'explode');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, {
|
|
y: attacker.y + 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 1000
|
|
}, {
|
|
y: attacker.y + 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1400
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 1200
|
|
}, {
|
|
y: attacker.y + 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1600
|
|
}, 'accel');
|
|
}
|
|
},
|
|
powerconstruct: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.backgroundEffect('#000000', 1000, 0.7);
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 150 * xf[i],
|
|
y: attacker.y - 50,
|
|
z: attacker.z + 70 * yf[i],
|
|
scale: 0.1,
|
|
xscale: 0.5,
|
|
opacity: 0.4
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
xscale: 0.8,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 200 * xf2[i],
|
|
y: attacker.y - 50,
|
|
z: attacker.z + 90 * yf2[i],
|
|
scale: 0.1,
|
|
xscale: 0.5,
|
|
opacity: 0.4
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
xscale: 0.8,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 50 * xf[i],
|
|
y: attacker.y - 50,
|
|
z: attacker.z + 100 * yf[i],
|
|
scale: 0.1,
|
|
xscale: 0.5,
|
|
opacity: 0.4,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
xscale: 0.8,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 100 * xf2[i],
|
|
y: attacker.y - 50,
|
|
z: attacker.z + 90 * yf2[i],
|
|
scale: 0.1,
|
|
xscale: 0.5,
|
|
opacity: 0.4,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
xscale: 0.8,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
}
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 50
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 3.5,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
scale: 3.5,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
}
|
|
}
|
|
};
|
|
var BattleStatusAnims = {
|
|
brn: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.3
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'swing', 'fade');
|
|
}
|
|
},
|
|
psn: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
slp: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
par: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 0.2
|
|
}, {
|
|
scale: 2,
|
|
opacity: .1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.delay(100);
|
|
attacker.anim({
|
|
x: attacker.x - 1,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x + 1,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x - 1,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x + 1,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: attacker.x - 1,
|
|
time: 75
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
frz: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
flinch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2
|
|
}, {
|
|
scale: 3,
|
|
opacity: .1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
attracted: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('heart', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('heart', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('heart', {
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
confused: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: .1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 50,
|
|
scale: .15,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: .1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 50,
|
|
scale: .15,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: .1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x - 50,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: .15,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x + 50,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
};
|
|
BattleStatusAnims['focuspunch'] = {anim:BattleStatusAnims['flinch'].anim};
|
|
|
|
var BattleMoveAnims = {
|
|
taunt: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 30,
|
|
scale: 0.4,
|
|
xscale: 0.4,
|
|
yscale: 0.4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
battle.showEffect('angry', {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: defender.x,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
instruct: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 30,
|
|
scale: 0.4,
|
|
xscale: 0.4,
|
|
yscale: 0.4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
time: 1000
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 1000
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
quash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 15,
|
|
yscale: 0.5,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'decel');
|
|
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 400
|
|
}, {
|
|
y: defender.y,
|
|
scale: 0.25,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
swagger: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
|
|
battle.showEffect('angry', {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('angry', {
|
|
x: defender.x,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
swordsdance: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
battle.showEffect('sword', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x - 50,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 200
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('sword', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 50,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200
|
|
}, 'ballistic2back', 'fade');
|
|
battle.showEffect('sword', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 50,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('sword', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 50,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'ballistic2back', 'fade');
|
|
battle.showEffect('sword', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 50,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('sword', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'ballistic2Back', 'fade');
|
|
}
|
|
},
|
|
quiverdance: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#987058', 800, 0.3, 400);
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
},
|
|
dragondance: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 50,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y - 50,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'ballistic');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x + 10,
|
|
y: attacker.y - 60,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
agility: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({x: attacker.x - 10, time: 200});
|
|
attacker.anim({x: attacker.x + 10, time: 300});
|
|
attacker.anim({x: attacker.x - 20, time: 150});
|
|
attacker.anim({x: attacker.x + 20, time: 150});
|
|
attacker.anim({x: attacker.x, opacity: 0, time: 1});
|
|
attacker.delay(550);
|
|
attacker.anim({x: attacker.x, time: 150});
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x + 20,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, {
|
|
x: attacker.x - 30,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'decel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, {
|
|
x: attacker.x + 30,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'decel');
|
|
}
|
|
},
|
|
doubleteam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
}
|
|
},
|
|
metronome: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 35,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 35,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 30,
|
|
scale: 0.4,
|
|
xscale: 0.4,
|
|
yscale: 0.4,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
}
|
|
},
|
|
teeterdance: {
|
|
anim: BattleOtherAnims.shake.anim
|
|
},
|
|
splash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 40,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 450
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'fade');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 15,
|
|
time: 150
|
|
}, 'decel');
|
|
attacker.anim({
|
|
time: 150
|
|
}, 'accel');
|
|
attacker.anim({
|
|
y: attacker.y + 15,
|
|
time: 150
|
|
}, 'decel');
|
|
attacker.anim({
|
|
time: 150
|
|
}, 'accel');
|
|
attacker.anim({
|
|
y: attacker.y + 15,
|
|
time: 150
|
|
}, 'decel');
|
|
attacker.anim({
|
|
time: 150
|
|
}, 'accel');
|
|
}
|
|
},
|
|
encore: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
attacker.anim({x: attacker.x - 10, time: 100});
|
|
attacker.anim({x: attacker.x + 10, time: 200});
|
|
attacker.anim({x: attacker.x, time: 100});
|
|
}
|
|
},
|
|
attract: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.shake.anim(battle, args);
|
|
battle.showEffect('heart', {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('heart', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('heart', {
|
|
x: defender.x,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
raindance: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
sunnyday: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
hail: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
sandstorm: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
gravity: {
|
|
anim: function () {
|
|
// do not give Gravity an animation,
|
|
// it'll conflict with the gravity animation in BattleOtherAnims
|
|
// this one prevents the wisp from showing up
|
|
}
|
|
},
|
|
trickroom: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
magicroom: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
wonderroom: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
afteryou: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
allyswitch: {
|
|
anim: function () {
|
|
// do not give Ally Switch an animation,
|
|
// it'll conflict with the animation of the switch itself
|
|
}
|
|
},
|
|
babydolleyes: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
faketears: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
tearfullook: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
featherdance: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: .4,
|
|
time: 700
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x - 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: .4,
|
|
time: 900
|
|
}, 'ballistic2Under', 'fade');
|
|
|
|
battle.showEffect('feather', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 5,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 700
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x + 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 900
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x - 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 1000
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
followme: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
foresight: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
mimic: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect(defender.sp, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
sketch: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
odorsleuth: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
celebrate: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
playnice: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
tailwhip: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
leer: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
kinesis: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#AA44BB', 450, 0.6, 450);
|
|
battle.backgroundEffect('#AA44FF', 250, 0.6, 800);
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
}
|
|
},
|
|
haze: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#FFFFFF', 1000, 0.3);
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
}
|
|
},
|
|
electricterrain: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#FFFF00', 1000, 0.3);
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
}
|
|
},
|
|
grassyterrain: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#9AB440', 1000, 0.3);
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
}
|
|
},
|
|
mistyterrain: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#FF99FF', 1000, 0.3);
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
}
|
|
},
|
|
topsyturvy: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
embargo: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
healblock: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
flash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('#ffffff', 600, 0.6);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(-10),
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.8
|
|
}, {
|
|
scale: 15,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
tailwind: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(40),
|
|
scale: 0.3,
|
|
opacity: 1
|
|
}, {
|
|
z: attacker.behind(-40),
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(40),
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
z: attacker.behind(-40),
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(40),
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
z: attacker.behind(-40),
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
aerialace: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 260
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 560
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 260
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 560
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 310
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 610
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 60,
|
|
z: defender.behind(-40),
|
|
time: 250
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-40),
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 60,
|
|
z: defender.behind(-40),
|
|
opacity: 0.5,
|
|
time: 250
|
|
}, {
|
|
x: defender.leftof(-5),
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
time: 350
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-40),
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
x: defender.leftof(-5),
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
time: 400
|
|
}, 'ballistic2', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 60,
|
|
z: defender.behind(-80),
|
|
time: 200,
|
|
opacity: 0.5
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(-5),
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
time: 100,
|
|
opacity: 0.5
|
|
});
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(260);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
bravebird: {
|
|
anim: BattleOtherAnims.flight.anim
|
|
},
|
|
acrobatics: {
|
|
anim: BattleOtherAnims.flight.anim
|
|
},
|
|
flyingpress: {
|
|
anim: BattleOtherAnims.flight.anim
|
|
},
|
|
steelwing: {
|
|
anim: BattleOtherAnims.flight.anim
|
|
},
|
|
wingattack: {
|
|
anim: BattleOtherAnims.flight.anim
|
|
},
|
|
dragonbreath: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: .5
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
scale: 1,
|
|
opacity: .2
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: .5,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
scale: 1,
|
|
opacity: .2
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: .5,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
scale: 1,
|
|
opacity: .2
|
|
}, 'decel');
|
|
}
|
|
},
|
|
dragonpulse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.y - attacker.y) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 20 * i
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.5,
|
|
opacity: 0.3,
|
|
time: 20 * i
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-15),
|
|
scale: 0.5,
|
|
opacity: 0.6
|
|
}, {
|
|
scale: 0.6,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
focusblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#B84038', 700, .6);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: .3
|
|
}, {
|
|
scale: .6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
scale: .8,
|
|
opacity: .6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: .6,
|
|
opacity: .8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: .8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
defender.delay(800);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
aurasphere: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#cc9900', 500, 0.3);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3
|
|
}, {
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
z: attacker.behind(-30),
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0.1,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
defender.delay(800);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
technoblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: .3
|
|
}, {
|
|
z: attacker.behind(-30),
|
|
scale: .6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
z: attacker.behind(-30),
|
|
scale: .8,
|
|
opacity: .6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: .6,
|
|
opacity: .8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: .8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
defender.delay(800);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
painsplit: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
flail: {
|
|
anim: BattleOtherAnims.xattack.anim
|
|
},
|
|
uturn: {
|
|
anim: BattleOtherAnims.spinattack.anim
|
|
},
|
|
rapidspin: {
|
|
anim: BattleOtherAnims.spinattack.anim
|
|
},
|
|
gyroball: {
|
|
anim: BattleOtherAnims.spinattack.anim
|
|
},
|
|
voltswitch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-130),
|
|
opacity: 0.8,
|
|
time: 275
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
opacity: 0.7,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 0,
|
|
time: 700
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
z: attacker.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
attacker.anim({
|
|
z: defender.behind(-170),
|
|
time: 100
|
|
}, 'accel');
|
|
attacker.anim({
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.delay(500);
|
|
defender.anim({
|
|
x: defender.leftof(5),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
thunderwave: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: .1,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
shockwave: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 70,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
xscale: 5,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
xscale: 10,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 70,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
xscale: 5,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
xscale: 10,
|
|
opacity: 0.1,
|
|
time: 700
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 250
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
discharge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 150
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 750
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
bugbuzz: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 0
|
|
}, {
|
|
scale: 8,
|
|
opacity: .07,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
scale: 8,
|
|
opacity: .07,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
scale: 8,
|
|
opacity: .07,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, {
|
|
scale: 2,
|
|
opacity: .1,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
explosion: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: .6
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
attacker.delay(450).anim({
|
|
scale: 4,
|
|
time: 400,
|
|
opacity: 0
|
|
}, 'linear');
|
|
}
|
|
},
|
|
auroraveil: {
|
|
anim: function () {}
|
|
},
|
|
reflect: {
|
|
anim: function () {}
|
|
},
|
|
safeguard: {
|
|
anim: function () {}
|
|
},
|
|
lightscreen: {
|
|
anim: function () {}
|
|
},
|
|
mist: {
|
|
anim: function () {}
|
|
},
|
|
transform: {
|
|
anim: function () {}
|
|
},
|
|
bellydrum: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('leftchop', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 1
|
|
}, {
|
|
z: attacker.behind(5),
|
|
scale: 0.4,
|
|
time: 100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightchop', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
z: attacker.behind(5),
|
|
scale: 0.4,
|
|
time: 250
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftchop', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
z: attacker.behind(5),
|
|
scale: 0.4,
|
|
time: 450
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightchop', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
z: attacker.behind(5),
|
|
scale: 0.4,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.behind(5),
|
|
scale: 0.75,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.behind(5),
|
|
scale: 0.75,
|
|
opacity: 0.3,
|
|
time: 250
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.behind(5),
|
|
scale: 0.75,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 10,
|
|
z: attacker.behind(5),
|
|
scale: 0.75,
|
|
opacity: 0.3,
|
|
time: 550
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
aromatherapy: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
healbell: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
magiccoat: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
protect: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
detect: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
kingsshield: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
spikyshield: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
banefulbunker: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect('linear-gradient(#440044 30%, #000000', 600, 0.2);
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.25,
|
|
yscale: 0.75,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 2,
|
|
xscale: 3.5,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
opacity: 0.5,
|
|
scale: 1.5
|
|
}, {
|
|
scale: 1.8,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
scale: 3
|
|
}, {
|
|
scale: 1.8,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
craftyshield: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
matblock: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
quickguard: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
wideguard: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
endure: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
bide: {
|
|
anim: BattleOtherAnims.bidecharge.anim
|
|
},
|
|
focusenergy: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
rockpolish: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('leftslash', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.3
|
|
}, {
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('rightslash', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('leftslash', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect('rightslash', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6
|
|
}, {
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
},
|
|
harden: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
defensecurl: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
irondefense: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
rest: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
howl: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
acupressure: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1
|
|
}, {
|
|
scale: 0.25,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('lightning', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 0.8,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
}
|
|
},
|
|
curse: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
autotomize: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 60,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
xscale: 6,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 60,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y - 50,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 40,
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
|
|
attacker.anim({x: attacker.x - 5, time: 75});
|
|
attacker.anim({x: attacker.x + 5, time: 100});
|
|
attacker.anim({x: attacker.x - 10, time: 50});
|
|
attacker.anim({x: attacker.x + 10, time: 50});
|
|
attacker.anim({x: attacker.x - 10, time: 50});
|
|
attacker.anim({x: attacker.x + 10, time: 50});
|
|
attacker.anim({x: attacker.x - 10, time: 50});
|
|
attacker.anim({x: attacker.x + 10, time: 50});
|
|
attacker.anim({x: attacker.x - 10, time: 50});
|
|
attacker.anim({x: attacker.x + 10, time: 150});
|
|
attacker.anim({x: attacker.x, time: 150});
|
|
}
|
|
},
|
|
shiftgear: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('gear', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x + 20,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x - 20,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 250
|
|
}, {
|
|
x: attacker.x + 20,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 250
|
|
}, {
|
|
x: attacker.x - 20,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 20,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 20,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
|
|
attacker.delay(100);
|
|
attacker.anim({
|
|
y: attacker.y + 2.5,
|
|
yscale: 1.5,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
y: attacker.y + 2.5,
|
|
yscale: 1.5,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
y: attacker.y + 2.5,
|
|
yscale: 1.5,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'linear');
|
|
}
|
|
},
|
|
bulkup: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, {
|
|
x: attacker.leftof(-30),
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'ballistic2Under', 'fade');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 4,
|
|
scale: 1.15,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
time: 200
|
|
}, 'decel');
|
|
}
|
|
},
|
|
shellsmash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('shell', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 0.8,
|
|
opacity: .8,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.4,
|
|
time: 400
|
|
}, {
|
|
scale: 1.2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.4,
|
|
time: 450
|
|
}, {
|
|
scale: 1.2,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.4,
|
|
time: 560
|
|
}, {
|
|
scale: 1.2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
scale: 0.4,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
attacker.delay(75);
|
|
attacker.anim({x: attacker.x - 20, time: 75});
|
|
attacker.anim({x: attacker.x + 20, time: 100});
|
|
attacker.anim({x: attacker.x - 20, time: 100});
|
|
attacker.anim({x: attacker.x + 20, time: 100});
|
|
attacker.anim({x: attacker.x - 20, time: 100});
|
|
attacker.anim({x: attacker.x + 20, time: 100});
|
|
attacker.anim({x: attacker.x, time: 75});
|
|
}
|
|
},
|
|
stockpile: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
swallow: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
ingrain: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
aquaring: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: .5,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
coil: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 5,
|
|
yscale: 1.1,
|
|
time: 300
|
|
}, 'swing');
|
|
attacker.delay(400);
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
conversion: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
}
|
|
},
|
|
powertrick: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
ragepowder: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
refresh: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rainbow', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
recycle: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
doomdesire: {
|
|
anim: function (battle, args) {
|
|
|
|
battle.backgroundEffect('#000000', 300, 0.2);
|
|
battle.backgroundEffect('#000000', 300, 0.3, 200);
|
|
}
|
|
},
|
|
teleport: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
cottonguard: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
defendorder: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
meditate: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
sharpen: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
withdraw: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('shell', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
scale: 0.8,
|
|
opacity: .8,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
scale: 0.4,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
attacker.delay(75);
|
|
attacker.anim({x: attacker.x, time: 75});
|
|
}
|
|
},
|
|
roost: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('feather', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 5,
|
|
y: defender.y - 20,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 20,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x + 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 20,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 500
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('feather', {
|
|
x: defender.x - 25,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 20,
|
|
scale: .1,
|
|
opacity: .4,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
softboiled: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.75,
|
|
yscale: 1,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0.5,
|
|
yscale: 0.75,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
yscale: 1.5,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0.6,
|
|
yscale: 0.75,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
milkdrink: {
|
|
anim: BattleOtherAnims.consume.anim
|
|
},
|
|
slackoff: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
happyhour: {
|
|
anim: BattleOtherAnims.selfstatus.anim
|
|
},
|
|
snatch: {
|
|
anim: BattleOtherAnims.dance.anim
|
|
},
|
|
acidarmor: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
barrier: {
|
|
anim: BattleOtherAnims.lightstatus.anim
|
|
},
|
|
morningsun: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/weather-sunnyday.jpg')", 700, 0.5);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
moonlight: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 800, 0.6);
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: 0,
|
|
y: +175,
|
|
z: +50,
|
|
scale: 1.5,
|
|
opacity: 1
|
|
}, {
|
|
time: 700
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: 0,
|
|
y: +175,
|
|
z: +50,
|
|
scale: 0.5,
|
|
opacity: 0.8
|
|
}, {
|
|
time: 700
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
cosmicpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 600, 0.6);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
},
|
|
charge: {
|
|
anim: BattleOtherAnims.lightstatus.anim
|
|
},
|
|
luckychant: {
|
|
anim: BattleOtherAnims.lightstatus.anim
|
|
},
|
|
geomancy: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('rainbow', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
},
|
|
prepareAnim: BattleOtherAnims.chargestatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' is absorbing power!';
|
|
}
|
|
},
|
|
magnetrise: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x0,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
},
|
|
substitute: {
|
|
anim: function () {}
|
|
},
|
|
batonpass: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 100,
|
|
z: attacker.z,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 100,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
scale: 4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
calmmind: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.1,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: .5,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
scale: 0,
|
|
opacity: .5,
|
|
time: 600
|
|
}, 'linear');
|
|
}
|
|
},
|
|
nastyplot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 50
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.25,
|
|
time: 750
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 70,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.25,
|
|
yscale: 0.75,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 80,
|
|
z: attacker.z,
|
|
scale: 0.25,
|
|
time: 750
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
minimize: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y - 20,
|
|
scale: 0.75,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y - 25,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
|
|
attacker.anim({
|
|
y: attacker.y - 30,
|
|
scale: 0.25,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'accel');
|
|
}
|
|
},
|
|
growth: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
y: attacker.y + 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
|
|
attacker.anim({
|
|
scale: 1.25,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'accel');
|
|
}
|
|
},
|
|
tailglow: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: .5,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
trick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
time: 300
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
time: 300
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 900
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 900
|
|
}, 'ballistic2Under', 'explode');
|
|
}
|
|
},
|
|
switcheroo: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
time: 300
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600
|
|
}, 'ballistic2', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
time: 300
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 900
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('pokeball', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 900
|
|
}, 'ballistic2Under', 'explode');
|
|
}
|
|
},
|
|
skillswap: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic2Under');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
recover: {
|
|
anim: BattleOtherAnims.chargestatus.anim
|
|
},
|
|
shadowforce: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-120),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' vanished instantly!';
|
|
}
|
|
},
|
|
bounce: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 350
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
y: attacker.y + 80,
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
y: attacker.y + 80,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' sprang up!';
|
|
}
|
|
},
|
|
dig: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 350
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
y: attacker.y - 80,
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
y: attacker.y - 80,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' burrowed its way under the ground!';
|
|
}
|
|
},
|
|
dive: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 350
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
y: attacker.y - 80,
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'decel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
y: attacker.y - 80,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'decel');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
y: attacker.y - 80,
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' hid underwater!';
|
|
}
|
|
},
|
|
fly: {
|
|
anim: BattleOtherAnims.flight.anim,
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
y: attacker.y + 80,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' flew up high!';
|
|
}
|
|
},
|
|
skydrop: {
|
|
anim: BattleOtherAnims.contactattack.anim,
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
opacity: 0.2,
|
|
y: attacker.y + 80,
|
|
time: 300
|
|
}, 'linear');
|
|
defender.anim({
|
|
opacity: 0.2,
|
|
y: defender.y + 80,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon, pokemon2) {
|
|
return pokemon.getName() + ' took ' + pokemon2.getLowerName() + ' into the sky!';
|
|
}
|
|
},
|
|
skullbash: {
|
|
anim: BattleOtherAnims.contactattack.anim,
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' tucked in its head!';
|
|
}
|
|
},
|
|
skyattack: {
|
|
anim: BattleOtherAnims.flight.anim,
|
|
prepareAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
attacker.anim({
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'linear');
|
|
},
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' became cloaked in a harsh light!';
|
|
}
|
|
},
|
|
hiddenpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 240 * xf[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 137 * yf[i],
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 339 * xf2[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 194 * yf2[i],
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
}
|
|
}
|
|
},
|
|
storedpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 240 * xf[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 137 * yf[i],
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 339 * xf2[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 194 * yf2[i],
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
}
|
|
},
|
|
seedflare: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 0
|
|
}, {
|
|
scale: 8,
|
|
opacity: .1,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 240 * xf[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 137 * yf[i],
|
|
scale: .3,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 339 * xf2[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 194 * yf2[i],
|
|
scale: .3,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
}
|
|
},
|
|
powerwhip: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 420
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 520
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 60,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
woodhammer: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 420
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 520
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.4,
|
|
time: 700
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.4,
|
|
time: 800
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.4,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
crushclaw: {
|
|
anim: BattleOtherAnims.clawattack.anim
|
|
},
|
|
falseswipe: {
|
|
anim: BattleOtherAnims.slashattack.anim
|
|
},
|
|
dragonclaw: {
|
|
anim: BattleOtherAnims.clawattack.anim
|
|
},
|
|
metalclaw: {
|
|
anim: BattleOtherAnims.clawattack.anim
|
|
},
|
|
furycutter: {
|
|
anim: BattleOtherAnims.slashattack.anim
|
|
},
|
|
scratch: {
|
|
anim: BattleOtherAnims.slashattack.anim
|
|
},
|
|
cut: {
|
|
anim: BattleOtherAnims.slashattack.anim
|
|
},
|
|
slash: {
|
|
anim: BattleOtherAnims.slashattack.anim
|
|
},
|
|
nightslash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x + 5,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x - 5,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
shadowclaw: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
BattleOtherAnims.clawattack.anim(battle, args);
|
|
}
|
|
},
|
|
multiattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1100, 0.3);
|
|
attacker.delay(300);
|
|
defender.delay(300);
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x + 5,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x - 5,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
holdback: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
knockdown: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
seismictoss: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 500, 0.6, 300);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(5),
|
|
time: 50
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
y: defender.y + 100,
|
|
z: defender.behind(5),
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 250
|
|
}, 'accel');
|
|
defender.anim({
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
yscale: 0.25,
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(1150);
|
|
}
|
|
},
|
|
peck: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
drillpeck: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
irontail: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
bite: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
superfang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
bugbite: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
crunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#000000', 800, 0.3);
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('topbite', {
|
|
x: defender.x,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 370
|
|
}, {
|
|
y: defender.y + 20,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('bottombite', {
|
|
x: defender.x,
|
|
y: defender.y - 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 370
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
pursuit: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 300
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.leftof(5),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 600
|
|
}, 'accel');
|
|
defender.delay(25);
|
|
defender.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
}
|
|
},
|
|
blazekick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.kick.anim(battle, args);
|
|
}
|
|
},
|
|
lowkick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 50,
|
|
z: defender.behind(20),
|
|
scale: 1.7,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
stomp: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-15),
|
|
scale: 1.5,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 600
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
tropkick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.kick.anim(battle, args);
|
|
battle.backgroundEffect('#9AB440', 300, 0.3, 500);
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 420
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 520
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
battle.showEffect('petal', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 550
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 825
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 850
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 875
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 625
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 925
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
jumpkick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.kick.anim(battle, args);
|
|
}
|
|
},
|
|
highjumpkick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.leftof(-10),
|
|
y: attacker.y + 170,
|
|
z: attacker.behind(-35),
|
|
opacity: 0.3,
|
|
time: 25
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0)
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.leftof(-10),
|
|
y: attacker.y + 170,
|
|
z: attacker.behind(-35),
|
|
opacity: 0.3,
|
|
time: 75
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0)
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 170,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 200
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(500);
|
|
defender.anim({
|
|
y: defender.y - 5,
|
|
z: defender.behind(40),
|
|
yscale: 0.9,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
ironhead: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
}
|
|
},
|
|
heartstamp: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('heart', {
|
|
x: defender.leftof(-20),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
}
|
|
},
|
|
slam: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
dragontail: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
reversal: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
punishment: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
forcepalm: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z - 10,
|
|
scale: 0.6,
|
|
opacity: 0.1,
|
|
time: 350
|
|
}, {
|
|
x: defender.x + 20,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x + 20,
|
|
y: defender.y,
|
|
z: defender.z - 10,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 15,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x + 20,
|
|
y: defender.y,
|
|
z: defender.z - 10,
|
|
scale: 0.5,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 15,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'decel', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
circlethrow: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
z: defender.behind(20),
|
|
scale: 0.6,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
knockoff: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
assurance: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
chipaway: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
bodyslam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 600
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(500);
|
|
}
|
|
},
|
|
heavyslam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 600
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(500);
|
|
}
|
|
},
|
|
steamroller: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
pound: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
clamp: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
wakeupslap: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(-10),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
xscale: 0,
|
|
opacity: 0.5,
|
|
time: 512.5
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftchop', {
|
|
x: defender.x,
|
|
y: defender.y - 10,
|
|
z: defender.behind(-10),
|
|
scale: 0.6,
|
|
xscale: 0,
|
|
opacity: 1,
|
|
time: 512.5
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
xscale: 0.6,
|
|
opacity: 0,
|
|
time: 625
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
smellingsalts: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
karatechop: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('rightchop', {
|
|
x: defender.leftof(30),
|
|
y: defender.y + 50,
|
|
z: defender.behind(-10),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 475
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
crosschop: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 425
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x + 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 425
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('leftchop', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0.75,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 70,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightchop', {
|
|
x: defender.x - 60,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0.75,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 70,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
lick: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
vicegrip: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
headbutt: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
block: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
xscissor: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 300
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 425
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 725
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 625
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 625
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
crosspoison: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 300
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 425
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 725
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 625
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 625
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 10,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 750
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 40,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 850
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 40,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 950
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
facade: {
|
|
anim: BattleOtherAnims.xattack.anim
|
|
},
|
|
guillotine: {
|
|
anim: BattleOtherAnims.xattack.anim
|
|
},
|
|
'return': {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('heart', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 300
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(750);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('foot', {
|
|
x: defender.x - 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 15,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x - 5,
|
|
y: defender.y - 5,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 675
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 875
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 725
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 925
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1000
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
}
|
|
},
|
|
leafblade: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.xattack.anim(battle, args);
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 750
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 750
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x - 35,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 450
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x + 35,
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 550
|
|
}, {
|
|
scale: 3.5,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'linear');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x - 35,
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 750
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x + 35,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 800
|
|
}, {
|
|
scale: 3.5,
|
|
opacity: 0,
|
|
time: 1190
|
|
}, 'linear');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 750
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
thrash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('angry', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 300
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(750);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('foot', {
|
|
x: defender.x - 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 15,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x - 5,
|
|
y: defender.y - 5,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 675
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 875
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 725
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 925
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1000
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
}
|
|
},
|
|
pluck: {
|
|
anim: BattleOtherAnims.xattack.anim
|
|
},
|
|
bind: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 1100
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 550
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 1150
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 1200
|
|
}, 'decel', 'fade');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y + 15,
|
|
z: defender.behind(10),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.delay(25);
|
|
defender.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 15,
|
|
z: defender.behind(5),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
}
|
|
},
|
|
dualchop: {
|
|
anim: BattleOtherAnims.xattack.anim,
|
|
multihit: true
|
|
},
|
|
doublehit: {
|
|
anim: BattleOtherAnims.xattack.anim,
|
|
multihit: true
|
|
},
|
|
doubleslap: {
|
|
anim: BattleOtherAnims.xattack.anim,
|
|
multihit: true
|
|
},
|
|
closecombat: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 350
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 150
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 425
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 525
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x - 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 475
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 775
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 750
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 525
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 750
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear');
|
|
}
|
|
},
|
|
doublekick: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.xattack.anim(battle, args);
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear');
|
|
},
|
|
multihit: true
|
|
},
|
|
endeavor: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.xattack.anim(battle, args);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, {
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 750
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 750
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
playrough: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 350
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 150
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(800);
|
|
|
|
battle.showEffect('fist', {
|
|
x: defender.x - 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 425
|
|
}, {
|
|
x: defender.x - 15,
|
|
y: defender.y - 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 725
|
|
}, 'linear');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 5,
|
|
y: defender.y - 5,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 575
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 675
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('foot', {
|
|
x: defender.x,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(15),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
|
|
battle.showEffect('heart', {
|
|
x: defender.x - 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('heart', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 675
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 775
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('heart', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 750
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 750
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.2,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
strength: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
hammerarm: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fist1', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-15),
|
|
scale: 1.2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.6,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 600
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
icehammer: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#FFFFFF', 600, 0.3, 400);
|
|
battle.showEffect('fist1', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-15),
|
|
scale: 1.2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.6,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
yscale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
yscale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
yscale: 1,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
yscale: 4,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 600
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
skyuppercut: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('fist1', {
|
|
x: defender.leftof(-20),
|
|
y: defender.y + 10,
|
|
z: defender.behind(20),
|
|
scale: 1.2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 80,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel', 'explode');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(5),
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 250
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(380);
|
|
defender.anim({
|
|
y: defender.y + 100,
|
|
z: defender.behind(5),
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 250
|
|
}, 'accel');
|
|
defender.anim({
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
yscale: 0.25,
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(1150);
|
|
}
|
|
},
|
|
meteormash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 1000, 0.4);
|
|
BattleOtherAnims.punchattack.anim(battle, args);
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.leftof(20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-25),
|
|
opacity: 0.3,
|
|
time: 25
|
|
}, {
|
|
x: defender.x,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 425
|
|
}, 'ballistic2Under');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.leftof(20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-25),
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'ballistic2Under');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 450
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
y: defender.y + 100,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 80,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 80,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y + 40,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y + 40,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
brickbreak: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
shadowpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: attacker.leftof(-20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-120),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-25),
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(400);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(350);
|
|
}
|
|
},
|
|
focuspunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.2);
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
drainpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.punchattack.anim(battle, args);
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 900,
|
|
opacity: 0
|
|
}, 'ballistic2');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 950,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 1000,
|
|
opacity: 0
|
|
}, 'ballistic2Under');
|
|
}
|
|
},
|
|
dynamicpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
BattleOtherAnims.punchattack.anim(battle, args);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 650
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'linear');
|
|
}
|
|
},
|
|
cometpunch: {
|
|
anim: BattleOtherAnims.punchattack.anim,
|
|
multihit: true
|
|
},
|
|
megapunch: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
poweruppunch: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
dizzypunch: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
needlearm: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
rocksmash: {
|
|
anim: BattleOtherAnims.punchattack.anim
|
|
},
|
|
hornleech: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 900,
|
|
opacity: 0
|
|
}, 'ballistic2');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 950,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 1000,
|
|
opacity: 0
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-15),
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
absorb: {
|
|
anim: BattleOtherAnims.drain.anim
|
|
},
|
|
megadrain: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#9AB440', 900, 0.2);
|
|
BattleOtherAnims.drain.anim(battle, args);
|
|
}
|
|
},
|
|
gigadrain: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#9AB440', 900, 0.5);
|
|
BattleOtherAnims.drain.anim(battle, args);
|
|
}
|
|
},
|
|
leechlife: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#987058', 800, 0.3, 400);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 900,
|
|
opacity: 0
|
|
}, 'ballistic2');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 950,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 1000,
|
|
opacity: 0
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
extremespeed: {
|
|
anim: BattleOtherAnims.fastattack.anim
|
|
},
|
|
quickattack: {
|
|
anim: BattleOtherAnims.fastattack.anim
|
|
},
|
|
suckerpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.fastattack.anim(battle, args);
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
opacity: 0.3,
|
|
time: 260
|
|
}, {
|
|
scale: 1.25,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
astonish: {
|
|
anim: BattleOtherAnims.fastattack.anim
|
|
},
|
|
rollout: {
|
|
anim: BattleOtherAnims.fastattack.anim
|
|
},
|
|
accelerock: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.fastattack.anim(battle, args);
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 260
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 260
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 360
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 1,
|
|
time: 360
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 260
|
|
}, {
|
|
scale: 1.25,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
bulletpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.fastattack.anim(battle, args);
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 260
|
|
}, {
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 260
|
|
}, {
|
|
scale: 1.25,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
machpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.fastattack.anim(battle, args);
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 260
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
vacuumwave: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 200
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
assist: {
|
|
anim: function () {}
|
|
},
|
|
mirrormove: {
|
|
anim: function () {}
|
|
},
|
|
naturepower: {
|
|
anim: function () {}
|
|
},
|
|
copycat: {
|
|
anim: function () {}
|
|
},
|
|
sleeptalk: {
|
|
anim: function () {}
|
|
},
|
|
megahorn: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#987058', 400, .3);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
firepunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
icepunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
thunderpunch: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
poisonfang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
psychicfangs: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#AA44BB', 450, 0.6, 450);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
scale: 1.2,
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
scale: 1,
|
|
time: 300
|
|
});
|
|
battle.activityWait(700);
|
|
}
|
|
},
|
|
icefang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
firefang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
thunderfang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
BattleOtherAnims.bite.anim(battle, args);
|
|
}
|
|
},
|
|
wildcharge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
spark: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
}
|
|
},
|
|
zapcannon: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#2630A9', 700, 0.6);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
hyperbeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.2);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
gigaimpact: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.2);
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
shelltrap: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.backgroundEffect('#000000', 600, 0.3);
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 240 * xf[i],
|
|
y: defender.y,
|
|
z: defender.z + 137 * yf[i],
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 339 * xf2[i],
|
|
y: defender.y + 10,
|
|
z: defender.z + 194 * yf2[i],
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
}
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
},
|
|
prepareAnim: BattleOtherAnims.chargestatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' set a shell trap!';
|
|
}
|
|
},
|
|
flamecharge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x - 25,
|
|
y: attacker.y - 25,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 250
|
|
}, {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 40,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(580);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
flareblitz: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 600, 0.6);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
burnup: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 800, 0.6);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 900
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1000
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0,
|
|
time: 1400
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1100
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 1500
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1200
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0,
|
|
time: 1600
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'decel');
|
|
}
|
|
},
|
|
beakblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1200, 0.6);
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x - 25,
|
|
y: attacker.y - 25,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 250
|
|
}, {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 40,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'ballistic');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 20,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(580);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
vcreate: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
outrage: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 600, 0.6, 400);
|
|
battle.showEffect('angry', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 50,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y - 50,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'ballistic');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x + 10,
|
|
y: attacker.y - 60,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(580);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 200
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
boltstrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#00CCCC', 900, 0.3);
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 300
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 300
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
fusionflare: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 90,
|
|
z: attacker.z,
|
|
scale: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 90,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
time: 200
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 90,
|
|
z: attacker.z,
|
|
opacity: 0.4,
|
|
scale: 0,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 90,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 90,
|
|
z: attacker.z,
|
|
opacity: 0.8,
|
|
scale: 2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2.5,
|
|
time: 500
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(550);
|
|
}
|
|
},
|
|
fusionbolt: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 90,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-165),
|
|
y: defender.y + 170,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 3,
|
|
opacity: 1,
|
|
time: 650
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 90,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'accel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.leftof(-165),
|
|
y: defender.y + 170,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 650
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 0,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(625);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
xscale: 1,
|
|
yscale: 1,
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(625);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 250
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
battle.activityWait(550);
|
|
}
|
|
},
|
|
zenheadbutt: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
}
|
|
},
|
|
fakeout: {
|
|
anim: BattleOtherAnims.sneakattack.anim
|
|
},
|
|
covet: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: attacker.leftof(-20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-120),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(40),
|
|
opacity: 1,
|
|
time: 250
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'linear');
|
|
defender.delay(630);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(350);
|
|
|
|
battle.showEffect('heart', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 50,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'ballistic2Under', 'fade');
|
|
}
|
|
},
|
|
feint: {
|
|
anim: BattleOtherAnims.sneakattack.anim
|
|
},
|
|
thief: {
|
|
anim: BattleOtherAnims.sneakattack.anim
|
|
},
|
|
shadowsneak: {
|
|
anim: BattleOtherAnims.sneakattack.anim
|
|
},
|
|
feintattack: {
|
|
anim: BattleOtherAnims.sneakattack.anim
|
|
},
|
|
struggle: {
|
|
anim: BattleOtherAnims.contactattack.anim
|
|
},
|
|
earthquake: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 75
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x + 30,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
time: 100
|
|
});
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 25
|
|
}, {
|
|
x: defender.x + 70,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 325
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 50
|
|
}, {
|
|
x: defender.x - 40,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 70,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 75
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 375
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.5,
|
|
time: 125
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 425
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 5,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 175
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 475
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 55,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 525
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 250
|
|
}, {
|
|
x: defender.x + 55,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 275
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 475
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 70,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 325
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 525
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 375
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 575
|
|
}, 'decel', 'fade');
|
|
battle.activityWait(325);
|
|
}
|
|
}
|
|
},
|
|
tickle: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
defender.anim({
|
|
x: defender.x - 20,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 20,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 20,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 20,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
battle.activityWait(425);
|
|
}
|
|
},
|
|
earthpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 50,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 50,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 50,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 45,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 250
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 45,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y + 45,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 65,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 65,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 65,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
drillrun: { // todo: rip horn sprite and redo animation
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 200
|
|
});
|
|
defender.anim({
|
|
z: defender.behind(0),
|
|
time: 200
|
|
});
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 500
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 10,
|
|
z: defender.behind(-40),
|
|
scale: 0.7,
|
|
yscale: 1,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, {
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 450
|
|
}, 'accel');
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 10,
|
|
z: defender.behind(-40),
|
|
scale: 0.7,
|
|
yscale: 1,
|
|
opacity: 0.8,
|
|
time: 350
|
|
}, {
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 500
|
|
}, 'accel');
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 10,
|
|
z: defender.behind(-40),
|
|
scale: 0.7,
|
|
yscale: 1,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 550
|
|
}, 'accel');
|
|
}
|
|
},
|
|
poisongas: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y + 20,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 20,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
smog: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 25,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, 'decel', 'explode');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 30,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y + 30,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 25,
|
|
y: defender.y + 20,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 1000
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
clearsmog: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 25,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, 'decel', 'explode');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 20,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 40,
|
|
y: defender.y + 20,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
scale: 1.4,
|
|
opacity: 0.2,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
bonemerang: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('bone', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0
|
|
}, {
|
|
z: defender.behind(20),
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'ballistic2');
|
|
battle.showEffect('bone', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic2Under', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
boneclub: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('bone', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
}
|
|
},
|
|
shadowbone: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 600, 0.3);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 450
|
|
}, {
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('bone', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
}
|
|
},
|
|
whirlwind: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
for (var i = 0; i < 3; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
hurricane: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#000000', 900, 0.6);
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
ominouswind: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
for (var i = 0; i < 3; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 35,
|
|
z: defender.behind(i * 40 - 60),
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
|
|
}
|
|
}
|
|
},
|
|
magmastorm: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#CC3300', 900, 0.2);
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 50,
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
firespin: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 50,
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
leaftornado: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x - 50,
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x - 50,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 200 * i
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: .4,
|
|
time: 200 * i + 200
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
roar: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
round: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
yawn: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
sing: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
perishsong: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
partingshot: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
nobleroar: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
disarmingvoice: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
growl: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
screech: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
snore: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
synchronoise: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
sonicboom: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
eerieimpulse: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
metalsound: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
supersonic: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
}
|
|
},
|
|
confide: {
|
|
anim: BattleOtherAnims.sound.anim
|
|
},
|
|
defog: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#FFFFFF', 900, 0.5);
|
|
BattleOtherAnims.sound.anim(battle, args);
|
|
}
|
|
},
|
|
grasswhistle: {
|
|
anim: function (battle, args) {
|
|
battle.backgroundEffect('#9AB440', 900, 0.3);
|
|
BattleOtherAnims.sound.anim(battle, args);
|
|
}
|
|
},
|
|
hypervoice: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
boomburst: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 900, 0.5);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
z: attacker.behind(-50),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
heatwave: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#CC3300', 900, 0.1);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
snarl: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 0
|
|
}, {
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 150
|
|
}, {
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
}
|
|
},
|
|
thunder: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#ffffff', 300, 0.7);
|
|
battle.backgroundEffect('#000000', 1000, 0.7, 100);
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y + 150,
|
|
z: defender.z,
|
|
yscale: 0,
|
|
xscale: 2
|
|
}, {
|
|
y: defender.y + 50,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y + 50,
|
|
z: defender.z,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
time: 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y + 50,
|
|
z: defender.z,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
time: 600
|
|
}, {
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 1.5,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 2,
|
|
xscale: 4,
|
|
opacity: 0.1,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 0.5,
|
|
scale: 1.5,
|
|
time: 200
|
|
}, {
|
|
scale: 1.8,
|
|
opacity: 0.1,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(200);
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
thunderbolt: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#000000', 600, 0.2);
|
|
battle.showEffect('lightning', {
|
|
x: defender.x,
|
|
y: defender.y + 150,
|
|
z: defender.z,
|
|
yscale: 0,
|
|
xscale: 2
|
|
}, {
|
|
y: defender.y + 50,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
opacity: .8,
|
|
time: 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x - 15,
|
|
y: defender.y + 150,
|
|
z: defender.z,
|
|
yscale: 0,
|
|
xscale: 2,
|
|
time: 200
|
|
}, {
|
|
y: defender.y + 50,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
opacity: .8,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 150,
|
|
z: defender.z,
|
|
yscale: 0,
|
|
xscale: 2,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 50,
|
|
yscale: 1,
|
|
xscale: 1.5,
|
|
opacity: .8,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
psychic: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#AA44BB', 250, 0.6);
|
|
battle.backgroundEffect('#AA44FF', 250, 0.6, 400);
|
|
defender.anim({
|
|
scale: 1.2,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
scale: 1,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
scale: 1.4,
|
|
time: 150
|
|
});
|
|
defender.anim({
|
|
scale: 1,
|
|
time: 150
|
|
});
|
|
battle.activityWait(700);
|
|
}
|
|
},
|
|
meanlook: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#AA0000', 250, 0.3);
|
|
battle.backgroundEffect('#000000', 250, 0.2, 400);
|
|
battle.showEffect('stare', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
yscale: 0,
|
|
opacity: 1
|
|
}, {
|
|
yscale: 1,
|
|
time: 700
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
nightshade: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#550000', 250, 0.3);
|
|
battle.backgroundEffect('#000000', 250, 0.2, 400);
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 35,
|
|
z: defender.z,
|
|
scale: 3.5,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
battle.activityWait(700);
|
|
}
|
|
},
|
|
fairylock: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#FF99FF', 250, 0.3);
|
|
battle.backgroundEffect('#AA44BB', 250, 0.2, 400);
|
|
battle.activityWait(700);
|
|
}
|
|
},
|
|
rockblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .6,
|
|
opacity: 0.4
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
},
|
|
multihit: true
|
|
},
|
|
geargrind: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('gear', {
|
|
x: defender.x + 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 565
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: defender.x - 70,
|
|
y: defender.y - 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 565
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('gear', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 650
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 765
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('gear', {
|
|
x: defender.x - 70,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: .65,
|
|
opacity: 0,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 765
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 750
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: defender.leftof(30),
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 200
|
|
}, 'ballisticUp');
|
|
attacker.anim({
|
|
x: defender.leftof(-30),
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(450);
|
|
defender.anim({
|
|
y: defender.y + 15,
|
|
z: defender.behind(10),
|
|
yscale: 1.3,
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
defender.delay(225);
|
|
defender.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 15,
|
|
z: defender.behind(5),
|
|
yscale: 1.3,
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
},
|
|
multihit: true
|
|
},
|
|
iciclespear: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, 'linear', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
tailslap: {
|
|
anim: BattleOtherAnims.contactattack.anim,
|
|
multihit: true
|
|
},
|
|
furyswipes: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.xattack.anim(battle, args);
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
furyattack: {
|
|
anim: BattleOtherAnims.xattack.anim,
|
|
multihit: true
|
|
},
|
|
bulletseed: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 0.6,
|
|
time: 30
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 330
|
|
}, 'linear', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
spikecannon: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 0.6,
|
|
time: 30
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 330
|
|
}, 'linear', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
twineedle: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
},
|
|
multihit: true
|
|
},
|
|
razorshell: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('shell', {
|
|
x: defender.x - 60,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
scale: 0.75,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 70,
|
|
scale: 0.6,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'decel');
|
|
}
|
|
},
|
|
crabhammer: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-15),
|
|
scale: 1.5,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 50,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 50,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
aquajet: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: Math.floor((attacker.x + defender.x) / 2) - 20,
|
|
y: Math.floor((attacker.y + defender.y) / 2) + 30,
|
|
z: Math.floor((attacker.z + defender.z) / 2),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
y: Math.floor((attacker.y + defender.y) / 2) - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 300,
|
|
opacity: .5
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.x,
|
|
z: defender.behind(100),
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel');
|
|
defender.delay(260);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
iceshard: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 0.1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
watershuriken: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: Math.floor((attacker.x + defender.x) / 2) - 20,
|
|
y: Math.floor((attacker.y + defender.y) / 2) + 30,
|
|
z: Math.floor((attacker.z + defender.z) / 2),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
y: Math.floor((attacker.y + defender.y) / 2) - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 20,
|
|
scale: 4,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 300,
|
|
opacity: .5
|
|
}, 'accel', 'fade');
|
|
},
|
|
multihit: true
|
|
},
|
|
icebeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.y - attacker.y) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 40 * i
|
|
}, {
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
freezedry: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 3,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.4,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(30),
|
|
scale: 3,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.4,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 3,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.4,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 3,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
icywind: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.7,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 2.5,
|
|
opacity: 0.4,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.7,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(30),
|
|
scale: 2.5,
|
|
opacity: 0.4,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.7,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 2.5,
|
|
opacity: 0.4,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.7,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 2.5,
|
|
opacity: 0.4,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
}
|
|
}
|
|
},
|
|
ancientpower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 20,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
scale: .7,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
scale: .7,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .2,
|
|
opacity: 0.7
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
scale: .8,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
powergem: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 45,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x - 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x + 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shine', {
|
|
x: attacker.x,
|
|
y: attacker.y + 45,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(325);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
chargebeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 50
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 250
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
psybeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 50
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 250
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
flamethrower: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
toxic: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
sludge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'fade');
|
|
}
|
|
},
|
|
sludgewave: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
}
|
|
|
|
if (args.length > 2) defender = args[2];
|
|
battle.backgroundEffect('#AA00AA', 700, 0.2);
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(50),
|
|
scale: 2,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 2,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 2,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
sludgebomb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
mudbomb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
magnetbomb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
seedbomb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
willowisp: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: .7,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
if (defender.isMissedPokemon) return;
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: .7,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'swing', 'fade');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: .7,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'swing', 'explode');
|
|
}
|
|
},
|
|
confuseray: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.15,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: .7,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
if (defender.isMissedPokemon) return;
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.15,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: .7,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: .7,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'swing', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'swing', 'explode');
|
|
}
|
|
},
|
|
lovelykiss: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('heart', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: .7,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
if (defender.isMissedPokemon) return;
|
|
battle.showEffect('heart', {
|
|
x: defender.leftof(40),
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: .7,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'swing', 'fade');
|
|
battle.showEffect('heart', {
|
|
x: defender.leftof(-40),
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 15,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'swing', 'explode');
|
|
}
|
|
},
|
|
rockwrecker: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.7);
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'decel');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 350
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.2,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.2,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
|
|
defender.delay(600);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
stoneedge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 15,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.5
|
|
}, {
|
|
y: defender.y + 60,
|
|
yscale: 1,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
time: 150
|
|
}, {
|
|
y: defender.y + 60,
|
|
yscale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
time: 300
|
|
}, {
|
|
y: defender.y + 60,
|
|
yscale: 1,
|
|
opacity: 0,
|
|
time: 650
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 60,
|
|
yscale: 1,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'accel');
|
|
battle.showEffect('rock3', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
time: 500
|
|
}, {
|
|
y: defender.y + 60,
|
|
yscale: 1,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'accel');
|
|
}
|
|
},
|
|
rockslide: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(200);
|
|
defender.anim({
|
|
y: defender.y - 7,
|
|
yscale: 0.9,
|
|
time: 100
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
});
|
|
defender.delay(200);
|
|
defender.anim({
|
|
y: defender.y - 7,
|
|
yscale: 0.9,
|
|
time: 100
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
});
|
|
|
|
battle.showEffect('rock1', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .5
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .5,
|
|
time: 100
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .5,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .5,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x - 15,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .5,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 600
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
}
|
|
}
|
|
},
|
|
avalanche: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
defender.delay(200);
|
|
defender.anim({
|
|
y: defender.y - 7,
|
|
yscale: 0.9,
|
|
time: 100
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
});
|
|
defender.delay(200);
|
|
defender.anim({
|
|
y: defender.y - 7,
|
|
yscale: 0.9,
|
|
time: 100
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
});
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 0.8
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 0.8,
|
|
time: 100
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 0.8,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 0.8,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 15,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 0.8,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 30,
|
|
opacity: 1,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 450
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.4,
|
|
time: 600
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0
|
|
}, 'decel');
|
|
}
|
|
},
|
|
thousandarrows: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[i];
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
|
|
battle.backgroundEffect('#000000', 1100, 0.3);
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x - 30,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 175
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.behind(-10),
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 200,
|
|
z: defender.behind(5),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 375
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 675
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 50,
|
|
z: defender.behind(5),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 390
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 675
|
|
}, 'linear');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 40,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-5),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 525
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 50,
|
|
z: defender.behind(-5),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 540
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 70,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-10),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 575
|
|
}, {
|
|
y: defender.y + 150,
|
|
z: defender.behind(-10),
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 70,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 590
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'linear');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 70,
|
|
y: defender.y + 200,
|
|
z: defender.behind(10),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 650
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 50,
|
|
z: defender.behind(10),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 665
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 700
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 720
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-20),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 725
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 1025
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y - 35,
|
|
z: defender.behind(-20),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 740
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 1025
|
|
}, 'linear');
|
|
}
|
|
},
|
|
thousandwaves: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[i];
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(825);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
}
|
|
|
|
battle.backgroundEffect('#000000', 600, 0.3);
|
|
battle.backgroundEffect('#199C27', 600, 0.5, 500);
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
y: attacker.y - 50,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
y: attacker.y + 50,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x - 35,
|
|
y: attacker.y + 30,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 30,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 0.4,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x - 35,
|
|
y: attacker.y - 30,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y - 30,
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 50,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.3,
|
|
opacity: 0,
|
|
time: 620
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x - 35,
|
|
y: attacker.y - 10,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.3,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 35,
|
|
y: attacker.y - 30,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.3,
|
|
opacity: 0,
|
|
time: 630
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x - 35,
|
|
y: attacker.y + 30,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.3,
|
|
opacity: 0,
|
|
time: 640
|
|
}, 'ballistic', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 30,
|
|
z: attacker.behind(-30),
|
|
scale: 0.1,
|
|
yscale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.2,
|
|
yscale: 0.4,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'ballistic', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 10,
|
|
z: defender.behind(30),
|
|
scale: 1.3,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 80,
|
|
y: defender.y - 10,
|
|
z: defender.behind(30),
|
|
scale: 1.3,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 25,
|
|
z: attacker.behind(-70),
|
|
scale: 0.7,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 55,
|
|
y: defender.y - 10,
|
|
z: defender.behind(30),
|
|
scale: 1.3,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
xscale: 6,
|
|
opacity: 0.1,
|
|
time: 900
|
|
}, {
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.6,
|
|
time: 1200
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
y: attacker.y - 40,
|
|
scale: 0,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.delay(900);
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'linear');
|
|
battle.activityWait(800);
|
|
}
|
|
},
|
|
iciclecrash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('icicle', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 1
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
xscale: 2,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 1,
|
|
time: 100
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
xscale: 2,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 1,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
xscale: 2,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
xscale: 2,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x - 15,
|
|
y: defender.y + 70,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 1,
|
|
time: 400
|
|
}, {
|
|
y: defender.y - 20,
|
|
opacity: 1,
|
|
xscale: 2,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
spore: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .4
|
|
}, {
|
|
y: defender.y - 5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .4,
|
|
time: 150
|
|
}, {
|
|
y: defender.y - 5,
|
|
opacity: 1,
|
|
time: 650
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: .4,
|
|
time: 300
|
|
}, {
|
|
y: defender.y - 5,
|
|
opacity: 1,
|
|
time: 800
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
fireblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 500, 0.7);
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 600, 0.4, 500);
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 80,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 80,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y + 40,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y + 40,
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
judgment: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 950, 0.6);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 100,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 250
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 70,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 100,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y - 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y - 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
psystrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/weather-psychicterrain.png')", 950, 0.6);
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 100,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 250
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 70,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 100,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y - 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y - 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(450);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
shadowball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1000, 0.1);
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 100,
|
|
z: attacker.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 200
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 60,
|
|
y: attacker.y - 80,
|
|
z: attacker.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 60,
|
|
y: attacker.y - 80,
|
|
z: attacker.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 90,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 90,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(-20),
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
scale: 0,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
scale: 0.8,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
scale: 0,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
scale: 0.8,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 900
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
scale: 1.5,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
time: 900
|
|
}, 'accel', 'explode');
|
|
|
|
defender.delay(900);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
hex: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
},
|
|
darkpulse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.backgroundEffect('#000000', 900, 0.3);
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
xscale: 5,
|
|
opacity: 0.8,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.4
|
|
}, {
|
|
x: attacker.x + 240 * xf[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 137 * yf[i],
|
|
scale: 0.7,
|
|
opacity: 0.4,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0.4
|
|
}, {
|
|
x: attacker.x + 339 * xf2[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 194 * yf2[i],
|
|
scale: 0.5,
|
|
opacity: 0.4,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
}
|
|
}
|
|
},
|
|
naturesmadness: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 800, 0.1);
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
xscale: 5,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 350
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
energyball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
defender.delay(400);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
electroball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
moonblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 800, 0.6);
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: 0,
|
|
y: +175,
|
|
z: +50,
|
|
scale: 1.5,
|
|
opacity: 1
|
|
}, {
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: 0,
|
|
y: +175,
|
|
z: +50,
|
|
scale: 0.5,
|
|
opacity: 0.8
|
|
}, {
|
|
time: 800
|
|
}, 'accel', 'fade');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
mistball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0),
|
|
scale: 1,
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 80,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x + 90,
|
|
y: defender.y + 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x - 90,
|
|
y: defender.y - 40,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 100,
|
|
scale: 0.9,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
present: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
iceball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
weatherball: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 90,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, {
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 1000
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
wish: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 600, 0.4);
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 130,
|
|
opacity: 0
|
|
}, 'accel');
|
|
},
|
|
residualAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 130,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 1
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
healingwish: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 130,
|
|
z: attacker.z,
|
|
opacity: 0
|
|
}, 'accel');
|
|
},
|
|
residualAnim: function (battle, args) {
|
|
var attacker = args[0];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 130,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 1
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
stealthrock: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = battle.sides[args[1].siden];
|
|
|
|
battle.showEffect('rock1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
x: defender.leftof(-40),
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('rock2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 75
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('rock1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
x: defender.leftof(30),
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('rock2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 225
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
spikes: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('caltrop', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
x: -25,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .3,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('caltrop', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 125
|
|
}, {
|
|
x: +50,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .3,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('caltrop', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 250
|
|
}, {
|
|
x: +30,
|
|
y: defender.y - 45,
|
|
z: defender.z,
|
|
scale: .3,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
toxicspikes: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisoncaltrop', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
x: +5,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .3,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
battle.showEffect('poisoncaltrop', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
x: -15,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .3,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
stickyweb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('web', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
x: 0,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
leechseed: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .6
|
|
}, 'ballistic');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 125
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .6
|
|
}, 'ballistic');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5,
|
|
time: 250
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: .6
|
|
}, 'ballistic');
|
|
}
|
|
},
|
|
psyshock: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
}
|
|
},
|
|
sandtomb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('mudwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 300
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
}
|
|
},
|
|
flashcannon: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 50
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 250
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .5,
|
|
opacity: 0.2,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
lusterpurge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#ffffff', 600, 0.6);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(-10),
|
|
y: attacker.y + 10,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 15,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('impact', {
|
|
x: defender.x - 25,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 0.7,
|
|
opacity: 0.2,
|
|
time: 175
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 375
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x + 25,
|
|
y: defender.y - 5,
|
|
z: defender.behind(5),
|
|
scale: 0.7,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x - 25,
|
|
y: defender.y + 10,
|
|
z: defender.behind(5),
|
|
scale: 0.7,
|
|
opacity: 0.2,
|
|
time: 400
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x + 2,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, {
|
|
scale: 1.25,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 75
|
|
});
|
|
attacker.delay(500);
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 100
|
|
});
|
|
defender.delay(200);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
grassknot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('leaf1', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
y: defender.y - 40,
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
battle.showEffect('leaf2', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
y: defender.y - 50,
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'decel');
|
|
}
|
|
},
|
|
aeroblast: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.y - attacker.y) / 5;
|
|
var zstep = (defender.behind(50) - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.6);
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 20 * i
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
airslash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 80,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 80,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
aircutter: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 50,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 50,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
dracometeor: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 1100, 0.8);
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y,
|
|
scale: 1.5,
|
|
opacity: 0.8
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 20 + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 5,
|
|
scale: 1.5,
|
|
opacity: 0.8
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y - 20 + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y - 10,
|
|
scale: 1.5,
|
|
opacity: 0.8
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
scale: 1.5,
|
|
opacity: 0.4
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 20 + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 5,
|
|
scale: 1.5,
|
|
opacity: 0.4
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y - 20 + 175,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y,
|
|
scale: 1.5,
|
|
opacity: 0.4
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 30,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 650
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 850
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 650
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 850
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 20,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 700
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y - 20 + 150,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
x: defender.x - 250,
|
|
y: defender.y - 80,
|
|
z: defender.behind(60),
|
|
scale: 0.8,
|
|
opacity: 0
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-220),
|
|
y: defender.y + 20 + 130,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x + 80,
|
|
y: defender.y - 50,
|
|
z: defender.behind(30),
|
|
scale: 0.8,
|
|
opacity: 0
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: defender.leftof(-180),
|
|
y: defender.y + 20 + 130,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x - 200,
|
|
y: defender.y + 20,
|
|
z: defender.behind(30),
|
|
scale: 0.8,
|
|
opacity: 0
|
|
}, 'accel', 'fade');
|
|
|
|
defender.delay(500);
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
z: defender.behind(10),
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
z: defender.behind(10),
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
brine: {
|
|
anim: BattleOtherAnims.hydroshot.anim
|
|
},
|
|
octazooka: {
|
|
anim: BattleOtherAnims.hydroshot.anim
|
|
},
|
|
waterpledge: {
|
|
anim: BattleOtherAnims.hydroshot.anim
|
|
},
|
|
soak: {
|
|
anim: BattleOtherAnims.hydroshot.anim
|
|
},
|
|
watersport: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
scald: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.hydroshot.anim(battle, args);
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
steameruption: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#0000DD', 700, 0.2);
|
|
BattleOtherAnims.hydroshot.anim(battle, args);
|
|
defender.delay(200);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 400
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.behind(15),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
waterpulse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.8
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0),
|
|
opacity: 0.7,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0),
|
|
opacity: 0.7,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
bubblebeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.7
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 10,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(0),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
surf: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
}
|
|
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
battle.backgroundEffect('#0000DD', 700, 0.2);
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
hydropump: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#0000DD', 700, 0.2);
|
|
BattleOtherAnims.hydroshot.anim(battle, args);
|
|
defender.delay(200);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 400
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
muddywater: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
}
|
|
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
battle.backgroundEffect('#996600', 700, 0.2);
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
mudshot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 75
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('mudwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
lavaplume: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
}
|
|
},
|
|
eruption: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(625);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 1100, 0.4);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x - 30,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 45,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 675
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 675
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 750
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('rock3', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 525
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 825
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 525
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 825
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 875
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: defender.x + 70,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 950
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
waterspout: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(625);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
|
|
battle.backgroundEffect('#0000DD', 1100, 0.2);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x - 30,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x - 10,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 10,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x + 35,
|
|
y: attacker.y + 150,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 45,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 675
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 750
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 525
|
|
}, {
|
|
x: defender.x - 40,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 825
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 525
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 825
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 875
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 175,
|
|
z: attacker.behind(-90),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
x: defender.x + 70,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 950
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
solarbeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.x - 200 - attacker.x) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect("url('fx/weather-sunnyday.jpg')", 900, 0.5);
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.7,
|
|
opacity: 0.6,
|
|
time: 40 * i + 300
|
|
}, {
|
|
opacity: 0,
|
|
time: 100 * i + 500
|
|
}, 'linear');
|
|
}
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.75,
|
|
opacity: 0.6
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 1.25,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'decel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'decel');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 425
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 625
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 450
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 650
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 775
|
|
}, 'linear', 'explode');
|
|
},
|
|
prepareAnim: BattleOtherAnims.chargestatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' absorbed light!';
|
|
}
|
|
},
|
|
solarblade: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (attacker.x - attacker.x) / 5;
|
|
var ystep = (attacker.x + 200 - attacker.x) / 5;
|
|
var zstep = (attacker.z - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect("url('fx/weather-sunnyday.jpg')", 900, 0.5);
|
|
|
|
battle.showEffect('sword', {
|
|
x: attacker.leftof(10),
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 10,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(10) + xstep * (i + 1),
|
|
y: attacker.y - 20 + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 40 * i + 0
|
|
}, {
|
|
opacity: 0,
|
|
time: 45 * i + 500
|
|
}, 'linear');
|
|
}
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
scale: 3.5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel', 'fade');
|
|
|
|
defender.delay(550);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
},
|
|
prepareAnim: BattleOtherAnims.chargestatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' absorbed light!';
|
|
}
|
|
},
|
|
lightofruin: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.2);
|
|
battle.showEffect('rainbow', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 2,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, 'accel');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 275
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 475
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 425
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 625
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.3,
|
|
time: 775
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 750
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 950
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
defender.delay(325);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
blizzard: { // todo: better blizzard anim
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#009AA4', 700, 0.5);
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('icicle', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
sheercold: { // Reminder: Improve this later
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('sprites/gen6bgs/bg-icecave.jpg')", 1000, 0.6);
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
xscale: 2,
|
|
yscale: 5,
|
|
opacity: 0.6
|
|
}, {
|
|
xscale: 2.2,
|
|
yscale: 5.25,
|
|
scale: .6,
|
|
time: 800
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
freezeshock: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
},
|
|
prepareAnim: BattleOtherAnims.selfstatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' became cloaked in a freezing light!';
|
|
}
|
|
},
|
|
iceburn: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
},
|
|
prepareAnim: BattleOtherAnims.selfstatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' became cloaked in freezing air!';
|
|
}
|
|
},
|
|
razorwind: {
|
|
prepareAnim: BattleOtherAnims.selfstatus.anim,
|
|
prepareMessage: function (pokemon) {
|
|
return pokemon.getName() + ' whipped up a whirlwind!';
|
|
}
|
|
},
|
|
overheat: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 700, 0.4);
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
defender.delay(200);
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
blastburn: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 700, 0.4);
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
|
|
defender.delay(200);
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
sacredfire: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#2630A9', 900, 0.6);
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 550
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.8,
|
|
scale: 0,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 0.3,
|
|
time: 850
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.8,
|
|
scale: 0,
|
|
time: 650
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 0.3,
|
|
time: 950
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 550
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.5,
|
|
time: 825
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 575
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 850
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.5,
|
|
time: 875
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 625
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 60,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.5,
|
|
time: 925
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
blueflare: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#4499FF', 600, 0.6);
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.8,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.5
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
electroweb: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('web', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('web', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('web', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .5,
|
|
opacity: 1,
|
|
time: 600
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
fling: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
worryseed: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
rockthrow: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rock1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'explode');
|
|
}
|
|
},
|
|
paraboliccharge: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
drainingkiss: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 500,
|
|
opacity: 0
|
|
}, 'ballistic2');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 50
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 550,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.6,
|
|
opacity: .6,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 600,
|
|
opacity: 0
|
|
}, 'ballistic2Under');
|
|
}
|
|
},
|
|
oblivionwing: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.x - 165 - attacker.x) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect('#000000', 900, 0.5);
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: (attacker.y + 165) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1,
|
|
opacity: 0.9,
|
|
time: 40 * i + 500
|
|
}, {
|
|
opacity: 0,
|
|
time: 100 * i + 800
|
|
}, 'linear');
|
|
}
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 575
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 775
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 625
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 825
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 650
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 850
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 900
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 165,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.7,
|
|
time: 775
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.4,
|
|
opacity: 0.3,
|
|
time: 975
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 1500
|
|
}, 'ballistic2');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.5,
|
|
time: 1050
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0,
|
|
time: 1550
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.3,
|
|
time: 1100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0,
|
|
time: 1600
|
|
}, 'ballistic2Under');
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(725);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(600);
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
},
|
|
signalbeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
simplebeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.2,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.behind(20),
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
triattack: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 45,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.2
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x - 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 100
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, {
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 45,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.8,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x + 45,
|
|
y: attacker.y - 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
opacity: 0.8,
|
|
time: 900
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.8,
|
|
time: 700
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
battle.showEffect('icicle', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
|
|
defender.delay(675);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
hypnosis: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 100
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 200
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
}
|
|
},
|
|
darkvoid: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.anim({
|
|
y: defender.y - 80,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel', 'fade');
|
|
defender.anim({
|
|
y: defender.y,
|
|
opacity: 0,
|
|
time: 200
|
|
});
|
|
defender.delay(200);
|
|
defender.anim({
|
|
y: defender.y,
|
|
opacity: 1,
|
|
time: 200
|
|
});
|
|
}
|
|
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
battle.backgroundEffect('#AA0000', 700, 0.3);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.8,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
roaroftime: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1800, 0.5);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 0
|
|
}, {
|
|
z: attacker.behind(-70),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
z: attacker.behind(-70),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, {
|
|
z: attacker.behind(-70),
|
|
scale: 7,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 900
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 1050
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1450
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 1200
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1600
|
|
}, 'decel');
|
|
battle.showEffect('waterwisp', {
|
|
x: defender.x - 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 1350
|
|
}, {
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 1750
|
|
}, 'decel');
|
|
|
|
defender.delay(925);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
spacialrend: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 650, 0.5);
|
|
battle.showEffect('mistball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.7,
|
|
time: 100
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect(defender.sp, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.5,
|
|
time: 125
|
|
}, {
|
|
x: defender.x - 5,
|
|
y: defender.y - 5,
|
|
z: defender.z - 5,
|
|
time: 425
|
|
}, 'decel');
|
|
battle.showEffect(defender.sp, {
|
|
x: defender.x - 5,
|
|
y: defender.y - 5,
|
|
z: defender.z - 5,
|
|
opacity: 0.5,
|
|
time: 425
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 625
|
|
}, 'accel');
|
|
defender.delay(125);
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
y: defender.y + 5,
|
|
z: defender.z + 5,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
x: defender.x,
|
|
opacity: 1,
|
|
time: 199
|
|
}, 'accel');
|
|
}
|
|
},
|
|
sacredsword: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 300,
|
|
opacity: .5
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.x,
|
|
z: defender.behind(100),
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel');
|
|
defender.delay(600);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
|
|
battle.showEffect('sword', {
|
|
x: attacker.leftof(-10),
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 10,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 410
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.5,
|
|
time: 710
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 510
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 710
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 610
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.5,
|
|
time: 810
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 610
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.5,
|
|
time: 910
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 610
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 910
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 610
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 910
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
secretsword: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
defender.delay(400);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
|
|
battle.showEffect('sword', {
|
|
x: attacker.leftof(-10),
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 10,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1.5,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel', 'fade');
|
|
}
|
|
},
|
|
psychocut: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 60,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 70,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 80,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 100
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 80,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: .4,
|
|
opacity: .4,
|
|
time: 400
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
precipiceblades: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 800, 0.4);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.behind(-50),
|
|
scale: 0,
|
|
opacity: 0.8
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
battle.showEffect('rock2', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.behind(-50),
|
|
scale: 0.5,
|
|
yscale: 1.4,
|
|
opacity: 0.7,
|
|
time: 25
|
|
}, {
|
|
y: attacker.y,
|
|
yscale: 1.5,
|
|
time: 250
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.behind(-125),
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('rock1', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.behind(-125),
|
|
scale: 0.5,
|
|
yscale: 1.5,
|
|
opacity: 0.7,
|
|
time: 175
|
|
}, {
|
|
y: attacker.y,
|
|
yscale: 1.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y - 35,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
yscale: 1.6,
|
|
opacity: 0.7,
|
|
time: 350
|
|
}, {
|
|
y: attacker.y,
|
|
yscale: 1.7,
|
|
time: 550
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock2', {
|
|
x: defender.x + 15,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
yscale: 1.6,
|
|
opacity: 0.7,
|
|
time: 375
|
|
}, {
|
|
y: attacker.y,
|
|
yscale: 1.7,
|
|
time: 575
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
yscale: 1.8,
|
|
opacity: 0.7,
|
|
time: 400
|
|
}, {
|
|
y: defender.y + 10,
|
|
yscale: 1.9,
|
|
time: 600
|
|
}, 'accel', 'fade');
|
|
|
|
defender.delay(325);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
originpulse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#00CCCC', 700, 0.5);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 75
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.3,
|
|
time: 150
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.behind(30),
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
dragonascent: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect("url('fx/bg-space.jpg')", 1000, 0.7);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.leftof(-25),
|
|
y: attacker.y + 250,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 2,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.leftof(-25),
|
|
y: attacker.y + 250,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 2,
|
|
time: 700
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 650
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.7,
|
|
time: 750
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear', 'fade');
|
|
|
|
attacker.anim({
|
|
opacity: 0,
|
|
y: defender.y + 120,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(625);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(725);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 250
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
}
|
|
},
|
|
diamondstorm: { // todo: new animation involving icicles
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#FF99FF', 700, 0.3);
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
dazzlinggleam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#FF99FF', 700, 0.5);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
payday: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
swift: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
leafstorm: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#9AB440', 700, 0.7);
|
|
battle.showEffect('leaf1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
petaldance: { // Work on this later
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#FF99FF', 1400, 0.5);
|
|
attacker.anim({x: attacker.x - 10, time: 100});
|
|
attacker.anim({x: attacker.x + 10, time: 200});
|
|
attacker.anim({x: attacker.x, time: 100});
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 50,
|
|
z: defender.behind(-150),
|
|
time: 200
|
|
}, 'ballistic2');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
time: 100
|
|
}, 'accel');
|
|
|
|
attacker.anim({z: attacker.z, time: 400}, 'swing');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x - 45,
|
|
y: attacker.y - 45,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: attacker.x + 50,
|
|
y: attacker.y - 30,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 450
|
|
}, 'decel');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 250
|
|
}, {
|
|
x: attacker.x + 25,
|
|
y: attacker.y - 60,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'decel');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x - 40,
|
|
y: attacker.y - 40,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 900
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 775
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 975
|
|
}, 'ballistic2Under', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.5,
|
|
opacity: 0.6,
|
|
time: 850
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.8,
|
|
opacity: 0.3,
|
|
time: 1050
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 925
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.9,
|
|
opacity: 0.6,
|
|
time: 1125
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.8,
|
|
opacity: 1,
|
|
time: 1000
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 1075
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.9,
|
|
opacity: 0.3,
|
|
time: 1175
|
|
}, 'ballistic2', 'explode');
|
|
|
|
defender.delay(825);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
petalblizzard: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender;
|
|
|
|
battle.backgroundEffect('#FF99FF', 700, 0.3);
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(350);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
}
|
|
if (args.length > 2) defender = args[2];
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 80,
|
|
y: defender.y + 60,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 80,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 275
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('petal', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
magicalleaf: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('leaf1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf1', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leaf2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.1,
|
|
opacity: 1,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.6,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
leafage: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
opacity: 0.6,
|
|
time: 500
|
|
}, 'ballistic2Under', 'explode');
|
|
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 0.1,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 0.1,
|
|
time: 400
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('feather', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 200
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .2,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, 'ballistic2Under', 'explode');
|
|
}
|
|
},
|
|
gunkshot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
hyperspacehole: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.backgroundEffect('#ffffff', 900, 0.6);
|
|
|
|
attacker.anim({
|
|
opacity: 0,
|
|
y: attacker.y - 80,
|
|
time: 300
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'decel');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 550
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 650
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.8,
|
|
time: 750
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 80,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
y: attacker.y - 80,
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300,
|
|
opacity: 1
|
|
}, 'decel');
|
|
defender.delay(500);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
hyperspacefury: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 900, 0.3);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.8,
|
|
opacity: 0.8
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 1,
|
|
opacity: 1
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-100),
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
attacker.anim({
|
|
x: attacker.leftof(-20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-20),
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'linear');
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
poisonjab: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(50),
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(20),
|
|
y: defender.y,
|
|
z: defender.behind(-20),
|
|
time: 400
|
|
}, 'ballistic2Under');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2');
|
|
defender.delay(425);
|
|
defender.anim({
|
|
x: defender.leftof(-20),
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
psychoboost: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 700, 0.3);
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1.25,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2.5,
|
|
opacity: .8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1.5,
|
|
opacity: .8,
|
|
time: 600
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('mistball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 900
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.5,
|
|
time: 1100
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 900
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.5,
|
|
time: 1100
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, 'accel', 'explode');
|
|
|
|
attacker.delay(400);
|
|
attacker.anim({
|
|
z: attacker.behind(20),
|
|
time: 300
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
defender.delay(600);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
bestow: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('pokeball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'ballistic', 'fade');
|
|
}
|
|
},
|
|
finalgambit: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 50
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 350
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: .3,
|
|
time: 100
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
scale: 5,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
time: 300
|
|
}, 'linear');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
forestscurse: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0
|
|
}, {
|
|
y: defender.y,
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'accel');
|
|
}
|
|
},
|
|
trickortreat: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 0
|
|
}, {
|
|
y: defender.y,
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'accel');
|
|
}
|
|
},
|
|
healpulse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 0
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0.1,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 300
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'linear');
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 500
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
for (var i = 0; i < 4; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 240 * xf[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 137 * yf[i],
|
|
scale: 0.3,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 339 * xf2[i],
|
|
y: attacker.y,
|
|
z: attacker.z + 194 * yf2[i],
|
|
scale: 0.3,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, 'accel');
|
|
}
|
|
}
|
|
},
|
|
spite: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.5
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1.5
|
|
}, 'decel', 'explode');
|
|
}
|
|
},
|
|
lockon: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
mindreader: {
|
|
anim: function (battle, args) {
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('mistball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
scale: 2
|
|
}, {
|
|
opacity: 1,
|
|
scale: 0.5
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
memento: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 900, 0.2);
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0
|
|
}, {
|
|
y: attacker.y + 600,
|
|
yscale: 10,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x,
|
|
y: defender.y + 500,
|
|
z: defender.z,
|
|
yscale: 10,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, {
|
|
y: defender.y,
|
|
opacity: 0,
|
|
yscale: 1,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
spiritshackle: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#440044 30%, #000000', 1000, 0.4);
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 35,
|
|
z: attacker.z,
|
|
scale: 0.1,
|
|
opacity: 0.4,
|
|
time: 0
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-10),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 575
|
|
}, {
|
|
y: defender.y + 150,
|
|
z: defender.behind(-10),
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 590
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'linear', 'explode');
|
|
|
|
defender.delay(825);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
brutalswing: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1300, 0.3);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-50),
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(700);
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.3,
|
|
scale: 0,
|
|
time: 900
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'linear');
|
|
}
|
|
battle.activityWait(500);
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
var xf = [1, -1, 1, -1];
|
|
var yf = [1, -1, -1, 1];
|
|
var xf2 = [1, 0, -1, 0];
|
|
var yf2 = [0, 1, 0, -1];
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 50,
|
|
z: defender.behind(-50),
|
|
scale: 1,
|
|
xscale: 5,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, {
|
|
scale: 2,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1300
|
|
}, 'decel', 'fade');
|
|
}
|
|
},
|
|
revelationdance: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1300, 0.3);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 60,
|
|
z: attacker.behind(15),
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 150
|
|
}, {
|
|
scale: 1.5,
|
|
xscale: 4,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y - 60,
|
|
z: attacker.behind(15),
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 1.5,
|
|
xscale: 4,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 60,
|
|
z: attacker.behind(15),
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 650
|
|
}, {
|
|
scale: 1.5,
|
|
xscale: 4,
|
|
opacity: 0
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-15),
|
|
scale: 0.7,
|
|
xscale: 1,
|
|
opacity: 0.8,
|
|
time: 900
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
time: 1100
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 25,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
x: defender.x + 50,
|
|
y: defender.y + 10,
|
|
opacity: 0.3,
|
|
time: 1400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.6,
|
|
time: 1200
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 20,
|
|
opacity: 0.3,
|
|
time: 1400
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 1300
|
|
}, {
|
|
x: defender.x + 35,
|
|
y: defender.y + 30,
|
|
opacity: 0.3,
|
|
time: 1500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.2,
|
|
opacity: 0.7,
|
|
time: 1300
|
|
}, {
|
|
x: defender.x - 35,
|
|
y: defender.y - 40,
|
|
opacity: 0.3,
|
|
time: 1500
|
|
}, 'accel', 'explode');
|
|
|
|
attacker.anim({
|
|
x: attacker.x + 5,
|
|
y: attacker.y + 10,
|
|
time: 100
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: attacker.x + 10,
|
|
y: attacker.y,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 10,
|
|
time: 200
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: attacker.x - 10,
|
|
y: attacker.y,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 10,
|
|
time: 100
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
time: 50
|
|
});
|
|
attacker.anim({
|
|
z: attacker.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
attacker.anim({
|
|
z: attacker.behind(-15),
|
|
time: 100
|
|
}, 'accel');
|
|
attacker.anim({
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.delay(1100);
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
prismaticlaser: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.y - attacker.y) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 20 * i
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.5,
|
|
opacity: 0.3,
|
|
time: 20 * i
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
}
|
|
battle.backgroundEffect('#000000', 700, 0.6);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.2,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
firstimpression: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#987058', 600, .3, 400);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 60,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
scale: 0.25,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 100,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.25,
|
|
yscale: 0.75,
|
|
opacity: 1
|
|
}, {
|
|
scale: 0.25,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y + 60,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1
|
|
}, {
|
|
scale: 0.25,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y + 100,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
xscale: 0.25,
|
|
yscale: 0.75,
|
|
opacity: 1
|
|
}, {
|
|
scale: 0.25,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'linear');
|
|
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 5,
|
|
xscale: 0.9,
|
|
yscale: 1.1,
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.anim({
|
|
y: defender.y + 5,
|
|
xscale: 0.9,
|
|
yscale: 1.1,
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
defender.delay(280);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
shoreup: {
|
|
anim: BattleOtherAnims.lightstatus.anim
|
|
},
|
|
firelash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.behind(15),
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
BattleOtherAnims.contactattack.anim(battle, args);
|
|
}
|
|
},
|
|
powertrip: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 100
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 30,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 200
|
|
}, {
|
|
y: defender.y + 60,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 300
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 700
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 15,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.4,
|
|
time: 400
|
|
}, {
|
|
y: attacker.y + 60,
|
|
opacity: 0.2,
|
|
time: 800
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
opacity: 0.1,
|
|
time: 500
|
|
}, {
|
|
x: attacker.leftof(-30),
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-50),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'ballistic2Under', 'fade');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 5,
|
|
xscale: 0.9,
|
|
yscale: 1.1,
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
y: attacker.y + 5,
|
|
xscale: 0.9,
|
|
yscale: 1.1,
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
y: attacker.y + 5,
|
|
xscale: 0.9,
|
|
yscale: 1.1,
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.anim({
|
|
time: 100
|
|
}, 'swing');
|
|
attacker.delay(200);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.behind(-30),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
time: 100
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(1250);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(1450);
|
|
}
|
|
},
|
|
smartstrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.showEffect('rightslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('leftslash', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 860
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1160
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 910
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1210
|
|
}, 'linear');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 550
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 850
|
|
}, 'accel', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 900
|
|
}, 'accel', 'fade');
|
|
attacker.delay(500);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(70),
|
|
time: 300,
|
|
opacity: .5
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.x,
|
|
z: defender.behind(100),
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel');
|
|
defender.delay(760);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 100
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
spotlight: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
BattleOtherAnims.dance.anim(battle, args);
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 50,
|
|
y: attacker.y + 30,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1
|
|
}, {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('pointer', {
|
|
x: attacker.x + 30,
|
|
y: attacker.y + 35,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.3,
|
|
yscale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x + 60,
|
|
y: attacker.y + 30,
|
|
scale: 0.4,
|
|
xscale: 0.4,
|
|
yscale: 0.4,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
|
|
defender.delay(400);
|
|
defender.anim({
|
|
y: defender.y + 15,
|
|
time: 150
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'accel');
|
|
defender.anim({
|
|
y: defender.y + 15,
|
|
time: 150
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'accel');
|
|
}
|
|
},
|
|
anchorshot: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.y - attacker.y) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: attacker.y + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 20 * i
|
|
}, {
|
|
opacity: 0,
|
|
time: 40 * i + 600
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y - 5,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 950
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('energyball', {
|
|
x: defender.x,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
xscale: 2,
|
|
opacity: 0.3,
|
|
time: 400
|
|
}, {
|
|
scale: 0.4,
|
|
xscale: 1,
|
|
opacity: 0.1,
|
|
time: 1000
|
|
}, 'decel', 'fade');
|
|
defender.delay(300);
|
|
defender.anim({
|
|
y: defender.y + 15,
|
|
z: defender.behind(10),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.delay(25);
|
|
defender.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 15,
|
|
z: defender.behind(5),
|
|
yscale: 1.3,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
}
|
|
},
|
|
clangingscales: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#440044', 700, 0.2);
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
z: attacker.behind(-10),
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 275
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 350
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 425
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 500
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 575
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 550
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 750
|
|
}, 'linear');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
scale: 4,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
|
|
defender.delay(125);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
spectralthief: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#000000 30%, #440044', 1700, 0.5);
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.5,
|
|
xscale: 0.5,
|
|
yscale: 1,
|
|
opacity: 0.5
|
|
}, {
|
|
scale: 2,
|
|
xscale: 4,
|
|
opacity: 0.1,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
}, {
|
|
x: attacker.x + 50,
|
|
scale: 3,
|
|
xscale: 3.5,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 25,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
}, {
|
|
x: attacker.x - 50,
|
|
scale: 3,
|
|
xscale: 3.5,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 300,
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x - 50,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 400,
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 40,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 450,
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
time: 925
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
xscale: 0.5,
|
|
yscale: 1,
|
|
opacity: 0.5,
|
|
time: 750
|
|
}, {
|
|
scale: 2,
|
|
xscale: 4,
|
|
opacity: 0.1,
|
|
time: 1200
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 750
|
|
}, {
|
|
x: defender.x + 75,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 1200
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 25,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 0.3,
|
|
time: 750
|
|
}, {
|
|
x: defender.x - 75,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 1200
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 700
|
|
}, {
|
|
y: defender.y + 600,
|
|
yscale: 10,
|
|
time: 1200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x + 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, {
|
|
y: defender.y + 600,
|
|
yscale: 10,
|
|
time: 1300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 900
|
|
}, {
|
|
y: defender.y + 600,
|
|
yscale: 10,
|
|
time: 1400
|
|
}, 'linear', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 1000
|
|
}, {
|
|
y: defender.y + 600,
|
|
yscale: 10,
|
|
time: 1500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect(attacker.sp, {
|
|
x: defender.x - 15,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 1100
|
|
}, {
|
|
y: defender.y + 600,
|
|
yscale: 10,
|
|
time: 1600
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('impact', {
|
|
x: defender.x - 25,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 0.6,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x + 25,
|
|
y: defender.y - 5,
|
|
z: defender.behind(5),
|
|
scale: 0.6,
|
|
opacity: 0.5,
|
|
time: 800
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x - 25,
|
|
y: defender.y + 10,
|
|
z: defender.behind(5),
|
|
scale: 0.6,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x + 2,
|
|
y: defender.y + 5,
|
|
z: defender.behind(5),
|
|
scale: 0.6,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 5,
|
|
z: defender.behind(5),
|
|
scale: 0.6,
|
|
opacity: 0.2,
|
|
time: 1100
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
time: 1700
|
|
}, {
|
|
x: attacker.x + 70,
|
|
scale: 0.8,
|
|
opacity: 0,
|
|
time: 2200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
time: 1700
|
|
}, {
|
|
x: attacker.x - 70,
|
|
scale: 0.8,
|
|
opacity: 0,
|
|
time: 2200
|
|
}, 'linear', 'fade');
|
|
attacker.anim({
|
|
opacity: 0,
|
|
y: attacker.y - 40,
|
|
time: 200
|
|
}, 'swing');
|
|
attacker.delay(1200);
|
|
attacker.anim({
|
|
opacity: 0,
|
|
y: attacker.y + 60,
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.delay(725);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
},
|
|
sunsteelstrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.x - 200 - attacker.x) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 500, 0.6);
|
|
battle.backgroundEffect('linear-gradient(#FFFFFF 30%, #B84038)', 1200, 0.6, 500);
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 2.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'decel');
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 2,
|
|
opacity: 0.4,
|
|
time: 40 * i + 700
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 60 * i + 1500
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 1075
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1675
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1075
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 1375
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1175
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 1575
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(425);
|
|
attacker.anim({
|
|
y: defender.y + 200,
|
|
opacity: 1,
|
|
time: 1
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 1,
|
|
time: 350
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.leftof(50),
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 75
|
|
});
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(1075);
|
|
defender.anim({
|
|
z: defender.behind(30),
|
|
time: 400
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
moongeistbeam: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
var xstep = (defender.x - attacker.x) / 5;
|
|
var ystep = (defender.x - 200 - attacker.x) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
battle.backgroundEffect('#000000', 600, 0.6);
|
|
battle.backgroundEffect('linear-gradient(#000000 10%, #2630A9)', 1100, 0.6, 600);
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 2.5,
|
|
opacity: 1,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'decel');
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 2.5,
|
|
opacity: 1,
|
|
time: 40 * i + 700
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 60 * i + 1500
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1000
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 875
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1075
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 950
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1150
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 1025
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1225
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: .4,
|
|
opacity: 0.6,
|
|
time: 1175
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: .6,
|
|
opacity: 0.3,
|
|
time: 1375
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 1375
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1675
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1175
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 1375
|
|
}, 'linear');
|
|
battle.showEffect('bluefireball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(10),
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1275
|
|
}, {
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 1675
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(1150);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(775);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(10),
|
|
time: 300
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
coreenforcer: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#082179', 1600, 0.5, 300);
|
|
battle.backgroundEffect('linear-gradient(#46AF71 20%, #1170F0)', 1600, 0.4, 300);
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(1525);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
attacker.delay(600);
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(2075);
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 75
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x - 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x + 30,
|
|
time: 100
|
|
});
|
|
defender.anim({
|
|
x: defender.x,
|
|
time: 100
|
|
});
|
|
}
|
|
if (args.length > 2) defender = args[2];
|
|
|
|
var xstep = (defender.x - defender.leftof(-25)) / 5;
|
|
var ystep = (defender.y - 225 - attacker.y) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 6; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(50) + xstep * (i + 1),
|
|
y: (attacker.y + 300) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.3,
|
|
opacity: 1,
|
|
time: 5 * i + 700
|
|
}, {
|
|
x: defender.leftof(50) + xstep * (i + 1),
|
|
opacity: 0,
|
|
time: 100 * i + 800
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - defender.leftof(25)) / 5;
|
|
var ystep = (defender.y - 250 - attacker.y) / 5;
|
|
var zstep = (defender.behind(-100) - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 6; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(-50) + xstep * (i + 1),
|
|
y: (attacker.y + 275) + ystep * (i + 1),
|
|
z: attacker.behind(-150) + zstep * (i + 1),
|
|
scale: 1.3,
|
|
opacity: 1,
|
|
time: 5 * i + 900
|
|
}, {
|
|
x: defender.leftof(-50) + xstep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
opacity: 0,
|
|
time: 100 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - defender.leftof(-15)) / 5;
|
|
var ystep = (defender.y - 275 - attacker.y - 25) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 6; i++) {
|
|
battle.showEffect('wisp', {
|
|
x: attacker.leftof(50) + xstep * (i + 1),
|
|
y: (attacker.y + 275) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.3,
|
|
opacity: 1,
|
|
time: 5 * i + 1100
|
|
}, {
|
|
x: defender.leftof(50) + xstep * (i + 1),
|
|
opacity: 0,
|
|
time: 100 * i + 1200
|
|
}, 'linear');
|
|
}
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
x: defender.x + 60,
|
|
y: defender.y + 30,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1175
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y - 30,
|
|
z: defender.behind(20),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1375
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1225
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y + 10,
|
|
z: defender.behind(10),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1425
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1250
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(-10),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1450
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1325
|
|
}, {
|
|
x: defender.x - 50,
|
|
y: defender.y + 10,
|
|
z: defender.behind(-20),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1525
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1350
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(-25),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1550
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1.4,
|
|
time: 1400
|
|
}, {
|
|
x: defender.x - 60,
|
|
y: defender.y - 10,
|
|
z: defender.behind(-40),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1600
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1.4,
|
|
time: 1475
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.behind(-30),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1675
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1525
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 10,
|
|
z: defender.behind(-40),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 1725
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 200,
|
|
z: attacker.z,
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 1550
|
|
}, {
|
|
x: defender.x + 80,
|
|
y: defender.y,
|
|
z: defender.behind(-50),
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1750
|
|
}, 'linear', 'fade');
|
|
|
|
battle.backgroundEffect('#ffffff', 800, 0.8, 2000);
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 2000
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 2150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: .6,
|
|
time: 2300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
}
|
|
},
|
|
|
|
// z-move animations
|
|
gigavolthavoc: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 800, 0.7);
|
|
battle.backgroundEffect('#ffffff', 200, 0.7, 700);
|
|
battle.backgroundEffect('#000000', 800, 0.7, 900);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 8,
|
|
opacity: 0,
|
|
time: 150
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('lightning', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'decel');
|
|
battle.showEffect('lightning', {
|
|
x: attacker.x + 10,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 550
|
|
}, 'decel');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: .8,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 1.2,
|
|
opacity: .8,
|
|
time: 800
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1250
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1400
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 10,
|
|
time: 850
|
|
}, {
|
|
xscale: 0,
|
|
opacity: 0.5,
|
|
time: 1200
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 850
|
|
}, {
|
|
scale: 9,
|
|
time: 1400
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 950
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
defender.delay(825);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
}
|
|
},
|
|
infernooverdrive: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#421800 40%, #B8652F)', 800, 0.7);
|
|
battle.backgroundEffect('#ffffff', 200, 0.7, 700);
|
|
battle.backgroundEffect('#000000', 800, 0.7, 900);
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 20,
|
|
z: attacker.behind(-30),
|
|
scale: 1,
|
|
opacity: 0.3
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 100
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x,
|
|
y: attacker.y - 20,
|
|
z: attacker.behind(-30),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 200
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('fireball', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 1,
|
|
opacity: 0.3,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 400
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3
|
|
}, {
|
|
scale: 0.6,
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 3,
|
|
opacity: 0.3,
|
|
time: 100
|
|
}, {
|
|
scale: .8,
|
|
opacity: 0.6,
|
|
time: 400
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-30),
|
|
scale: 0.6,
|
|
opacity: .8,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
scale: 5,
|
|
opacity: .8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 1,
|
|
time: 900
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 1,
|
|
time: 1000
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 5,
|
|
time: 800
|
|
}, {
|
|
scale: 12,
|
|
opacity: 0.5,
|
|
time: 1500
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 950
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fireball', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
defender.delay(825);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
}
|
|
},
|
|
alloutpummeling: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#390000 30%, #B84038)', 2000, 0.8);
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6
|
|
}, {
|
|
x: defender.x + 30,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 75
|
|
}, {
|
|
x: defender.x + 20,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 275
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
x: defender.x - 30,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'ballistic2Under', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 225
|
|
}, {
|
|
x: defender.x - 10,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 425
|
|
}, 'ballistic', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 300
|
|
}, {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'ballistic2', 'explode');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.6,
|
|
opacity: 0.6,
|
|
time: 375
|
|
}, {
|
|
x: defender.x - 20,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 575
|
|
}, 'ballistic2Under', 'explode');
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-5),
|
|
scale: 1.5,
|
|
opacity: 0,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 1150
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 1100
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 1125
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-5),
|
|
time: 1150
|
|
}, 'accel', 'fade');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.8,
|
|
time: 1150
|
|
}, {
|
|
scale: 1,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1450
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 0.5,
|
|
time: 1150
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1650
|
|
}, 'decel');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 0.5,
|
|
time: 1150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1650
|
|
}, 'decel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 5,
|
|
yscale: 13,
|
|
time: 1150
|
|
}, {
|
|
opacity: 0.5,
|
|
xscale: 0,
|
|
time: 2000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 2,
|
|
time: 1150
|
|
}, {
|
|
opacity: 0.5,
|
|
scale: 6,
|
|
time: 2000
|
|
}, 'decel', 'explode');
|
|
|
|
attacker.delay(600);
|
|
attacker.anim({
|
|
z: attacker.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
attacker.anim({
|
|
z: defender.behind(-170),
|
|
opacity: 0,
|
|
time: 100
|
|
}, 'accel');
|
|
attacker.delay(1000);
|
|
attacker.anim({
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.delay(200);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.delay(300);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
opacity: 0,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.delay(750);
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
supersonicskystrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#46BFFF 20%, #241714)', 1300, 0.5);
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 25
|
|
}, {
|
|
y: attacker.y + 250,
|
|
opacity: 0,
|
|
time: 325
|
|
}, 'decel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 625
|
|
}, {
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0,
|
|
time: 825
|
|
}, 'decel');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 600
|
|
}, {
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0.3,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1250
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1400
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 10,
|
|
time: 850
|
|
}, {
|
|
xscale: 0,
|
|
time: 1500
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 850
|
|
}, {
|
|
scale: 9,
|
|
time: 1400
|
|
}, 'linear', 'explode');
|
|
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.z,
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 1,
|
|
time: 200
|
|
}, 'ballistic2Under');
|
|
attacker.delay(50);
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
});
|
|
attacker.delay(700);
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 200
|
|
});
|
|
defender.delay(650);
|
|
defender.anim({
|
|
y: defender.y - 10,
|
|
z: defender.behind(5),
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
y: defender.y - 20,
|
|
z: defender.behind(20),
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
battle.activityWait(1450);
|
|
}
|
|
},
|
|
blackholeeclipse: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#440044 30%, #000000', 2500, 0.6);
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.2,
|
|
time: 0
|
|
}, {
|
|
scale: 2,
|
|
opacity: .5,
|
|
time: 600
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 0
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 400
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 200
|
|
}, {
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, 'accel');
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 550
|
|
}, {
|
|
scale: 0.7,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0.1,
|
|
time: 550
|
|
}, {
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 900
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 0.7,
|
|
opacity: 0.5,
|
|
time: 900
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 2,
|
|
time: 1500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1.5,
|
|
opacity: 1,
|
|
time: 900
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 3,
|
|
time: 1500
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.7,
|
|
time: 1500
|
|
}, {
|
|
scale: 2,
|
|
time: 2200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 4,
|
|
opacity: 1,
|
|
time: 1500
|
|
}, {
|
|
scale: 4.2,
|
|
time: 2200
|
|
}, 'linear', 'fade');
|
|
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 1600
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1900
|
|
}, 'linear');
|
|
battle.showEffect('flareball', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0.1,
|
|
time: 1900
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 2200
|
|
}, 'linear');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 4.2,
|
|
opacity: 0.5,
|
|
time: 2200
|
|
}, {
|
|
scale: 0,
|
|
time: 2500
|
|
}, 'accel');
|
|
|
|
defender.delay(1500);
|
|
defender.anim({
|
|
y: defender.y + 50,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'accel');
|
|
defender.delay(1500);
|
|
defender.anim({
|
|
y: defender.y,
|
|
opacity: 0,
|
|
time: 1
|
|
});
|
|
defender.anim({
|
|
time: 400
|
|
});
|
|
}
|
|
},
|
|
continentalcrush: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#421800 40%, #B8652F)', 2200, 0.6);
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 25
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: defender.behind(-50),
|
|
opacity: 0,
|
|
time: 325
|
|
}, 'accel');
|
|
battle.showEffect('rock2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-40),
|
|
scale: 0.4,
|
|
opacity: 0,
|
|
time: 225
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: defender.behind(-30),
|
|
opacity: 1,
|
|
time: 525
|
|
}, 'accel');
|
|
battle.showEffect('rocks', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-70),
|
|
scale: 0.8,
|
|
opacity: 0,
|
|
time: 300
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: defender.behind(-20),
|
|
scale: 0.4,
|
|
opacity: 1,
|
|
time: 650
|
|
}, 'accel');
|
|
battle.showEffect('rock2', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(-90),
|
|
scale: 0.2,
|
|
opacity: 0,
|
|
time: 325
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: defender.behind(-50),
|
|
opacity: 1,
|
|
time: 675
|
|
}, 'accel');
|
|
battle.showEffect('rock1', {
|
|
x: defender.x,
|
|
y: defender.y + 175,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 55,
|
|
z: defender.z,
|
|
scale: 5.5,
|
|
opacity: 1,
|
|
time: 1800
|
|
}, 'decel', 'fade');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 1650
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 2050
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 1650
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 2200
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 8,
|
|
time: 1650
|
|
}, {
|
|
xscale: 12,
|
|
opacity: 0.5,
|
|
time: 2000
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 6,
|
|
time: 1650
|
|
}, {
|
|
scale: 12,
|
|
opacity: 0.7,
|
|
time: 2200
|
|
}, 'linear', 'explode');
|
|
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.delay(1700);
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 200
|
|
});
|
|
defender.delay(1450);
|
|
defender.anim({
|
|
y: defender.y - 10,
|
|
yscale: 0.4,
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
y: defender.y - 20,
|
|
yscale: 0.3,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.delay(200);
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
}
|
|
},
|
|
neverendingnightmare: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#440044 30%, #000000', 1500, 0.6);
|
|
var xstep = (defender.x + 200 - defender.x) / 5;
|
|
var ystep = (defender.x - 200 - defender.x) / 5;
|
|
var zstep = (defender.z - defender.z) / 5;
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 200 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 0
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x + 150 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 150 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x + 100 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 100 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 1.2,
|
|
opacity: 1,
|
|
time: 40 * i + 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x + 50 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x - 50 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 300
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - 50 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 50 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 1.2,
|
|
opacity: 1,
|
|
time: 40 * i + 400
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - 100 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 100 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 500
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - 150 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 150 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 600
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (defender.x - 200 - defender.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x + 200 + xstep * (i + 1),
|
|
y: (defender.y + 200) + ystep * (i + 1),
|
|
z: defender.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 700
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 0.5,
|
|
time: 200
|
|
}, {
|
|
scale: 3,
|
|
xscale: 8,
|
|
opacity: 0.1,
|
|
time: 1300
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 2,
|
|
time: 200
|
|
}, {
|
|
scale: 2.5,
|
|
opacity: 0,
|
|
time: 1500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 3,
|
|
time: 200
|
|
}, {
|
|
scale: 9,
|
|
opacity: 1,
|
|
time: 1500
|
|
}, 'linear', 'fade');
|
|
}
|
|
},
|
|
corkscrewcrash: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1200, 0.3);
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 500
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 800
|
|
}, 'linear');
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 700
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'linear');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 90,
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-165),
|
|
y: defender.y + 170,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 400
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 2,
|
|
opacity: 0.5,
|
|
time: 650
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 500
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 650
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 550
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 700
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 600
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 750
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 650
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 800
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 700
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 850
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 750
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 900
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 950
|
|
}, 'accel');
|
|
battle.showEffect('iceball', {
|
|
x: defender.leftof(-65),
|
|
y: defender.y + 90,
|
|
z: defender.z,
|
|
scale: 3,
|
|
yscale: 3.3,
|
|
opacity: 0.8,
|
|
time: 900
|
|
}, {
|
|
x: defender.leftof(10),
|
|
y: defender.y - 20,
|
|
z: defender.behind(-10),
|
|
scale: 0,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
time: 1050
|
|
}, 'accel');
|
|
|
|
attacker.anim({
|
|
y: defender.y + 120,
|
|
xscale: 0,
|
|
yscale: 0,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(825);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
xscale: 1,
|
|
yscale: 1,
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(625);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
defender.anim({
|
|
time: 350
|
|
}, 'swing');
|
|
battle.activityWait(550);
|
|
}
|
|
},
|
|
twinkletackle: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#FF99FF', 1700, 0.5);
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 10,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6
|
|
}, {
|
|
opacity: 0,
|
|
time: 200
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 30,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 0
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 250
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 20,
|
|
y: attacker.y - 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 150
|
|
}, {
|
|
opacity: 0,
|
|
time: 250
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 20,
|
|
y: attacker.y + 40,
|
|
z: attacker.z,
|
|
scale: 0.2,
|
|
opacity: 1,
|
|
time: 175
|
|
}, {
|
|
y: attacker.y + 40,
|
|
opacity: 0,
|
|
time: 275
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x - 5,
|
|
y: attacker.y + 15,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'decel');
|
|
battle.showEffect('shine', {
|
|
x: attacker.x + 5,
|
|
y: attacker.y - 10,
|
|
z: attacker.z,
|
|
scale: 0.3,
|
|
opacity: 0.6,
|
|
time: 125
|
|
}, {
|
|
opacity: 0,
|
|
time: 325
|
|
}, 'accel');
|
|
|
|
battle.showEffect('impact', {
|
|
x: defender.x,
|
|
y: defender.y + 2,
|
|
z: defender.behind(5),
|
|
scale: 0,
|
|
opacity: 0.2,
|
|
time: 600
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'linear');
|
|
battle.showEffect('shine', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 5,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, {
|
|
x: defender.x + 40,
|
|
y: defender.y + 10,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: defender.x - 30,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.7,
|
|
time: 700
|
|
}, {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
opacity: 0,
|
|
time: 900
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: defender.x + 15,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.7,
|
|
time: 700
|
|
}, {
|
|
x: defender.x + 25,
|
|
y: defender.y + 20,
|
|
opacity: 0,
|
|
time: 1000
|
|
}, 'accel');
|
|
battle.showEffect('shine', {
|
|
x: defender.x - 15,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
scale: 0.3,
|
|
opacity: 0.7,
|
|
time: 800
|
|
}, {
|
|
x: defender.x - 25,
|
|
y: defender.y - 40,
|
|
opacity: 0,
|
|
time: 1100
|
|
}, 'accel');
|
|
attacker.delay(200);
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(5),
|
|
time: 375
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(20),
|
|
time: 250
|
|
}, 'decel');
|
|
attacker.anim({
|
|
time: 700
|
|
}, 'ballistic2Back');
|
|
defender.delay(600);
|
|
defender.anim({
|
|
x: defender.leftof(75),
|
|
y: defender.y + 50,
|
|
z: defender.behind(150),
|
|
opacity: 0,
|
|
time: 400
|
|
}, 'swing');
|
|
defender.delay(500);
|
|
defender.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
});
|
|
defender.anim({
|
|
time: 400
|
|
});
|
|
battle.activityWait(800);
|
|
}
|
|
},
|
|
pulverizingpancake: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#421800 40%, #B8652F)', 600, 0.7, 1200);
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 1450
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1850
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 1450
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 2000
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 10,
|
|
time: 1450
|
|
}, {
|
|
xscale: 0,
|
|
opacity: 0.5,
|
|
time: 1800
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 1450
|
|
}, {
|
|
scale: 9,
|
|
opacity: 0.7,
|
|
time: 2000
|
|
}, 'linear', 'explode');
|
|
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 50,
|
|
z: defender.behind(-150),
|
|
time: 400
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.behind(-125),
|
|
time: 200
|
|
}, 'ballistic2Back');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y - 7,
|
|
z: defender.behind(-125),
|
|
yscale: 0.7,
|
|
time: 50
|
|
}, 'ballistic2Back');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-30),
|
|
time: 600
|
|
}, 'ballistic');
|
|
attacker.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
time: 200
|
|
});
|
|
attacker.anim({
|
|
time: 500
|
|
}, 'ballistic2Back');
|
|
defender.delay(1450);
|
|
defender.anim({
|
|
y: defender.y - 10,
|
|
z: defender.behind(5),
|
|
yscale: 0.3,
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
y: defender.y - 20,
|
|
z: defender.behind(20),
|
|
yscale: 0.3,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
battle.activityWait(1450);
|
|
}
|
|
},
|
|
stokedsparksurfer: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#0000DD', 1100, 0.2, 500);
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 1
|
|
}, {
|
|
y: attacker.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
battle.showEffect('electroball', {
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 700
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 2,
|
|
opacity: 1,
|
|
time: 1100
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 1050
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1450
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 1050
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1600
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 10,
|
|
time: 1050
|
|
}, {
|
|
xscale: 0,
|
|
opacity: 0.5,
|
|
time: 1600
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 1050
|
|
}, {
|
|
scale: 9,
|
|
time: 1600
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1000
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1150
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1300
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
y: attacker.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(100);
|
|
attacker.anim({
|
|
x: attacker.leftof(-200),
|
|
y: attacker.y + 80,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(100),
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 175
|
|
});
|
|
attacker.delay(700);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(1000);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
catastropika: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#0000DD', 800, 0.2, 500);
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
time: 25
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
opacity: 0,
|
|
time: 325
|
|
}, 'decel');
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0.8,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
scale: 1,
|
|
opacity: 0.5,
|
|
time: 600
|
|
}, {
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, 'accel', 'explode');
|
|
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1250
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 1400
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
yscale: 10,
|
|
time: 850
|
|
}, {
|
|
xscale: 0,
|
|
opacity: 0.5,
|
|
time: 1400
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 3,
|
|
time: 850
|
|
}, {
|
|
scale: 9,
|
|
time: 1400
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 40,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 800
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x - 40,
|
|
y: defender.y - 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 950
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
battle.showEffect('lightning', {
|
|
x: defender.x + 10,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.6,
|
|
time: 1100
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0
|
|
}, 'linear');
|
|
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y + 5,
|
|
z: defender.behind(10),
|
|
opacity: 0,
|
|
time: 200
|
|
});
|
|
attacker.delay(50);
|
|
attacker.anim({
|
|
opacity: 0,
|
|
time: 1
|
|
});
|
|
attacker.delay(700);
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 200
|
|
});
|
|
defender.delay(850);
|
|
defender.anim({
|
|
y: defender.y - 10,
|
|
z: defender.behind(5),
|
|
yscale: 0.3,
|
|
time: 50
|
|
}, 'swing');
|
|
defender.anim({
|
|
y: defender.y - 20,
|
|
z: defender.behind(20),
|
|
yscale: 0.3,
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 400
|
|
}, 'swing');
|
|
battle.activityWait(1450);
|
|
}
|
|
},
|
|
sinisterarrowraid: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[i];
|
|
|
|
for (var i = 1; i < args.length; i++) {
|
|
defender = args[i];
|
|
defender.delay(1050);
|
|
defender.anim({
|
|
z: defender.behind(20),
|
|
time: 300
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 200
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x - 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
x: defender.x + 5,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 100
|
|
}, 'accel');
|
|
}
|
|
attacker.anim({
|
|
y: attacker.y + 120,
|
|
opacity: 0,
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.delay(100);
|
|
attacker.anim({
|
|
x: attacker.leftof(-200),
|
|
y: attacker.y + 80,
|
|
z: attacker.z,
|
|
opacity: 0,
|
|
time: 350
|
|
}, 'accel');
|
|
attacker.anim({
|
|
x: defender.leftof(-200),
|
|
y: defender.y + 80,
|
|
z: defender.z,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
time: 350
|
|
}, 'accel');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 0.5,
|
|
time: 1000
|
|
}, {
|
|
scale: 2,
|
|
opacity: 0,
|
|
time: 1300
|
|
}, 'linear');
|
|
attacker.anim({
|
|
x: defender.leftof(100),
|
|
y: defender.y - 40,
|
|
z: defender.z,
|
|
opacity: 0,
|
|
time: 175
|
|
});
|
|
attacker.delay(700);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 40,
|
|
z: attacker.behind(40),
|
|
time: 1
|
|
});
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
|
|
battle.backgroundEffect('linear-gradient(#440044 30%, #000000', 2300, 0.4);
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 20,
|
|
y: defender.y + 200,
|
|
z: defender.behind(5),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1475
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 1775
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 20,
|
|
y: defender.y - 50,
|
|
z: defender.behind(5),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1490
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 1775
|
|
}, 'linear');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 40,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-5),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1625
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 1900
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 40,
|
|
y: defender.y - 50,
|
|
z: defender.behind(-5),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1640
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 1900
|
|
}, 'linear');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 70,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-10),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1675
|
|
}, {
|
|
y: defender.y + 150,
|
|
z: defender.behind(-10),
|
|
opacity: 0,
|
|
time: 1925
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x - 70,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1690
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 1925
|
|
}, 'linear');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 70,
|
|
y: defender.y + 200,
|
|
z: defender.behind(10),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1750
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 2050
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x + 70,
|
|
y: defender.y - 50,
|
|
z: defender.behind(10),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1765
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 2050
|
|
}, 'linear');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1800
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 2100
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 50,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1820
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 2100
|
|
}, 'linear');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y + 200,
|
|
z: defender.behind(-20),
|
|
opacity: 0.4,
|
|
xscale: 0.1,
|
|
yscale: 5,
|
|
time: 1825
|
|
}, {
|
|
y: defender.y + 150,
|
|
opacity: 0,
|
|
time: 2125
|
|
}, 'decel');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 35,
|
|
z: defender.behind(-20),
|
|
opacity: 0.4,
|
|
xscale: 0.3,
|
|
yscale: 0.1,
|
|
time: 1840
|
|
}, {
|
|
xscale: 0.6,
|
|
yscale: 0.1,
|
|
opacity: 0,
|
|
time: 2125
|
|
}, 'linear');
|
|
}
|
|
},
|
|
oceanicoperatta: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
battle.backgroundEffect('linear-gradient(#000000 20%, #0000DD)', 2700, 0.4);
|
|
battle.backgroundEffect("url('fx/weather-raindance.jpg')", 700, 0.2, 2000);
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 120,
|
|
z: attacker.z,
|
|
scale: 2.5,
|
|
opacity: 0
|
|
}, {
|
|
scale: 3,
|
|
opacity: 1,
|
|
time: 599
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 120,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 0
|
|
}, {
|
|
scale: 3.25,
|
|
opacity: 0.7,
|
|
time: 599
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: attacker.y + 120,
|
|
z: attacker.z,
|
|
scale: 3,
|
|
opacity: 1,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
time: 2000
|
|
}, 'accel', 'explode');
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x,
|
|
y: attacker.y + 120,
|
|
z: attacker.z,
|
|
scale: 3.25,
|
|
opacity: 0.7,
|
|
time: 600
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
time: 2000
|
|
}, 'accel', 'explode');
|
|
}
|
|
},
|
|
extremeevoboost: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('#000000', 1000, 0.3);
|
|
var xstep = (attacker.x + 200 - attacker.x) / 5;
|
|
var ystep = (attacker.x - 200 - attacker.x) / 5;
|
|
var zstep = (defender.z - attacker.z) / 5;
|
|
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('flareball', {
|
|
x: attacker.x - 200 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 0
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x + 150 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('electroball', {
|
|
x: attacker.x - 150 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 100
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x + 100 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('waterwisp', {
|
|
x: attacker.x - 100 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.2,
|
|
opacity: 1,
|
|
time: 40 * i + 200
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x + 50 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('shadowball', {
|
|
x: attacker.x - 50 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 300
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x - 50 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('poisonwisp', {
|
|
x: attacker.x + 50 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 1.2,
|
|
opacity: 1,
|
|
time: 40 * i + 400
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x - 100 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x + 100 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 500
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x - 150 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('energyball', {
|
|
x: attacker.x + 150 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 600
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
var xstep = (attacker.x - 200 - attacker.x) / 5;
|
|
for (var i = 0; i < 5; i++) {
|
|
battle.showEffect('mistball', {
|
|
x: attacker.x + 200 + xstep * (i + 1),
|
|
y: (attacker.y + 200) + ystep * (i + 1),
|
|
z: attacker.z + zstep * (i + 1),
|
|
scale: 0.6,
|
|
opacity: 0.7,
|
|
time: 40 * i + 700
|
|
}, {
|
|
opacity: 0,
|
|
time: 50 * i + 1000
|
|
}, 'linear');
|
|
}
|
|
battle.showEffect('rainbow', {
|
|
x: attacker.x,
|
|
y: attacker.y - 5,
|
|
z: attacker.z,
|
|
scale: 0.8,
|
|
opacity: 0,
|
|
time: 0
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0.6,
|
|
time: 1000
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('wisp', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 2,
|
|
opacity: 0
|
|
}, {
|
|
scale: 2.5,
|
|
opacity: 0.7,
|
|
time: 1000
|
|
}, 'linear', 'explode');
|
|
}
|
|
},
|
|
guardianofalola: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#421800 40%, #B8652F)', 1700, 0.6, 300);
|
|
battle.showEffect('fist1', {
|
|
x: attacker.leftof(200),
|
|
y: defender.y + 175,
|
|
z: defender.z,
|
|
scale: 0.5,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 5.5,
|
|
opacity: 0.5,
|
|
time: 799
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('fist1', {
|
|
x: defender.x,
|
|
y: defender.y + 15,
|
|
z: defender.z,
|
|
scale: 5.5,
|
|
opacity: 1,
|
|
time: 800
|
|
}, {
|
|
x: defender.x,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
xscale: 10,
|
|
opacity: 0,
|
|
time: 1050
|
|
}, 'linear');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1200
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 1050
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1500
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 3,
|
|
opacity: 1,
|
|
time: 1250
|
|
}, {
|
|
scale: 2,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 1800
|
|
}, 'linear', 'fade');
|
|
battle.showEffect('electroball', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 0.7,
|
|
scale: 1,
|
|
time: 850
|
|
}, {
|
|
scale: 6,
|
|
opacity: 0,
|
|
time: 2000
|
|
}, 'linear');
|
|
battle.showEffect('wisp', {
|
|
x: defender.x,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 6,
|
|
time: 850
|
|
}, {
|
|
scale: 12,
|
|
opacity: 0.8,
|
|
time: 2000
|
|
}, 'linear', 'explode');
|
|
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 60,
|
|
z: attacker.behind(40),
|
|
opacity: 0,
|
|
time: 250
|
|
}, 'accel');
|
|
attacker.delay(1300);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
time: 250
|
|
}, 'decel');
|
|
defender.delay(750);
|
|
defender.anim({
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
yscale: 0.5,
|
|
time: 200
|
|
}, 'swing');
|
|
defender.delay(700);
|
|
defender.anim({
|
|
time: 300
|
|
}, 'swing');
|
|
}
|
|
},
|
|
soulstealing7starstrike: {
|
|
anim: function (battle, args) {
|
|
var attacker = args[0];
|
|
var defender = args[1];
|
|
|
|
battle.backgroundEffect('linear-gradient(#043B13 55%, #3FBF99', 3600, 0.7);
|
|
battle.backgroundEffect('#ffffff', 700, 0.7, 3300);
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 300
|
|
}, {
|
|
x: attacker.leftof(-20),
|
|
y: attacker.y,
|
|
z: attacker.behind(-40),
|
|
opacity: 0,
|
|
time: 500
|
|
}, 'decel');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 350
|
|
}, {
|
|
x: attacker.leftof(20),
|
|
y: attacker.y - 5,
|
|
z: attacker.behind(-40),
|
|
opacity: 0,
|
|
time: 600
|
|
}, 'decel');
|
|
battle.showEffect('fist', {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
scale: 1,
|
|
opacity: 1,
|
|
time: 400
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 5,
|
|
z: attacker.behind(-40),
|
|
opacity: 0,
|
|
time: 700
|
|
}, 'decel');
|
|
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 1,
|
|
time: 250
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: attacker.x,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 450
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 550
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 650
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 700
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 10,
|
|
y: attacker.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 850
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 900
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 10,
|
|
y: attacker.y,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1050
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 1100
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1250
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 1300
|
|
}, 'linear', 'explode');
|
|
battle.showEffect('iceball', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0,
|
|
opacity: 1,
|
|
time: 1450
|
|
}, {
|
|
opacity: 0,
|
|
scale: 0.5,
|
|
time: 1500
|
|
}, 'linear', 'explode');
|
|
|
|
battle.showEffect('shine', {
|
|
x: defender.x - 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 300
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x,
|
|
y: defender.y + 30,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 500
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x + 30,
|
|
y: defender.y + 20,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 700
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x - 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 900
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x + 10,
|
|
y: defender.y,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 1100
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x - 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 1300
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
battle.showEffect('shine', {
|
|
x: defender.x + 10,
|
|
y: defender.y - 10,
|
|
z: defender.z,
|
|
scale: 0.1,
|
|
opacity: 0.7,
|
|
time: 1500
|
|
}, {
|
|
opacity: 0.9,
|
|
scale: 0.2,
|
|
time: 2500
|
|
}, 'decel', 'explode');
|
|
|
|
battle.showEffect('zsymbol', {
|
|
x: defender.x,
|
|
y: defender.y + 10,
|
|
z: defender.z,
|
|
scale: 0.7,
|
|
opacity: 1,
|
|
time: 1600
|
|
}, {
|
|
scale: 1,
|
|
opacity: 0,
|
|
time: 2600
|
|
}, 'decel');
|
|
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
scale: 1,
|
|
time: 1920
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
opacity: 0,
|
|
time: 2320
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
scale: 1,
|
|
time: 1940
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
opacity: 0,
|
|
time: 2340
|
|
}, 'accel');
|
|
battle.showEffect(attacker.sp, {
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.z,
|
|
opacity: 0.3,
|
|
scale: 1,
|
|
time: 1960
|
|
}, {
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
opacity: 0,
|
|
time: 2360
|
|
}, 'accel');
|
|
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 60,
|
|
z: defender.z,
|
|
scale: 1,
|
|
xscale: 2,
|
|
opacity: 0.5,
|
|
time: 3350
|
|
}, {
|
|
scale: 1,
|
|
xscale: 12,
|
|
opacity: 0,
|
|
time: 3750
|
|
}, 'decel', 'fade');
|
|
battle.showEffect('shadowball', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 0.4,
|
|
scale: 0.5,
|
|
time: 3350
|
|
}, {
|
|
scale: 3,
|
|
opacity: 0,
|
|
time: 3900
|
|
}, 'decel');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y + 350,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 5,
|
|
yscale: 13,
|
|
time: 3350
|
|
}, {
|
|
opacity: 0.5,
|
|
xscale: 0,
|
|
time: 4200
|
|
}, 'accel', 'fade');
|
|
battle.showEffect('poisonwisp', {
|
|
x: defender.x,
|
|
y: defender.y - 30,
|
|
z: defender.z,
|
|
opacity: 1,
|
|
scale: 2,
|
|
time: 3350
|
|
}, {
|
|
opacity: 0.5,
|
|
scale: 6,
|
|
time: 4200
|
|
}, 'decel', 'explode');
|
|
|
|
attacker.anim({
|
|
z: attacker.behind(15),
|
|
time: 200
|
|
}, 'decel');
|
|
attacker.anim({
|
|
z: defender.behind(-175),
|
|
time: 300
|
|
}, 'accel');
|
|
attacker.anim({
|
|
z: attacker.z,
|
|
time: 400
|
|
}, 'swing');
|
|
attacker.delay(1100);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y + 250,
|
|
z: attacker.behind(-50),
|
|
time: 300
|
|
}, 'decel');
|
|
attacker.delay(300);
|
|
attacker.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y,
|
|
z: defender.behind(-10),
|
|
opacity: 1,
|
|
time: 300
|
|
}, 'linear', 'fade');
|
|
attacker.anim({
|
|
x: defender.leftof(-10),
|
|
y: defender.y,
|
|
z: defender.behind(-10),
|
|
opacity: 0,
|
|
time: 0
|
|
}, 'linear');
|
|
attacker.delay(600);
|
|
attacker.anim({
|
|
x: attacker.x,
|
|
y: attacker.y,
|
|
z: attacker.behind(70),
|
|
opacity: 0,
|
|
time: 1
|
|
}, 'linear');
|
|
attacker.delay(600);
|
|
attacker.anim({
|
|
opacity: 1,
|
|
time: 500
|
|
}, 'decel');
|
|
defender.delay(400);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
time: 75
|
|
}, 'swing');
|
|
defender.anim({
|
|
time: 75
|
|
}, 'swing');
|
|
defender.delay(2275);
|
|
defender.anim({
|
|
z: defender.behind(5),
|
|
opacity: 0,
|
|
time: 75
|
|
}, 'swing');
|
|
defender.delay(600);
|
|
defender.anim({
|
|
time: 150
|
|
}, 'swing');
|
|
}
|
|
},
|
|
};
|
|
|
|
// placeholder animations
|
|
BattleMoveAnims['torment'] = {anim:BattleMoveAnims['swagger'].anim};
|
|
|
|
BattleMoveAnims['mefirst'] = {anim:BattleMoveAnims['mimic'].anim};
|
|
|
|
BattleMoveAnims['conversion2'] = {anim:BattleMoveAnims['conversion'].anim};
|
|
|
|
BattleMoveAnims['gearup'] = {anim:BattleMoveAnims['shiftgear'].anim};
|
|
BattleMoveAnims['honeclaws'] = {anim:BattleMoveAnims['rockpolish'].anim};
|
|
|
|
BattleMoveAnims['workup'] = {anim:BattleMoveAnims['bulkup'].anim};
|
|
|
|
BattleMoveAnims['heatcrash'] = {anim:BattleMoveAnims['flareblitz'].anim};
|
|
BattleMoveAnims['darkestlariat'] = {anim:BattleMoveAnims['flareblitz'].anim};
|
|
BattleMoveAnims['flameburst'] = {anim:BattleMoveAnims['shelltrap'].anim};
|
|
BattleMoveAnims['searingshot'] = {anim:BattleMoveAnims['shelltrap'].anim};
|
|
BattleMoveAnims['fierydance'] = {anim:BattleMoveAnims['magmastorm'].anim};
|
|
BattleMoveAnims['inferno'] = {anim:BattleMoveAnims['magmastorm'].anim};
|
|
BattleMoveAnims['mysticalfire'] = {anim:BattleMoveAnims['flamethrower'].anim};
|
|
BattleMoveAnims['firepledge'] = {anim:BattleMoveAnims['flamethrower'].anim};
|
|
BattleMoveAnims['ember'] = {anim:BattleMoveAnims['flamethrower'].anim};
|
|
BattleMoveAnims['incinerate'] = {anim:BattleMoveAnims['flamethrower'].anim};
|
|
BattleMoveAnims['flamewheel'] = {anim:BattleMoveAnims['flamecharge'].anim};
|
|
|
|
BattleMoveAnims['razorleaf'] = {anim:BattleMoveAnims['magicalleaf'].anim};
|
|
BattleMoveAnims['grasspledge'] = {anim:BattleMoveAnims['magicalleaf'].anim};
|
|
BattleMoveAnims['sleeppowder'] = {anim:BattleMoveAnims['spore'].anim};
|
|
BattleMoveAnims['poisonpowder'] = {anim:BattleMoveAnims['spore'].anim};
|
|
BattleMoveAnims['stunspore'] = {anim:BattleMoveAnims['spore'].anim};
|
|
BattleMoveAnims['powder'] = {anim:BattleMoveAnims['spore'].anim};
|
|
BattleMoveAnims['cottonspore'] = {anim:BattleMoveAnims['spore'].anim};
|
|
BattleMoveAnims['vinewhip'] = {anim:BattleMoveAnims['powerwhip'].anim};
|
|
|
|
BattleMoveAnims['bubble'] = {anim:BattleMoveAnims['bubblebeam'].anim};
|
|
BattleMoveAnims['sparklingaria'] = {anim:BattleMoveAnims['bubblebeam'].anim};
|
|
|
|
BattleMoveAnims['watergun'] = {anim:BattleMoveAnims['watersport'].anim};
|
|
BattleMoveAnims['whirlpool'] = {anim:BattleMoveAnims['watersport'].anim};
|
|
|
|
BattleMoveAnims['waterfall'] = {anim:BattleMoveAnims['aquajet'].anim};
|
|
BattleMoveAnims['aquatail'] = {anim:BattleMoveAnims['crabhammer'].anim};
|
|
BattleMoveAnims['liquidation'] = {anim:BattleMoveAnims['crabhammer'].anim};
|
|
|
|
BattleMoveAnims['magikarpsrevenge'] = {anim:BattleMoveAnims['outrage'].anim};
|
|
|
|
BattleMoveAnims['electrify'] = {anim:BattleMoveAnims['thunderwave'].anim};
|
|
BattleMoveAnims['volttackle'] = {anim:BattleMoveAnims['wildcharge'].anim};
|
|
BattleMoveAnims['zingzap'] = {anim:BattleMoveAnims['wildcharge'].anim};
|
|
BattleMoveAnims['nuzzle'] = {anim:BattleMoveAnims['spark'].anim};
|
|
BattleMoveAnims['thundershock'] = {anim:BattleMoveAnims['electroball'].anim};
|
|
|
|
BattleMoveAnims['glaciate'] = {anim:BattleMoveAnims['freezedry'].anim};
|
|
BattleMoveAnims['frostbreath'] = {anim:BattleMoveAnims['freezedry'].anim};
|
|
BattleMoveAnims['aurorabeam'] = {anim:BattleMoveAnims['icebeam'].anim};
|
|
BattleMoveAnims['powdersnow'] = {anim:BattleMoveAnims['icywind'].anim};
|
|
|
|
BattleMoveAnims['pinmissile'] = {anim:BattleMoveAnims['bulletseed'].anim, multihit: true};
|
|
BattleMoveAnims['attackorder'] = {anim:BattleMoveAnims['bulletseed'].anim};
|
|
BattleMoveAnims['fellstinger'] = {anim:BattleMoveAnims['bulletseed'].anim};
|
|
BattleMoveAnims['strugglebug'] = {anim:BattleMoveAnims['bulletseed'].anim};
|
|
BattleMoveAnims['infestation'] = {anim:BattleMoveAnims['bulletseed'].anim};
|
|
|
|
BattleMoveAnims['nightdaze'] = {anim:BattleMoveAnims['darkpulse'].anim};
|
|
|
|
BattleMoveAnims['strengthsap'] = {anim:BattleMoveAnims['leechlife'].anim};
|
|
BattleMoveAnims['hornattack'] = {anim:BattleMoveAnims['megahorn'].anim};
|
|
BattleMoveAnims['lunge'] = {anim:BattleMoveAnims['megahorn'].anim};
|
|
|
|
BattleMoveAnims['constrict'] = {anim:BattleMoveAnims['bind'].anim};
|
|
BattleMoveAnims['wrap'] = {anim:BattleMoveAnims['bind'].anim};
|
|
|
|
BattleMoveAnims['lowsweep'] = {anim:BattleMoveAnims['lowkick'].anim};
|
|
BattleMoveAnims['megakick'] = {anim:BattleMoveAnims['jumpkick'].anim};
|
|
BattleMoveAnims['frustration'] = {anim:BattleMoveAnims['thrash'].anim};
|
|
BattleMoveAnims['rage'] = {anim:BattleMoveAnims['thrash'].anim};
|
|
BattleMoveAnims['headsmash'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['headcharge'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['takedown'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['dragonrush'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['lastresort'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['horndrill'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['trumpcard'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['doubleedge'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
|
|
BattleMoveAnims['paleowave'] = {anim:BattleMoveAnims['muddywater'].anim};
|
|
BattleMoveAnims['rocktomb'] = {anim:BattleMoveAnims['rockslide'].anim};
|
|
|
|
BattleMoveAnims['frenzyplant'] = {anim:BattleMoveAnims['leafstorm'].anim};
|
|
BattleMoveAnims['hydrocannon'] = {anim:BattleMoveAnims['hydropump'].anim};
|
|
|
|
BattleMoveAnims['guardsplit'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['powersplit'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['guardswap'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['heartswap'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['powerswap'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['speedswap'] = {anim:BattleMoveAnims['skillswap'].anim};
|
|
BattleMoveAnims['psychoshift'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['helpinghand'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['entrainment'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['roleplay'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['psychup'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['holdhands'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['lunardance'] = {anim:BattleMoveAnims['wish'].anim};
|
|
|
|
BattleMoveAnims['brickbreak'] = {anim:BattleMoveAnims['karatechop'].anim};
|
|
BattleMoveAnims['wringout'] = {anim:BattleMoveAnims['forcepalm'].anim};
|
|
BattleMoveAnims['stormthrow'] = {anim:BattleMoveAnims['circlethrow'].anim};
|
|
BattleMoveAnims['vitalthrow'] = {anim:BattleMoveAnims['circlethrow'].anim};
|
|
BattleMoveAnims['doubleslap'] = {anim:BattleMoveAnims['wakeupslap'].anim};
|
|
BattleMoveAnims['crushgrip'] = {anim:BattleMoveAnims['quash'].anim};
|
|
|
|
BattleMoveAnims['beatup'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['counter'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['payback'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['revenge'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['rockclimb'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['tackle'] = {anim:BattleMoveAnims['slam'].anim};
|
|
BattleMoveAnims['dragonhammer'] = {anim:BattleMoveAnims['heavyslam'].anim};
|
|
|
|
BattleMoveAnims['highhorsepower'] = {anim:BattleMoveAnims['stomp'].anim};
|
|
|
|
BattleMoveAnims['retaliate'] = {anim:BattleMoveAnims['closecombat'].anim};
|
|
BattleMoveAnims['superpower'] = {anim:BattleMoveAnims['closecombat'].anim};
|
|
BattleMoveAnims['submission'] = {anim:BattleMoveAnims['closecombat'].anim};
|
|
BattleMoveAnims['bonerush'] = {anim:BattleMoveAnims['boneclub'].anim, multihit:true};
|
|
|
|
BattleMoveAnims['dragonrage'] = {anim:BattleMoveAnims['dragonbreath'].anim};
|
|
|
|
BattleMoveAnims['silverwind'] = {anim:BattleMoveAnims['whirlwind'].anim};
|
|
BattleMoveAnims['gust'] = {anim:BattleMoveAnims['whirlwind'].anim};
|
|
BattleMoveAnims['twister'] = {anim:BattleMoveAnims['whirlwind'].anim};
|
|
BattleMoveAnims['razorwind'].anim = BattleMoveAnims['airslash'].anim;
|
|
|
|
BattleMoveAnims['chatter'] = {anim:BattleMoveAnims['hypervoice'].anim};
|
|
BattleMoveAnims['echoedvoice'] = {anim:BattleMoveAnims['hypervoice'].anim};
|
|
BattleMoveAnims['relicsong'] = {anim:BattleMoveAnims['hypervoice'].anim};
|
|
BattleMoveAnims['uproar'] = {anim:BattleMoveAnims['hypervoice'].anim};
|
|
|
|
BattleMoveAnims['destinybond'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
BattleMoveAnims['reflecttype'] = {anim:BattleMoveAnims['painsplit'].anim};
|
|
|
|
BattleMoveAnims['selfdestruct'] = {anim:BattleMoveAnims['explosion'].anim};
|
|
|
|
BattleMoveAnims['acid'] = {anim:BattleMoveAnims['sludge'].anim};
|
|
BattleMoveAnims['acidspray'] = {anim:BattleMoveAnims['sludge'].anim};
|
|
BattleMoveAnims['belch'] = {anim:BattleMoveAnims['gunkshot'].anim};
|
|
BattleMoveAnims['venoshock'] = {anim:BattleMoveAnims['sludgebomb'].anim};
|
|
BattleMoveAnims['venomdrench'] = {anim:BattleMoveAnims['sludge'].anim};
|
|
BattleMoveAnims['poisonsting'] = {anim:BattleMoveAnims['poisonjab'].anim};
|
|
BattleMoveAnims['poisontail'] = {anim:BattleMoveAnims['poisonjab'].anim};
|
|
BattleMoveAnims['gastroacid'] = {anim:BattleMoveAnims['toxic'].anim};
|
|
|
|
BattleMoveAnims['magnitude'] = {anim:BattleMoveAnims['earthquake'].anim};
|
|
BattleMoveAnims['fissure'] = {anim:BattleMoveAnims['earthquake'].anim};
|
|
BattleMoveAnims['bulldoze'] = {anim:BattleMoveAnims['earthquake'].anim};
|
|
BattleMoveAnims['landswrath'] = {anim:BattleMoveAnims['earthquake'].anim};
|
|
BattleMoveAnims['stompingtantrum'] = {anim:BattleMoveAnims['earthquake'].anim};
|
|
|
|
BattleMoveAnims['camouflage'] = {anim:BattleMoveAnims['tailglow'].anim};
|
|
BattleMoveAnims['telekinesis'] = {anim:BattleMoveAnims['kinesis'].anim};
|
|
BattleMoveAnims['foulplay'] = {anim:BattleMoveAnims['psyshock'].anim};
|
|
BattleMoveAnims['psywave'] = {anim:BattleMoveAnims['psybeam'].anim};
|
|
BattleMoveAnims['extrasensory'] = {anim:BattleMoveAnims['psychic'].anim};
|
|
BattleMoveAnims['confusion'] = {anim:BattleMoveAnims['psychic'].anim};
|
|
BattleMoveAnims['miracleeye'] = {anim:BattleMoveAnims['mindreader'].anim};
|
|
BattleMoveAnims['futuresight'] = {anim:BattleMoveAnims['doomdesire'].anim};
|
|
|
|
BattleMoveAnims['glare'] = {anim:BattleMoveAnims['meanlook'].anim};
|
|
BattleMoveAnims['grudge'] = {anim:BattleMoveAnims['meanlook'].anim};
|
|
BattleMoveAnims['scaryface'] = {anim:BattleMoveAnims['meanlook'].anim};
|
|
BattleMoveAnims['disable'] = {anim:BattleMoveAnims['meanlook'].anim};
|
|
BattleMoveAnims['laserfocus'] = {anim:BattleMoveAnims['meanlook'].anim};
|
|
BattleMoveAnims['nightmare'] = {anim:BattleMoveAnims['nightshade'].anim};
|
|
|
|
BattleMoveAnims['captivate'] = {anim:BattleMoveAnims['attract'].anim};
|
|
BattleMoveAnims['charm'] = {anim:BattleMoveAnims['attract'].anim};
|
|
BattleMoveAnims['flatter'] = {anim:BattleMoveAnims['attract'].anim};
|
|
|
|
BattleMoveAnims['armthrust'] = {anim:BattleMoveAnims['smellingsalts'].anim, multhit:true};
|
|
|
|
BattleMoveAnims['phantomforce'] = {anim:BattleMoveAnims['shadowforce'].anim, prepareAnim:BattleMoveAnims['shadowforce'].prepareAnim, prepareMessage:BattleMoveAnims['shadowforce'].prepareMessage};
|
|
BattleMoveAnims['shadowstrike'] = {anim:BattleMoveAnims['shadowforce'].anim};
|
|
|
|
BattleMoveAnims['smackdown'] = {anim:BattleMoveAnims['rockblast'].anim};
|
|
|
|
BattleMoveAnims['fairywind'] = {anim:BattleMoveAnims['dazzlinggleam'].anim};
|
|
BattleMoveAnims['dreameater'] = {anim:BattleMoveAnims['drainingkiss'].anim};
|
|
BattleMoveAnims['sweetkiss'] = {anim:BattleMoveAnims['lovelykiss'].anim};
|
|
|
|
BattleMoveAnims['mirrorshot'] = {anim:BattleMoveAnims['flashcannon'].anim};
|
|
BattleMoveAnims['mirrorcoat'] = {anim:BattleMoveAnims['flashcannon'].anim};
|
|
BattleMoveAnims['metalburst'] = {anim:BattleMoveAnims['flashcannon'].anim};
|
|
|
|
BattleMoveAnims['mudslap'] = {anim:BattleMoveAnims['mudshot'].anim};
|
|
BattleMoveAnims['sandattack'] = {anim:BattleMoveAnims['mudshot'].anim};
|
|
BattleMoveAnims['mudsport'] = {anim:BattleMoveAnims['mudbomb'].anim};
|
|
|
|
BattleMoveAnims['spiderweb'] = {anim:BattleMoveAnims['electroweb'].anim};
|
|
BattleMoveAnims['stringshot'] = {anim:BattleMoveAnims['electroweb'].anim};
|
|
BattleMoveAnims['toxicthread'] = {anim:BattleMoveAnims['electroweb'].anim};
|
|
|
|
BattleMoveAnims['hyperfang'] = {anim:BattleMoveAnims['superfang'].anim};
|
|
|
|
BattleMoveAnims['barrage'] = {anim:BattleMoveAnims['magnetbomb'].anim, multihit:true};
|
|
BattleMoveAnims['eggbomb'] = {anim:BattleMoveAnims['magnetbomb'].anim};
|
|
BattleMoveAnims['smokescreen'] = {anim:BattleMoveAnims['magnetbomb'].anim};
|
|
BattleMoveAnims['spitup'] = {anim:BattleMoveAnims['magnetbomb'].anim};
|
|
|
|
BattleMoveAnims['rollingkick'] = {anim:BattleMoveAnims['doublekick'].anim};
|
|
BattleMoveAnims['triplekick'] = {anim:BattleMoveAnims['doublekick'].anim};
|
|
|
|
BattleMoveAnims['aromaticmist'] = {anim:BattleMoveAnims['mistyterrain'].anim};
|
|
BattleMoveAnims['sweetscent'] = {anim:BattleMoveAnims['mistyterrain'].anim};
|
|
BattleMoveAnims['psychicterrain'] = {anim:BattleMoveAnims['mistyterrain'].anim};
|
|
BattleMoveAnims['iondeluge'] = {anim:BattleMoveAnims['electricterrain'].anim};
|
|
BattleMoveAnims['magneticflux'] = {anim:BattleMoveAnims['electricterrain'].anim};
|
|
BattleMoveAnims['rototiller'] = {anim:BattleMoveAnims['electricterrain'].anim};
|
|
BattleMoveAnims['flowershield'] = {anim:BattleMoveAnims['grassyterrain'].anim};
|
|
|
|
BattleMoveAnims['imprison'] = {anim:BattleMoveAnims['embargo'].anim};
|
|
|
|
BattleMoveAnims['healorder'] = {anim:BattleMoveAnims['recover'].anim};
|
|
BattleMoveAnims['synthesis'] = {anim:BattleMoveAnims['recover'].anim};
|
|
|
|
BattleMoveAnims['floralhealing'] = {anim:BattleMoveAnims['healpulse'].anim};
|
|
BattleMoveAnims['purify'] = {anim:BattleMoveAnims['weatherball'].anim};
|
|
|
|
BattleMoveAnims['pollenpuff'] = {anim:BattleMoveAnims['revelationdance'].anim};
|
|
|
|
BattleMoveAnims['amnesia'] = {anim:BattleMoveAnims['rest'].anim};
|
|
|
|
BattleMoveAnims['secretpower'] = {anim:BattleMoveAnims['technoblast'].anim};
|
|
BattleMoveAnims['naturalgift'] = {anim:BattleMoveAnims['technoblast'].anim};
|
|
|
|
BattleMoveAnims['firelash'] = {anim:BattleMoveAnims['multiattack'].anim};
|
|
|
|
BattleMoveAnims['fleurcannon'] = {anim:BattleMoveAnims['diamondstorm'].anim};
|
|
|
|
BattleMoveAnims['bloomdoom'] = {anim:BattleMoveAnims['petaldance'].anim};
|
|
BattleMoveAnims['hydrovortex'] = {anim:BattleMoveAnims['originpulse'].anim};
|
|
BattleMoveAnims['breakneckblitz'] = {anim:BattleMoveAnims['gigaimpact'].anim};
|
|
BattleMoveAnims['aciddownpour'] = {anim:BattleMoveAnims['gunkshot'].anim};
|
|
BattleMoveAnims['savagespinout'] = {anim:BattleMoveAnims['electroweb'].anim};
|
|
BattleMoveAnims['maliciousmoonsault'] = {anim:BattleMoveAnims['pulverizingpancake'].anim};
|
|
BattleMoveAnims['devastatingdrake'] = {anim:BattleMoveAnims['dragonpulse'].anim};
|
|
BattleMoveAnims['tectonicrage'] = {anim:BattleMoveAnims['precipiceblades'].anim};
|
|
BattleMoveAnims['subzeroslammer'] = {anim:BattleMoveAnims['sheercold'].anim};
|
|
BattleMoveAnims['shatteredpsyche'] = {anim:BattleMoveAnims['psychic'].anim};
|
|
BattleMoveAnims['maximumpsybreaker'] = {anim:BattleMoveAnims['psychic'].anim};
|
|
BattleMoveAnims['genesissupernova'] = {anim:BattleMoveAnims['psychoboost'].anim};
|
|
BattleMoveAnims['10000000voltthunderbolt'] = {anim:BattleMoveAnims['triattack'].anim};
|