Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Erro


[13/07/2017 17:07:16] [Error - TalkAction Interface] 
[13/07/2017 17:07:16] data/talkactions/scripts/move3.lua:onSay
[13/07/2017 17:07:16] Description: 
[13/07/2017 17:07:16] (luaGetThingPosition) Thing not found

[13/07/2017 17:07:16] [Error - TalkAction Interface] 
[13/07/2017 17:07:16] data/talkactions/scripts/move3.lua:onSay
[13/07/2017 17:07:16] Description: 
[13/07/2017 17:07:16] (luaGetThingPosition) Thing not found
[13/07/2017 17:07:28] > Broadcasted message: "Test server 24 hrs online se cair em breve volta.".

[13/07/2017 17:08:19] [Error - TalkAction Interface] 
[13/07/2017 17:08:19] data/talkactions/scripts/move3.lua:onSay
[13/07/2017 17:08:19] Description: 
[13/07/2017 17:08:19] (luaGetThingPosition) Thing not found

[13/07/2017 17:08:20] [Error - TalkAction Interface] 
[13/07/2017 17:08:20] data/talkactions/scripts/move3.lua:onSay
[13/07/2017 17:08:20] Description: 
[13/07/2017 17:08:20] (luaGetThingPosition) Thing not found
Spoiler

-- Boost sistem --
boostrate = 1


local thunderwavecondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(thunderwavecondition, CONDITION_PARAM_TICKS, 8000)
setConditionFormula(thunderwavecondition, -0.45, -0.45, -0.45, -0.45)
------SLEEP POWNDER
local sleepcondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(sleepcondition, CONDITION_PARAM_TICKS, 10000)  -- 5 segundos
setConditionParam(sleepcondition, CONDITION_PARAM_SPEED, -500000)  -- paralizado
setConditionFormula(sleepcondition, -0.90, -5, -0.90, -5)



-------------ADICIONADAS---------------
-----------------------------------------
----VINE WHIP
local whipn = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{1, 1, 1},
{1, 1, 1}
}
local whips = createCombatArea{
{1, 1, 1},
{1, 1, 1},
{0, 2, 0},
{0, 0, 0}
}
local whipe = createCombatArea{
{1, 1, 0},
{1, 1, 2},
{1, 1, 0},
{0, 0, 0}
}
local whipw = createCombatArea{
{0, 1, 1},
{2, 1, 1},
{0, 1, 1},
{0, 0, 0}
}
local vinen = createCombatArea{
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
{1, 0, 0}
}
local vines = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 0},
{0, 2, 0}
}
local vinee = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 2},
{0, 0, 0}
}
local vinew = createCombatArea{
{0, 0, 0},
{0, 0, 3},
{0, 2, 0},
{0, 0, 0}
}
local whirl3 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl5 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

local whirl32 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl52 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

local wingn = createCombatArea{
{0, 0, 0},
{1, 2, 0},
{0, 0, 0},
}
local wings = createCombatArea{
{1, 0, 0},
{0, 2, 0},
{0, 0, 0},
}
local winge = createCombatArea{
{1, 0, 0},
{0, 2, 0},
{0, 0, 0},
}
local wingw = createCombatArea{
{0, 2, 3},
{0, 2, 2},
{0, 0, 0},
}
local wingds = createCombatArea{
{1, 1, 1},
{0, 2, 0},
{0, 0, 0},
}
local wingdn = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{1, 1, 1},
}
local wingde = createCombatArea{
{1, 0, 0},
{1, 2, 0},
{1, 0, 0},
}
local wingdw = createCombatArea{
{0, 0, 1},
{0, 2, 1},
{0, 0, 1},
}
local confusion = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 2, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
local glv = createCombatArea{
	{0, 0, 0, 0, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 1, 1, 1},
	{1, 1, 1, 1, 2, 1, 1, 1, 1},
	{1, 1, 1, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 0, 0, 0, 0},
}
local stomp = createCombatArea{
{1, 0, 0, 0, 1,},
{0, 1, 0, 1, 0,},
{1, 1, 2, 1, 1,},
{0, 1, 0, 1, 0,},
{1, 0, 0, 0, 1,},
}
local whipn = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{1, 1, 1},
{1, 1, 1}
}
local whips = createCombatArea{
{1, 1, 1},
{1, 1, 1},
{0, 2, 0},
{0, 0, 0}
}
local whipe = createCombatArea{
{1, 1, 0},
{1, 1, 2},
{1, 1, 0},
{0, 0, 0}
}
local whipw = createCombatArea{
{0, 1, 1},
{2, 1, 1},
{0, 1, 1},
{0, 0, 0}
}
local vinen = createCombatArea{
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
{1, 0, 0}
}
local vines = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 0},
{0, 2, 0}
}
local vinee = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 2},
{0, 0, 0}
}
local vinew = createCombatArea{
{0, 0, 0},
{0, 0, 3},
{0, 2, 0},
{0, 0, 0}
}
local ns = createCombatArea{
{1, 1, 1},
{1, 2, 1},
{1, 1, 1},
}
local waba = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 3, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
local is = createCombatArea{
	{0, 0, 1, 0, 0},
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 3, 1, 1},
	{0, 1, 1, 1, 0},
	{0, 0, 1, 0, 0},
}

local confusion = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 2, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
--------NOVAS WAVES------
local wsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},  
{0, 1, 1, 1, 1, 1, 0}, 
}

local wss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},  
}

local wse = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 2},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},  
}

local wsw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 2, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 1},  
}
local bbn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0},
}

local bbs = createCombatArea{
{0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local bbe = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 1, 0, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},
}

local bbw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 0, 1, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 1},
}
local confusion = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 2, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
---------------------------------
-----------------------------------------
-------------ADICIONADAS---------------

-- WATER GUN
local wg1n = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{0, 1, 0}, 
}
local wg2n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 1, 0}, 
{0, 1, 0}, 
{0, 1, 0}, 
}
local wg3n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 1, 0}, 
}

local wg1s = createCombatArea{
{0, 1, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wg2s = createCombatArea{
{0, 1, 0},
{0, 1, 0},
{0, 1, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}
local wg3s = createCombatArea{
{0, 1, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}

local tsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},  
}

local tss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},  
}

local tse = createCombatArea{
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},  
}

local tsw = createCombatArea{
{0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 1, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 1, 0},  
}

local wg1e = createCombatArea{
{0, 0, 0}, 
{1, 2, 0}, 
{0, 0, 0}, 
}
local wg2e = createCombatArea{ 
{1, 1, 1, 0, 2}, 
}
local wg3e = createCombatArea{ 
{1, 0, 0, 0, 0, 2}, 
}

local wg1w = createCombatArea{
{0, 0, 0}, 
{0, 2, 1}, 
{0, 0, 0}, 
}
local wg2w = createCombatArea{ 
{2, 0, 1, 1, 1}, 
}
local wg3w = createCombatArea{ 
{2, 0, 0, 0, 0, 1}, 
}
-- WATER GUN END

-- SAND ATTACK
local sand1 = createCombatArea{
{0, 0, 0}, 
{0, 3, 0}, 
{0, 0, 0}, 
}

local toxicn = createCombatArea{
{0, 2, 0}, 
{0, 1, 0}, 
{0, 1, 0},
{0, 1, 0}, 
{0, 1, 0}, 
}

local toxics = createCombatArea{
{0, 1, 0}, 
{0, 1, 0}, 
{0, 1, 0},
{0, 1, 0}, 
{0, 2, 0}, 
}

local toxice = createCombatArea{ 
{0, 1, 1, 1, 1, 2}, 
}

local toxicw = createCombatArea{ 
{2, 1, 1, 1, 1, 0}, 
}

-- SAND ATTACK END
local pokeis = {'bulbasaur','ivysaur','venusaur','Charmander','Charmeleon','Charizard','Squirtle','wartortle','Blastoise','caterpie', 'metapod','Butterfree', 'Weedle', 'Kakuna', 'Beedrill','Pidgey', 'Pidgeotto', 'Pidgeot', 'Rattata', 'Raticate','spearow', 'fearow', 'ekans', 'arbok', 'pikachu', 'raichu','Sandshrew','Sandslash', 'nidoranfe', 'nidorina', 'nidoqueen', 'nidoranma','nidorino', 'nidoking', 'clefairy', 'clefable', 'vulpix', 'Ninetales', 'Jigglypuff', 'Wigglytuff', 'zubat', 'golbat', 'Oddish','Gloom', 'Vileplume','Paras', 'Parasect', 'Venonat', 'Venomoth', 'Diglett', 'Dugtrio', 'Meowth','persian', 'Psyduck', 'Golduck', 'Mankey', 'Primeape','Growlithe', 'arcanine', 'Poliwag', 'Poliwhirl', 'Poliwrath', 'Abra', 'Kadabra', 'Alakazam', 'machop', 'machoke', 'machamp','Bellsprout', 'Weepinbell', 'Victreebel', 'tentacool', 'tentacruel', 'Geodude', 'Graveler', 'Golem', 'Ponyta', 'Rapidash', 'Slowpoke','Slowbro', 'Magnemite', 'Magneton', 'Farfetchd','Doduo', 'Dodrio', 'seel', 'dewgong', 'Grimer', 'Muk', 'Shellder', 'Cloyster', 'gastly', 'haunter', 'gengar', 'onix', 'drowzee','hypno', 'krabby', 'kingler', 'Voltorb', 'Electrode', 'Exeggcute', 'Exeggutor', 'cubone', 'Marowak', 'Hitmonlee','Hitmonchan', 'Lickitung', 'Koffing','Weezing', 'Rhyhorn', 'Rhydon', 'Chansey', 'Tangela', 'Kangaskhan', 'Horsea', 'Seadra', 'Goldeen', 'Seaking', 'Staryu', 'Starmie', 'MrMime','Scyther', 'Jynx', 'Electabuzz', 'Magmar', 'Pinsir', 'Tauros', 'Gyarados', 'Lapras', 'Ditto', 'eevee', 'Vaporeon', 'Jolteon', 'Flareon','Porygon', 'Omanyte', 'Omastar', 'Kabuto', 'Kabutops', 'Aerodactyl', 'Snorlax', 'Articuno', 'Zapdos', 'Moltres', 'Dratini','Dragonair', 'Dragonite', 'Mewtwo', 'Mew','chikorita','bayleef','meganium', 'cyndaquil','quilava','typhlosion','Totodile','Croconaw','Feraligatr', 'Sentret', 'Furret', 'Hoothoot', 'Noctowl', 'Ledyba', 'Ledian', 'Spinarak', 'Ariados', 'Crobat', 'Chinchou', 'lanturn', 'Pichu', 'cleffa', 'igglypuff', 'Togepi', 'Togetic', 'Natu', 'Xatu', 'Mareep', 'Flaaffy', 'Ampharos', 'Bellossom', 'Marill', 'azumarill', 'Sudowoodo', 'Politoed', 'hoppip', 'Skiploom', 'jumpluff', 'Aipom', 'Sunkern', 'Sunflora', 'Yanma', 'Wooper', 'Quagsire', 'Espeon', 'Umbreon', 'Murkrow', 'Slowking', 'Misdreavus', 'unown a', 'unown b', 'unown c', 'unown d', 'unown e', 'unown f', 'unown g', 'unown h', 'unown i', 'unown j', 'unown k', 'unown l', 'unown m', 'unown n', 'unown o', 'unown p', 'unown q', 'unown r', 'unown s', 'unown t', 'unown u', 'unown v', 'unown x', 'unown w', 'unown y', 'unown z', 'Wobbuffet', 'Girafarig', 'Pineco', 'Forretress', 'Dunsparce', 'Gligar', 'Steelix', 'Snubbull', 'Granbull', 'Qwilfish', 'Scizor', 'Shuckle', 'Heracross', 'Sneasel', 'Teddiursa', 'Ursaring', 'Slugma', 'Magcargo', 'Swinub', 'Piloswine', 'Corsola', 'Remoraid', 'Octillery', 'Delibird', 'Mantine', 'Skarmory', 'houndour', 'houndoom', 'Kingdra', 'Phanpy', 'Donphan', 'Porygon2', 'Stantler', 'Smeargle Virgem', 'Tyrogue', 'Hitmontop', 'Smoochum', 'Elekid', 'magby', 'miltank', 'Blissey', 'Raikou', 'Entei', 'Suicune', 'larvitar', 'Pupitar', 'Tyranitar', 'Lugia', 'Ho Oh', 'Celebi', 'Dark Abra', 'Elder Charizard', 'Crystal Onix', 'Elite Hitmonchan', 'Elite Hitmonlee', 'Elite Farfetchd', 'Shiny Arcanine', 'Shiny Beedrill', 'Shiny Blastoise', 'Shiny Butterfree', 'Shiny Dratini', 'Shiny Electabuzz', 'Shiny Electrode', 'Shiny Gengar', 'Shiny Grimer', 'Shiny Growlithe', 'Shiny Horsea', 'Shiny Jynx', 'Shiny Kingler', 'Shiny Krabby', 'Shiny Muk', 'Shiny Oddish', 'Shiny Paras', 'Shiny Parasect', 'Shiny Raichu', 'Shiny Raticate', 'Shiny Rattata', 'Shiny Scyther', 'Shiny Seadra', 'Shiny Tentacool', 'Shiny Tentacruel', 'Shiny Venomoth', 'Shiny Venonat', 'Shiny Venusaur', 'Shiny Voltorb', 'Shiny Zubat', 'Big Magikarp', 'Shiny Big Magikarp', 'Mini Gyarados', 'Shiny Golbat', 'Red Gyarados', 'Smeargle Tm 1', 'Smeargle Tm 2', 'Smeargle Tm 3', 'Smeargle Tm 4', 'Smeargle Tm 5', 'Smeargle Tm 6', 'Smeargle Tm 7', 'Shiny Tangela', 'Big Snorlax', 'Shiny Alakazam', 'Shiny Cubone', 'Shiny Dodrio', 'Shiny Dragonair', 'Shiny Fearow', 'Shiny Flareon', 'Shiny Golem', 'Shiny Hypno', 'Shiny Jolteon', 'Shiny Machamp', 'Shiny Magneton', 'Shiny Marowak', 'Shiny MrMime', 'Shiny Nidoking', 'Shiny Ninetales', 'Shiny Pidgeot', 'Shiny Pinsir', 'Shiny Rhydon', 'Shiny Tauros', 'Shiny Vaporeon', 'Shiny Vileplume', 'Shiny Magmar'}
local c = {


[25] = {x = {
			pok = bulbasaur,
			spell = "Vine Whip",
			minLv = 20,
			ex = 10003,
			base1 = 160,
			base2 = 200,
			dista = 3,
			bonus = 5,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[24] = {x = {
			pok = ivysaur,
			spell = "Vine Whip",
			minLv = 40,
			ex = 20003,
			base1 = 220,
			base2 = 250,
			dista = 3,
			bonus = 8,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[22] = {x = {
			pok = venusaur,
			spell = "Vine Whip",
			minLv = 85,
			ex = 30003,
			base1 = 315,
			base2 = 370,
			dista = 3,
			bonus = 15,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[496] = {x = {
			pok = shinyvenusaur,
			spell = "Vine Whip",
			minLv = 100,
			ex = 3003,
			base1 = 630,
			base2 = 740,
			dista = 3,
			bonus = 30,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[29] = {x = {
			pok = charmander,
			spell = "Flamethrower",
			minLv = 20,
			ex = 40003,
			base1 = 160,
			base2 = 200,
			dista = 3,
			bonus = 5,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[23] = {x = {
			pok = charmeleon,
			spell = "Flamethrower",
			minLv = 40,
			ex = 50003,
			base1 = 220,
			base2 = 250,
			dista = 3,
			bonus = 8,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[67] = {x = {
			pok = charizard,
			spell = "Flamethrower",
			minLv = 85,
			ex = 60003,
			base1 = 325,
			base2 = 380,
			dista = 3,
			bonus = 15,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[294] = {x = {
			pok = eldercharizard,
			spell = "Flamethrower",
			minLv = 100,
			ex = 6003,
			base1 = 650,
			base2 = 760,
			dista = 3,
			bonus = 30,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[2] = {x = {
			nome = Squirtle,
			spell = "Water Gun",
			minLv = 20,
			ex = 70003,
			base1 = 160,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[6] = {x = {
			nome = wartortle,
			spell = "Water Gun",
			minLv = 40,
			ex = 80003,
			base1 = 220,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[55] = {x = {
			nome = Blastoise,
			spell = "Water Gun",
			minLv = 85,
			ex = 90003,
			base1 = 320,
			base2 = 370,
			dista = 5,
			bonus = 15,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[495] = {x = {
			nome = shinyBlastoise,
			spell = "Water Gun",
			minLv = 100,
			ex = 9003,
			base1 = 640,
			base2 = 740,
			dista = 5,
			bonus = 30,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[32] = {x = {
			pok = caterpie,
			spell = "Headbutt",
			minLv = 1,
			ex = 1000003,
			base1 = 120,
			base2 = 130,
			dista = 1,
			bonus = 2,
			type = "normal",
			cd = 15
		     }
		 },
[31] = {x = {
			pok = metapod,
			spell = "Headbutt",
			minLv = 15,
			ex = 1100003,
			base1 = 165,
			base2 = 190,
			dista = 1,
			bonus = 5,
			type = "normal",
			cd = 15
		     }
		 },
[40] = {x = {
			pok = Butterfree,
			spell = "Super Sonic",
			minLv = 30,
			ex = 1200003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[485] = {x = {
			pok = shinyButterfree,
			spell = "Super Sonic",
			minLv = 60,
			ex = 120003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[21] = {x = {
			pok = weedle,
			spell = "poison sting",
			minLv = 1,
			ex = 1300003,
			base1 = 130,
			base2 = 150,
			dista = 1,
			bonus = 2,
			type = "poison",
			cd = 20
		     }
		 },
[60] = {x = {
			nome = Kakuna,
			spell = "Poison Sting",
			minLv = 15,
			ex = 1400003,
			base1 = 180,
			base2 = 210,
			dista = 1,
			bonus = 5,
			type = "poison",
			cd = 20
		     }
		 },
[45] = {x = {
			pok = beedrill,
			spell = "Pin Missile",
			minLv = 30,
			ex = 1500003,
			base1 = 230,
			base2 = 260,
			dista = 5,
			bonus = 8,
			type = "bug",
			cd = 20
		     }
		 },
[483] = {x = {
			pok = shinybeedrill,
			spell = "Pin Missile",
			minLv = 60,
			ex = 150003,
			base1 = 460,
			base2 = 520,
			dista = 5,
			bonus = 16,
			type = "bug",
			cd = 20
		     }
		 },
[30] = {x = {
			pok = pidgey,
			spell = "Gust",
			minLv = 1,
			ex = 1600003,
			base1 = 140,
			base2 = 180,
			dista = 5,
			bonus = 2,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[5] = {x = {
			pok = pidgeotto,
			spell = "Whirlwind",
			minLv = 20,
			ex = 1700003,
			base1 = 200,
			base2 = 240,
			dista = 5,
			bonus = 5,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[80] = {x = {
			pok = pidgeot,
			spell = "Whirlwind",
			minLv = 80,
			ex = 1800003,
			base1 = 260,
			base2 = 330,
			dista = 5,
			bonus = 13,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[364] = {x = {
			pok = shinypidgeot,
			spell = "Whirlwind",
			minLv = 100,
			ex = 180003,
			base1 = 520,
			base2 = 660,
			dista = 5,
			bonus = 26,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[799] = {x = {
			pok = pidgeot,
			spell = "Whirlwind",
			minLv = 80,
			ex = 1800003,
			base1 = 260,
			base2 = 330,
			dista = 5,
			bonus = 13,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[36] = {x = {
			pok = rattata,
			spell = "Slash",
			minLv = 1,
			ex = 1900003,
			base1 = 130,
			base2 = 150,
			dista = 1,
			bonus = 2,
			type = "normal",
			cd = 15
		     }
		 },
[512] = {x = {
			pok = shinyrattata,
			spell = "Slash",
			minLv = 10,
			ex = 190003,
			base1 = 260,
			base2 = 300,
			dista = 1,
			bonus = 4,
			type = "normal",
			cd = 15
		     }
		 },
[69] = {x = {
			pok = raticate,
			spell = "Slash",
			minLv = 20,
			ex = 2000003,
			base1 = 180,
			base2 = 210,
			dista = 1,
			bonus = 5,
			type = "normal",
			cd = 15
		     }
		 },
[519] = {x = {
			pok = shinyraticate,
			spell = "Slash",
			minLv = 30,
			ex = 200003,
			base1 = 360,
			base2 = 420,
			dista = 1,
			bonus = 10,
			type = "normal",
			cd = 15
		     }
		 },
[27] = {x = {
			pok = spearow,
			spell = "Gust",
			minLv = 10,
			ex = 2100003,
			base1 = 160,
			base2 = 185,
			dista = 5,
			bonus = 4,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[17] = {x = {
			pok = fearow,
			spell = "Whirlwind",
			minLv = 50,
			ex = 2200003,
			base1 = 220,
			base2 = 260,
			dista = 5,
			bonus = 10,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[353] = {x = {
			pok = shinyfearow,
			spell = "Whirlwind",
			minLv = 65,
			ex = 220003,
			base1 = 440,
			base2 = 520,
			dista = 5,
			bonus = 20,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[7] = {x = {
			pok = ekans,
			spell = "Pin Missile",
			minLv = 15,
			ex = 2300003,
			base1 = 160,
			base2 = 195,
			dista = 5,
			bonus = 3,
			type = "poison",
			cd = 15
		     }
		 },
[39] = {x = {
			pok = arbok,
			spell = "Pin Missile",
			minLv = 35,
			ex = 2400003,
			base1 = 220,
			base2 = 270,
			dista = 5,
			bonus = 8,
			type = "poison",
			cd = 15
		     }
		 },
[59] = {x = {
			pok = pikachu,
			spell = "Thunderbolt",
			minLv = 40,
			ex = 2500003,
			base1 = 190,
			base2 = 230,
			dista = 5,
			bonus = 8,
			type = "electric",
			cd = 15
		     }
		 },
[50] = {x = {
			pok = raichu,
			spell = "Thunderbolt",
			minLv = 85,
			ex = 2600003,
			base1 = 250,
			base2 = 310,
			dista = 5,
			bonus = 13,
			type = "electric",
			cd = 15
		     }
		 },
[511] = {x = {
			pok = shinyraichu,
			spell = "Thunderbolt",
			minLv = 100,
			ex = 260003,
			base1 = 500,
			base2 = 620,
			dista = 5,
			bonus = 26,
			type = "electric",
			cd = 15
		     }
		 },
[43] = {x = {
			pok = sandshrew,
			spell = "Earth Fang",
			minLv = 25,
			ex = 2700003,
			base1 = 150,
			base2 = 190,
			dista = 1,
			bonus = 5,
			type = "earth",
			cd = 13
		     }
		 },
[284] = {x = {
			pok = sandshrew,
			spell = "Earth Fang",
			minLv = 25,
			ex = 2700003,
			base1 = 150,
			base2 = 190,
			dista = 1,
			bonus = 5,
			type = "earth",
			cd = 13
		     }
		 },
[115] = {x = {
			pok = sandslash,
			spell = "Earth Fang",
			minLv = 65,
			ex = 2800003,
			base1 = 210,
			base2 = 280,
			dista = 1,
			bonus = 12,
			type = "earth",
			cd = 13
		     }
		 },
[285] = {x = {
			pok = sandslash,
			spell = "Earth Fang",
			minLv = 65,
			ex = 2800003,
			base1 = 210,
			base2 = 270,
			dista = 1,
			bonus = 12,
			type = "earth",
			cd = 13
		     }
		 },
[70] = {x = {
			pok = 'nidoranfe',
			spell = "Poison Fang",
			minLv = 10,
 			ex = 2900003,
			base1 = 150,
			base2 = 180,
			dista = 1,
			bonus = 3,
			type = "poison",
			cd = 13
			}
		},
 [71] = {x = {
			pok = nidorina,
			spell = "Poison Fang",
			minLv = 25,
 			ex = 3000003,
			base1 = 190,
			base2 = 230,
			dista = 1,
			bonus = 6,
			type = "poison",
			cd = 13
			}
		},
 [79] = {x = {
			pok = nidoqueen,
			spell = "Poison Fang",
			minLv = 65,
 			ex = 3100003,
			base1 = 250,
			base2 = 310,
			dista = 1,
			bonus = 15,
			type = "poison",
			cd = 13
			}
		},
[66] = {x = {
			pok = 'nidoranma',
			spell = "Poison Fang",
			minLv = 10,
 			ex = 3200003,
			base1 = 150,
			base2 = 180,
			dista = 1,
			bonus = 3,
			type = "poison",
			cd = 13
			}
		},
 [78] = {x = {
			pok = nidorino,
			spell = "Poison Fang",
			minLv = 25,
 			ex = 3300003,
			base1 = 190,
			base2 = 230,
			dista = 1,
			bonus = 6,
			type = "poison",
			cd = 13
			}
		},
 [35] = {x = {
			pok = nidoking,
			spell = "Poison Fang",
			minLv = 65,
 			ex = 3400003,
			base1 = 250,
			base2 = 310,
			dista = 1,
			bonus = 15,
			type = "poison",
			cd = 13
			}
		},
 [362] = {x = {
			pok = shinynidoking,
			spell = "Poison Fang",
			minLv = 85,
 			ex = 340003,
			base1 = 500,
			base2 = 620,
			dista = 1,
			bonus = 30,
			type = "poison",
			cd = 13
			}
		},
[73] = {x = {
			pok = clefairy,
			spell = "Guitar Paralizy",
			minLv = 40,
			ex = 3500003,
			base1 = 170,
			base2 = 210,
			dista = 4,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[68] = {x = {
			pok = clefable,
			spell = "Guitar Paralizy",
			minLv = 65,
			ex = 3600003,
			base1 = 240,
			base2 = 280,
			dista = 4,
			bonus = 12,
			type = "normal",
			cd = 15
		 }
     },
[62] = {x = {
			pok = vulpix,
			spell = "Flamethrower",
			minLv = 20,
			ex = 3700003,
			base1 = 160,
			base2 = 200,
			dista = 3,
			bonus = 5,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[114] = {x = {
			pok = ninetales,
			spell = "Flamethrower",
			minLv = 65,
			ex = 3800003,
			base1 = 230,
			base2 = 310,
			dista = 3,
			bonus = 10,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[363] = {x = {
			pok = shinyninetales,
			spell = "Flamethrower",
			minLv = 80,
			ex = 380003,
			base1 = 460,
			base2 = 620,
			dista = 3,
			bonus = 20,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[63] = {x = {
			pok = Jigglypuff,
			spell = "Guitar Paralizy",
			minLv = 40,
			ex = 3900003,
			base1 = 170,
			base2 = 210,
			dista = 4,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[64] = {x = {
			pok = Wigglytuff,
			spell = "Guitar Paralizy",
			minLv = 65,
			ex = 4000003,
			base1 = 230,
			base2 = 290,
			dista = 4,
			bonus = 12,
			type = "normal",
			cd = 15
		     }
		 },
[44] = {x = {
			pok = zubat,
			spell = "Super Sonic",
			minLv = 5,
			ex = 4100003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[521] = {x = {
			pok = shinyzubat,
			spell = "Super Sonic",
			minLv = 30,
			ex = 410003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[122] = {x = {
			pok = golbat,
			spell = "Super Sonic",
			minLv = 35,
			ex = 4200003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[334] = {x = {
			pok = shinygolbat,
			spell = "Super Sonic",
			minLv = 60,
			ex = 420003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 10
		     }
		 },
[56] = {x = {
			pok = oddish,
			spell = "Leech Seed",
			minLv = 5,
			ex = 4300003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 1,
			type = "grass",
			cd = 15
		     }
		 },
[509] = {x = {
			pok = shinyoddish,
			spell = "Leech Seed",
			minLv = 30,
			ex = 430003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 2,
			type = "grass",
			cd = 15
		     }
		 },
[74] = {x = {
			pok = gloom,
			spell = "Leech Seed",
			minLv = 25,
			ex = 4400003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 1,
			type = "grass",
			cd = 15
		     }
		 },
[86] = {x = {
			pok = vileplume,
			spell = "Leech Seed",
			minLv = 50,
			ex = 4500003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 1,
			type = "grass",
			cd = 15
		     }
		 },
[369] = {x = {
			pok = shinyvileplume,
			spell = "Leech Seed",
			minLv = 80,
			ex = 450003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 1,
			type = "grass",
			cd = 13
		     }
		 },
[81] = {x = {
			pok = Paras,
			spell = "Slash",
			minLv = 5,
			ex = 4600003,
			base1 = 120,
			base2 = 160,
			dista = 1,
			bonus = 2,
			type = "normal",
			cd = 13
		     }
		 },
[510] = {x = {
			pok = shinyParas,
			spell = "Slash",
			minLv = 15,
			ex = 460003,
			base1 = 240,
			base2 = 320,
			dista = 1,
			bonus = 4,
			type = "normal",
			cd = 13
		     }
		 },
[95] = {x = {
			pok = Parasect,
			spell = "Slash",
			minLv = 50,
			ex = 4700003,
			base1 = 180,
			base2 = 270,
			dista = 1,
			bonus = 10,
			type = "normal",
			cd = 13
		     }
		 },
[501] = {x = {
			pok = shinyParasect,
			spell = "Slash",
			minLv = 60,
			ex = 470003,
			base1 = 380,
			base2 = 440,
			dista = 1,
			bonus = 20,
			type = "normal",
			cd = 13
		     }
		 },
[52] = {x = {
			pok = Venonat,
			spell = "Poison Sting",
			minLv = 20,
			ex = 4800003,
			base1 = 160,
			base2 = 200,
			dista = 1,
			bonus = 5,
			type = "poison",
			cd = 15
		     }
		 },
[517] = {x = {
			pok = shinyVenonat,
			spell = "Poison Sting",
			minLv = 30,
			ex = 480003,
			base1 = 320,
			base2 = 400,
			dista = 1,
			bonus = 10,
			type = "poison",
			cd = 15
		     }
		 },
[49] = {x = {
			pok = Venomoth,
			spell = "Poison Sting",
			minLv = 50,
			ex = 4900003,
			base1 = 200,
			base2 = 250,
			dista = 1,
			bonus = 10,
			type = "poison",
			cd = 15
		     }
		 },
[484] = {x = {
			pok = shinyVenomoth,
			spell = "Poison Sting",
			minLv = 80,
			ex = 490003,
			base1 = 400,
			base2 = 500,
			dista = 1,
			bonus = 20,
			type = "poison",
			cd = 15
		     }
		 },
[82] = {x = {
			pok = Diglett,
			spell = "Earth Fang",
			minLv = 10,
			ex = 5000003,
			base1 = 150,
			base2 = 190,
			dista = 1,
			bonus = 4,
			type = "earth",
			cd = 15
		     }
		 },
[83] = {x = {
			pok = Dugtrio,
			spell = "Earth Fang",
			minLv = 35,
			ex = 5100003,
			base1 = 200,
			base2 = 225,
			dista = 1,
			bonus = 8,
			type = "earth",
			cd = 15
		     }
		 },
[105] = {x = {
			pok = Meowth,
			spell = "Slamp",
			minLv = 15,
			ex = 5200003,
			base1 = 150,
			base2 = 180,
			dista = 1,
			bonus = 4,
			type = "normal",
			cd = 15
		     }
		 },
[3] = {x = {
			pok = Persian,
			spell = "Slamp",
			minLv = 30,
			ex = 5300003,
			base1 = 190,
			base2 = 240,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[100] = {x = {
			pok = Psyduck,
			spell = "Headbutt",
			minLv = 20,
			ex = 5400003,
			base1 = 160,
			base2 = 190,
			dista = 1,
			bonus = 5,
			type = "normal",
			cd = 15
		     }
		 },
[99] = {x = {
			pok = Golduck,
			spell = "Headbutt",
			minLv = 55,
			ex = 5500003,
			base1 = 220,
			base2 = 270,
			dista = 1,
			bonus = 12,
			type = "normal",
			cd = 15
		     }
		 },
[106] = {x = {
			pok = Mankey,
			spell = "Karate Chop",
			minLv = 15,
			ex = 5600003,
			base1 = 160,
			base2 = 200,
			dista = 1,
			bonus = 5,
			type = "fighting",
			cd = 15
		     }
		 },
[103] = {x = {
			pok = Primeape,
			spell = "Karate Chop",
			minLv = 50,
			ex = 5700003,
			base1 = 220,
			base2 = 300,
			dista = 1,
			bonus = 10,
			type = "fighting",
			cd = 15
		     }
		 },
[109] = {x = {
			pok = Growlithe,
			spell = "Fire Fang",
			minLv = 25,
			ex = 5800003,
			base1 = 170,
			base2 = 210,
			dista = 1,
			bonus = 6,
			type = "fire",
			cd = 15
		     }
		 },
[505] = {x = {
			pok = shinyGrowlithe,
			spell = "Fire Fang",
			minLv = 40,
			ex = 580003,
			base1 = 340,
			base2 = 420,
			dista = 1,
			bonus = 12,
			type = "fire",
			cd = 15
		     }
		 },
[88] = {x = {
			pok = arcanine,
			spell = "Fire Fang",
			minLv = 80,
			ex = 5900003,
			base1 = 250,
			base2 = 300,
			dista = 1,
			bonus = 15,
			type = "fire",
			cd = 15
		     }
		 },
[493] = {x = {
			pok = shinyarcanine,
			spell = "Fire Fang",
			minLv = 100,
			ex = 590003,
			base1 = 500,
			base2 = 600,
			dista = 1,
			bonus = 30,
			type = "fire",
			cd = 15
		     }
		 },
[111] = {x = {
			pok = poliwag,
			spell = "Water Gun",
			minLv = 5,
			ex = 6000003,
			base1 = 150,
			base2 = 200,
			dista = 5,
			bonus = 3,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[212] = {x = {
			pok = poliwhirl,
			spell = "Water Gun",
			minLv = 25,
			ex = 6100003,
			base1 = 210,
			base2 = 260,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[104] = {x = {
			pok = poliwrath,
			spell = "Water Gun",
			minLv = 65,
			ex = 6200003,
			base1 = 250,
			base2 = 315,
			dista = 5,
			bonus = 10,
			type = "water",
   target = "no",
			cd = 12
		     }
		 },
[262] = {x = {
			pok = abra,
			spell = "Psy Pulse",
			minLv = 15,
			ex = 6300003,
			base1 = 190,
			base2 = 230,
			dista = 5,
			bonus = 4,
			type = "psychic",
			target = "no",
			cd = 25
		     }
		 },
[491] = {x = {
			pok = darkabra,
			spell = "Psy Pulse",
			minLv = 120,
			ex = 630003,
			base1 = 700,
			base2 = 740,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "no",
			cd = 25
		     }
		 },
[219] = {x = {
			pok = kadabra,
			spell = "Psy Pulse",
			minLv = 45,
			ex = 6400003,
			base1 = 250,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "psychic",
			target = "no",
			cd = 25
		     }
		 },
[218] = {x = {
			pok = alakazam,
			spell = "Psy Pulse",
			minLv = 80,
			ex = 6500003,
			base1 = 350,
			base2 = 380,
			dista = 5,
			bonus = 13,
			type = "psychic",
			target = "no",
			cd = 25
		     }
		 },
[349] = {x = {
			pok = shinyalakazam,
			spell = "Psy Pulse",
			minLv = 100,
			ex = 650003,
			base1 = 700,
			base2 = 760,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "no",
			cd = 25
		     }
		 },
[118] = {x = {
			pok = machop,
			spell = "Karate Chop",
			minLv = 20,
			ex = 6600003,
			base1 = 100,
			base2 = 150,
			dista = 1,
			bonus = 6,
			type = "fighting",
			cd = 15
		     }
		 },
[113] = {x = {
			pok = machoke,
			spell = "Karate Chop",
			minLv = 45,
			ex = 6700003,
			base1 = 205,
			base2 = 255,
			dista = 1,
			bonus = 8,
			type = "fighting",
			cd = 15
		     }
		 },
[121] = {x = {
			pok = machamp,
			spell = "Karate Chop",
			minLv = 80,
			ex = 6800003,
			base1 = 365,
			base2 = 435,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 15
		     }
		 },
[358] = {x = {
			pok = shinymachamp,
			spell = "Karate Chop",
			minLv = 100,
			ex = 680003,
			base1 = 730,
			base2 = 870,
			dista = 1,
			bonus = 30,
			type = "fighting",
			cd = 15
		     }
		 },
[250] = {x = {
			pok = bellsprout,
			spell = "Slash",
			minLv = 5,
			ex = 6900003,
			base1 = 110,
			base2 = 120,
			dista = 1,
			bonus = 3,
			type = "normal",
			cd = 15
		     }
		 },
[37] = {x = {
			pok = weepinbell,
			spell = "Slash",
			minLv = 25,
			ex = 7000003,
			base1 = 150,
			base2 = 160, 
			dista = 1, 
			bonus = 6, 
			type = "normal",
			cd = 15 
		     }
		 },
[240] = {x = {
			pok = victreebel,
			spell = "Slash",
			minLv = 50,
			ex = 7100003,
			base1 = 250,
			base2 = 260,
			dista = 1,
			bonus = 9,
			type = "normal",
			cd = 15
		     }
		 },
[96] = {x = {
			pok = tentacool,
			spell = "Super Sonic",
			minLv = 15,
			ex = 7200003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[502] = {x = {
			pok = shinytentacool,
			spell = "Super Sonic",
			minLv = 30,
			ex = 720003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[108] = {x = {
			pok = tentacruel,
			spell = "Super Sonic",
			minLv = 80,
			ex = 7300003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 15
		     }
		 },
[489] = {x = {
			pok = shinytentacruel,
			spell = "Super Sonic",
			minLv = 100,
			ex = 730003,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
			cd = 10
		     }
		 },
[196] = {x = {
			pok = geodude,
			spell = "Rock Slide",
			minLv = 15,
			ex = 7400003,
			base1 = 155,
			base2 = 175,
			dista = 4,
			bonus = 5,
			type = "rock",
			cd = 20
		     }
		 },
[247] = {x = {
			pok = graveler,
			spell = "Rock Slide",
			minLv = 40,
			ex = 7500003,
			base1 = 240,
			base2 = 250,
			dista = 4,
			bonus = 8,
			type = "rock",
			cd = 20
		     }
		 },
[116] = {x = {
			pok = golem,
			spell = "Rock Slide",
			minLv = 70,
			ex = 7600003,
			base1 = 370,
			base2 = 380,
			dista = 4,
			bonus = 15,
			type = "rock",
			cd = 20
		     }
		 },
[355] = {x = {
			pok = shinygolem,
			spell = "Rock Slide",
			minLv = 85,
			ex = 760003,
			base1 = 740,
			base2 = 760,
			dista = 4,
			bonus = 30,
			type = "rock",
			cd = 20
		     }
		 },
[288] = {x = {
			pok = golemroll,
			spell = "Rock Slide",
			minLv = 70,
			ex = 7600003,
			base1 = 370,
			base2 = 380,
			dista = 4,
			bonus = 15,
			type = "rock",
			cd = 20
		     }
		 },
[16] = {x = {
			pok = Ponyta,
			spell = "Flamethrower",
			minLv = 20,
			ex = 7700003,
			base1 = 180,
			base2 = 230,
			dista = 1,
			bonus = 6,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[220] = {x = {
			pok = Rapidash,
			spell = "Flamethrower",
			minLv = 50,
			ex = 7800003,
			base1 = 250,
			base2 = 320,
			dista = 1,
			bonus = 11,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[75] = {x = {
			pok = Slowpoke,
			spell = "Water Gun",
			minLv = 15,
			ex = 7900003,
			base1 = 150,
			base2 = 170,
			dista = 5,
			bonus = 5,
			type = "water",
   target = "no",
			cd = 20
		     }
		},
[41] = {x = {
			pok = Slowbro,
			spell = "Water Gun",
			minLv = 45,
			ex = 8000003,
			base1 = 250,
			base2 = 270,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 20
		     }
		},
[217] = {x = {
			pok = magnemite,
			spell = "Thunderbolt",
			minLv = 15,
			ex = 8100003,
			base1 = 145,
			base2 = 165,
			dista = 5,
			bonus = 4,
			type = "electric",
			cd = 15
		     }
		 },
[223] = {x = {
			pok = magneton,
			spell = "Thunderbolt",
			minLv = 75,
			ex = 8200003,
			base1 = 210,
			base2 = 250,
			dista = 5,
			bonus = 12,
			type = "electric",
			cd = 15
		     }
		 },
[359] = {x = {
			pok = shinymagneton,
			spell = "Thunderbolt",
			minLv = 90,
			ex = 820003,
			base1 = 420,
			base2 = 500,
			dista = 5,
			bonus = 24,
			type = "electric",
			cd = 15
		     }
		 },
[57] = {x = {
			pok = Farfetchd,
			spell = "Whirlwind",
			minLv = 45,
			ex = 8300003,
			base1 = 270,
			base2 = 290,
			dista = 5,
			bonus = 7,
			type = "flying",
   target = "no",
			cd = 20
		     }
		 },
[351] = {x = {
			pok = shinydodrio,
			spell = "Whirlwind",
			minLv = 65,
			ex = 850003,
			base1 = 360,
			base2 = 420,
			dista = 5,
			bonus = 16,
			type = "flying",
   target = "no",
			cd = 20
		     }
		 },
[520] = {x = {
			pok = eliteFarfetchd,
			spell = "Whirlwind",
			minLv = 80,
			ex = 830003,
			base1 = 540,
			base2 = 580,
			dista = 5,
			bonus = 14,
			type = "flying",
   target = "no",
			cd = 20
		     }
		 },
[26] = {x = {
			pok = doduo,
			spell = "slash",
			minLv = 15,
			ex = 8400003,
			base1 = 115,
			base2 = 125,
			dista = 1,
			bonus = 4,
			type = "normal",
			cd = 15
		     }
		 },
[120] = {x = {
			pok = dodrio,
			spell = "slash",
			minLv = 45,
			ex = 8500003,
			base1 = 180,
			base2 = 210,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[101] = {x = {
			pok = seel,
			spell = "Ice Wave",
			minLv = 20,
			ex = 8600003,
			base1 = 190,
			base2 = 250,
			dista = 5,
			bonus = 5,
			type = "ice",
   target = "no",
			cd = 25
		     }
		 },
[110] = {x = {
			pok = dewgong,
			spell = "Ice Wave",
			minLv = 65,
			ex = 8700003,
			base1 = 290,
			base2 = 310,
			dista = 5,
			bonus = 12,
			type = "ice",
   target = "no",
			cd = 25
		     }
		 },
[214] = {x = {
			pok = grimer,
			spell = "Sludge",
			minLv = 15,
			ex = 8800003,
			base1 = 115,
			base2 = 125,
			dista = 5,
			bonus = 4,
			type = "poison",
			cd = 15
		     }
		 },
[487] = {x = {
			pok = shinygrimer,
			spell = "Sludge",
			minLv = 40,
			ex = 880003,
			base1 = 230,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "poison",
			cd = 15
		     }
		 },
[47] = {x = {
			pok = Muk,
			spell = "Sludge",
			minLv = 80,
			ex = 8900003,
			base1 = 235,
			base2 = 245,
			dista = 5,
			bonus = 10,
			type = "poison",
			cd = 15
		     }
		 },
[488] = {x = {
			pok = shinyMuk,
			spell = "Sludge",
			minLv = 100,
			ex = 890003,
			base1 = 470,
			base2 = 490,
			dista = 5,
			bonus = 20,
			type = "poison",
			cd = 15
		     }
		 },
[54] = {x = {
			pok = Shellder,
			spell = "Ice Shards",
			minLv = 10,
			ex = 9000003,
			base1 = 155,
			base2 = 175,
			dista = 1,
			bonus = 4,
			type = "ice",
			cd = 20
		     }
		 },
[72] = {x = {
			pok = Cloyster,
			spell = "Ice Shards",
			minLv = 60,
			ex = 9100003,
			base1 = 235,
			base2 = 265,
			dista = 1,
			bonus = 9,
			type = "ice",
			cd = 20
		     }
		 },
[48] = {x = {
			pok = gastly,
			spell = "Night Shade",
			minLv = 20,
			ex = 9200003,
			base1 = 150,
			base2 = 180,
			dista = 2,
			bonus = 5,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[65] = {x = {
			pok = haunter,
			spell = "Night Shade",
			minLv = 45,
			ex = 9300003,
			base1 = 250,
			base2 = 260,
			dista = 2,
			bonus = 8,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[244] = {x = {
			pok = gengar,
			spell = "Night Shade",
			minLv = 80,
			ex = 9400003,
			base1 = 640,
			base2 = 700,
			dista = 2,
			bonus = 30,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[798] = {x = {
			pok = shinygengar,
			spell = "Night Shade",
			minLv = 100,
			ex = 940003,
			base1 = 320,
			base2 = 350,
			dista = 2,
			bonus = 15,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
 [248] = {x = {
			pok = onix,
			spell = "Rock Slide",
			minLv = 50,
			ex = 9500003,
			base1 = 240,
			base2 = 260,
			dista = 5,
			bonus = 11,
			type = "rock",
			cd = 15
		     }
		 },
[292] = {x = {
			pok = crystalonix,
			spell = "Rock Slide",
			minLv = 100,
			ex = 950003,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 22,
			type = "rock",
			cd = 15
		     }
		 },
[94] = {x = {
			nome = drowzee,
			spell = "Psy Wave",
			minLv = 25,
			ex = 9600003,
			base1 = 170,
			base2 = 190,
			dista = 5,
			bonus = 5,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[119] = {x = {
			nome = hypno,
			spell = "Psy Wave",
			minLv = 55,
			ex = 9700003,
			base1 = 235,
			base2 = 250,
			dista = 5,
			bonus = 9,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[356] = {x = {
			nome = shinyhypno,
			spell = "Psy Wave",
			minLv = 80,
			ex = 970003,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 18,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[112] = {x = {
			pok = krabby,
			spell = "Water Gun",
			minLv = 10,
			ex = 9800003,
			base1 = 120,
			base2 = 145,
			dista = 5,
			bonus = 3,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[508] = {x = {
			pok = shinykrabby,
			spell = "Water Gun",
			minLv = 30,
			ex = 980003,
			base1 = 240,
			base2 = 190,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[245] = {x = {
			pok = kingler,
			spell = "Water Gun",
			minLv = 40,
			ex = 9900003,
			base1 = 190,
			base2 = 235,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[500] = {x = {
			pok = shinykingler,
			spell = "Water Gun",
			minLv = 60,
			ex = 990003,
			base1 = 380,
			base2 = 470,
			dista = 5,
			bonus = 12,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[123] = {x = {
			pok = voltorb,
			spell = "Thunder Wave",
			minLv = 15,
			ex = 1000003,
			base1 = 140,
			base2 = 170,
			dista = 5,
			bonus = 5,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[518] = {x = {
			pok = shinyvoltorb,
			spell = "Thunder Wave",
			minLv = 30,
			ex = 100003,
			base1 = 280,
			base2 = 340,
			dista = 5,
			bonus = 10,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[287] = {x = {
			pok = voltorbroll,
			spell = "Thunder Wave",
			minLv = 15,
			ex = 1000003,
			base1 = 140,
			base2 = 170,
			dista = 5,
			bonus = 5,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[125] = {x = {
			pok = electrode,
			spell = "Thunder Wave",
			minLv = 35,
			ex = 1010003,
			base1 = 220,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[516] = {x = {
			pok = shinyelectrode,
			spell = "Thunder Wave",
			minLv = 80,
			ex = 101003,
			base1 = 440,
			base2 = 500,
			dista = 5,
			bonus = 16,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[286] = {x = {
			pok = electroderoll,
			spell = "Thunder Wave",
			minLv = 35,
			ex = 1010003,
			base1 = 220,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[213] = {x = {
			pok = Exeggcute,
			spell = "EggBomb",
			minLv = 10,
			ex = 1020003,
			base1 = 120,
			base2 = 150,
			dista = 5,
			bonus = 3,
			type = "grass",
			cd = 15
		     }
		 },
[46] = {x = {
			pok = Exeggutor,
			spell = "EggBomb",
			minLv = 80,
			ex = 1030003,
			base1 = 220,
			base2 = 250,
			dista = 5,
			bonus = 12,
			type = "psychic",
			target = "grass",
			cd = 15
		     }
		 },
[124] = {x = {
			pok = cubone,
			spell = "Bone Club",
			minLv = 20,
			ex = 1040003,
			base1 = 155,
			base2 = 175,
			dista = 3,
			bonus = 5,
			type = "earth",
			cd = 15
		     }
		 },
[350] = {x = {
			pok = shinycubone,
			spell = "Bone Club",
			minLv = 40,
			ex = 1040003,
			base1 = 310,
			base2 = 350,
			dista = 3,
			bonus = 10,
			type = "earth",
			cd = 15
		     }
		 },
[197] = {x = {
			pok = Marowak,
			spell = "Bone Club",
			minLv = 55,
			ex = 1050003,
			base1 = 235,
			base2 = 265,
			dista = 3,
			bonus = 10,
			type = "earth",
			cd = 15
		     }
		 },
[360] = {x = {
			pok = shinyMarowak,
			spell = "Bone Club",
			minLv = 65,
			ex = 105003,
			base1 = 470,
			base2 = 530,
			dista = 3,
			bonus = 20,
			type = "earth",
			cd = 15
		     }
		 },
[20] = {x = {
			pok = Hitmonlee,
			spell = "Mega Kick",
			minLv = 60,
			ex = 1060003,
			base1 = 280,
			base2 = 300,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 15
		     }
		 },
[301] = {x = {
			pok = Hitmonlee,
			spell = "Mega Kick",
			minLv = 60,
			ex = 1060003,
			base1 = 280,
			base2 = 300,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 15
		     }
		 },
[526] = {x = {
			pok = eliteHitmonlee,
			spell = "Mega Kick",
			minLv = 100,
			ex = 106003,
			base1 = 560,
			base2 = 600,
			dista = 1,
			bonus = 30,
			type = "fighting",
			cd = 15
		     }
		 },
[527] = {x = {
			pok = eliteHitmonlee,
			spell = "Mega Kick",
			minLv = 100,
			ex = 106003,
			base1 = 560,
			base2 = 600,
			dista = 1,
			bonus = 30,
			type = "fighting",
			cd = 15
		     }
		 },
[38] = {x = {
			pok = Hitmonchan,
			spell = "Fire Punch",
			minLv = 60,
			ex = 1070003,
			base1 = 280,
			base2 = 300,
			dista = 1,
			bonus = 15,
			type = "fire",
			cd = 15
		     }
		 },
[486] = {x = {
			pok = eliteHitmonchan,
			spell = "Fire Punch",
			minLv = 100,
			ex = 107003,
			base1 = 560,
			base2 = 600,
			dista = 1,
			bonus = 30,
			type = "fire",
			cd = 15
		     }
		 },
[11] = {x = {
			pok = Lickitung,
			spell = "Doubleslap",
			minLv = 55,
			ex = 1080003,
			base1 = 155,
			base2 = 165,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 15
		     }
		 },
[228] = {x = {
			pok = Koffing,
			spell = "Headbutt",
			minLv = 15,
			ex = 1090003,
			base1 = 135,
			base2 = 155,
			dista = 1,
			bonus = 4,
			type = "normal",
			cd = 15
		     }
		 },
[231] = {x = {
			pok = Weezing,
			spell = "Headbutt",
			minLv = 35,
			ex = 1100003,
			base1 = 225,
			base2 = 245,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[77] = {x = {
			pok = Rhyhorn,
			spell = "Stomp",
			minLv = 30,
			ex = 1110003,
			base1 = 200,
			base2 = 220,
			dista = 5,
			bonus = 5,
			type = "rock",
   target = "no",
			cd = 20
		     }
		 },
[200] = {x = {
			pok = Rhydon,
			spell = "Stomp",
			minLv = 75,
			ex = 1120003,
			base1 = 305,
			base2 = 340,
			dista = 5,
			bonus = 15,
			type = "rock",
   target = "no",
			cd = 20
		     }
		 },
[366] = {x = {
			pok = shinyRhydon,
			spell = "Stomp",
			minLv = 100,
			ex = 112003,
			base1 = 610,
			base2 = 680,
			dista = 5,
			bonus = 30,
			type = "rock",
   target = "no",
			cd = 20
		     }
		 },
[4] = {x = {
			pok = Chansey,
			spell = "Egg Fire Bomb",
			minLv = 60,
			ex = 1130003,
			base1 = 260,
			base2 = 280,
			dista = 5,
			bonus = 12,
			type = "fire",
			cd = 20
		     }
		 },
[18] = {x = {
			pok = Tangela,
			spell = "Vine Whip",
			minLv = 55,
			ex = 1140003,
			base1 = 150,
			base2 = 170,
			dista = 3,
			bonus = 10,
			type = "grass",
   target = "no",
			cd = 8
		     }
		 },
[370] = {x = {
			pok = shinyTangela,
			spell = "Vine Whip",
			minLv = 80,
			ex = 114003,
			base1 = 300,
			base2 = 340,
			dista = 3,
			bonus = 20,
			type = "grass",
   target = "no",
			cd = 8
		     }
		 },
[198] = {x = {
			pok = Kangaskhan,
			spell = "Stomp",
			minLv = 80,
			ex = 1150003,
			base1 = 340,
			base2 = 395,
			dista = 5,
			bonus = 14,
			type = "earth",
   target = "no",
			cd = 20
		     }
		 },
[33] = {x = {
			pok = horsea,
			spell = "Water Gun",
			minLv = 10,
			ex = 1160003,
			base1 = 140,
			base2 = 160,
			dista = 5,
			bonus = 3,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[507] = {x = {
			pok = shinyhorsea,
			spell = "Water Gun",
			minLv = 30,
			ex = 116003,
			base1 = 280,
			base2 = 320,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[276] = {x = {
			pok = seadra,
			spell = "Water Gun",
			minLv = 45,
			ex = 1170003,
			base1 = 200,
			base2 = 230,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[329] = {x = {
			pok = bigmagikarp,
			spell = "Water Gun",
			minLv = 45,
			ex = 1290003,
			base1 = 250,
			base2 = 450,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 10
		     }
		 },
[328] = {x = {
			pok = shinybigmagikarp,
			spell = "Water Gun",
			minLv = 60,
			ex = 129003,
			base1 = 500,
			base2 = 900,
			dista = 5,
			bonus = 16,
			type = "water",
   target = "no",
			cd = 10
		     }
		 },
[515] = {x = {
			pok = shinyseadra,
			spell = "Water Gun",
			minLv = 60,
			ex = 117003,
			base1 = 400,
			base2 = 460,
			dista = 5,
			bonus = 12,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[274] = {x = {
			pok = Goldeen,
		spell = "Poison Sting",
			minLv = 10,
			ex = 1180003,
			base1 = 150,
			base2 = 170,
			dista = 1,
			bonus = 4,
			type = "poison",
			cd = 13
		     }
		 },
[272] = {x = {
			pok = Seaking,
			spell = "Poison Sting",
			minLv = 35,
			ex = 1190003,
			base1 = 180,
			base2 = 240,
			dista = 3,
			bonus = 8,
			type = "poison",
			cd = 13
		     }
		 },
[42] = {x = {
			pok = Staryu,
			spell = "Thunder Wave",
			minLv = 15,
			ex = 1200003,
			base1 = 160,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[249] = {x = {
			pok = Starmie,
			spell = "Thunder Wave",
			minLv = 75,
			ex = 1210003,
			base1 = 205,
			base2 = 235,
			dista = 5,
			bonus = 12,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[246] = {x = {
			pok = MrMime,
			spell = "Psy Pulse",
			minLv = 60,
			ex = 1220003,
			base1 = 270,
			base2 = 350,
			dista = 5,
			bonus = 13,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[361] = {x = {
			pok = shinyMrMime,
			spell = "Psy Pulse",
			minLv = 85,
			ex = 122003,
			base1 = 540,
			base2 = 700,
			dista = 5,
			bonus = 26,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[15] = {x = {
			pok = Scyther,
			spell = "Wing Attack",
			minLv = 80,
			ex = 1230003,
			base1 = 270,
			base2 = 350,
			dista = 1,
			bonus = 13,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[525] = {x = {
			pok = shinyScyther,
			spell = "Wing Attack",
			minLv = 100,
			ex = 123003,
			base1 = 540,
			base2 = 700,
			dista = 1,
			bonus = 26,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[282] = {x = {
			pok = Jynx,
			spell = "Slash",
			minLv = 80,
			ex = 1240003,
			base1 = 200,
			base2 = 300,
			dista = 1,
			bonus = 13,
			type = "normal",
			cd = 13
		     }
		 },
[499] = {x = {
			pok = shinyJynx,
			spell = "Slash",
			minLv = 100,
			ex = 124003,
			base1 = 400,
			base2 = 600,
			dista = 1,
			bonus = 26,
			type = "normal",
			cd = 13
		     }
		 },
[281] = {x = {
			pok = Electabuzz,
			spell = "Thunderbolt",
			minLv = 80,
			ex = 1250003,
			base1 = 270,
			base2 = 350,
			dista = 5,
			bonus = 13,
			type = "electric",
			cd = 15
		     }
		 },
[497] = {x = {
			pok = shinyElectabuzz,
			spell = "Thunderbolt",
			minLv = 100,
			ex = 125003,
			base1 = 530,
			base2 = 700,
			dista = 5,
			bonus = 26,
			type = "electric",
			cd = 15
		     }
		 },
[76] = {x = {
			pok = Magmar,
			spell = "Flamethrower",
			minLv = 80,
			ex = 1260003,
			base1 = 270,
			base2 = 350,
			dista = 3,
			bonus = 13,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[371] = {x = {
			pok = shinyMagmar,
			spell = "Flamethrower",
			minLv = 100,
			ex = 126003,
			base1 = 340,
			base2 = 700,
			dista = 3,
			bonus = 26,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[53] = {x = {
			pok = Pinsir,
			spell = "Slash",
			minLv = 45,
			ex = 1270003,
			base1 = 200,
			base2 = 240,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 13
		     }
		 },
[365] = {x = {
			pok = shinyPinsir,
			spell = "Slash",
			minLv = 70,
			ex = 127003,
			base1 = 400,
			base2 = 480,
			dista = 1,
			bonus = 16,
			type = "normal",
			cd = 13
		     }
		 },
[93] = {x = {
			pok = Tauros,
			spell = "Slamp",
			minLv = 45,
			ex = 1280003,
			base1 = 180,
			base2 = 250,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[367] = {x = {
			pok = shinyTauros,
			spell = "Slamp",
			minLv = 65,
			ex = 128003,
			base1 = 360,
			base2 = 500,
			dista = 1,
			bonus = 16,
			type = "normal",
			cd = 15
		     }
		 },
[117] = {x = {
			pok = Gyarados,
			spell = "Water Gun",
			minLv = 85,
			ex = 1300003,
			base1 = 250,
			base2 = 360,
			dista = 5,
			bonus = 15,
                        target = "no",
			type = "Water",
			cd = 15
		     }
		 },
[327] = {x = {
			pok = miniGyarados,
			spell = "Water Gun",
			minLv = 40,
			ex = 1300003,
			base1 = 125,
			base2 = 180,
			dista = 5,
			bonus = 7,
                        target = "no",
			type = "Water",
			cd = 15
		     }
		 },
[528] = {x = {
			pok = redGyarados,
			spell = "Water Gun",
			minLv = 100,
			ex = 1300003,
			base1 = 500,
			base2 = 720,
			dista = 5,
			bonus = 30,
                        target = "no",
			type = "Water",
			cd = 15
		     }
		 },
[193] = {x = {
			pok = Lapras,
			spell = "Water Gun",
			minLv = 80,
			ex = 1310003,
			base1 = 230,
			base2 = 290,
			dista = 5,
			bonus = 13,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[28] = {x = {
			pok = ditto,
			spell = "Transform",
			minLv = 40,
			ex = 1320001,
			base1 = 0,
			base2 = 0,
			dista = 10,
			bonus = 0,
                        target = "yes",
			type = "normal",
			cd = 50
		     }
		 },
[102] = {x = {
			pok = eevee,
			spell = "Bite",
			minLv = 20,
			ex = 1330003,
			base1 = 160,
			base2 = 200,
			dista = 1,
			bonus = 5,
			type = "normal",
			cd = 13
		     }
		 },

[215] = {x = {
			pok = Vaporeon,
			spell = "Water Gun",
			minLv = 55,
			ex = 1340003,
			base1 = 230,
			base2 = 300,
			dista = 5,
			bonus = 10,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[368] = {x = {
			pok = shinyVaporeon,
			spell = "Water Gun",
			minLv = 80,
			ex = 134003,
			base1 = 460,
			base2 = 600,
			dista = 5,
			bonus = 20,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[195] = {x = {
			pok = Jolteon,
			spell = "Thunder Wave",
			minLv = 55,
			ex = 1350003,
			base1 = 230,
			base2 = 300,
			dista = 5,
			bonus = 10,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[357] = {x = {
			pok = shinyJolteon,
			spell = "Thunder Wave",
			minLv = 80,
			ex = 135003,
			base1 = 500,
			base2 = 600,
			dista = 5,
			bonus = 20,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[14] = {x = {
			pok = Flareon,
			spell = "Flamethrower",
			minLv = 55,
			ex = 1360003,
			base1 = 230,
			base2 = 300,
			dista = 3,
			bonus = 10,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[354] = {x = {
			pok = shinyFlareon,
			spell = "Flamethrower",
			minLv = 80,
			ex = 136003,
			base1 = 460,
			base2 = 600,
			dista = 3,
			bonus = 20,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[97] = {x = {
			pok = Porygon,
			spell = "Psy Dizzy",
			minLv = 45,
			ex = 1370003,
			base1 = 250,
			base2 = 310,
			dista = 5,
			bonus = 11,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[92] = {x = {
			pok = Omanyte,
			spell = "Water Gun",
			minLv = 20,
			ex = 1380003,
			base1 = 180,
			base2 = 230,
			dista = 5,
			bonus = 6,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[192] = {x = {
			pok = Omastar,
			spell = "Water Gun",
			minLv = 80,
			ex = 1390003,
			base1 = 250,
			base2 = 360,
			dista = 5,
			bonus = 13,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[98] = {x = {
			pok = Kabuto,
			spell = "Rock Slide",
			minLv = 20,
			ex = 1400003,
			base1 = 170,
			base2 = 200,
			dista = 5,
			bonus = 6,
			type = "rock",
			cd = 15
		     }
		 },
[13] = {x = {
			pok = Kabutops,
			spell = "Rock Slide",
			minLv = 80,
			ex = 1410003,
			base1 = 230,
			base2 = 340,
			dista = 5,
			bonus = 13,
			type = "rock",
			cd = 15
		     }
		 },
[10] = {x = {
			pok = Aerodactyl,
			spell = "Rock Slide",
			minLv = 100,
			ex = 1420003,
			base1 = 350,
			base2 = 420,
			dista = 1,
			bonus = 20,
			type = "rock",
			cd = 15
		     }
		 },
[348] = {x = {
			pok = bigSnorlax,
			spell = "Headbutt",
			minLv = 150,
			ex = 143000003,
			base1 = 520,
			base2 = 640,
			dista = 1,
			bonus = 34,
			type = "normal",
			cd = 15
		     }
		 },
[258] = {x = {
			pok = restSnorlax,
			spell = "Zzzzz",
			minLv = 90,
			ex = 14300003,
			base1 = 0,
			base2 = 0,
			dista = 1,
			bonus = 0,
			type = "normal",
			cd = 2
		     }
		 },
[283] = {x = {
			pok = Articuno,
			spell = "Ice Wave",
			minLv = 250,
			ex = 1440003,
			base1 = 3000,
			base2 = 3500,
			dista = 1,
			bonus = 30,
			type = "ice",
   target = "no",
			cd = 15
		     }
		 },
[199] = {x = {
			pok = Zapdos,
			spell = "Thunderbolt",
			minLv = 250,
			ex = 1450003,
			base1 = 2500,
			base2 = 3000,
			dista = 1,
			bonus = 30,
			type = "electric",
			cd = 15
		     }
		 },
[265] = {x = {
			pok = Moltres,
			spell = "Flamethrower",
			minLv = 250,
			ex = 1460003,
			base1 = 2600,
			base2 = 3100,
			dista = 1,
			bonus = 30,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[58] = {x = {
			pok = Dratini,
			spell = "Thunder Wave",
			minLv = 20,
			ex = 1470003,
			base1 = 160,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[506] = {x = {
			pok = shinyDratini,
			spell = "Thunder Wave",
			minLv = 40,
			ex = 147003,
			base1 = 320,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[61] = {x = {
			pok = Dragonair,
			spell = "Headbutt",
			minLv = 60,
			ex = 1480003,
			base1 = 250,
			base2 = 300,
			dista = 1,
			bonus = 10,
			type = "normal",
			cd = 15
		     }
		 },
[352] = {x = {
			pok = shinyDragonair,
			spell = "Headbutt",
			minLv = 80,
			ex = 148003,
			base1 = 500,
			base2 = 600,
			dista = 1,
			bonus = 20,
			type = "normal",
			cd = 15
		     }
		 },
[210] = {x = {
			pok = Dragonite,
			spell = "Wing Attack",
			minLv = 100,
			ex = 1490003,
			base1 = 350,
			base2 = 460,
			dista = 3,
			bonus = 18,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[34] = {x = {
			pok = Mewtwo,
			spell = "Psy Wave",
			minLv = 700,
			ex = 1500003,
			base1 = 5000,
			base2 = 7000,
			dista = 5,
			bonus = 50,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[9] = {x = {
			pok = Mew,
			spell = "Psy Wave",
			minLv = 600,
			ex = 1510003,
			base1 = 5000,
			base2 = 7000,
			dista = 5,
			bonus = 50,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[540] = {x = {
			pok = Chikorita,
			spell = "Vine Whip",
			minLv = 20,
			ex = 1520003,
			base1 = 160,
			base2 = 200,
			dista = 3,
			bonus = 5,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[536] = {x = {
			pok = bayleef,
			spell = "Vine Whip",
			minLv = 40,
			ex = 1530003,
			base1 = 220,
			base2 = 260,
			dista = 3,
			bonus = 8,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[581] = {x = {
			pok = Meganium,
			spell = "Vine Whip",
			minLv = 85,
			ex = 1540003,
			base1 = 270,
			base2 = 310,
			dista = 3,
			bonus = 15,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[547] = {x = {
			pok = cyndaquil,
			spell = "Fire Wave",
			minLv = 20,
			ex = 1550003,
			base1 = 180,
			base2 = 230,
			dista = 5,
			bonus = 5,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[597] = {x = {
			pok = quilava,
			spell = "Fire Wave",
			minLv = 40,
			ex = 1560003,
			base1 = 240,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[625] = {x = {
			pok = typhlosion,
			spell = "Fire Wave",
			minLv = 85,
			ex = 1570003,
			base1 = 290,
			base2 = 330,
			dista = 5,
			bonus = 15,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[623] = {x = {
			nome = Totodile,
			spell = "Water Gun",
			minLv = 20,
			ex = 1580003,
			base1 = 180,
			base2 = 230,
			dista = 5,
			bonus = 5,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[545] = {x = {
			nome = Croconaw,
			spell = "Water Gun",
			minLv = 40,
			ex = 1590003,
			base1 = 240,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[554] = {x = {
			nome = Feraligatr,
			spell = "Water Gun",
			minLv = 85,
			ex = 1600003,
			base1 = 290,
			base2 = 330,
			dista = 5,
			bonus = 15,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[602] = {x = {
			pok = Sentret,
			spell = "Slamp",
			minLv = 15,
			ex = 1610003,
			base1 = 150,
			base2 = 190,
			dista = 1,
			bonus = 3,
			type = "normal",
			cd = 13
		     }
		 },
[557] = {x = {
			pok = Furret,
			spell = "Slamp",
			minLv = 35,
			ex = 1620003,
			base1 = 220,
			base2 = 270,
			dista = 1,
			bonus = 6,
			type = "normal",
			cd = 13
		     }
		 },
[564] = {x = {
			pok = hoothoot,
			spell = "Gust",
			minLv = 20,
			ex = 1630003,
			base1 = 180,
			base2 = 200,
			dista = 5,
			bonus = 4,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[586] = {x = {
			pok = noctowl,
			spell = "Whirlwind",
			minLv = 65,
			ex = 1640003,
			base1 = 220,
			base2 = 300,
			dista = 5,
			bonus = 10,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[574] = {x = {
			pok = ledyba,
			spell = "Gust",
			minLv = 15,
			ex = 1650003,
			base1 = 160,
			base2 = 195,
			dista = 5,
			bonus = 3,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[573] = {x = {
			pok = ledian,
			spell = "Gust",
			minLv = 35,
			ex = 1660003,
			base1 = 215,
			base2 = 245,
			dista = 5,
			bonus = 8,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[612] = {x = {
			pok = Spinarak,
			spell = "Headbutt",
			minLv = 10,
			ex = 1670003,
			base1 = 140,
			base2 = 160,
			dista = 1,
			bonus = 2,
			type = "normal",
			cd = 13
		     }
		 },
[534] = {x = {
			pok = Ariados,
			spell = "Headbutt",
			minLv = 35,
			ex = 1680003,
			base1 = 215,
			base2 = 225,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 13
		     }
		 },
[544] = {x = {
			pok = Crobat,
			spell = "Poison Sting",
			minLv = 80,
			ex = 1690003,
			base1 = 270,
			base2 = 330,
			dista = 1,
			bonus = 15,
			type = "poison",
			cd = 15
		     }
		 },
[541] = {x = {
			pok = Chinchou,
			spell = "Water Gun",
			minLv = 15,
			ex = 1700003,
			base1 = 180,
			base2 = 215,
			dista = 5,
			bonus = 4,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[571] = {x = {
			pok = lanturn,
			spell = "Water Gun",
			minLv = 75,
			ex = 1710003,
			base1 = 230,
			base2 = 260,
			dista = 5,
			bonus = 10,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[589] = {x = {
			pok = pichu,
			spell = "Thunder Wave",
			minLv = 20,
			ex = 1720003,
			base1 = 150,
			base2 = 180,
			dista = 5,
			bonus = 5,
			type = "electric",
   target = "no",
			cd = 15
		     }
		 },
[542] = {x = {
			pok = Cleffa,
			spell = "Guitar Paralizy",
			minLv = 20,
			ex = 1730003,
			base1 = 150,
			base2 = 180,
			dista = 4,
			bonus = 5,
			type = "normal",
			cd = 15
		 }
             },
[568] = {x = {
			pok = Igglybuff,
			spell = "Guitar Paralizy",
			minLv = 20,
			ex = 1740003,
			base1 = 150,
			base2 = 180,
			dista = 4,
			bonus = 5,
			type = "normal",
			cd = 15
		     }
		 },
[621] = {x = {
			pok = Togepi,
			spell = "Egg Fire Bomb",
			minLv = 5,
			ex = 1750003,
			base1 = 150,
			base2 = 200,
			dista = 5,
			bonus = 6,
			type = "fire",
			cd = 15
		     }
		 },
[622] = {x = {
			pok = Togetic,
			spell = "Egg Fire Bomb",
			minLv = 60,
			ex = 1760003,
			base1 = 250,
			base2 = 320,
			dista = 5,
			bonus = 12,
			type = "fire",
			cd = 15
		     }
		 },
[585] = {x = {
			pok = natu,
			spell = "Psy Pulse",
			minLv = 30,
			ex = 1770003,
			base1 = 170,
			base2 = 200,
			dista = 5,
			bonus = 6,
			type = "psychic",
			target = "no",
			cd = 15
		     }
		 },
[658] = {x = {
			pok = Xatu,
			spell = "Psy Pulse",
			minLv = 75,
			ex = 1780003,
			base1 = 270,
			base2 = 330,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 15
		     }
		 },
[579] = {x = {
			pok = Mareep,
			spell = "Thunderbolt",
			minLv = 20,
			ex = 1790003,
			base1 = 150,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "electric",
			cd = 15
		     }
		 },
[555] = {x = {
			pok = Flaaffy,
			spell = "Thunderbolt",
			minLv = 40,
			ex = 1800003,
			base1 = 230,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "electric",
			cd = 15
		     }
		 },
[533] = {x = {
			pok = Ampharos,
			spell = "Thunderbolt",
			minLv = 85,
			ex = 1810003,
			base1 = 280,
			base2 = 320,
			dista = 5,
			bonus = 15,
			type = "electric",
			cd = 15
		     }
		 },
[537] = {x = {
			pok = Bellossom,
			spell = "Vine Whip",
			minLv = 50,
			ex = 1820003,
			base1 = 180,
			base2 = 230,
			dista = 3,
			bonus = 10,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[580] = {x = {
			pok = Marill,
			spell = "Water Gun",
			minLv = 20,
			ex = 1830003,
			base1 = 170,
			base2 = 200,
			dista = 5,
			bonus = 4,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[535] = {x = {
			pok = Azumarill,
			spell = "Water Gun",
			minLv = 65,
			ex = 1840003,
			base1 = 240,
			base2 = 260,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[615] = {x = {
			pok = Sudowoodo,
			spell = "Rock Slide",
			minLv = 80,
			ex = 1850003,
			base1 = 280,
			base2 = 330,
			dista = 5,
			bonus = 13,
			type = "rock",
			cd = 15
		     }
		 },
[592] = {x = {
			pok = politoed,
			spell = "Water Gun",
			minLv = 65,
			ex = 1860003,
			base1 = 215,
			base2 = 255,
			dista = 5,
			bonus = 12,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[565] = {x = {
			pok = hoppip,
			spell = "Vine Whip",
			minLv = 5,
			ex = 1870003,
			base1 = 140,
			base2 = 170,
			dista = 3,
			bonus = 3,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[605] = {x = {
			pok = skiploom,
			spell = "Vine Whip",
			minLv = 25,
			ex = 1880003,
			base1 = 180,
			base2 = 220,
			dista = 3,
			bonus = 6,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[569] = {x = {
			pok = jumpluff,
			spell = "Vine Whip",
			minLv = 50,
			ex = 1890003,
			base1 = 240,
			base2 = 280,
			dista = 3,
			bonus = 9,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[532] = {x = {
			pok = aipom,
			spell = "Fury Attack",
			minLv = 40,
			ex = 1900003,
			base1 = 180,
			base2 = 220,
			dista = 1,
			bonus = 6,
			type = "normal",
			cd = 15
		     }
		 },
[618] = {x = {
			pok = Sunkern,
			spell = "Vine Whip",
			minLv = 1,
			ex = 1910003,
			base1 = 140,
			base2 = 180,
			dista = 3,
			bonus = 2,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[617] = {x = {
			pok = Sunflora,
			spell = "Vine Whip",
			minLv = 30,
			ex = 1920003,
			base1 = 220,
			base2 = 240,
			dista = 3,
			bonus = 7,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[659] = {x = {
			pok = Yanma,
			spell = "Fury Attack",
			minLv = 50,
			ex = 1930003,
			base1 = 180,
			base2 = 200,
			dista = 1,
			bonus = 8,
			type = "flying",
			cd = 15
		     }
		 },
[657] = {x = {
			pok = Wooper,
			spell = "Water Gun",
			minLv = 20,
			ex = 1940003,
			base1 = 160,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[595] = {x = {
			pok = Quaqsire,
			spell = "Water Gun",
			minLv = 65,
			ex = 1950003,
			base1 = 240,
			base2 = 265,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[553] = {x = {
			pok = espeon,
			spell = "Psy Pulse",
			minLv = 55,
			ex = 1960003,
			base1 = 220,
			base2 = 260,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 15
		     }
		 },
[628] = {x = {
			pok = Umbreon,
			spell = "Dark Ruler",
			minLv = 55,
			ex = 1970003,
			base1 = 220,
			base2 = 260,
			dista = 5,
			bonus = 10,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[584] = {x = {
			pok = murkrow,
			spell = "Dark Ruler",
			minLv = 50,
			ex = 1980003,
			base1 = 200,
			base2 = 235,
			dista = 5,
			bonus = 10,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[606] = {x = {
			pok = Slowking,
			spell = "Water Gun",
			minLv = 100,
			ex = 1990003,
			base1 = 300,
			base2 = 360,
			dista = 5,
			bonus = 15,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[583] = {x = {
			pok = misdreavus,
			spell = "Night Shade",
			minLv = 80,
			ex = 2000003,
			base1 = 320,
			base2 = 360,
			dista = 2,
			bonus = 17,
			type = "ghost",
   target = "no",
			cd = 15
		     }
		 },
[629] = {x = {
			pok = unowna,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2011003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[630] = {x = {
			pok = unownb,
			spell = "Psy Unw",
		minLv = 100,
			ex = 2012003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[631] = {x = {
			pok = unownc,
			spell = "Psy Unw",
		minLv = 100,
			ex = 2013003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[632] = {x = {
			pok = unownd,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2014003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[633] = {x = {
			pok = unowne,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2015003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[634] = {x = {
			pok = unownf,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2016003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[635] = {x = {
			pok = unowng,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2017003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[636] = {x = {
			pok = unownh,
			spell = "Psy Unw",
		minLv = 100,
			ex = 2018003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[637] = {x = {
			pok = unowni,
			spell = "Psy Unw",
			minLv = 100,
			ex = 2019003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[638] = {x = {
			pok = unownj,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20110003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[639] = {x = {
			pok = unownk,
			spell = "Psy Unw",
		minLv = 100,
			ex = 20111003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[640] = {x = {
			pok = unownl,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20112003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[641] = {x = {
			pok = unownm,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20113003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[642] = {x = {
			pok = unownn,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20114003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[643] = {x = {
			pok = unowno,
			spell = "Psy Unw",
		minLv = 100,
			ex = 20115003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[644] = {x = {
			pok = unownp,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20116003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[645] = {x = {
			pok = unownq,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20117003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[646] = {x = {
			pok = unownr,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20118003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[647] = {x = {
			pok = unowns,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20119003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[648] = {x = {
			pok = unownt,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20120003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[649] = {x = {
			pok = unownu,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20121003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[650] = {x = {
			pok = unownv,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20122003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[651] = {x = {
			pok = unownx,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20123003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[652] = {x = {
			pok = unownw,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20124003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[653] = {x = {
			pok = unowny,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20125003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[654] = {x = {
			pok = unownz,
			spell = "Psy Unw",
			minLv = 100,
			ex = 20126003,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 17,
			type = "psychic",
   target = "no",
			cd = 20
		     }
		 },
[656] = {x = {
			pok = Wobbuffet,
			spell = "Psy Pulse",
			minLv = 80,
			ex = 2020003,
			base1 = 300,
			base2 = 350,
			dista = 5,
			bonus = 15,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[558] = {x = {
			pok = girafarig,
			spell = "Stomp",
			minLv = 80,
			ex = 2030003,
			base1 = 190,
			base2 = 260,
			dista = 5,
			bonus = 11,
			type = "earth",
   target = "no",
			cd = 15
		     }
		 },
[591] = {x = {
			pok = pineco,
			spell = "Bug Ruler",
			minLv = 10,
			ex = 2040003,
			base1 = 170,
			base2 = 215,
			dista = 5,
			bonus = 5,
			type = "bug",
   target = "no",
			cd = 20
		     }
		 },
[556] = {x = {
			pok = forretress,
			spell = "Bug Ruler",
			minLv = 65,
			ex = 2050003,
			base1 = 245,
			base2 = 285,
			dista = 5,
			bonus = 10,
			type = "bug",
   target = "no",
			cd = 20
		     }
		 },
[550] = {x = {
			pok = dunsparce,
			spell = "Headbutt",
			minLv = 30,
			ex = 2060003,
			base1 = 160,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "normal",
			cd = 13
		     }
		 },
[559] = {x = {
			pok = Gligar,
			spell = "Whirlwind",
			minLv = 40,
			ex = 2070003,
			base1 = 185,
			base2 = 205,
			dista = 5,
			bonus = 7,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
 [724] = {x = {
			pok = Steelix,
			spell = "Rock Slide",
			minLv = 100,
			ex = 2080003,
			base1 = 340,
			base2 = 450,
			dista = 5,
			bonus = 17,
			type = "rock",
			cd = 15
		     }
		 },
 [611] = {x = {
			pok = Snubbull,
			spell = "Fire Punch",
			minLv = 20,
 			ex = 2090003,
			base1 = 170,
			base2 = 200,
			dista = 1,
			bonus = 5,
			type = "fire",
			cd = 15
			}
		},
 [560] = {x = {
			pok = granbull,
			spell = "Fire Punch",
			minLv = 65,
 			ex = 2100003,
			base1 = 230,
			base2 = 280,
			dista = 1,
			bonus = 10,
			type = "fire",
			cd = 15
			}
		},
[598] = {x = {
			pok = qwilfish,
			spell = "Pin Missile",
			minLv = 50,
			ex = 2110003,
			base1 = 180,
			base2 = 220,
			dista = 5,
			bonus = 7,
			type = "poison",
			cd = 15
		     }
		 },
[601] = {x = {
			pok = Scizor,
			spell = "Wing Attack",
			minLv = 100,
			ex = 2120003,
			base1 = 350,
			base2 = 450,
			dista = 5,
			bonus = 17,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[603] = {x = {
			pok = shuckle,
			spell = "Bug Ruler",
			minLv = 30,
			ex = 2130003,
			base1 = 205,
			base2 = 235,
			dista = 5,
			bonus = 7,
			type = "bug",
   target = "no",
			cd = 15
		     }
		 },
[561] = {x = {
			pok = Heracross,
			spell = "Horn Attack",
			minLv = 80,
			ex = 2140003,
			base1 = 260,
			base2 = 340,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 15
		     }
		 },
[610] = {x = {
			pok = Sneasel,
			spell = "Dark Ruler",
			minLv = 55,
			ex = 2150003,
			base1 = 210,
			base2 = 260,
			dista = 5,
			bonus = 10,
			type = "ghost",
   target = "no",
			cd = 20
		     }
		 },
[620] = {x = {
			pok = Teddiursa,
			spell = "Stomp",
			minLv = 30,
			ex = 2160003,
			base1 = 180,
			base2 = 220,
			dista = 5,
			bonus = 6,
			type = "earth",
   target = "no",
			cd = 20
		     }
		 },
[655] = {x = {
			pok = Ursaring,
			spell = "Stomp",
			minLv = 90,
			ex = 2170003,
			base1 = 350,
			base2 = 390,
			dista = 5,
			bonus = 15,
			type = "earth",
   target = "no",
			cd = 15
		     }
		 },
[607] = {x = {
			pok = Slugma,
			spell = "Flamethrower",
			minLv = 15,
			ex = 2180003,
			base1 = 175,
			base2 = 200,
			dista = 3,
			bonus = 7,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[577] = {x = {
			pok = magcargo,
			spell = "Flamethrower",
			minLv = 75,
			ex = 2190003,
			base1 = 215,
			base2 = 245,
			dista = 3,
			bonus = 12,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[619] = {x = {
			nome = Swinub,
			spell = "Ice Wave",
			minLv = 20,
			ex = 2200003,
			base1 = 175,
			base2 = 200,
			dista = 5,
			bonus = 5,
			type = "ice",
   target = "no",
			cd = 15
		     }
		 },
[590] = {x = {
			nome = Piloswine,
			spell = "Ice Wave",
			minLv = 80,
			ex = 2210003,
			base1 = 255,
			base2 = 265,
			dista = 5,
			bonus = 8,
			type = "ice",
   target = "no",
			cd = 15
		     }
		 },
[543] = {x = {
			pok = Corsola,
			spell = "Water Gun",
			minLv = 50,
			ex = 2220003,
			base1 = 255,
			base2 = 265,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[600] = {x = {
			pok = remoraid,
			spell = "Water Gun",
			minLv = 10,
			ex = 2230003,
			base1 = 170,
			base2 = 190,
			dista = 5,
			bonus = 4,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[587] = {x = {
			pok = octillery,
			spell = "Water Gun",
			minLv = 70,
			ex = 2240003,
			base1 = 245,
			base2 = 285,
			dista = 5,
			bonus = 12,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[548] = {x = {
			pok = delibird,
			spell = "Whirlwind",
			minLv = 50,
			ex = 2250003,
			base1 = 250,
			base2 = 280,
			dista = 5,
			bonus = 10,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[578] = {x = {
			pok = mantine,
			spell = "Wing Attack",
			minLv = 80,
			ex = 2260003,
			base1 = 280,
			base2 = 335,
			dista = 5,
			bonus = 15,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[604] = {x = {
			pok = skarmory,
			spell = "Wing Attack",
			minLv = 85,
			ex = 2270003,
			base1 = 320,
			base2 = 340,
			dista = 5,
			bonus = 15,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[567] = {x = {
			pok = Houndour,
			spell = "Flamethrower",
			minLv = 20,
			ex = 2280003,
			base1 = 180,
			base2 = 215,
			dista = 3,
			bonus = 5,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[566] = {x = {
			pok = houndoom,
			spell = "Flamethrower",
			minLv = 80,
			ex = 2290003,
			base1 = 250,
			base2 = 290,
			dista = 3,
			bonus = 12,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[570] = {x = {
			pok = kingdra,
			spell = "Bubbles",
			minLv = 100,
			ex = 2300003,
			base1 = 200,
			base2 = 220,
			dista = 5,
			bonus = 13,
			type = "water",
			cd = 15
		     }
		 },
[588] = {x = {
			pok = phanpy,
			spell = "Earth Fang",
			minLv = 20,
			ex = 2310003,
			base1 = 170,
			base2 = 200,
			dista = 1,
			bonus = 4,
			type = "earth",
			cd = 15
		     }
		 },
[549] = {x = {
			pok = Donphan,
			spell = "Earth Fang",
			minLv = 80,
			ex = 2320003,
			base1 = 240,
			base2 = 270,
			dista = 1,
			bonus = 8,
			type = "earth",
			cd = 15
		     }
		 },
[664] = {x = {
			pok = Donphan,
			spell = "Earth Fang",
			minLv = 80,
			ex = 2320003,
			base1 = 240,
			base2 = 270,
			dista = 1,
			bonus = 8,
			type = "earth",
			cd = 15
		     }
		 },
[593] = {x = {
			pok = Porygon2,
			spell = "Psy Dizzy",
			minLv = 75,
			ex = 2330003,
			base1 = 320,
			base2 = 340,
			dista = 5,
			bonus = 15,
			type = "psychic",
   target = "no",
			cd = 15
		     }
		 },
[613] = {x = {
			pok = Stantler,
			spell = "Stomp",
			minLv = 55,
			ex = 2340003,
			base1 = 275,
			base2 = 300,
			dista = 5,
			bonus = 11,
			type = "normal",
   target = "no",
			cd = 15
		     }
		 },
[337] = {x = {
			pok = Smearglevirgen,
			spell = "Headbutt",
			minLv = 40,
			ex = 2350003,
			base1 = 100,
			base2 = 120,
			dista = 1,
			bonus = 5,
			type = "normal",
			cd = 20
		     }
		 },
[608] = {x = {
			pok = Smeargle1,
			spell = "Vine Whip",
			minLv = 40,
			ex = 2350003,
			base1 = 220,
			base2 = 250,
			dista = 3,
			bonus = 8,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[338] = {x = {
			pok = Smeargle2,
			spell = "Guitar Paralizy",
			minLv = 40,
			ex = 2350003,
			base1 = 170,
			base2 = 210,
			dista = 4,
			bonus = 8,
			type = "normal",
			cd = 15
		     }
		 },
[339] = {x = {
			pok = Smeargle3,
			spell = "Sludge",
			minLv = 40,
			ex = 2350003,
			base1 = 230,
			base2 = 250,
			dista = 5,
			bonus = 8,
			type = "poison",
			cd = 15
		     }
		 },
[340] = {x = {
			pok = Smeargle4,
			spell = "Water Gun",
			minLv = 40,
			ex = 2350003,
			base1 = 240,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "water",
   target = "no",
			cd = 15
		     }
		 },
[342] = {x = {
			pok = Smeargle5,
		spell = "Vine Whip",
			minLv = 40,
			ex = 2350003,
			base1 = 220,
			base2 = 250,
			dista = 3,
			bonus = 8,
			type = "grass",
   target = "no",
			cd = 15
		     }
		 },
[344] = {x = {
			pok = Smeargle6,
			spell = "Bone Club",
			minLv = 40,
			ex = 2350003,
				base1 = 235,
			base2 = 265,
			dista = 3,
			bonus = 10,
			type = "earth",
			cd = 15
		     }
		 },
[345] = {x = {
			pok = Smeargle7,
		spell = "Whirlwind",
			minLv = 40,
		ex = 2350003,
			base1 = 185,
			base2 = 205,
			dista = 5,
			bonus = 7,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[627] = {x = {
			pok = Tyrogue,
			spell = "Karate Chop",
			minLv = 30,
			ex = 2360003,
			base1 = 200,
			base2 = 230,
			dista = 1,
			bonus = 7,
			type = "fighting",
			cd = 15
		     }
		 },
[562] = {x = {
			pok = Hitmontop,
			spell = "Karate Chop",
			minLv = 60,
			ex = 2370003,
			base1 = 290,
			base2 = 330,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 15
		     }
		 },
[609] = {x = {
			pok = Smoochum,
			spell = "Ice Shards",
			minLv = 30,
			ex = 2380003,
			base1 = 200,
			base2 = 250,
			dista = 5,
			bonus = 6,
			type = "ice",
			cd = 15
		     }
		 },
[551] = {x = {
			pok = Elekid,
			spell = "Thunderbolt",
			minLv = 30,
			ex = 2390003,
			base1 = 200,
			base2 = 230,
			dista = 5,
			bonus = 6,
			type = "electric",
			cd = 15
		     }
		 },
[576] = {x = {
			pok = magby,
			spell = "Flamethrower",
			minLv = 30,
			ex = 2400003,
			base1 = 200,
			base2 = 230,
			dista = 3,
			bonus = 6,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[582] = {x = {
			pok = miltank,
			spell = "Stomp",
			minLv = 80,
			ex = 2410003,
			base1 = 295,
			base2 = 330,
			dista = 5,
			bonus = 13,
			type = "earth",
   target = "no",
			cd = 15
		     }
		 },
[675] = {x = {
			pok = miltank,
			spell = "Stomp",
			minLv = 80,
			ex = 2410003,
			base1 = 295,
			base2 = 330,
			dista = 5,
			bonus = 13,
			type = "earth",
   target = "no",
			cd = 15
		     }
		 },
[538] = {x = {
			pok = Blissey,
			spell = "Egg Fire Bomb",
			minLv = 100,
			ex = 2420003,
			base1 = 360,
			base2 = 390,
			dista = 5,
			bonus = 17,
			type = "fire",
			cd = 15
		     }
		 },
[599] = {x = {
			pok = Raikou,
			spell = "Thunderbolt",
			minLv = 250,
			ex = 2430003,
			base1 = 3000,
			base2 = 3500,
			dista = 5,
			bonus = 30,
			type = "electric",
			cd = 15
		     }
		 },
[552] = {x = {
			pok = Entei,
			spell = "Flamethrower",
			minLv = 250,
			ex = 2440003,
			base1 = 3000,
			base2 = 3500,
			dista = 5,
			bonus = 30,
			type = "fire",
   target = "no",
			cd = 15
		     }
		 },
[616] = {x = {
			pok = Suicune,
			spell = "Ice Shards",
			minLv = 250,
			ex = 2450003,
			base1 = 3200,
			base2 = 3650,
			dista = 5,
			bonus = 30,
			type = "ice",
			cd = 15
		     }
		 },
[572] = {x = {
			pok = larvitar,
			spell = "Rock Slide",
			minLv = 20,
			ex = 2460003,
			base1 = 170,
			base2 = 210,
			dista = 5,
			bonus = 7,
			type = "rock",
			cd = 15
		     }
		 },
[594] = {x = {
			pok = pupitar,
			spell = "Rock Slide",
			minLv = 60,
			ex = 2470003,
			base1 = 250,
			base2 = 280,
			dista = 5,
			bonus = 12,
			type = "rock",
			cd = 15
		     }
		 },
[626] = {x = {
			pok = tyranitar,
			spell = "Stomp",
			minLv = 100,
			ex = 2480003,
			base1 = 350,
			base2 = 450,
			dista = 5,
			bonus = 17,
			type = "earth",
   target = "no",
			cd = 15
		     }
		 },
[575] = {x = {
			pok = Lugia,
			spell = "Water Gun",
			minLv = 600,
			ex = 2490003,
			base1 = 5000,
			base2 = 6500,
			dista = 5,
			bonus = 50,
			type = "water",
			target = "no",
			cd = 15
		     }
		 },
[563] = {x = {
			pok = HoOh,
			spell = "Wing Attack",
			minLv = 800,
			ex = 2500003,
			base1 = 4000,
			base2 = 5000,
			dista = 5,
			bonus = 50,
			type = "flying",
   target = "no",
			cd = 15
		     }
		 },
[539] = {x = {
			pok = Celebi,
			spell = "Psy Wave",
			minLv = 600,
			ex = 2510003,
			base1 = 5500,
			base2 = 6300,
			dista = 5,
			bonus = 50,
			type = "psychic",
			target = "no",
			cd = 15
		     }
		 },
}

function onSay(cid)
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end

	pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
	if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn\'t recognize this move.")
	return 0
	end
	if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have enough level to  this move.")
	return 0
	end
	if exhaustion.get(cid, pokemon.x.ex) then
		seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1))
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..seconds.." seconds to  this move again.")
		return 0
		end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then
	doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215)
	setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	return true
	end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then
		if math.random(1,100) <= 33 then
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180)
		local levels = getPlayerLevel(cid)
		doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		return true
		end
	end
if pokemon.x.target ~= "no" then
	if not isMonster(getCreatureTarget(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")
	return 0
	end

	if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to  this move.")
	return 0
	end

	if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then
	return 0
	end
end

	if pokemon.x.type == "flying" then
		elementa = FLYDAMAGE
	elseif pokemon.x.type == "ground" then
		elementa = GROUNDDAMAGE
	elseif pokemon.x.type == "electric" then
		elementa = ELECTRICDAMAGE
	elseif pokemon.x.type == "ghost" then
		elementa = GHOSTDAMAGE
	elseif pokemon.x.type == "normal" then
		elementa = NORMALDAMAGE
	elseif pokemon.x.type == "fighting" then
		elementa = FIGHTINGDAMAGE
	elseif pokemon.x.type == "poison" then
		elementa = POISONDAMAGE
	elseif pokemon.x.type == "rock" then
		elementa = ROCKDAMAGE
	elseif pokemon.x.type == "bug" then
		elementa = BUGDAMAGE
	elseif pokemon.x.type == "fire" then
		elementa = FIREDAMAGE
	elseif pokemon.x.type == "water" then
		elementa = WATERDAMAGE
	elseif pokemon.x.type == "grass" then
		elementa = GRASSDAMAGE
	elseif pokemon.x.type == "psychic" then
		elementa = PSYCHICDAMAGE
	elseif pokemon.x.type == "ice" then
		elementa = ICEDAMAGE
	elseif pokemon.x.type == "dragon" then
		elementa = DRAGONDAMAGE
	end

	local element = elementa
	local num1 = (pokemon.x.base1)
	local num2 = (pokemon.x.base2)
	local num3 = (pokemon.x.bonus)


local ball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
local pokename = getItemSpecialDescription(ball.uid)
local boost = pokename:match("\+(%d+)")

if(pokename:find("\+(%d+)"))then 
	num1 = ((pokemon.x.base1)*(boost*(boostrate*2)))
	num2 = ((pokemon.x.base2)*boost)
	num3 = (pokemon.x.bonus)
else
	num1 = (pokemon.x.base1)
	num2 = (pokemon.x.base2)
	num3 = (pokemon.x.bonus)
end


	if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
	num3 = num3 * 1.8
	setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 0)
	end
	setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3))))
	if pokemon.x.spell == "Water Gun" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
	elseif pokemon.x.spell == "Sand Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function sandattack(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, ef = 120})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, ef = 120})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, ef = 120})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, ef = 122})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, ef = 122})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, ef = 122})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, ef = 121})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, ef = 121})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, ef = 121})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, ef = 119})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, ef = 119})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, ef = 119})
		end
	elseif pokemon.x.spell == "Bite" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 146)
		return 0
	elseif pokemon.x.spell == "Toxic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		area = toxicn
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		area = toxice
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		area = toxics
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		area = toxicw
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		return 0
	elseif pokemon.x.spell == "Acid" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 20)
		return 0
	elseif pokemon.x.spell == "Aqua Tail" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		return 0
	elseif pokemon.x.spell == "Fire Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureTarget(cid)), 146)
		local function damage(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		end
		end
		end
		addEvent(damage, 200, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Earth Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureTarget(cid)), 146)
		local function damage(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		end
		end
		end
		addEvent(damage, 200, {cid = cid})
		return 0
-------------------------------------------------------------ADICIONADAS-----------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------
                elseif pokemon.x.spell == "Fire Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 62)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 15)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
----------------    1AREA
	elseif pokemon.x.spell == "Waterball" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
			else
			end
			end
		addEvent(damage, 100, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
 elseif pokemon.x.spell == "Metronome" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 161)
		local function variavel(cid, elemento, defec, mefec)
		if isCreature(cid) then
		if isCreature(getCreatureSummons(cid)[1]) then
		local pos = getThingPos(getCreatureSummons(cid)[1])
		pos.x = pos.x + math.random(-4,4)
		pos.y = pos.y + math.random(-4,4)
		local frompos = getThingPos(getCreatureSummons(cid)[1])
		frompos.x = pos.x - 7
		frompos.y = pos.y - 6
		doSendDistanceShoot(frompos, pos, defec)
		doAreaCombatHealth(getCreatureSummons(cid)[1], elemento, pos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), mefec)
		end
		end
		end
		local function leaf(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -7,7 do
				for y= -6,6 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 8)
				end
			end
		end
		posit = getThingPos(getCreatureSummons(cid)[1])
        local function fogo(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		local function sortear()
        local magias = math.random(1,7)
        if magias == 1 then
        for r = 1, 72 do
        addEvent(variavel, r*35, cid,ELECTRICDAMAGE,41,48)
        end
        elseif magias == 2 then
        for r = 1, 72 do
        addEvent(variavel, r*35,cid,ICEDAMAGE,42,52)
        end
        elseif magias == 3 then
        for r = 1, 72 do
        addEvent(variavel, r*35,cid,GHOSTDAMAGE,18,140)
        end
        elseif magias == 4 then
        for r = 1, 72 do
        addEvent(variavel, r*35,cid,WATERDAMAGE,2,53)
        end
        elseif magias == 5 then
        for r = 1, 72 do
        addEvent(variavel, r*35,cid,ROCKDAMAGE,11,44)
        end
        elseif magias == 6 then
        addEvent(leaf, 0, {cid = cid})
        addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], GRASSDAMAGE, getThingPos(getCreatureSummons(cid)[1]), grassarea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
        elseif magias == 7 then
        addEvent(fogo, 0, {cid = cid, el = element, ar = magma1, ef = 6})
		addEvent(fogo, 100, {cid = cid, el = element, ar = magma1, ef = 35})
		addEvent(fogo, 400, {cid = cid, el = element, ar = magma2, ef = 6})
		addEvent(fogo, 500, {cid = cid, el = element, ar = magma2, ef = 35})
		addEvent(fogo, 800, {cid = cid, el = element, ar = magma3, ef = 6})
        end
        end
        addEvent(sortear, 1000)
        return 0
	elseif pokemon.x.spell == "Wing Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
		return 0
elseif pokemon.x.spell == "Poison Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
        doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		return 0
	 elseif pokemon.x.spell == "Poison Powder" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		end
		return 0
elseif pokemon.x.spell == "Fury Cutter" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function attaque(params)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
                end
		addEvent(attaque, 0, {cid = cid})
		addEvent(attaque, 500, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Psy Unw" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 47)
		return 0
elseif pokemon.x.spell == "Psy Dizzy" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 230)
		return 0
	elseif pokemon.x.spell == "Great Love" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), glv, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 147)
		return 0
	elseif pokemon.x.spell == "Stomp" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), stomp, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		return 0
elseif pokemon.x.spell == "Dark Ruler" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), stomp, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 223)
		return 0
elseif pokemon.x.spell == "Bug Ruler" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), stomp, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		return 0
	elseif pokemon.x.spell == "Confusion" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		return 0
	elseif pokemon.x.spell == "Night Shade" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), ns, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 208)
		return 0
elseif pokemon.x.spell == "Transform" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd, pokemon.x.base1, pokemon.x.base2, pokemon.x.bonus, pokemon.x.target, pokemon.x.type)
doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(getCreatureTarget(cid)), 130000000)
return 0
-------2WAVES/BEAMS
	elseif pokemon.x.spell == "Hyper Beam" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 152)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 156)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 151)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 155)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 149)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 153)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 150)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 154)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
	elseif pokemon.x.spell == "Cyber Pulse" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bmn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
        elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bms, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bme, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bmw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
 elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
	elseif pokemon.x.spell == "Shadow Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		area = vinen
		dano = whipn
		effect = 217
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		area = vinee
		dano = whipe
		effect = 215
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		area = vines
		dano = whips
		effect = 218
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		area = vinew
		dano = whipw
		effect = 216
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], null, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), effect)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), dano, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255)
		return 0
	elseif pokemon.x.spell == "Flamethrower" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+1
		flamepos.y = flamepos.y-1
		doSendMagicEffect(flamepos, 55)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+3
		flamepos.y = flamepos.y+1
		doSendMagicEffect(flamepos, 58)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+1
		flamepos.y = flamepos.y+3
		doSendMagicEffect(flamepos, 56)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-1
		flamepos.y = flamepos.y+1
		doSendMagicEffect(flamepos, 57)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		end
		return 0
	elseif pokemon.x.spell == "Ice Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
		end
		return 0
	elseif pokemon.x.spell == "Fire Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 6)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 6)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 6)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 6)
		end
		return 0
	elseif pokemon.x.spell == "Bubble Beam" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bbn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bbe, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bbs, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), bbw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		end
		return 0
	elseif pokemon.x.spell == "Psy Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		end
		return 0
	elseif pokemon.x.spell == "Gust" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		end
		return 0
	elseif pokemon.x.spell == "Vine Whip" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		area = vinen
		dano = whipn
		effect = 80
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		area = vinee
		dano = whipe
		effect = 83
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		area = vines
		dano = whips
		effect = 81
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		area = vinew
		dano = whipw
		effect = 82
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], null, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), effect)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), dano, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255)
		return 0
--------3SUPORTE
	elseif pokemon.x.spell == "Harden" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local hardname = getCreatureName(getCreatureSummons(cid)[1])
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
		local oldpos = getThingPos(getCreatureSummons(cid)[1])
			local function efect(params)
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144)
			end
			end
			end
		local function chard(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
		setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1)
		end
		end
		end

		addEvent(efect, 100, {cid = cid, hardname = hardname})
		addEvent(efect, 1600, {cid = cid, hardname = hardname})
		addEvent(efect, 3100, {cid = cid, hardname = hardname})
		addEvent(efect, 4600, {cid = cid, hardname = hardname})
		addEvent(efect, 6100, {cid = cid, hardname = hardname})
		addEvent(efect, 7600, {cid = cid, hardname = hardname})
		addEvent(efect, 9100, {cid = cid, hardname = hardname})
		addEvent(efect, 10600, {cid = cid, hardname = hardname})
		addEvent(chard, 11000, {cid = cid})
	return 0
---------4NORMAL
	elseif pokemon.x.spell == "" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confd(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 230)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confd, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
	return 0
	elseif pokemon.x.spell == "Doubleslap" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 600, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Rock Throw" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 11)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
	elseif pokemon.x.spell == "Shadow Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		return 0
	elseif pokemon.x.spell == "Slamp" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
	elseif pokemon.x.spell == "Iron Tail" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 160)
		return 0
	elseif pokemon.x.spell == "Mega Kick" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 160)
		return 0
	elseif pokemon.x.spell == "Quick Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
 	elseif pokemon.x.spell == "Slash" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 160)
		return 0
	elseif pokemon.x.spell == "Headbutt" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
	elseif pokemon.x.spell == "Drill Peck" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], FLYDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		end
		end
		end
		end
		addEvent(hit, 480, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 880, {cid = cid, hitalvo = hitalvo})
		return 0
	elseif pokemon.x.spell == "Confusion" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		return 0
	elseif pokemon.x.spell == "Ice Shards" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), is, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 52)
		return 0
---------5DISTANCE
	elseif pokemon.x.spell == "Horn Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local mudalvo = getCreatureTarget(cid)
	local function ver(params)
	if isCreature(params.mudalvo) then
	if getPlayerStorageValue(params.mudalvo, 3) >= 1 then
	setPlayerStorageValue(params.mudalvo, 3, -1)
	end
	end
	end
		addEvent(ver, 4500, {mudalvo = mudalvo})
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 15)
		return 0
	elseif pokemon.x.spell == "Sing" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local mudalvo = getCreatureTarget(cid)
	local function ver(params)
	if isCreature(params.mudalvo) then
	if getPlayerStorageValue(params.mudalvo, 3) >= 1 then
	setPlayerStorageValue(params.mudalvo, 3, -1)
	doChangeSpeed(mudalvo, -(getCreatureSpeed(mudalvo)/3))
	doSendMagicEffect(getThingPos(mudalvo), 31)
	end
	end
    end
	local function voltar(params)
		if isCreature(params.mudalvo) then
		doChangeSpeed(params.mudalvo, -getCreatureSpeed(params.mudalvo))
		doChangeSpeed(params.mudalvo, getCreatureBaseSpeed(params.mudalvo))
	end
	end
		addEvent(ver, 5000, {mudalvo = mudalvo})
		addEvent(voltar, 10000, {mudalvo = mudalvo})
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 3)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 19)
		return 0
	elseif pokemon.x.spell == "Thunder Shock" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 40)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		return 0
	elseif pokemon.x.spell == "Flamethrower" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+1
		flamepos.y = flamepos.y-1
		doSendMagicEffect(flamepos, 55)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), flamen, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+3
		flamepos.y = flamepos.y+1
		doSendMagicEffect(flamepos, 58)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), flamee, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+1
		flamepos.y = flamepos.y+3
		doSendMagicEffect(flamepos, 56)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), flames, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-1
		flamepos.y = flamepos.y+1
		doSendMagicEffect(flamepos, 57)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), flamew, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		end
		return 0
	elseif pokemon.x.spell == "Thunderbolt" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 40)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 225)
		return 0
	elseif pokemon.x.spell == "Bubbles" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 25)
			else
			end
			end
		addEvent(throw, 0, {cid = cid})
		addEvent(damage, 0, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Poison Sting" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		return 0
 	elseif pokemon.x.spell == "Karate Chop" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 42)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112)
		return 0
	elseif pokemon.x.spell == "Poison Sting" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		return 0
elseif pokemon.x.spell == "EggBomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 12)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		return 0
elseif pokemon.x.spell == "Egg Fire Bomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 12)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		return 0
	elseif pokemon.x.spell == "Ember" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 3)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 15)
		return 0
	elseif pokemon.x.spell == "Vine Whip" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		area = vinen
		dano = whipn
		effect = 80
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		area = vinee
		dano = whipe
		effect = 83
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		area = vines
		dano = whips
		effect = 81
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		area = vinew
		dano = whipw
		effect = 82
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], null, getThingPos(getCreatureSummons(cid)[1]), area, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), effect)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), dano, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255)
		return 0
-------6EFEITOS
	elseif pokemon.x.spell == "Super Sonic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confd(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 31)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confd, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
		return 0
		
----------------------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------------------
-------------------------------------------------------------ADICIONADAS-----------------------------------------------------------------------
	elseif pokemon.x.spell == "Bone Club" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 7)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 117)
		return 0
      elseif pokemon.x.spell == "Whirlwind" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.br, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, br = whirl52})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, br = whirl52})
		end
			        return 0
	elseif pokemon.x.spell == "Thundershock" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 40)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		return 0
	elseif pokemon.x.spell == "Guitar Paralizy" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local mudalvo = getCreatureTarget(cid)
	local function ver(params)
	if isCreature(params.mudalvo) then
	if getPlayerStorageValue(params.mudalvo, 3) >= 1 then
	setPlayerStorageValue(params.mudalvo, 3, -1)
	end
	end
	end

		local function muds(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		doSendMagicEffect(getThingPos(params.alvo), 233)
		end
		end
		end
		addEvent(muds, 500, {alvo = mudalvo})
		addEvent(muds, 1000, {alvo = mudalvo})
		addEvent(muds, 1500, {alvo = mudalvo})
		addEvent(muds, 2000, {alvo = mudalvo})
		addEvent(muds, 2500, {alvo = mudalvo})
		addEvent(muds, 3000, {alvo = mudalvo})
		addEvent(muds, 3500, {alvo = mudalvo})
		addEvent(muds, 4000, {alvo = mudalvo})
		addEvent(ver, 4100, {mudalvo = mudalvo})
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 9)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 233)
		return 0
	        elseif pokemon.x.spell == "Tri-attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 224)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], ELECTRICDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		end
		end
		end
		end

		local function hitdois(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
doAreaCombatHealth(getCreatureSummons(params.cid)[1], FIREDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		end
		end
		end
		end
local function hitdois(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], ICEDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 227)
		end
		end
		end
		end
		addEvent(hit, 480, {cid = cid, hitalvo = hitalvo})
		addEvent(hitdois, 1050, {cid = cid, hitalvo = hitalvo})
		return 0
	elseif pokemon.x.spell == "Psy Pulse" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)	
		return 0
	elseif pokemon.x.spell == "Thunder Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		end
		return 0
	elseif pokemon.x.spell == "Leech Seed" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 5)
		local alvo = getCreatureTarget(cid)
		local leecher = getCreatureSummons(cid)[1]
		local function suck(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(params.alvo) then
		if getCreatureSummons(cid)[1] == leecher then
		doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 14)
		local life = getCreatureHealth(alvo)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(params.alvo), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 45)
		local newlife = life - getCreatureHealth(alvo)
		if newlife >= 1 then
		doCreatureAddHealth(getCreatureSummons(params.cid)[1], newlife)
		doSendAnimatedText(getThingPos(getCreatureSummons(params.cid)[1]), "+"..newlife.."", 35)
		end
		end
		end
		end
		end
		addEvent(suck, 2000, {cid = cid, alvo = alvo})
		addEvent(suck, 4000, {cid = cid, alvo = alvo})
		addEvent(suck, 6000, {cid = cid, alvo = alvo})
		addEvent(suck, 8000, {cid = cid, alvo = alvo})
		addEvent(suck, 10000, {cid = cid, alvo = alvo})
		return 0
	elseif pokemon.x.spell == "Sludge" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 6)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		return 0
	elseif pokemon.x.spell == "Poison Sting" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		return 0
	elseif pokemon.x.spell == "Bug Bite" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
	elseif pokemon.x.spell == "Pin Missile" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 13)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
	elseif pokemon.x.spell == "Rock Slide" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local posalvo = getThingPos(getCreatureTarget(cid))
		local boltalvo = getCreatureTarget(cid)
		posalvo.x = posalvo.x-2
		posalvo.y = posalvo.y-6
		doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 11)
		local function bolt(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(cid)) then
		if getCreatureTarget(params.cid) == params.boltalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 44)
		end
		end
		end
		end
		addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo})
	return 0
	elseif pokemon.x.spell == "Fury Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local namezito = getCreatureName(getCreatureSummons(cid)[1])
		local namezin = getCreatureName(getCreatureTarget(cid))
		local function pee(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureName(getCreatureSummons(params.cid)[1]) == namezito then
		if getCreatureName(getCreatureTarget(params.cid)) == namezin then
		doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 15)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(params.cid)*(num3))), -((num2)+(getPlayerLevel(params.cid)*(num3))), 3)
		end
		end
		end
		end
		end
		local delay = 200
		randnee = math.random(1,100)
		if randnee >= 1 and randnee <= 37 then
		a = 2
		elseif randnee >= 38 and randnee <= 74 then
		a = 3
		elseif randnee >= 75 and randnee <= 88 then
		a = 4
		else
		a = 5
		end
		local times = a
		for i = 1,a do
		addEvent(pee, delay, {cid = cid})
		delay = delay + 600
		end
		local function msg(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doSendAnimatedText(getThingPos(getCreatureSummons(params.cid)[1]), ""..times.." HITS", 35)
		end
		end
		addEvent(msg, 580*a, {cid = cid})
		return 0
	end
return 0
end
	

 

Erroo

[13/07/2017 17:11:49] [Error - Npc interface] 
[13/07/2017 17:11:49] data/npc/scripts/heal.lua:onCreatureSay
[13/07/2017 17:11:49] Description: 
[13/07/2017 17:11:49] data/npc/scripts/heal.lua:125: bad argument #1 to 'sub' (number expected, got no value)
[13/07/2017 17:11:49] stack traceback:
[13/07/2017 17:11:49] 	[C]: in function 'sub'
[13/07/2017 17:11:49] 	data/npc/scripts/heal.lua:125: in function <data/npc/scripts/heal.lua:81>
Spoiler

local focus = 0

local talk_start = 0

local target = 0

local following = false

local attacking = false

local talkState = {}
local states = {'1', '2', '3', '4', '5', '6'}
local store = {1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,  1067, 1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151}
local unlock = {}
local pokeballs = {'2222', '2224'}
local ultraballs = {'2220', '2227'} 
local greatballs = {'2651', '2657'}
local superballs = {'2653', '2658'}
local saffariballs = {'2655', '2659'}
local darkballs = {'11618', '11619'}
local loveballs = {'11621', '11622'}
local goldenballs = {'11624', '11625'}
local frozenballs = {'11627', '11628'}


function onThingMove(creature, thing, oldpos, oldstackpos)

end

function onCreatureAppear(creature)

end

function onCreatureDisappear(cid, pos)
    if focus == cid then

selfSay('Good bye sir!')

focus = 0

talk_start = 0

    end

end

function onCreatureTurn(creature)

end

function msgcontains(txt, str)

return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))

end

function onCreatureSay(cid, type, msg)
local msg = string.lower(msg)
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if((msgcontains(msg, 'hi') or msgcontains(msg, 'heal') or msgcontains(msg, 'help')) and (getDistanceToCreature(cid) <= 3)) then
     if exhaustion.get(cid, 9211) then
    selfSay('Please wait a few moment before asking me to heal your pokemons again!')
    return true
    end
    exhaustion.set(cid, 9211, 5)
    doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))
    doSendMagicEffect(getThingPos(cid), 132)
    if isInArray(pokeballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2222)
    end
    if isInArray(ultraballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2220)
    end
    if isInArray(greatballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2651)
    end
    if isInArray(superballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2653)
    end
    if isInArray(saffariballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2655)
    end
    if isInArray(darkballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11618)
    end
    if isInArray(loveballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11621)
    end
    if isInArray(goldenballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11624)
    end
    if isInArray(frozenballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11627)
    end
        local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
            if #getCreatureSummons(cid) >= 1 then
            local jui = getCreatureSummons(cid)[1]
            doCreatureAddHealth(jui, getCreatureMaxHealth(jui)-getCreatureHealth(jui))
            doSendMagicEffect(getThingPos(jui), 12)
            end
            local items = getItemsInContainerById(bp.uid, 2224)
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2222)
            end
local items = getItemsInContainerById(bp.uid, 2222)
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2222)
            end
            local items = getItemsInContainerById(bp.uid, 2227) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2220)
            end
            local items = getItemsInContainerById(bp.uid, 2657) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2651)
            end
            local items = getItemsInContainerById(bp.uid, 2658) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2653)
            end
            local items = getItemsInContainerById(bp.uid, 2659) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2655)
            end
            local items = getItemsInContainerById(bp.uid, 11619) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11618)
            end
            local items = getItemsInContainerById(bp.uid, 11618) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11618)
            end
            local items = getItemsInContainerById(bp.uid, 11623) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11621)
            end
            local items = getItemsInContainerById(bp.uid, 11626) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11624)
            end
            local items = getItemsInContainerById(bp.uid, 11629) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11627)
            end
            local items = getItemsInContainerById(bp.uid, 2220) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2651) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2653) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2655) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11618) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11621) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11624) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11627) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
    selfSay('There you go! You and your pokemons are healthy again.')
end
end
 
function onThink()

if focus ~= 0 then
a, b, c = selfGetPosition()
if c ~= getThingPos(focus).z then
focus = 0
end
end

if focus ~= 0 then
if getDistanceToCreature(focus) > 3 then
focus = 0
end
end

return true
end

 

Editado por ZikaLord (veja o histórico de edições)
O rei de seu proprio destino é aquele que luta pela gloria do amanhã!
Discord : ZoR#9373


 

Link para o post
Compartilhar em outros sites
4 horas atrás, Billihard disse:

Poste esses scripts:

 

data/talkactions/scripts/move3.lua

 

e

 

data/npc/scripts/heal.lua

Qual o seu tfs?

 

0.3.6

ja estao ai o script

 

 

O rei de seu proprio destino é aquele que luta pela gloria do amanhã!
Discord : ZoR#9373


 

Link para o post
Compartilhar em outros sites

em data/talkactions/scripts/move3.lua procure por

function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end

e substitua por

function onSay(cid) if getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end

 Vou análisar o segundo erro. Caso não tenha sido corrigido o primeiro, avise.

Link para o post
Compartilhar em outros sites
3 horas atrás, Billihard disse:

em data/talkactions/scripts/move3.lua procure por


function onSay(cid) if #getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end

e substitua por


function onSay(cid) if getCreatureSummons(cid) == 0 then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.") return 0 end

 Vou análisar o segundo erro. Caso não tenha sido corrigido o primeiro, avise.

[15/07/2017 14:32:45] [Error - TalkAction Interface] 
[15/07/2017 14:32:45] data/talkactions/scripts/move7.lua:onSay
[15/07/2017 14:32:45] Description: 
[15/07/2017 14:32:45] (luaDoCombatAreaCondition) Condition not found

[15/07/2017 14:32:45] [Error - TalkAction Interface] 
[15/07/2017 14:32:45] data/talkactions/scripts/move8.lua:onSay
[15/07/2017 14:32:45] Description: 
[15/07/2017 14:32:45] (luaGetCreatureName) Creature not found

 

Move7

Spoiler

-- Boost sistem --
boostrate = 1

local sleep = createConditionObject(CONDITION_PARALYZE)
setConditionParam(sleep, CONDITION_PARAM_TICKS, 5*1000)
setConditionFormula(sleep, -1.7, 0, -1.8, 0)
function Sleep(insleep)
doAddCondition(insleep , sleep)
p = getCreaturePosition(insleep)
doSendAnimatedText(p, "SLEEP", 154)
for i = 1, 5 do
        if i == 1 then
                doSendMagicEffect(p, 32)
        else
                addEvent(doSendMagicEffect, i * 1000, p, 32)
        end
end
        return true
end

------SLEEP POWNDER
local sleepcondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(sleepcondition, CONDITION_PARAM_TICKS, 10000)  -- 5 segundos
setConditionParam(sleepcondition, CONDITION_PARAM_SPEED, -5000)  -- paralizado
setConditionFormula(sleepcondition, -0.9, 0, -0.9, 0)

local tsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
}

local tss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local tse = createCombatArea{
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
}

local tsw = createCombatArea{
{0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 1, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 1, 0},
}

local oatharea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 3, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local grassarea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}
}

local hl = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
------------------ADD--------------------
local epi1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local pu1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 2, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{1, 1, 1, 1, 0, 2, 0, 1, 1, 1, 1},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0},
{0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu5 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local wsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
}

local wss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local wse = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 2},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},
}

local wsw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 2, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 1},
}
local bbn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0},
}

local bbs = createCombatArea{
{0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local bbe = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 1, 0, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},
}

local bbw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 0, 1, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 1},
}
local cstomp = createCombatArea{
{0, 0, 1, 0, 0,},
{0, 1, 1, 1, 0,},
{1, 1, 2, 1, 1,},
{0, 1, 1, 1, 0,},
{0, 0, 1, 0, 0,},
}
local confusion = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 2, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
local bomb = createCombatArea{
{0, 1, 0},
{1, 3, 1},
{0, 1, 0},
}
local dh = createCombatArea{
{1, 1, 1},
{1, 2, 1},
{1, 1, 1},
}
local bms = createCombatArea{
{0, 0, 0, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 2, 0, 0},
}

local bmn = createCombatArea{
{0, 0, 2, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 0, 0, 0},
}

local bme = createCombatArea{
{0, 1, 1, 1, 1, 1, 2},
}

local bmw = createCombatArea{
{2, 1, 1, 1, 1, 1, 0},
}
local vinen = createCombatArea{
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
{1, 0, 0}
}
local vines = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 0},
{0, 2, 0}
}
local vinee = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 2},
{0, 0, 0}
}
local vinew = createCombatArea{
{0, 0, 0},
{0, 0, 3},
{0, 2, 0},
{0, 0, 0}
}
local whipn = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{1, 1, 1},
{1, 1, 1}
}
local whips = createCombatArea{
{1, 1, 1},
{1, 1, 1},
{0, 2, 0},
{0, 0, 0}
}
local whipe = createCombatArea{
{1, 1, 0},
{1, 1, 2},
{1, 1, 0},
{0, 0, 0}
}
local whipw = createCombatArea{
{0, 1, 1},
{2, 1, 1},
{0, 1, 1},
{0, 0, 0}
}

local sand1 = createCombatArea{
{0, 0, 0},
{0, 3, 0},
{0, 0, 0},
}

local whirl3 = createCombatArea{
{0, 0, 0},
{1, 3, 1},
{0, 0, 0},
}

local whirl5 = createCombatArea{
{0, 0, 0, 0, 0},
{1, 1, 3, 1, 1},
{0, 0, 0, 0, 0},
}

local whirl32 = createCombatArea{
{0, 0, 0},
{1, 3, 1},
{0, 0, 0},
}

local whirl52 = createCombatArea{
{0, 0, 0, 0, 0},
{1, 1, 3, 1, 1},
{0, 0, 0, 0, 0},
}
----------GREAT LOVE------------
local gl1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local gl2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
---------------------------------------
local wingn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 0, 0}, 
}
local wings = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local winge = createCombatArea{
{0, 1, 0}, 
{0, 0, 2}, 
{0, 0, 0}, 
}
local wingw = createCombatArea{
{0, 0, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingds = createCombatArea{
{1, 1, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingdn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 1, 1}, 
}
local wingde = createCombatArea{
{1, 0, 0}, 
{1, 2, 0}, 
{1, 0, 0}, 
}
local wingdw = createCombatArea{
{0, 0, 1}, 
{0, 2, 1}, 
{0, 0, 1}, 
}

local destruct1 = createCombatArea{
	{0, 0, 1, 0, 0},
	{0, 1, 1, 1, 0},
	{1, 1, 3, 1, 1},
	{0, 1, 1, 1, 0},
	{0, 0, 1, 0, 0}
}

local swaven = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 3, 0, 0},
	{0, 0, 1, 0, 0},
	{0, 0, 1, 0, 0}
}

local swaves = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 1, 2, 0, 0},
	{0, 1, 0, 0, 0},
	{0, 1, 0, 0, 0}
}

local swavee = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 2, 0, 0},
	{1, 1, 1, 0, 0},
	{0, 0, 0, 0, 0}
}

local swavew = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 3, 1, 1},
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0}
}


local eshock = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 1, 1, 1, 0},
	{0, 1, 2, 1, 0},
	{0, 1, 1, 1, 0},
	{0, 0, 0, 0, 0}
}

local destruct2 = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 3, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local destruct3 = createCombatArea{
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{1, 1, 0, 0, 0, 3, 0, 0, 0, 1, 1},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}

local ws1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 1, 0, 1, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local acid = createCombatArea{
{0, 0, 0, 0, 0},
{0, 1, 1, 1, 0},
{0, 1, 3, 1, 0},
{0, 1, 1, 1, 0}
}
-- WATER GUN
local wg1n = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{0, 1, 0},
}
local wg2n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 1, 0},
{0, 1, 0},
{0, 1, 0},
}
local wg3n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 1, 0},
}

local wg1s = createCombatArea{
{0, 1, 0},
{0, 2, 0},
{0, 0, 0},
}
local wg2s = createCombatArea{
{0, 1, 0},
{0, 1, 0},
{0, 1, 0},
{0, 0, 0},
{0, 2, 0},
}
local wg3s = createCombatArea{
{0, 1, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
}

local wg1e = createCombatArea{
{0, 0, 0},
{1, 2, 0},
{0, 0, 0},
}
local wg2e = createCombatArea{
{1, 1, 1, 0, 2},
}
local wg3e = createCombatArea{
{1, 0, 0, 0, 0, 2},
}

local wg1w = createCombatArea{
{0, 0, 0},
{0, 2, 1},
{0, 0, 0},
}
local wg2w = createCombatArea{
{2, 0, 1, 1, 1},
}
local wg3w = createCombatArea{
{2, 0, 0, 0, 0, 1},
}
-- WATER GUN END
local pokeis = {'ivysaur','venusaur','Charmeleon','Charizard','wartortle','Blastoise','Butterfree', 'Beedrill', 'Pidgeot', 'fearow', 'arbok', 'pikachu', 'raichu','Sandslash', 'nidoqueen', 'nidoking', 'clefable', 'Ninetales', 'Wigglytuff', 'golbat', 'Vileplume', 'Parasect', 'Venomoth','persian', 'Primeape', 'arcanine', 'Poliwrath', 'Kadabra', 'Alakazam', 'machoke', 'machamp', 'Victreebel', 'tentacruel', 'Graveler', 'Golem', 'Rapidash','Slowbro', 'Farfetchd', 'Dodrio', 'dewgong', 'Muk', 'Cloyster', 'haunter', 'gengar', 'onix','hypno', 'kingler', 'Electrode', 'Exeggutor', 'Marowak','Hitmonchan', 'Lickitung', 'Rhydon', 'Tangela', 'Kangaskhan', 'Seadra', 'Seaking', 'Starmie', 'MrMime','Scyther', 'Jynx', 'Electabuzz', 'Magmar', 'Pinsir', 'Tauros', 'Gyarados', 'Lapras', 'Ditto', 'Vaporeon', 'Jolteon', 'Flareon','Porygon', 'Omanyte', 'Omastar', 'Kabuto', 'Kabutops', 'Aerodactyl', 'Snorlax', 'Articuno', 'Zapdos', 'Moltres','Dragonair', 'Dragonite', 'Mewtwo', 'Mew','bayleef','meganium','quilava','typhlosion','Croconaw','Feraligatr', 'Noctowl', 'Ledian', 'Ariados', 'Crobat', 'lanturn' , 'Xatu', 'Togetic', 'Flaaffy', 'Ampharos', 'Bellossom', 'azumarill', 'Sudowoodo', 'Politoed', 'jumpluff', 'Aipom', 'Yanma', 'Quagsire', 'Espeon', 'Umbreon', 'Murkrow', 'Slowking', 'Misdreavus', 'unown a', 'unown b', 'unown c', 'unown d', 'unown e', 'unown f', 'unown g', 'unown h', 'unown i', 'unown j', 'unown k', 'unown l', 'unown m', 'unown n', 'unown o', 'unown p', 'unown q', 'unown r', 'unown s', 'unown t', 'unown u', 'unown v', 'unown x', 'unown w', 'unown y', 'unown z',  'Wobbuffet', 'Girafarig', 'Forretress', 'Steelix', 'Granbull', 'Scizor', 'Heracross', 'Sneasel', 'Ursaring', 'Magcargo', 'Piloswine', 'Corsola', 'Octillery', 'Delibird', 'Mantine', 'Skarmory', 'houndoom', 'Kingdra', 'Donphan', 'Porygon2', 'Stantler', 'Hitmontop', 'miltank', 'Blissey', 'Raikou', 'Entei', 'Suicune', 'Pupitar', 'Tyranitar', 'Lugia', 'Ho Oh', 'Celebi', 'Dark Abra', 'Elder Charizard', 'Crystal Onix', 'Elite Hitmonchan', 'Elite Farfetchd', 'Shiny Arcanine', 'Shiny Beedrill', 'Shiny Blastoise', 'Shiny Butterfree', 'Shiny Electabuzz', 'Shiny Electrode', 'Shiny Gengar', 'Shiny Jynx', 'Shiny Kingler', 'Shiny Muk', 'Shiny Parasect', 'Shiny Raichu', 'Shiny Scyther', 'Shiny Seadra', 'Shiny Tentacruel', 'Shiny Venomoth', 'Shiny Venusaur', 'Mini Gyarados', 'Shiny Golbat', 'Red Gyarados', 'Smeargle Tm 3', 'Smeargle Tm 4', 'Smeargle Tm 5', 'Smeargle Tm 6', 'Smeargle Tm 7', 'Shiny Tangela', 'Big Snorlax', 'Shiny Alakazam', 'Shiny Dodrio', 'Shiny Dragonair', 'Shiny Fearow', 'Shiny Flareon', 'Shiny Golem', 'Shiny Hypno', 'Shiny Jolteon', 'Shiny Machamp', 'Shiny Marowak', 'Shiny MrMime', 'Shiny Nidoking', 'Shiny Ninetales', 'Shiny Pidgeot', 'Shiny Pinsir', 'Shiny Rhydon', 'Shiny Tauros', 'Shiny Vaporeon', 'Shiny Vileplume', 'Shiny Magmar'}
local c = {
[24] = {x = {
			pok = ivysaur,
			spell = "Solar Beam",
			minLv = 40,
			ex = 20007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[22] = {x = {
			pok = venusaur,
			spell = "Trepar Wave",
			minLv = 85,
			ex = 30007,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[496] = {x = {
			pok = shinyvenusaur,
			spell = "Trepar Wave",
			minLv = 100,
			ex = 3007,
			base1 = 1080,
			base2 = 1120,
			dista = 5,
			bonus = 30,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[23] = {x = {
			pok = charmeleon,
			spell = "Fire Blast",
			minLv = 40,
			ex = 50007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[67] = {x = {
			pok = charizard,
			spell = "Fire Blast",
			minLv = 85,
			ex = 60007,
			base1 = 585,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[294] = {x = {
			pok = eldercharizard,
			spell = "Fire Blast",
			minLv = 100,
			ex = 6007,
			base1 = 1170,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[6] = {x = {
			nome = wartortle,
			spell = "Water Oath",
			minLv = 40,
			ex = 80007,
			base1 = 340,
			base2 = 360,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[55] = {x = {
			nome = Blastoise,
			spell = "Water Oath",
			minLv = 85,
			ex = 90007,
			base1 = 520,
			base2 = 530,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[495] = {x = {
			nome = shinyBlastoise,
			spell = "Water Oath",
			minLv = 100,
			ex = 9007,
			base1 = 1040,
			base2 = 1060,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[40] = {x = {
			pok = Butterfree,
			spell = "Sand Oath",
			minLv = 30,
			ex = 1200007,
			base1 = 270,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[485] = {x = {
			pok = shinyButterfree,
			spell = "Sand Oath",
			minLv = 60,
			ex = 120007,
			base1 = 540,
			base2 = 600,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[45] = {x = {
			pok = beedrill,
			spell = "Missile Oath",
			minLv = 30,
			ex = 1500007,
			base1 = 270,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[483] = {x = {
			pok = shinybeedrill,
			spell = "Missile Oath",
			minLv = 60,
			ex = 150007,
			base1 = 540,
			base2 = 600,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[80] = {x = {
			pok = pidgeot,
			spell = "Windstorm",
			minLv = 80,
			ex = 1800007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[364] = {x = {
			pok = shinypidgeot,
			spell = "Windstorm",
			minLv = 100,
			ex = 180007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[799] = {x = {
			pok = pidgeot,
			spell = "Windstorm",
			minLv = 80,
			ex = 1800007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[17] = {x = {
			pok = fearow,
			spell = "Windstorm",
			minLv = 50,
			ex = 2200007,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 10,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[353] = {x = {
			pok = shinyfearow,
			spell = "Windstorm",
			minLv = 65,
			ex = 220007,
			base1 = 960,
			base2 = 1000,
			dista = 5,
			bonus = 20,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[39] = {x = {
			pok = arbok,
			spell = "Missile Oath",
			minLv = 35,
			ex = 2400007,
			base1 = 300,
			base2 = 320,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[59] = {x = {
			pok = pikachu,
			spell = "Focus",
			minLv = 40,
			ex = 2500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[50] = {x = {
			pok = raichu,
			spell = "Focus",
			minLv = 85,
			ex = 2600007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[511] = {x = {
			pok = shinyraichu,
			spell = "Focus",
			minLv = 100,
			ex = 260007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 25
		     }
		 },
[115] = {x = {
			pok = sandslash,
			spell = "Sand Oath",
			minLv = 65,
			ex = 2800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[285] = {x = {
			pok = sandslash,
			spell = "Sand Oath",
			minLv = 65,
			ex = 2800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
 [79] = {x = {
			pok = nidoqueen,
			spell = "Earthquake",
			minLv = 65,
 			ex = 3100007,
			base1 = 490,
			base2 = 520,
			dista = 2,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 40
			}
		},
 [35] = {x = {
			pok = nidoking,
			spell = "Earthquake",
			minLv = 65,
 			ex = 3400007,
			base1 = 530,
			base2 = 550,
			dista = 2,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 50
			}
		},
 [362] = {x = {
			pok = shinynidoking,
			spell = "Earthquake",
			minLv = 85,
 			ex = 340007,
			base1 = 1060,
			base2 = 1100,
			dista = 2,
			bonus = 28,
			type = "earth",
target = "no",
			cd = 50
			}
		},
[68] = {x = {
			pok = clefable,
			spell = "Great Love",
			minLv = 65,
			ex = 3600007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		 }
     },
[114] = {x = {
			pok = ninetales,
			spell = "Fire Blast",
			minLv = 65,
			ex = 3800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 10,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[363] = {x = {
			pok = shinyninetales,
			spell = "Fire Blast",
			minLv = 80,
			ex = 380007,
			base1 = 840,
			base2 = 880,
			dista = 5,
			bonus = 20,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[64] = {x = {
			pok = Wigglytuff,
			spell = "Multi Punch",
			minLv = 65,
			ex = 4000007,
			base1 = 345,
			base2 = 365,
			dista = 1,
			bonus = 12,
			type = "fighting",
			cd = 30
		     }
		 },
[122] = {x = {
			pok = golbat,
			spell = "Poisonous Wing",
			minLv = 35,
			ex = 4200007,
			base1 = 250,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 25
		     }
		 },
[334] = {x = {
			pok = shinygolbat,
			spell = "Poisonous Wing",
			minLv = 60,
			ex = 420007,
			base1 = 500,
			base2 = 560,
			dista = 5,
			bonus = 16,
			type = "poison",
target = "no",
			cd = 25
		     }
		 },
[86] = {x = {
			pok = vileplume,
			spell = "Solar Beam",
			minLv = 50,
			ex = 4500007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 10,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[369] = {x = {
			pok = shinyvileplume,
			spell = "Solar Beam",
			minLv = 80,
			ex = 450007,
			base1 = 970,
			base2 = 1010,
			dista = 5,
			bonus = 20,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[95] = {x = {
			pok = Parasect,
			spell = "Poison Oath",
			minLv = 50,
			ex = 4700007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[501] = {x = {
			pok = shinyParasect,
			spell = "Poison Oath",
			minLv = 60,
			ex = 470007,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 20,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[49] = {x = {
			pok = Venomoth,
			spell = "Gastro Acid",
			minLv = 50,
			ex = 4900007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "poison",
			cd = 40
		     }
		 },
[484] = {x = {
			pok = shinyVenomoth,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 490007,
			base1 = 700,
			base2 = 740,
			dista = 5,
			bonus = 20,
			type = "poison",
			cd = 40
		     }
		 },
[3] = {x = {
			pok = Persian,
			spell = "Headbutt",
			minLv = 30,
			ex = 5300007,
			base1 = 270,
			base2 = 290,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 30
		     }
		 },
[103] = {x = {
			pok = Primeape,
			spell = "Punch Area",
			minLv = 50,
			ex = 5700007,
			base1 = 490,
			base2 = 515,
			dista = 5,
			bonus = 10,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[88] = {x = {
			pok = arcanine,
			spell = "Fire Blast",
			minLv = 80,
			ex = 5900007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[493] = {x = {
			pok = shinyarcanine,
			spell = "Fire Blast",
			minLv = 100,
			ex = 590007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[104] = {x = {
			pok = poliwrath,
			spell = "Water Oath",
			minLv = 65,
			ex = 6200007,
			base1 = 425,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[491] = {x = {
			pok = darkabra,
			spell = "Shadow Storm",
			minLv = 120,
			ex = 630007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 52,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[219] = {x = {
			pok = kadabra,
			spell = "Reflect",
			minLv = 45,
			ex = 6400007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 50
		     }
		 },
[218] = {x = {
			pok = alakazam,
			spell = "Reflect",
			minLv = 80,
			ex = 6500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 40
		     }
		 },
[349] = {x = {
			pok = shinyalakazam,
			spell = "Reflect",
			minLv = 100,
			ex = 650007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 30
		     }
		 },
[113] = {x = {
			pok = machoke,
			spell = "Multi Punch",
			minLv = 45,
			ex = 6700007,
			base1 = 325,
			base2 = 350,
			dista = 1,
			bonus = 8,
			type = "fighting",
			cd = 40
		     }
		 },
[121] = {x = {
			pok = machamp,
			spell = "Multi Punch",
			minLv = 80,
			ex = 6800007,
			base1 = 465,
			base2 = 475,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 40
		     }
		 },
[358] = {x = {
			pok = shinymachamp,
			spell = "Multi Punch",
			minLv = 100,
			ex = 680007,
			base1 = 930,
			base2 = 950,
			dista = 1,
			bonus = 30,
			type = "fighting",
			cd = 40
		     }
		 },
[240] = {x = {
			pok = victreebel,
			spell = "Trepar Wave",
			minLv = 50,
			ex = 7100007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[108] = {x = {
			pok = tentacruel,
			spell = "Water Oath",
			minLv = 80,
			ex = 7300007,
			base1 = 420,
			base2 = 450,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[489] = {x = {
			pok = shinytentacruel,
			spell = "Water Oath",
			minLv = 100,
			ex = 730007,
			base1 = 840,
			base2 = 900,
			dista = 5,
			bonus = 26,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[247] = {x = {
			pok = graveler,
			spell = "Falling Rocks",
			minLv = 40,
			ex = 7500007,
			base1 = 440,
			base2 = 450,
			dista = 5,
			bonus = 8,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[116] = {x = {
			pok = golem,
			spell = "Falling Rocks",
			minLv = 70,
			ex = 7600007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[355] = {x = {
			pok = shinygolem,
			spell = "Falling Rocks",
			minLv = 85,
			ex = 760007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[288] = {x = {
			pok = golemroll,
			spell = "Falling Rocks",
			minLv = 70,
			ex = 7600007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[220] = {x = {
			pok = Rapidash,
			spell = "Fire Blast",
			minLv = 50,
			ex = 7800007,
			base1 = 450,
			base2 = 470,
			dista = 5,
			bonus = 11,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[41] = {x = {
			pok = Slowbro,
			spell = "Water Oath",
			minLv = 45,
			ex = 8000007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		},

[57] = {x = {
			pok = Farfetchd,
			spell = "Sticks",
			minLv = 45,
			ex = 8300007,
			base1 = 370,
			base2 = 390,
			dista = 5,
			bonus = 8,
			type = "flying",
			cd = 40
		     }
		 },
[520] = {x = {
			pok = eliteFarfetchd,
			spell = "Sticks",
			minLv = 80,
			ex = 830007,
			base1 = 740,
			base2 = 780,
			dista = 5,
			bonus = 16,
			type = "flying",
			cd = 40
		     }
		 },
[120] = {x = {
			pok = dodrio,
			spell = "Sand Oath",
			minLv = 45,
			ex = 8500007,
			base1 = 280,
			base2 = 310,
			dista = 5,
			bonus = 8,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[351] = {x = {
			pok = shinydodrio,
			spell = "Sand Oath",
			minLv = 65,
			ex = 850007,
			base1 = 560,
			base2 = 620,
			dista = 5,
			bonus = 16,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[110] = {x = {
			pok = dewgong,
			spell = "Blizzard",
			minLv = 65,
			ex = 8700007,
			base1 = 490,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[47] = {x = {
			pok = Muk,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 8900007,
			base1 = 435,
			base2 = 455,
			dista = 5,
			bonus = 12,
			type = "earth",
			cd = 40
		     }
		 },
[488] = {x = {
			pok = shinyMuk,
			spell = "Gastro Acid",
			minLv = 100,
			ex = 890007,
			base1 = 870,
			base2 = 910,
			dista = 5,
			bonus = 24,
			type = "earth",
			cd = 40
		     }
		 },
[72] = {x = {
			pok = Cloyster,
			spell = "Blizzard",
			minLv = 60,
			ex = 9100007,
			base1 = 475,
			base2 = 495,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[65] = {x = {
			pok = haunter,
			spell = "Shadow Storm",
			minLv = 45,
			ex = 9300007,
			base1 = 450,
			base2 = 470,
			dista = 5,
			bonus = 8,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[244] = {x = {
			pok = gengar,
			spell = "Shadow Storm",
			minLv = 80,
			ex = 9400007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[798] = {x = {
			pok = shinygengar,
			spell = "Shadow Storm",
			minLv = 100,
			ex = 940007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 26,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
 [248] = {x = {
			pok = onix,
			spell = "Falling Rocks",
			minLv = 50,
			ex = 9500007,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 11,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[292] = {x = {
			pok = crystalonix,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 950007,
			base1 = 960,
			base2 = 1000,
			dista = 5,
			bonus = 22,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[119] = {x = {
			nome = hypno,
			spell = "Focus",
			minLv = 55,
			ex = 9700007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[356] = {x = {
			nome = shinyhypno,
			spell = "Focus",
			minLv = 80,
			ex = 970007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 25
		     }
		 },
[245] = {x = {
			pok = kingler,
			spell = "Water Oath",
			minLv = 40,
			ex = 9900007,
			base1 = 320,
			base2 = 335,
			dista = 5,
			bonus = 7,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[500] = {x = {
			pok = shinykingler,
			spell = "Water Oath",
			minLv = 60,
			ex = 990007,
			base1 = 640,
			base2 = 670,
			dista = 5,
			bonus = 14,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[125] = {x = {
			pok = electrode,
			spell = "Selfdestruct",
			minLv = 35,
			ex = 1010007,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 80,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[516] = {x = {
			pok = shinyelectrode,
			spell = "Selfdestruct",
			minLv = 60,
			ex = 101007,
			base1 = 12000,
			base2 = 12000,
			dista = 5,
			bonus = 160,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[286] = {x = {
			pok = electroderoll,
			spell = "Selfdestruct",
			minLv = 35,
			ex = 1010007,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 80,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[46] = {x = {
			pok = Exeggutor,
			spell = "Trepar Wave",
			minLv = 80,
			ex = 1030007,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 12,
			type = "grass",
			target = "no",
			cd = 40
		     }
		 },

[197] = {x = {
			pok = Marowak,
			spell = "Bone Quake",
			minLv = 55,
			ex = 1050007,
			base1 = 455,
			base2 = 475,
			dista = 5,
			bonus = 10,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[360] = {x = {
			pok = shinyMarowak,
			spell = "Bone Quake",
			minLv = 65,
			ex = 105007,
			base1 = 910,
			base2 = 950,
			dista = 5,
			bonus = 20,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[38] = {x = {
			pok = Hitmonchan,
			spell = "Punch Area",
			minLv = 60,
			ex = 1070007,
			base1 = 520,
			base2 = 540,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[486] = {x = {
			pok = eliteHitmonchan,
			spell = "Punch Area",
			minLv = 100,
			ex = 107007,
			base1 = 1040,
			base2 = 1080,
			dista = 5,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[11] = {x = {
			pok = Lickitung,
			spell = "Headbutt",
			minLv = 55,
			ex = 1080007,
			base1 = 265,
			base2 = 285,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 25
		     }
		 },
[200] = {x = {
			pok = Rhydon,
			spell = "Falling Rocks",
			minLv = 75,
			ex = 1120007,
			base1 = 175,
			base2 = 180,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[366] = {x = {
			pok = shinyRhydon,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 112007,
			base1 = 350,
			base2 = 360,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[18] = {x = {
			pok = Tangela,
			spell = "Plant Bomb",
			minLv = 55,
			ex = 1140007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "grass",
			cd = 30
		     }
		 },
[370] = {x = {
			pok = shinyTangela,
			spell = "Plant Bomb",
			minLv = 80,
			ex = 114007,
			base1 = 700,
			base2 = 740,
			dista = 5,
			bonus = 20,
			type = "grass",
			cd = 30
		     }
		 },
[198] = {x = {
			pok = Kangaskhan,
			spell = "Earthquake",
			minLv = 80,
			ex = 1150007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[276] = {x = {
			pok = seadra,
			spell = "Water Oath",
			minLv = 45,
			ex = 1170007,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 6,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[515] = {x = {
			pok = shinyseadra,
			spell = "Water Oath",
			minLv = 60,
			ex = 117007,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[272] = {x = {
			pok = Seaking,
			spell = "Water Oath",
			minLv = 35,
			ex = 1190007,
			base1 = 300,
			base2 = 320,
			dista = 5,
			bonus = 7,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[249] = {x = {
			pok = Starmie,
			spell = "Water Oath",
			minLv = 75,
			ex = 1210007,
			base1 = 305,
			base2 = 325,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[246] = {x = {
			pok = MrMime,
			spell = "Reflect",
			minLv = 60,
			ex = 1220007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[361] = {x = {
			pok = shinyMrMime,
			spell = "Reflect",
			minLv = 85,
			ex = 122007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[15] = {x = {
			pok = Scyther,
			spell = "Poison Oath",
			minLv = 80,
			ex = 1230007,
			base1 = 380,
			base2 = 420,
			dista = 5,
			bonus = 13,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[525] = {x = {
			pok = shinyScyther,
			spell = "Poison Oath",
			minLv = 100,
			ex = 123007,
			base1 = 760,
			base2 = 840,
			dista = 5,
			bonus = 26,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[282] = {x = {
			pok = Jynx,
			spell = "Blizzard",
			minLv = 80,
			ex = 1240007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[499] = {x = {
			pok = shinyJynx,
			spell = "Blizzard",
			minLv = 100,
			ex = 124007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[281] = {x = {
			pok = Electabuzz,
			spell = "Electric Storm",
			minLv = 80,
			ex = 1250007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[497] = {x = {
			pok = shinyElectabuzz,
			spell = "Electric Storm",
			minLv = 100,
			ex = 125007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[76] = {x = {
			pok = Magmar,
			spell = "Magma Storm",
			minLv = 80,
			ex = 1260007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[371] = {x = {
			pok = shinyMagmar,
			spell = "Magma Storm",
			minLv = 100,
			ex = 126007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[53] = {x = {
			pok = Pinsir,
			spell = "Poison Oath",
			minLv = 45,
			ex = 1270007,
			base1 = 345,
			base2 = 360,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[365] = {x = {
			pok = shinyPinsir,
			spell = "Poison Oath",
			minLv = 70,
			ex = 127007,
			base1 = 690,
			base2 = 720,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[93] = {x = {
			pok = Tauros,
			spell = "Afro Rest",
			minLv = 45,
			ex = 1280007,
			base1 = 8100,
			base2 = 8100,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[367] = {x = {
			pok = shinyTauros,
			spell = "Afro Rest",
			minLv = 65,
			ex = 128007,
			base1 = 16200,
			base2 = 16200,
			dista = 5,
			bonus = 16,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[117] = {x = {
			pok = Gyarados,
			spell = "Water Oath",
			minLv = 85,
			ex = 1300007,
			base1 = 505,
			base2 = 520,
			dista = 5,
			bonus = 15,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[327] = {x = {
			pok = miniGyarados,
			spell = "Water Oath",
			minLv = 40,
			ex = 1300007,
			base1 = 250,
			base2 = 260,
			dista = 5,
			bonus = 7,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[528] = {x = {
			pok = redGyarados,
			spell = "Water Oath",
			minLv = 100,
			ex = 130007,
			base1 = 1010,
			base2 = 1040,
			dista = 5,
			bonus = 30,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[193] = {x = {
			pok = Lapras,
			spell = "Blizzard",
			minLv = 80,
			ex = 1310007,
			base1 = 520,
			base2 = 540,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[28] = {x = {
			pok = ditto,
			spell = "Transform",
			minLv = 40,
			ex = 1320001,
			base1 = 0,
			base2 = 0,
			dista = 10,
			bonus = 0,
                        target = "yes",
			type = "normal",
			cd = 50
		     }
		 },
[215] = {x = {
			pok = Vaporeon,
			spell = "Water Oath",
			minLv = 55,
			ex = 1340007,
			base1 = 355,
			base2 = 375,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[368] = {x = {
			pok = shinyVaporeon,
			spell = "Water Oath",
			minLv = 80,
			ex = 134007,
			base1 = 710,
			base2 = 750,
			dista = 5,
			bonus = 20,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[195] = {x = {
			pok = Jolteon,
			spell = "Missile Oath",
			minLv = 55,
			ex = 1350007,
			base1 = 355,
			base2 = 375,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[357] = {x = {
			pok = shinyJolteon,
			spell = "Missile Oath",
			minLv = 80,
			ex = 135007,
			base1 = 710,
			base2 = 750,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[14] = {x = {
			pok = Flareon,
			spell = "Fire Blast",
			minLv = 55,
			ex = 1360007,
			base1 = 425,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[354] = {x = {
			pok = shinyFlareon,
			spell = "Fire Blast",
			minLv = 80,
			ex = 136007,
			base1 = 850,
			base2 = 890,
			dista = 5,
			bonus = 20,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[97] = {x = {
			pok = Porygon,
			spell = "Focus",
			minLv = 45,
			ex = 1370007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[92] = {x = {
			pok = Omanyte,
			spell = "Ancient Power",
			minLv = 20,
			ex = 1380007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 6,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[192] = {x = {
			pok = Omastar,
			spell = "Ancient Power",
			minLv = 80,
			ex = 1390007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 13,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[98] = {x = {
			pok = Kabuto,
			spell = "Ancient Power",
			minLv = 20,
			ex = 1400007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 6,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[13] = {x = {
			pok = Kabutops,
			spell = "Ancient Power",
			minLv = 80,
			ex = 1410007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 13,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[10] = {x = {
			pok = Aerodactyl,
			spell = "Ancient Power",
			minLv = 100,
			ex = 1420007,
			base1 = 650,
			base2 = 670,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[51] = {x = {
			pok = Snorlax,
			spell = "Multi Punch",
			minLv = 90,
			ex = 1430007,
			base1 = 490,
			base2 = 510,
			dista = 1,
			bonus = 17,
			type = "fighting",
			cd = 40
		     }
		 },
[348] = {x = {
			pok = bigSnorlax,
			spell = "Multi Punch",
			minLv = 150,
			ex = 143000007,
			base1 = 980,
			base2 = 1020,
			dista = 1,
			bonus = 34,
			type = "fighting",
			cd = 40
		     }
		 },
[258] = {x = {
			pok = restSnorlax,
			spell = "Zzzzz",
			minLv = 90,
			ex = 14300007,
			base1 = 0,
			base2 = 0,
			dista = 1,
			bonus = 0,
			type = "normal",
			cd = 2
		     }
		 },
[283] = {x = {
			pok = Articuno,
			spell = "Blizzard",
			minLv = 250,
			ex = 1440007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[199] = {x = {
			pok = Zapdos,
			spell = "Electric Storm",
			minLv = 250,
			ex = 1450007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[265] = {x = {
			pok = Moltres,
			spell = "Fire Blast",
			minLv = 250,
			ex = 1460007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[61] = {x = {
			pok = Dragonair,
			spell = "Hyper Beam",
			minLv = 60,
			ex = 1480007,
			base1 = 460,
			base2 = 500,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[352] = {x = {
			pok = shinyDragonair,
			spell = "Hyper Beam",
			minLv = 80,
			ex = 148007,
			base1 = 920,
			base2 = 1000,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[210] = {x = {
			pok = Dragonite,
			spell = "Hyper Beam",
			minLv = 100,
			ex = 1490007,
			base1 = 630,
			base2 = 850,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[34] = {x = {
			pok = Mewtwo,
			spell = "Reflect",
			minLv = 700,
			ex = 1500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[9] = {x = {
			pok = Mew,
			spell = "Reflect",
			minLv = 600,
			ex = 1510007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[536] = {x = {
			pok = bayleef,
			spell = "Trepar Wave",
			minLv = 40,
			ex = 1530007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[581] = {x = {
			pok = Meganium,
			spell = "Trepar Wave",
			minLv = 85,
			ex = 1540007,
			base1 = 595,
			base2 = 610,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[597] = {x = {
			pok = quilava,
			spell = "Fire Blast",
			minLv = 40,
			ex = 1560007,
			base1 = 440,
			base2 = 450,
			dista = 5,
			bonus = 8,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[625] = {x = {
			pok = typhlosion,
			spell = "Fire Blast",
			minLv = 85,
			ex = 1570007,
			base1 = 195,
			base2 = 210,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[545] = {x = {
			nome = Croconaw,
			spell = "Water Oath",
			minLv = 40,
			ex = 1590007,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[554] = {x = {
			nome = Feraligatr,
			spell = "Water Oath",
			minLv = 85,
			ex = 1600007,
			base1 = 485,
			base2 = 510,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[586] = {x = {
			pok = noctowl,
			spell = "Echoed Voice",
			minLv = 65,
			ex = 1640007,
			base1 = 340,
			base2 = 360,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[573] = {x = {
			pok = ledian,
			spell = "Poison Oath",
			minLv = 35,
			ex = 1660007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[534] = {x = {
			pok = Ariados,
			spell = "Poison Oath",
			minLv = 35,
			ex = 1680007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 7,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[544] = {x = {
			pok = Crobat,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 1690007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "poison",
			cd = 30
		     }
		 },
[571] = {x = {
			pok = lanturn,
			spell = "Water Oath",
			minLv = 75,
			ex = 1710007,
			base1 = 325,
			base2 = 335,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[622] = {x = {
			pok = Togetic,
			spell = "Great Love",
			minLv = 60,
			ex = 1760007,
			base1 = 500,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[658] = {x = {
			pok = Xatu,
			spell = "Psy Oath",
			minLv = 75,
			ex = 1780007,
			base1 = 400,
			base2 = 420,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 35
		     }
		 },
[555] = {x = {
			pok = Flaaffy,
			spell = "Electric Storm",
			minLv = 40,
			ex = 1800007,
			base1 = 360,
			base2 = 380,
			dista = 5,
			bonus = 8,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[533] = {x = {
			pok = Ampharos,
			spell = "Electric Storm",
			minLv = 85,
			ex = 1810007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[537] = {x = {
			pok = Bellossom,
			spell = "Plant Bomb",
			minLv = 50,
			ex = 1820007,
			base1 = 375,
			base2 = 405,
			dista = 5,
			bonus = 10,
			type = "grass",
			cd = 30
		     }
		 },
[535] = {x = {
			pok = Azumarill,
			spell = "Water Oath",
			minLv = 65,
			ex = 1840007,
			base1 = 315,
			base2 = 335,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[615] = {x = {
			pok = Sudowoodo,
			spell = "Falling Rocks",
			minLv = 80,
			ex = 1850007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[592] = {x = {
			pok = politoed,
			spell = "Water Oath",
			minLv = 65,
			ex = 1860007,
			base1 = 415,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[569] = {x = {
			pok = jumpluff,
			spell = "Leaf Blade",
			minLv = 50,
			ex = 1890007,
			base1 = 210,
			base2 = 240,
			dista = 5,
			bonus = 9,
			type = "grass",
target = "no",
			cd = 35
		     }
		 },
[532] = {x = {
			pok = aipom,
			spell = "Punch Area",
			minLv = 40,
			ex = 1900007,
			base1 = 335,
			base2 = 355,
			dista = 5,
			bonus = 6,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },

[659] = {x = {
			pok = Yanma,
			spell = "Poison Oath",
			minLv = 50,
			ex = 1930007,
			base1 = 280,
			base2 = 320,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[595] = {x = {
			pok = Quaqsire,
			spell = "Water Oath",
			minLv = 65,
			ex = 1950007,
			base1 = 320,
			base2 = 335,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[553] = {x = {
			pok = espeon,
			spell = "Psy Oath",
			minLv = 55,
			ex = 1960007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 35
		     }
		 },
[628] = {x = {
			pok = Umbreon,
			spell = "Dark Storm",
			minLv = 55,
			ex = 1970007,
			base1 = 550,
			base2 = 570,
			dista = 1,
			bonus = 10,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[584] = {x = {
			pok = murkrow,
			spell = "Headbutt",
			minLv = 50,
			ex = 1980007,
			base1 = 310,
			base2 = 320,
			dista = 1,
			bonus = 10,
			type = "normal",
			cd = 20
		     }
		 },
[606] = {x = {
			pok = Slowking,
			spell = "Hydro Cannon",
			minLv = 100,
			ex = 1990007,
			base1 = 480,
			base2 = 510,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 45
		     }
		 },
[583] = {x = {
			pok = misdreavus,
			spell = "Shadow Storm",
			minLv = 80,
			ex = 2000007,
			base1 = 650,
			base2 = 660,
			dista = 5,
			bonus = 17,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[629] = {x = {
			pok = unowna,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2011007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[630] = {x = {
			pok = unownb,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2012007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[631] = {x = {
			pok = unownc,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2013007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[632] = {x = {
			pok = unownd,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2014007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[633] = {x = {
			pok = unowne,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2015007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[634] = {x = {
			pok = unownf,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2016007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[635] = {x = {
			pok = unowng,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2017007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[636] = {x = {
			pok = unownh,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2018007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[637] = {x = {
			pok = unowni,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2019007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[638] = {x = {
			pok = unownj,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20110007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[639] = {x = {
			pok = unownk,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20111007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[640] = {x = {
			pok = unownl,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20112007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[641] = {x = {
			pok = unownm,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20113007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[642] = {x = {
			pok = unownn,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20114007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[643] = {x = {
			pok = unowno,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20115007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[644] = {x = {
			pok = unownp,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20116007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[645] = {x = {
			pok = unownq,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20117007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[646] = {x = {
			pok = unownr,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20118007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[647] = {x = {
			pok = unowns,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20119007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[648] = {x = {
			pok = unownt,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20120007,
			base1 = 50,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[649] = {x = {
			pok = unownu,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20121007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[650] = {x = {
			pok = unownv,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20122007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[651] = {x = {
			pok = unownx,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20123007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[652] = {x = {
			pok = unownw,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20124007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[653] = {x = {
			pok = unowny,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20125007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[654] = {x = {
			pok = unownz,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20126007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[656] = {x = {
			pok = Wobbuffet,
			spell = "Reflect",
			minLv = 80,
			ex = 2020007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[558] = {x = {
			pok = girafarig,
			spell = "Psy Oath",
			minLv = 80,
			ex = 2030007,
			base1 = 385,
			base2 = 400,
			dista = 5,
			bonus = 11,
			type = "psychic",
target = "no",
			cd = 35
		     }
		 },
[556] = {x = {
			pok = forretress,
			spell = "Harden",
			minLv = 65,
			ex = 2050007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
 [724] = {x = {
			pok = Steelix,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 2080007,
			base1 = 580,
			base2 = 610,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
 [560] = {x = {
			pok = granbull,
			spell = "Destroyer Hand",
			minLv = 65,
 			ex = 2100007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "earth",
target = "no",
			cd = 30
			}
		},

[601] = {x = {
			pok = Scizor,
			spell = "Poison Oath",
			minLv = 100,
			ex = 2120007,
			base1 = 540,
			base2 = 570,
			dista = 5,
			bonus = 17,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },

[561] = {x = {
			pok = Heracross,
			spell = "Poison Oath",
			minLv = 80,
			ex = 2140007,
			base1 = 390,
			base2 = 420,
			dista = 5,
			bonus = 11,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[610] = {x = {
			pok = Sneasel,
			spell = "Ice Punch",
			minLv = 55,
			ex = 2150007,
			base1 = 275,
			base2 = 290,
			dista = 1,
			bonus = 10,
			type = "ice",
			cd = 25
		     }
		 },
[655] = {x = {
			pok = Ursaring,
			spell = "Destroyer Hand",
			minLv = 90,
			ex = 2170007,
			base1 = 440,
			base2 = 490,
			dista = 1,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },

[577] = {x = {
			pok = magcargo,
			spell = "Magma Storm",
			minLv = 75,
			ex = 2190007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 12,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },

[590] = {x = {
			nome = Piloswine,
			spell = "Blizzard",
			minLv = 80,
			ex = 2210007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 8,
			type = "ice",
target = "no",
			cd = 50

		     }
		 },
[543] = {x = {
			pok = Corsola,
			spell = "Water Oath",
			minLv = 50,
			ex = 2220007,
			base1 = 330,
			base2 = 350,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[587] = {x = {
			pok = octillery,
			spell = "Water Oath",
			minLv = 70,
			ex = 2240007,
			base1 = 385,
			base2 = 425,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[548] = {x = {
			pok = delibird,
			spell = "Windstorm",
			minLv = 50,
			ex = 2250007,
			base1 = 470,
			base2 = 530,
			dista = 5,
			bonus = 10,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[578] = {x = {
			pok = mantine,
			spell = "X-Mantine",
			minLv = 80,
			ex = 2260007,
			base1 = 575,
			base2 = 605,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 45
		     }
		 },
[604] = {x = {
			pok = skarmory,
			spell = "Wing Storm",
			minLv = 85,
			ex = 2270007,
			base1 = 565,
			base2 = 575,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[566] = {x = {
			pok = houndoom,
			spell = "Fire Blast",
			minLv = 80,
			ex = 2290007,
			base1 = 480,
			base2 = 510,
			dista = 5,
			bonus = 12,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[570] = {x = {
			pok = kingdra,
			spell = "Water Oath",
			minLv = 100,
			ex = 2300007,
			base1 = 150,
			base2 = 160,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[549] = {x = {
			pok = Donphan,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2320007,
			base1 = 420,
			base2 = 450,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[664] = {x = {
			pok = Donphan,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2320007,
			base1 = 420,
			base2 = 450,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[593] = {x = {
			pok = Porygon2,
			spell = "Focus",
			minLv = 75,
			ex = 2330007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[613] = {x = {
			pok = Stantler,
			spell = "Destroyer Hand",
			minLv = 55,
			ex = 2340007,
			base1 = 385,
			base2 = 400,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[339] = {x = {
			pok = Smeargle3,
			spell = "Gastro Acid",
			minLv = 40,
			ex = 2350007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "poison",
			cd = 40
		     }
		 },
[340] = {x = {
			pok = Smeargle4,
			spell = "Bullet Seed",
			minLv = 40,
			ex = 2350007,
			base1 = 475,
			base2 = 495,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[342] = {x = {
			pok = Smeargle5,
		spell = "Solar Beam",
			minLv = 40,
			ex = 2350007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[344] = {x = {
			pok = Smeargle6,
			spell = "Multi Punch",
			minLv = 40,
			ex = 2350007,
			base1 = 325,
			base2 = 350,
			dista = 1,
			bonus = 8,
			type = "fighting",
			cd = 40
		     }
		 },
[345] = {x = {
			pok = Smeargle7,
			spell = "Poison Oath",
			minLv = 40,
				ex = 2350007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 7,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[562] = {x = {
			pok = Hitmontop,
			spell = "Multi Punch",
			minLv = 60,
			ex = 2370007,
			base1 = 490,
			base2 = 500,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 30
		     }
		 },
[582] = {x = {
			pok = miltank,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2410007,
			base1 = 415,
			base2 = 430,
			dista = 1,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[675] = {x = {
			pok = miltank,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2410007,
			base1 = 415,
			base2 = 430,
			dista = 1,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[538] = {x = {
			pok = Blissey,
			spell = "Great Love",
			minLv = 100,
			ex = 2420007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[599] = {x = {
			pok = Raikou,
			spell = "Electric Storm",
			minLv = 250,
			ex = 2430007,
			base1 = 50100,
			base2 = 50200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[552] = {x = {
			pok = Entei,
			spell = "Fire Blast",
			minLv = 250,
			ex = 2440007,
			base1 = 35000,
			base2 = 37000,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[616] = {x = {
			pok = Suicune,
			spell = "Blizzard",
			minLv = 250,
			ex = 2450007,
			base1 = 50100,
			base2 = 50200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[594] = {x = {
			pok = pupitar,
			spell = "Epicenter",
			minLv = 60,
			ex = 2470007,
			base1 = 415,
			base2 = 445,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[626] = {x = {
			pok = tyranitar,
			spell = "Epicenter",
			minLv = 100,
			ex = 2480007,
			base1 = 550,
			base2 = 600,
			dista = 5,
			bonus = 17,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[575] = {x = {
			pok = Lugia,
			spell = "Water Oath",
			minLv = 600,
			ex = 2490007,
			base1 = 30800,
			base2 = 30900,
			dista = 5,
			bonus = 50,
			type = "water",
			target = "no",
			cd = 35
		     }
		 },
[563] = {x = {
			pok = HoOh,
			spell = "Fire Blast",
			minLv = 800,
			ex = 2500007,
			base1 = 40000,
			base2 = 41000,
			dista = 5,
			bonus = 50,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[539] = {x = {
			pok = Celebi,
			spell = "Leaf Blade",
			minLv = 600,
			ex = 2510007,
			base1 = 5000,
			base2 = 6000,
			dista = 5,
			bonus = 50,
			type = "grass",
			target = "no",
			cd = 50
		     }
		 },
}

function onSay(cid)
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end
	pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
	if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn\'t recognize this move.")
	return 0
	end
	if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have enough level to  this move.")
	return 0
	end
	if exhaustion.get(cid, pokemon.x.ex) then
		seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1))
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..seconds.." seconds to  this move again.")
		return 0
		end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then
	doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215)
	setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	return true
	end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then
		if math.random(1,100) <= 33 then
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180)
		local levels = getPlayerLevel(cid)
		doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		return true
		end
	end
if pokemon.x.target ~= "no" then
	if not isMonster(getCreatureTarget(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")
	return 0
	end

	if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to  this move.")
	return 0
	end

		if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then
		return 0
		end
end
	if pokemon.x.type == "flying" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 1)
		elementa = FLYDAMAGE
	elseif pokemon.x.type == "ground" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 2)
		elementa = GROUNDDAMAGE
	elseif pokemon.x.type == "electric" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 3)
		elementa = ELECTRICDAMAGE
	elseif pokemon.x.type == "ghost" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 4)
		elementa = GHOSTDAMAGE
	elseif pokemon.x.type == "normal" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 5)
		elementa = NORMALDAMAGE
	elseif pokemon.x.type == "fighting" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 6)
		elementa = FIGHTINGDAMAGE
	elseif pokemon.x.type == "poison" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 7)
		elementa = POISONDAMAGE
	elseif pokemon.x.type == "rock" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 8)
		elementa = ROCKDAMAGE
	elseif pokemon.x.type == "bug" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 9)
		elementa = BUGDAMAGE
	elseif pokemon.x.type == "fire" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 10)
		elementa = FIREDAMAGE
	elseif pokemon.x.type == "water" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 11)
		elementa = WATERDAMAGE
	elseif pokemon.x.type == "grass" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 12)
		elementa = GRASSDAMAGE
	elseif pokemon.x.type == "psychic" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 13)
		elementa = PSYCHICDAMAGE
	elseif pokemon.x.type == "ice" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 14)
		elementa = ICEDAMAGE
	elseif pokemon.x.type == "dragon" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 15)
		elementa = DRAGONDAMAGE
	end
	local element = elementa
	local num1 = (pokemon.x.base1)
	local num2 = (pokemon.x.base2)
	local num3 = (pokemon.x.bonus)




local ball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
local pokename = getItemSpecialDescription(ball.uid)
local boost = pokename:match("\+(%d+)")

if(pokename:find("\+(%d+)"))then 
	num1 = ((pokemon.x.base1)*(boost*(boostrate*2)))
	num2 = ((pokemon.x.base2)*boost)
	num3 = (pokemon.x.bonus)
else
	num1 = (pokemon.x.base1)
	num2 = (pokemon.x.base2)
	num3 = (pokemon.x.bonus)
end


	setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3))))
	if pokemon.x.spell == "Windstorm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 42})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 42})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 42})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 42})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = CONST_ME_POFF})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = CONST_ME_POFF})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = CONST_ME_POFF})
	return 0
	elseif pokemon.x.spell == "Wing Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
		return 0
elseif pokemon.x.spell == "Transform" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd, pokemon.x.base1, pokemon.x.base2, pokemon.x.bonus, pokemon.x.target, pokemon.x.type)
doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(getCreatureTarget(cid)), 130000000)
return 0
----------------------------------------------------------------ADICIONADOS------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------
               
			   elseif pokemon.x.spell == "Ice Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 28)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
		-----------------------------------------------------ADICIONADAS-------------------------------------------------------------------
		-------------------------      -------------------------      -------------------------      -------------------------      -------------------------
                elseif pokemon.x.spell == "Hyper Beam" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 152)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 156)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 151)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 155)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 149)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 153)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 150)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 154)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
 elseif pokemon.x.spell == "Shadow Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 140})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 140})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 140})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 140})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 140})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 140})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 140})
	return 0
	        elseif pokemon.x.spell == "Magma Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 236})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 236})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 236})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 236})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 236})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 236})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 236})
	return 0
	        elseif pokemon.x.spell == "Wing Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 249})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 249})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 249})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 249})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 249})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 249})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 249})
	return 0

	        elseif pokemon.x.spell == "Dark Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 222})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 222})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 222})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 222})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 223})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 223})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 223})
	return 0

	        elseif pokemon.x.spell == "Electric Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 225})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 225})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 225})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 225})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 225})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 225})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 225})
	return 0

elseif pokemon.x.spell == "Zap Cannon" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Aurora Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
	elseif pokemon.x.spell == "Echoed Voice" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		end
		return 0
	elseif pokemon.x.spell == "Dragon Breath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		end
		return 0
	            elseif pokemon.x.spell == "Epicenter" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function ep1(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
	        local function ep2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi2, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
	        local function ep3(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
                addEvent(ep1, 000, {cid = cid, cb = cb})
                addEvent(ep2, 500, {cid = cid, cb = cb})
                addEvent(ep3, 1000, {cid = cid, cb = cb})
	        return 0
	         elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
			    elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	        elseif pokemon.x.spell == "Falling Rocks" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 228})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 228})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 228})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 228})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 228})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 228})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 228})
	return 0

		        elseif pokemon.x.spell == "Mortal Gas" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function gas(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
	        end
	        end
	        local function gas2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
	        end
	        end
                addEvent(gas, 000, {cid = cid, cb = cb})
                addEvent(gas2, 500, {cid = cid, cb = cb})
                addEvent(gas, 1000, {cid = cid, cb = cb})
                addEvent(gas2, 1500, {cid = cid, cb = cb})
                addEvent(gas, 2200, {cid = cid, cb = cb})
                addEvent(gas2, 2700, {cid = cid, cb = cb})
                addEvent(gas, 3200, {cid = cid, cb = cb})
                addEvent(gas2, 3900, {cid = cid, cb = cb})
                addEvent(gas, 4400, {cid = cid, cb = cb})
                addEvent(gas2, 4900, {cid = cid, cb = cb})
	        return 0
elseif pokemon.x.spell == "Super Sonic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confd(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 31)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confd, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
		return 0
		elseif pokemon.x.spell == "Multi Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 350, {cid = cid})
		addEvent(slap, 700, {cid = cid})
		addEvent(slap, 950, {cid = cid})
		return 0
		
	elseif pokemon.x.spell == "Hypnosis" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local alvo = getCreatureTarget(cid)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)
		local function string(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		doSendMagicEffect(getThingPos(params.alvo), 136)
		end
		end
		end
		local function normalstr(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		setPlayerStorageValue(params.alvo, 3, -1)
		end
		end
		end
		addEvent(string, 250, {alvo = alvo})
		addEvent(string, 500, {alvo = alvo})
		addEvent(string, 750, {alvo = alvo})
		addEvent(string, 1000, {alvo = alvo})
		addEvent(string, 1250, {alvo = alvo})
		addEvent(string, 1500, {alvo = alvo})
		addEvent(string, 1750, {alvo = alvo})
		addEvent(string, 2000, {alvo = alvo})
		addEvent(string, 2250, {alvo = alvo})
		addEvent(string, 2500, {alvo = alvo})
		addEvent(string, 2750, {alvo = alvo})
		addEvent(string, 3000, {alvo = alvo})
		addEvent(normalstr, 3050, {alvo = alvo})
		return 0
	elseif pokemon.x.spell == "Tornado" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 42, ar = tor1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 42, ar = tor2, el = element})
		addEvent(tornado, 1000, {cid = cid, ef = 42, ar = tor3, el = element})
		addEvent(tornado, 500, {cid = cid, ef = CONST_ME_POFF, ar = tor1, el = null})
		addEvent(tornado, 1200, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor3, el = null})
	        return 0
		-------------------------      -------------------------      -------------------------      -------------------------
		-------------------------      -------------------------      -------------------------      -------------------------      -------------------------
		-------------------------      -------------------------      -------------------------      -------------------------
	        elseif pokemon.x.spell == "Blizzard" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 175})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 175})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 175})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 175})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 175})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 175})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 175})
	return 0
	        elseif pokemon.x.spell == "Great Love" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 147})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 147})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 147})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 147})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 147})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 147})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 147})
	return 0
		
                elseif pokemon.x.spell == "Harden" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local hardname = getCreatureName(getCreatureSummons(cid)[1])
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
		local oldpos = getThingPos(getCreatureSummons(cid)[1])
			local function efect(params)
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144)
			end
			end
			end
		local function chard(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
		setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1)
		end
		end
		end
		addEvent(efect, 100, {cid = cid, hardname = hardname})
		addEvent(efect, 1600, {cid = cid, hardname = hardname})
		addEvent(efect, 3100, {cid = cid, hardname = hardname})
		addEvent(efect, 4600, {cid = cid, hardname = hardname})
		addEvent(efect, 6100, {cid = cid, hardname = hardname})
		addEvent(efect, 7600, {cid = cid, hardname = hardname})
		addEvent(efect, 9100, {cid = cid, hardname = hardname})
		addEvent(efect, 10600, {cid = cid, hardname = hardname})
		addEvent(chard, 11000, {cid = cid})
	        return 0
                elseif pokemon.x.spell == "Crusher Stomp" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 500, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 1000, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 1500, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 2000, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 2500, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 3000, {cid = cid, el = element, ar = cstomp, ef = 118})
	        return 0
		    elseif pokemon.x.spell == "Plant Bomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 54)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 4)
	        return 0
	elseif pokemon.x.spell == "Fire Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureTarget(cid)), 146)
		local function damage(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		end
		end
		end
		addEvent(damage, 200, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Trepar Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		end
		return 0
	            elseif pokemon.x.spell == "Earthquake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 200, {cid = cid, el = element, ar = gl1, ef = 3})
		addEvent(storm, 0, {cid = cid, el = element, ar = gl1, ef = 127})
		addEvent(storm, 800, {cid = cid, el = element, ar = gl1, ef = 3})
		addEvent(storm, 600, {cid = cid, el = element, ar = gl2, ef = 127})
	        return 0
        elseif pokemon.x.spell == "Bone Quake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 200, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 0, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 800, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 600, {cid = cid, el = element, ar = gl2, ef = 177})
	        return 0
elseif pokemon.x.spell == "Headbutt" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142)
		return 0
	elseif pokemon.x.spell == "Poison Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
        doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		return 0
elseif pokemon.x.spell == "Rage" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], FLYDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		end
		end
		end
		end
		addEvent(hit, 1000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 2000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 3000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 4000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 5000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 6000, {cid = cid, hitalvo = hitalvo})
		return 0
	 elseif pokemon.x.spell == "Poison Powder" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		end
		return 0
	  elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	elseif pokemon.x.spell == "Poisonous Wing" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		end
		        elseif pokemon.x.spell == "Focus" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 1)
		local function quiet(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 132)
		end
		end
		end
		end
		local function desc(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 0)
		end
		end
		end
		end
		for calm = 1, 12 do
		addEvent(quiet, calm*500, {cid = cid})
		end
		addEvent(desc, 12*500, {cid = cid})
	        return 0
	   elseif pokemon.x.spell == "X-Mantine" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function attaque(params)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end

		addEvent(attaque, 0, {cid = cid})
		addEvent(attaque, 500, {cid = cid})
		return 0
			elseif pokemon.x.spell == "Afro Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 132)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 132)
		return 0
	elseif pokemon.x.spell == "Fire Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 61, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 61, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 61, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 61, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 61, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 61, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 63, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 63, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 63, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 63, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 63, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 63, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
elseif pokemon.x.spell == "Ancient Power" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function sandattack(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.wave, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-2, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-3, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-4, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-5, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-2, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-3, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-4, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-5, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-1, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-2, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-3, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-4, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-5, z=posicao.z}, ef = 18, wave = ap2})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+2, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+3, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+4, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+5, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+2, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+3, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+4, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+5, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+1, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+2, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+3, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+4, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+5, z=posicao.z}, ef = 18, wave = ap4})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
	        addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
	        addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
                end
	        return 0
elseif pokemon.x.spell == "Hydro Cannon" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 65, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 65, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 65, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 65, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 65, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 65, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 67, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 67, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 67, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 67, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 67, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 67, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
               elseif pokemon.x.spell == "Solar Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
        elseif pokemon.x.spell == "Fear" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local t = getCreatureTarget(cid)
                setPlayerStorageValue(t, 5, 1)
                local function confused(params)
                if isCreature(params.t) then
                local spdc = getCreatureSpeed(params.t)
                if getCreatureLookDir(params.t) == 0 then
                confs = math.random(1,3)
                elseif getCreatureLookDir(params.t) == 1 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 0
                elseif confurandom >= 67 then
                confs = 2
                else
                confs = 3
                end
                elseif getCreatureLookDir(params.t) == 2 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 3
                elseif confurandom >= 67 then
                confs = 0
                else
                confs = 1
                end
                elseif getCreatureLookDir(params.t) == 3 then
                confs = math.random(0,2)
                end
                doPushCreature(params.t, confs, 1, 0)
                doSendMagicEffect(getThingPos(params.t), 214)
                end
                end
                local function nonc(params)
                if isCreature(params.t) then
                doChangeSpeed(params.t, -getCreatureSpeed(params.t))
                doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
                setPlayerStorageValue(params.t, 5, -1)
                end
                end
                doChangeSpeed(t, -( getCreatureSpeed(t)/3))
                doSendMagicEffect(getThingPos(t), 214)
                for i = 1, math.random(6,7) do
                addEvent(confused, 1000*i, {cid = cid, t = t})
                end
                addEvent(nonc, 7100, {cid - cid, t = t})
                return 0
		
	elseif pokemon.x.spell == "Agility" then
		local pos = getThingPos(getCreatureTarget(cid))
		local pos2 = getThingPos(getCreatureTarget(cid))
		local pos3 = getThingPos(getCreatureSummons(cid)[1])
		pos.x = pos.x + math.random(-1,1)
		pos.y = pos.y + math.random(-1,1)
		if hasSqm(pos)  then
		if getTileThingByPos(pos) and getTileThingByPos(pos).itemid >= 1 and not isInArray({919, 460, 4820, 4821, 4822, 4823, 4824, 4825}, getTileThingByPos(pos).itemid) and isWalkable(pos) then
		pos = getClosestFreeTile(getCreatureTarget(cid), pos)
        doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], pos, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
		else
		local newpos = getClosestFreeTile(getCreatureTarget(cid), pos)
		doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], newpos, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
   		end
		else
		doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], pos3, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
		
	elseif pokemon.x.spell == "Toxic Spikes" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
	    doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 500, {cid = cid})
		addEvent(slap, 1000, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Horn Drill" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
	    doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 300, {cid = cid})
		addEvent(slap, 600, {cid = cid})
		addEvent(slap, 900, {cid = cid})
		addEvent(slap, 1200, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Healera" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
----------------------------------------------------------------ADICIONADOS-----------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------
	elseif pokemon.x.spell == "Sonicboom" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 31)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)	
		return 0	
	 elseif pokemon.x.spell == "Sleep Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, sleepcondition, 255)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 27)
                return 0
	elseif pokemon.x.spell == "Destroyer Hand" then
	        doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	        doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	        exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	        doAreaCombatHealth(getCreatureSummons(cid)[1], GROUNDDAMAGE, getThingPos(getCreatureSummons(cid)[1]), eshock, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
	        local sps = getThingPos(getCreatureSummons(cid)[1])
	        sps.x = sps.x+1
	        sps.y = sps.y+1
	        doSendMagicEffect(sps, 127)
	        return 0
	elseif pokemon.x.spell == "Dream Eater" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 214)
		return 0

	
	elseif pokemon.x.spell == "Selfdestruct" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function death(params)
		if isCreature(params.cid) then
		doCreatureAddHealth(getCreatureSummons(params.cid)[1], -getCreatureHealth(getCreatureSummons(cid)[1]))
		end
		end
		addEvent(death, 250, {cid = cid})
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		addEvent(doAreaCombatHealth, 150, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct2, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.7), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.8), 5)
		addEvent(doAreaCombatHealth, 250, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct3, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.4), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.5), 5)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 33, 1)
	return 0
	elseif pokemon.x.spell == "Reflect" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 135)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 34, 1)
	return 0
	elseif pokemon.x.spell == "Shockwave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function sandattack(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.wave, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-1, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-2, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-3, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-4, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-5, z=posicao.z}, ef = 126, wave = swaven})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+2, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+3, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+4, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+5, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+6, z=posicao.z}, ef = 125, wave = swaves})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		end
	return 0
	elseif pokemon.x.spell == "Leaf Blade" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function gas(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 50)
	        end
	        end
	        local function gas2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 45)
	        end
	        end
                addEvent(gas, 000, {cid = cid, cb = cb})
                addEvent(gas2, 500, {cid = cid, cb = cb})
                addEvent(gas, 1000, {cid = cid, cb = cb})
                addEvent(gas2, 1500, {cid = cid, cb = cb})
                addEvent(gas, 2200, {cid = cid, cb = cb})
                addEvent(gas2, 2700, {cid = cid, cb = cb})
                addEvent(gas, 3200, {cid = cid, cb = cb})
                addEvent(gas2, 3900, {cid = cid, cb = cb})
                addEvent(gas, 4400, {cid = cid, cb = cb})
                addEvent(gas2, 4900, {cid = cid, cb = cb})
	        return 0
	elseif pokemon.x.spell == "Gastro Acid" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	target = getCreatureTarget(cid)
	pos1 = getThingPos(target)
	posa = getThingPos(target)
	pos2 = getThingPos(target)
	pos3 = getThingPos(target)
	posb = getThingPos(target)
	pos1.x = pos1.x-2
	pos2.x = pos2.x+2
	pos1.y = pos1.y-4
	pos2.y = pos2.y-4
	pos3.y = pos3.y-4
	posa.x = posa.x-1
	posb.x = posb.x+1
	doSendDistanceShoot(pos1, posa, 14)
	doSendDistanceShoot(pos3, getThingPos(target), 14)
	doSendDistanceShoot(pos2, posb, 14)
	doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), acid, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 143)
	return 0
	elseif pokemon.x.spell == "Sticks" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	target = getCreatureTarget(cid)
	pos1 = getThingPos(target)
	posa = getThingPos(target)
	pos2 = getThingPos(target)
	pos3 = getThingPos(target)
	posb = getThingPos(target)
	pos1.x = pos1.x-2
	pos2.x = pos2.x+2
	pos1.y = pos1.y-4
	pos2.y = pos2.y-4
	pos3.y = pos3.y-4
	posa.x = posa.x-1
	posb.x = posb.x+1
	doSendDistanceShoot(pos1, posa, 14)
	doSendDistanceShoot(pos3, getThingPos(target), 14)
	doSendDistanceShoot(pos2, posb, 14)
	doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), acid, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 212)
	return 0
	elseif pokemon.x.spell == "Missile Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 13)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Sand Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 23)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Poison Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 14)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Punch Area" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 26)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Psy Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 24)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Water Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 2)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	end
return 0
end
	
	

 

 

Move8

Spoiler

-- Boost sistem --
boostrate = 1

local thunderwavecondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(thunderwavecondition, CONDITION_PARAM_TICKS, 9000)
setConditionFormula(thunderwavecondition, -0.75, -0.75, -0.75, -0.75)

local waba = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 3, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0},
}


local snorlax = {lookType = 258}

local skullb = createCombatArea{
{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0}
}



local twn = createCombatArea{
        {0, 0, 0, 2, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local tws = createCombatArea{
        {0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
        {0, 0, 0, 2, 0, 0, 0},
}
local tww = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 0, 0},
	{2, 1, 0, 1, 0, 1, 0},
	{0, 0, 0, 0, 1, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local twe = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0},
	{0, 1, 0, 1, 0, 1, 2},
	{0, 0, 1, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local ws1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 1, 0, 1, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local thunder = createCombatArea{
{1, 0, 0, 1, 0, 0, 1},
{0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{1, 1, 1, 2, 1, 1, 1},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0},
{1, 0, 0, 1, 0, 0, 1},
}

local destruct1 = createCombatArea{
	{0, 0, 1, 0, 0},
	{0, 1, 1, 1, 0},
	{1, 1, 3, 1, 1},
	{0, 1, 1, 1, 0},
	{0, 0, 1, 0, 0}
}

local destruct2 = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 3, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local destruct3 = createCombatArea{
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{1, 1, 0, 0, 0, 3, 0, 0, 0, 1, 1},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}

local grassarea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}
}

local confusion = createCombatArea{
{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0},
}

local stomp = createCombatArea{
        {1, 0, 1, 0, 1},
	{0, 1, 1, 1, 0},
	{1, 1, 2, 1, 1},
	{0, 1, 1, 1, 0},
	{1, 0, 1, 0, 1}
}

-- WATER GUN
local bomb = createCombatArea{
{0, 1, 0}, 
{1, 3, 1}, 
{0, 1, 0}, 
}

local wg1n = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{0, 1, 0}, 
}
local wg2n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 1, 0}, 
{0, 1, 0}, 
{0, 1, 0}, 
}
local wg3n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 1, 0}, 
}

local wg1s = createCombatArea{
{0, 1, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wg2s = createCombatArea{
{0, 1, 0},
{0, 1, 0},
{0, 1, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}
local wg3s = createCombatArea{
{0, 1, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}

local wg1e = createCombatArea{
{0, 0, 0}, 
{1, 2, 0}, 
{0, 0, 0}, 
}
local wg2e = createCombatArea{ 
{1, 1, 1, 0, 2}, 
}
local wg3e = createCombatArea{ 
{1, 0, 0, 0, 0, 2}, 
}

local wg1w = createCombatArea{
{0, 0, 0}, 
{0, 2, 1}, 
{0, 0, 0}, 
}
local wg2w = createCombatArea{ 
{2, 0, 1, 1, 1}, 
}
local wg3w = createCombatArea{ 
{2, 0, 0, 0, 0, 1}, 
}
-- WATER GUN END

local pump1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 3, 1, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}
local pump2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}

local tor1 = createCombatArea{
{0, 1, 0}, 
{1, 2, 1}, 
{0, 1, 0}, 
}
local tor2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 2, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local tor3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local earthquake = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local sand1 = createCombatArea{
{0, 0, 0}, 
{0, 3, 0}, 
{0, 0, 0}, 
}

local whirl3 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl5 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

local whirl32 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl52 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

--WING ATTACK
local wingn = createCombatArea{
{0, 0, 0}, 
{1, 2, 0}, 
{0, 0, 0}, 
}
local wings = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local winge = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingw = createCombatArea{
{0, 2, 3}, 
{0, 2, 2}, 
{0, 0, 0}, 
}
local wingds = createCombatArea{
{1, 1, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingdn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 1, 1}, 
}
local wingde = createCombatArea{
{1, 0, 0}, 
{1, 2, 0}, 
{1, 0, 0}, 
}
local wingdw = createCombatArea{
{0, 0, 1}, 
{0, 2, 1}, 
{0, 0, 1}, 
}

local tsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},  
{0, 1, 1, 1, 1, 1, 0},
}
local tss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},  
}
local tse = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 2},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},  
}
local tsw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 2, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 1},  
}

local pokeis = {'venusaur','Charizard','Blastoise', 'Pidgeot', 'raichu', 'nidoqueen', 'nidoking', 'clefable', 'Wigglytuff', 'arcanine', 'Poliwrath', 'Alakazam', 'machamp', 'tentacruel', 'Golem', 'Rapidash', 'dewgong', 'gengar', 'Hitmonchan', 'Rhydon', 'Kangaskhan', 'MrMime','Scyther', 'Jynx', 'Electabuzz', 'Magmar', 'Gyarados', 'Lapras', 'Ditto', 'Omastar', 'Kabutops', 'Aerodactyl', 'Snorlax', 'Articuno', 'Zapdos', 'Moltres','Dragonair', 'Dragonite', 'Mewtwo', 'Mew','meganium','typhlosion','Feraligatr', 'Noctowl', 'Crobat', 'lanturn', 'Togetic', 'Xatu', 'Ampharos', 'Sudowoodo', 'Slowking', 'Misdreavus', 'unown a', 'unown b', 'unown c', 'unown d', 'unown e', 'unown f', 'unown g', 'unown h', 'unown i', 'unown j', 'unown k', 'unown l', 'unown m', 'unown n', 'unown o', 'unown p', 'unown q', 'unown r', 'unown s', 'unown t', 'unown u', 'unown v', 'unown x', 'unown w', 'unown y', 'unown z',  'Wobbuffet', 'Girafarig', 'Steelix', 'Granbull', 'Scizor', 'Heracross', 'Sneasel', 'Ursaring', 'Magcargo', 'Piloswine', 'Mantine', 'Skarmory', 'houndoom', 'Kingdra', 'Porygon2', 'Stantler', 'Hitmontop', 'miltank', 'Blissey', 'Raikou', 'Entei', 'Suicune', 'Tyranitar', 'Lugia', 'Ho Oh', 'Celebi', 'Dark Abra', 'Elder Charizard', 'Elite Hitmonchan', 'Shiny Arcanine', 'Shiny Blastoise', 'Shiny Electabuzz', 'Shiny Gengar', 'Shiny Jynx', 'Shiny Raichu', 'Shiny Scyther', 'Shiny Tentacruel', 'Shiny Venusaur', 'Mini Gyarados', 'Red Gyarados', 'Smeargle Tm 5', 'Smeargle Tm 6', 'Big Snorlax', 'Shiny Alakazam', 'Shiny Dragonair', 'Shiny Golem', 'Shiny Machamp', 'Shiny MrMime', 'Shiny Nidoking', 'Shiny Pidgeot', 'Shiny Rhydon', 'Shiny Magmar'}
local c = {

[22] = {x = {
			pok = venusaur,
			spell = "Solar Beam",
			minLv = 85,
			ex = 30008,
			base1 = 685,
			base2 = 700,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[496] = {x = {
			pok = shinyvenusaur,
			spell = "Solar Beam",
			minLv = 100,
			ex = 3008,
			base1 = 1370,
			base2 = 1400,
			dista = 5,
			bonus = 30,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[67] = {x = {
			pok = charizard,
			spell = "Magma Storm",
			minLv = 85,
			ex = 60008,
			base1 = 685,
			base2 = 700,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[294] = {x = {
			pok = eldercharizard,
			spell = "Magma Storm",
			minLv = 100,
			ex = 6008,
			base1 = 1370,
			base2 = 1400,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[55] = {x = {
			nome = Blastoise,
			spell = "Water Bash",
			minLv = 85,
			ex = 90008,
			base1 = 525,
			base2 = 540,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[495] = {x = {
			nome = shinyBlastoise,
			spell = "Water Bash",
			minLv = 100,
			ex = 9008,
			base1 = 1050,
			base2 = 1080,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[80] = {x = {
			pok = pidgeot,
			spell = "Wind Oath",
			minLv = 80,
			ex = 1800008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[364] = {x = {
			pok = shinypidgeot,
			spell = "Wind Oath",
			minLv = 100,
			ex = 180008,
			base1 = 940,
			base2 = 1000,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[799] = {x = {
			pok = pidgeot,
			spell = "Wind Oath",
			minLv = 80,
			ex = 1800008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[50] = {x = {
			pok = raichu,
			spell = "Thunder Oath",
			minLv = 85,
			ex = 2600008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 14,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[511] = {x = {
			pok = shinyraichu,
			spell = "Thunder Oath",
			minLv = 100,
			ex = 260008,
			base1 = 940,
			base2 = 1000,
			dista = 5,
			bonus = 28,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
 [79] = {x = {
			pok = nidoqueen,
			spell = "Poison Oath",
			minLv = 65,
 			ex = 3100008,
			base1 = 440,
			base2 = 470,
			dista = 5,
			bonus = 14,
			type = "poison",
target = "no",
			cd = 35
			}
		},
 [35] = {x = {
			pok = nidoking,
			spell = "Horn Oath",
			minLv = 65,
 			ex = 3400008,
			base1 = 440,
			base2 = 470,
			dista = 5,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 35
			}
		},
 [362] = {x = {
			pok = shinynidoking,
			spell = "Horn Oath",
			minLv = 85,
 			ex = 340008,
			base1 = 880,
			base2 = 940,
			dista = 5,
			bonus = 28,
			type = "earth",
target = "no",
			cd = 35
			}
		},
[68] = {x = {
			pok = clefable,
			spell = "Harden",
			minLv = 65,
			ex = 3600008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		 }
     },
[64] = {x = {
			pok = Wigglytuff,
			spell = "Melody",
			minLv = 65,
			ex = 4000008,
			base1 = 60,
			base2 = 70,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[88] = {x = {
			pok = arcanine,
			spell = "Wardog",
			minLv = 80,
			ex = 5900008,
			base1 = 300,
			base2 = 320,
			dista = 1,
			bonus = 15,
			type = "normal",
			cd = 30
		     }
		 },
[493] = {x = {
			pok = shinyarcanine,
			spell = "Wardog",
			minLv = 100,
			ex = 590008,
			base1 = 600,
			base2 = 640,
			dista = 1,
			bonus = 30,
			type = "normal",
			cd = 30
		     }
		 },
[104] = {x = {
			pok = poliwrath,
			spell = "Harden",
			minLv = 65,
			ex = 6200008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[491] = {x = {
			pok = darkabra,
			spell = "Mind Blast",
			minLv = 120,
			ex = 630008,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[219] = {x = {
			pok = kadabra,
			spell = "Restore",
			minLv = 45,
			ex = 6400008,
			base1 = 3300,
			base2 = 3300,
			dista = 5,
			bonus = 60,
			type = "psychic",
			target = "no",
			cd = 60
		     }
		 },
[218] = {x = {
			pok = alakazam,
			spell = "Mind Blast",
			minLv = 80,
			ex = 6500008,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 13,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[349] = {x = {
			pok = Shinyalakazam,
			spell = "Mind Blast",
			minLv = 100,
			ex = 650008,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[121] = {x = {
			pok = machamp,
			spell = "Punch Bash",
			minLv = 80,
			ex = 6800008,
			base1 = 465,
			base2 = 525,
			dista = 1,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 30
		     }
		 },
[358] = {x = {
			pok = shinymachamp,
			spell = "Punch Bash",
			minLv = 100,
			ex = 680008,
			base1 = 930,
			base2 = 1050,
			dista = 1,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 30
		     }
		 },
[108] = {x = {
			pok = tentacruel,
			spell = "Poison Oath",
			minLv = 80,
			ex = 7300008,
			base1 = 400,
			base2 = 420,
			dista = 5,
			bonus = 13,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[489] = {x = {
			pok = shinytentacruel,
			spell = "Poison Oath",
			minLv = 100,
			ex = 730008,
			base1 = 800,
			base2 = 840,
			dista = 5,
			bonus = 26,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[116] = {x = {
			pok = golem,
			spell = "Selfdestruct",
			minLv = 70,
			ex = 7600008,
			base1 = 8000,
			base2 = 8000,
			dista = 5,
			bonus = 170,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[355] = {x = {
			pok = shinygolem,
			spell = "Selfdestruct",
			minLv = 85,
			ex = 760008,
			base1 = 24000,
			base2 = 24000,
			dista = 5,
			bonus = 340,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[288] = {x = {
			pok = golemroll,
			spell = "Selfdestruct",
			minLv = 70,
			ex = 7600008,
		base1 = 8000,
			base2 = 8000,
			dista = 5,
			bonus = 170,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[220] = {x = {
			pok = Rapidash,
			spell = "Horn Attack",
			minLv = 50,
			ex = 7800008,
			base1 = 300,
			base2 = 320,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 20
		     }
		 },
[110] = {x = {
			pok = dewgong,
			spell = "Afro Rest",
			minLv = 65,
			ex = 8700008,
			base1 = 11100,
			base2 = 11100,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[47] = {x = {
			pok = Muk,
			spell = "harden",
			minLv = 80,
			ex = 8900008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[488] = {x = {
			pok = shinyMuk,
			spell = "harden",
			minLv = 100,
			ex = 890008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 20
		     }
		 },
[244] = {x = {
			pok = gengar,
			spell = "Skull Bash",
			minLv = 80,
			ex = 9400008,
			base1 = 530,
			base2 = 550,
			dista = 5,
			bonus = 15,
			type = "ghost",
target = "no",
			cd = 35
		     }
		 },
[798] = {x = {
			pok = shinygengar,
			spell = "Skull Bash",
			minLv = 100,
			ex = 9400008,
			base1 = 1060,
			base2 = 1100,
			dista = 5,
			bonus = 30,
			type = "ghost",
target = "no",
			cd = 35
		     }
		 },
[38] = {x = {
			pok = Hitmonchan,
			spell = "Punch Bash",
			minLv = 60,
			ex = 1070008,
			base1 = 460,
			base2 = 480,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[486] = {x = {
			pok = eliteHitmonchan,
			spell = "Punch Bash",
			minLv = 100,
			ex = 107008,
			base1 = 920,
			base2 = 960,
			dista = 5,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[200] = {x = {
			pok = Rhydon,
			spell = "Horn Oath",
			minLv = 75,
			ex = 1120008,
			base1 = 445,
			base2 = 460,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[366] = {x = {
			pok = shinyRhydon,
			spell = "Horn Oath",
			minLv = 100,
			ex = 112008,
			base1 = 890,
			base2 = 920,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[198] = {x = {
			pok = Kangaskhan,
			spell = "Harden",
			minLv = 80,
			ex = 1150008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[246] = {x = {
			pok = MrMime,
			spell = "Mind Blast",
			minLv = 60,
			ex = 1220008,
			base1 = 200,
			base2 = 250,
			dista = 5,
			bonus = 13,
			type = "psychic",
			cd = 40
		     }
		 },
[361] = {x = {
			pok = shinyMrMime,
			spell = "Mind Blast",
			minLv = 85,
			ex = 122008,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 26,
			type = "psychic",
			cd = 40
		     }
		 },
[15] = {x = {
			pok = Scyther,
			spell = "Scy Bash",
			minLv = 80,
			ex = 1230008,
			base1 = 380,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[525] = {x = {
			pok = shinyScyther,
			spell = "Scy Bash",
			minLv = 100,
			ex = 123008,
			base1 = 760,
			base2 = 880,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[282] = {x = {
			pok = Jynx,
			spell = "Ice Oath",
			minLv = 80,
			ex = 1240008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 35
		     }
		 },
[499] = {x = {
			pok = shinyJynx,
			spell = "Ice Oath",
			minLv = 100,
			ex = 124008,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 26,
			type = "ice",
target = "no",
			cd = 35
		     }
		 },
[281] = {x = {
			pok = Electabuzz,
			spell = "Thunder Oath",
			minLv = 80,
			ex = 1250008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 13,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[497] = {x = {
			pok = shinyElectabuzz,
			spell = "Thunder Oath",
			minLv = 100,
			ex = 125008,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 26,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[76] = {x = {
			pok = Magmar,
			spell = "Scratch",
			minLv = 80,
			ex = 1260008,
			base1 = 270,
			base2 = 300,
			dista = 1,
			bonus = 13,
			type = "normal",
			cd = 20
		     }
		 },
[371] = {x = {
			pok = shinyMagmar,
			spell = "Scratch",
			minLv = 100,
			ex = 126008,
			base1 = 540,
			base2 = 600,
			dista = 1,
			bonus = 26,
			type = "normal",
			cd = 20
		     }
		 },
[117] = {x = {
			pok = Gyarados,
			spell = "Water Bash",
			minLv = 85,
			ex = 1300008,
			base1 = 465,
			base2 = 510,
			dista = 5,
			bonus = 13,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[327] = {x = {
			pok = miniGyarados,
			spell = "Water Bash",
			minLv = 40,
			ex = 1300008,
			base1 = 230,
			base2 = 250,
			dista = 5,
			bonus = 7,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[528] = {x = {
			pok = redGyarados,
			spell = "Water Bash",
			minLv = 100,
			ex = 130008,
			base1 = 930,
			base2 = 1020,
			dista = 5,
			bonus = 26,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[193] = {x = {
			pok = Lapras,
			spell = "Hydropump",
			minLv = 80,
			ex = 1310008,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 50
		     }
		 },
[28] = {x = {
			pok = ditto,
			spell = "Transform",
			minLv = 40,
			ex = 1320001,
			base1 = 0,
			base2 = 0,
			dista = 10,
			bonus = 0,
                        target = "yes",
			type = "normal",
			cd = 50
		     }
		 },
[192] = {x = {
			pok = Omastar,
			spell = "Water Bash",
			minLv = 80,
			ex = 1390008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[13] = {x = {
			pok = Kabutops,
			spell = "Rock Bash",
			minLv = 80,
			ex = 1410008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 30
		     }
		 },
[10] = {x = {
			pok = Aerodactyl,
			spell = "Rock Bash",
			minLv = 100,
			ex = 1420008,
			base1 = 510,
			base2 = 520,
			dista = 5,
			bonus = 20,
			type = "rock",
target = "no",
			cd = 35
		     }
		 },
[51] = {x = {
			pok = Snorlax,
			spell = "Rest",
			minLv = 90,
			ex = 1430008,
			base1 = 20100,
			base2 = 20100,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[348] = {x = {
			pok = bigsnorlax,
			spell = "Roost",
			minLv = 150,
			ex = 143000008,
			base1 = 40200,
			base2 = 40200,
			dista = 5,
			bonus = 34,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[258] = {x = {
			pok = restSnorlax,
			spell = "Zzzzz",
			minLv = 90,
			ex = 14300008,
			base1 = 0,
			base2 = 0,
			dista = 1,
			bonus = 0,
			type = "normal",
			cd = 2
		     }
		 },
[283] = {x = {
			pok = Articuno,
			spell = "Ice Oath",
			minLv = 250,
			ex = 1440008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 15
		     }
		 },
[199] = {x = {
			pok = Zapdos,
			spell = "Thunder Oath",
			minLv = 250,
			ex = 1450008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 15
		     }
		 },
[265] = {x = {
			pok = Moltres,
			spell = "Wind Oath",
			minLv = 250,
			ex = 1460008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "flying",
target = "no",
			cd = 15
		     }
		 },
[352] = {x = {
			pok = Dragonair,
			spell = "Twister",
			minLv = 80,
			ex = 148008,
			base1 = 860,
			base2 = 900,
			dista = 5,
			bonus = 20,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[210] = {x = {
			pok = Dragonite,
			spell = "Twister",
			minLv = 100,
			ex = 1490008,
			base1 = 530,
			base2 = 550,
			dista = 5,
			bonus = 17,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[34] = {x = {
			pok = Mewtwo,
			spell = "Mind Blast",
			minLv = 700,
			ex = 1500008,
			base1 = 1500,
			base2 = 1700,
			dista = 5,
			bonus = 50,
			type = "psychic",
			cd = 35
		     }
		 },
[9] = {x = {
			pok = Mew,
			spell = "Mind Blast",
			minLv = 600,
			ex = 1510008,
			base1 = 1400,
			base2 = 1800,
			dista = 5,
			bonus = 50,
			type = "psychic",
			cd = 35
		     }
		 },
[581] = {x = {
			pok = Meganium,
			spell = "Reflect",
			minLv = 85,
			ex = 1540008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[625] = {x = {
			pok = typhlosion,
			spell = "Magma Storm",
			minLv = 85,
			ex = 1570008,
			base1 = 605,
			base2 = 620,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[554] = {x = {
			nome = Feraligatr,
			spell = "Water Bash",
			minLv = 85,
			ex = 1600008,
			base1 = 390,
			base2 = 410,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[586] = {x = {
			pok = noctowl,
			spell = "Roost",
			minLv = 65,
			ex = 1640008,
			base1 = 8600,
			base2 = 8600,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[544] = {x = {
			pok = Crobat,
			spell = "Poison Oath",
			minLv = 80,
			ex = 1690008,
			base1 = 500,
			base2 = 520,
			dista = 5,
			bonus = 15,
			type = "poison",
target = "no",
			cd = 40
		     }
		 },
[571] = {x = {
			pok = lanturn,
			spell = "Thunder Oath",
			minLv = 75,
			ex = 1710008,
			base1 = 470,
			base2 = 520,
			dista = 1,
			bonus = 2.4,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[622] = {x = {
			pok = Togetic,
			spell = "Leaf Magical",
			minLv = 60,
			ex = 1760008,
			base1 = 470,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "psychic",
			cd = 40
		     }
		 },
[658] = {x = {
			pok = Xatu,
			spell = "Wind Oath",
			minLv = 75,
			ex = 1780008,
			base1 = 470,
			base2 = 520,
			dista = 5,
			bonus = 10,
			type = "flying",
			target = "no",
			cd = 40
		     }
		 },
[533] = {x = {
			pok = Ampharos,
			spell = "Thunder Oath",
			minLv = 85,
			ex = 1810008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 15,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[615] = {x = {
			pok = Sudowoodo,
			spell = "Rock Bash",
			minLv = 80,
			ex = 1850008,
			base1 = 580,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[606] = {x = {
			pok = Slowking,
			spell = "Water Bash",
			minLv = 100,
			ex = 1990008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[583] = {x = {
			pok = misdreavus,
			spell = "Ghost Bash",
			minLv = 80,
			ex = 2000008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 17,
			type = "ghost",
target = "no",
			cd = 40
		     }
		 },
[629] = {x = {
			pok = unowna,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2011008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[630] = {x = {
			pok = unownb,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2012008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[631] = {x = {
			pok = unownc,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2013008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[632] = {x = {
			pok = unownd,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2014008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[633] = {x = {
			pok = unowne,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2015008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[634] = {x = {
			pok = unownf,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2016008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[635] = {x = {
			pok = unowng,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2017008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[636] = {x = {
			pok = unownh,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2018008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[637] = {x = {
			pok = unowni,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2019008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[638] = {x = {
			pok = unownj,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20110008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[639] = {x = {
			pok = unownk,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20111008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[640] = {x = {
			pok = unownl,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20112008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[641] = {x = {
			pok = unownm,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20113008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[642] = {x = {
			pok = unownn,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20114008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[643] = {x = {
			pok = unowno,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20115008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[644] = {x = {
			pok = unownp,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20116008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[645] = {x = {
			pok = unownq,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20117008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[646] = {x = {
			pok = unownr,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20118008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[647] = {x = {
			pok = unowns,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20119008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[648] = {x = {
			pok = unownt,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20120008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[649] = {x = {
			pok = unownu,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20121008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[650] = {x = {
			pok = unownv,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20122008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[651] = {x = {
			pok = unownx,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20123008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[652] = {x = {
			pok = unownw,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20124008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[653] = {x = {
			pok = unowny,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20125008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[654] = {x = {
			pok = unownz,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20126008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[656] = {x = {
			pok = Wobbuffet,
			spell = "Harden",
			minLv = 80,
			ex = 2020008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[558] = {x = {
			pok = girafarig,
			spell = "Psy Storm",
			minLv = 80,
			ex = 2030008,
			base1 = 525,
			base2 = 540,
			dista = 5,
			bonus = 11,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
 [724] = {x = {
			pok = Steelix,
			spell = "Rock Bash",
			minLv = 100,
			ex = 2080008,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
 [560] = {x = {
			pok = granbull,
			spell = "Harden",
			minLv = 65,
 			ex = 2100008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
			}
		},
[601] = {x = {
			pok = Scizor,
			spell = "Scy Bash",
			minLv = 100,
			ex = 2120008,
			base1 = 600,
			base2 = 620,
			dista = 5,
			bonus = 17,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[561] = {x = {
			pok = Heracross,
			spell = "Horn Oath",
			minLv = 80,
			ex = 2140008,
			base1 = 460,
			base2 = 500,
			dista = 5,
			bonus = 11,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[610] = {x = {
			pok = Sneasel,
			spell = "Ice Oath",
			minLv = 55,
			ex = 2150008,
			base1 = 375,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 30
		     }
		 },
[655] = {x = {
			pok = Ursaring,
			spell = "Afro Rest",
			minLv = 90,
			ex = 2170008,
			base1 = 18100,
			base2 = 18100,
			dista = 5,
			bonus = 15,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[577] = {x = {
			pok = magcargo,
			spell = "Rock Bash",
			minLv = 75,
			ex = 2190008,
			base1 = 285,
			base2 = 315,
			dista = 5,
			bonus = 12,
			type = "rock",
target = "no",
			cd = 20
		     }
		 },
[590] = {x = {
			nome = Piloswine,
			spell = "Ice Oath",
			minLv = 80,
			ex = 2210008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 8,
			type = "ice",
target = "no",
			cd = 40
		     }
		 },

[578] = {x = {
			pok = mantine,
			spell = "Water Bash",
			minLv = 80,
			ex = 2260008,
			base1 = 475,
			base2 = 505,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[604] = {x = {
			pok = skarmory,
			spell = "Scy Bash",
			minLv = 85,
			ex = 2270008,
			base1 = 485,
			base2 = 525,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[566] = {x = {
			pok = houndoom,
			spell = "Ghost Bash",
			minLv = 85,
			ex = 2290008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 12,
			type = "ghost",
target = "no",
			cd = 40
		     }
		 },
[570] = {x = {
			pok = kingdra,
			spell = "Water Bash",
			minLv = 100,
			ex = 2300008,
			base1 = 370,
			base2 = 390,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[593] = {x = {
			pok = Porygon2,
			spell = "Pory Storm",
			minLv = 75,
			ex = 2330008,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[613] = {x = {
			pok = Stantler,
			spell = "Stomp Tomb",
			minLv = 55,
			ex = 2340008,
			base1 = 375,
			base2 = 400,
			dista = 5,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 30

		     }
		 },
[342] = {x = {
			pok = Smeargle5,
		spell = "Melody",
			minLv = 40,
			ex = 2350008,
			base1 = 30,
			base2 = 50,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[344] = {x = {
			pok = Smeargle6,
			spell = "Roost",
			minLv = 40,
			ex = 1640008,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[562] = {x = {
			pok = Hitmontop,
			spell = "Punch Bash",
			minLv = 60,
			ex = 2370008,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 35
		     }
		 },
[582] = {x = {
			pok = miltank,
			spell = "Stomp Tomb",
			minLv = 80,
			ex = 2410008,
			base1 = 305,
			base2 = 320,
			dista = 5,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 23
		     }
		 },
[675] = {x = {
			pok = miltank,
			spell = "Stomp Tomb",
			minLv = 80,
			ex = 2410008,
			base1 = 305,
			base2 = 320,
			dista = 5,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 23
		     }
		 },
[538] = {x = {
			pok = Blissey,
			spell = "Egg Storm",
			minLv = 100,
			ex = 2420008,
			base1 = 600,
			base2 = 620,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[599] = {x = {
			pok = Raikou,
			spell = "Thunder Oath",
			minLv = 250,
			ex = 2430008,
			base1 = 31100,
			base2 = 31200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[552] = {x = {
			pok = Entei,
			spell = "Magma Storm",
			minLv = 250,
			ex = 2440008,
			base1 = 31100,
			base2 = 31200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[616] = {x = {
			pok = Suicune,
			spell = "Water Bash",
			minLv = 250,
			ex = 2450008,
			base1 = 11600,
			base2 = 12000,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 20
		     }
		 },
[626] = {x = {
			pok = tyranitar,
			spell = "Rock Bash",
			minLv = 100,
			ex = 2480008,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 30
		     }
		 },
[575] = {x = {
			pok = Lugia,
			spell = "Water Bash",
			minLv = 600,
			ex = 2490008,
			base1 = 35800,
			base2 = 35900,
			dista = 5,
			bonus = 50,
			type = "water",
			target = "no",
			cd = 40
		     }
		 },
[563] = {x = {
			pok = HoOh,
			spell = "Magma Storm",
			minLv = 800,
			ex = 2500008,
			base1 = 40070,
			base2 = 40080,
			dista = 5,
			bonus = 50,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[539] = {x = {
			pok = Celebi,
			spell = "Leaf Magical",
			minLv = 600,
			ex = 2510008,
			base1 = 20800,
			base2 = 20900,
			dista = 5,
			bonus = 50,
			type = "psychic",
			target = "no",
			cd = 20
		     }
		 },
}

function onSay(cid)	
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end
if getTilePzInfo(getPlayerPosition(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Can't use Moves on protect zone.")
    return true
	end
	if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn\'t recognize this move.")
	return 0
	end
	pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
	if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have enough level to use this move.")
	return 0
	end
	if exhaustion.get(cid, pokemon.x.ex) then
		seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1))
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..seconds.." seconds to use this move again.")
		return 0
		end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then
	doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215)
	setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	return true
	end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then
		if math.random(1,100) <= 33 then
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180)
		local levels = getPlayerLevel(cid)
		doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		return true
		end
	end
if pokemon.x.target ~= "no" then
	if not isMonster(getCreatureTarget(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")
	return 0
	end

	if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.")
	return 0
	end

	if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then
	return 0
	end
end
	if pokemon.x.type == "flying" then
		elementa = FLYDAMAGE
	elseif pokemon.x.type == "ground" then
		elementa = GROUNDDAMAGE
	elseif pokemon.x.type == "electric" then
		elementa = ELECTRICDAMAGE
	elseif pokemon.x.type == "ghost" then
		elementa = GHOSTDAMAGE
	elseif pokemon.x.type == "normal" then
		elementa = NORMALDAMAGE
	elseif pokemon.x.type == "fighting" then
		elementa = FIGHTINGDAMAGE
	elseif pokemon.x.type == "poison" then
		elementa = POISONDAMAGE
	elseif pokemon.x.type == "rock" then
		elementa = ROCKDAMAGE
	elseif pokemon.x.type == "bug" then
		elementa = BUGDAMAGE
	elseif pokemon.x.type == "fire" then
		elementa = FIREDAMAGE
	elseif pokemon.x.type == "water" then
		elementa = WATERDAMAGE
	elseif pokemon.x.type == "grass" then
		elementa = GRASSDAMAGE
	elseif pokemon.x.type == "psychic" then
		elementa = PSYCHICDAMAGE
	elseif pokemon.x.type == "ice" then
		elementa = ICEDAMAGE
	elseif pokemon.x.type == "dragon" then
		elementa = DRAGONDAMAGE
	end

	local element = elementa
	local num1 = (pokemon.x.base1)
	local num2 = (pokemon.x.base2)
	local num3 = (pokemon.x.bonus)


local ball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
local pokename = getItemSpecialDescription(ball.uid)
local boost = pokename:match("\+(%d+)")

if(pokename:find("\+(%d+)"))then 
	num1 = ((pokemon.x.base1)*(boost*(boostrate*2)))
	num2 = ((pokemon.x.base2)*boost)
	num3 = (pokemon.x.bonus)
else
	num1 = (pokemon.x.base1)
	num2 = (pokemon.x.base2)
	num3 = (pokemon.x.bonus)
end


	setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3))))


	if pokemon.x.spell == "Healeara" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), grassarea, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
	elseif pokemon.x.spell == "Rock Slide" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local posalvo = getThingPos(getCreatureTarget(cid))
		local boltalvo = getCreatureTarget(cid)
		posalvo.x = posalvo.x-2
		posalvo.y = posalvo.y-6
		doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 11)
		local function bolt(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(cid)) then
		if getCreatureTarget(params.cid) == params.boltalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 44)
		end
		end
		end
		end
		addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo})
	        elseif pokemon.x.spell == "Gust" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		end
		return 0
---------------------ADICIONADAS---------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
	elseif pokemon.x.spell == "Hypnosis" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local alvo = getCreatureTarget(cid)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)
		local function string(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		doSendMagicEffect(getThingPos(params.alvo), 136)
		end
		end
		end
		local function normalstr(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		setPlayerStorageValue(params.alvo, 3, -1)
		end
		end
		end
		addEvent(string, 250, {alvo = alvo})
		addEvent(string, 500, {alvo = alvo})
		addEvent(string, 750, {alvo = alvo})
		addEvent(string, 1000, {alvo = alvo})
		addEvent(string, 1250, {alvo = alvo})
		addEvent(string, 1500, {alvo = alvo})
		addEvent(string, 1750, {alvo = alvo})
		addEvent(string, 2000, {alvo = alvo})
		addEvent(string, 2250, {alvo = alvo})
		addEvent(string, 2500, {alvo = alvo})
		addEvent(string, 2750, {alvo = alvo})
		addEvent(string, 3000, {alvo = alvo})
		addEvent(normalstr, 3050, {alvo = alvo})
		return 0
 elseif pokemon.x.spell == "Focus" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 1)
		local function quiet(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 132)
		end
		end
		end
		end
		local function desc(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 0)
		end
		end
		end
		end
		for calm = 1, 12 do
		addEvent(quiet, calm*500, {cid = cid})
		end
		addEvent(desc, 12*500, {cid = cid})
	        return 0
---------------------ADICIONADAS---------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------
	        elseif pokemon.x.spell == "Rage" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], FLYDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		end
		end
		end
		end
		addEvent(hit, 1000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 2000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 3000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 4000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 5000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 6000, {cid = cid, hitalvo = hitalvo})
		return 0
		 elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
	   elseif pokemon.x.spell == "Charge Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
       elseif pokemon.x.spell == "Melody" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), earthquake, thunderwavecondition, 255)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = earthquake, ef = 19})
		addEvent(storm, 1000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 2000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 3000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 4000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 5000, {cid = cid, el = element, ar = earthquake, ef = 19})
	        return 0
			
        elseif pokemon.x.spell == "Fist Machine" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+0
		flamepos.y = flamepos.y-1
		doSendMagicEffect(flamepos, 217)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+2
		flamepos.y = flamepos.y+0
		doSendMagicEffect(flamepos, 215)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-0
		flamepos.y = flamepos.y+2
		doSendMagicEffect(flamepos, 218)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-1
		flamepos.y = flamepos.y+0
		doSendMagicEffect(flamepos, 216)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)		
                end
		return 0
elseif pokemon.x.spell == "Transform" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd, pokemon.x.base1, pokemon.x.base2, pokemon.x.bonus, pokemon.x.target, pokemon.x.type)
doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(getCreatureTarget(cid)), 130000000)
return 0
	elseif pokemon.x.spell == "Mega Horn" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 25)
			else
			end
			end
                        local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 15)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Water Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 30)
                return 0
elseif pokemon.x.spell == "Rock Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 238)
                return 0
elseif pokemon.x.spell == "Scy Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 249)
                return 0
elseif pokemon.x.spell == "Skull Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 208)
                return 0
elseif pokemon.x.spell == "Punch Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112)
                return 0
elseif pokemon.x.spell == "Ghost Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 115)
                return 0
		elseif pokemon.x.spell == "Whirlwind" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.br, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, br = whirl52})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, br = whirl52})
		end
	        return 0
elseif pokemon.x.spell == "Scratch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142)
		return 0
                elseif pokemon.x.spell == "Sleep Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 27)
				doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
                return 0
                elseif pokemon.x.spell == "Twister" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twe, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tws, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tww, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		end
		return 0
 elseif pokemon.x.spell == "Stomp Tomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twe, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tws, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tww, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		end
		return 0
                elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	        elseif pokemon.x.spell == "Hyper Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 159)
		return 0
                elseif pokemon.x.spell == "Tornado" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 42, ar = tor1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 42, ar = tor2, el = element})
		addEvent(tornado, 1000, {cid = cid, ef = 42, ar = tor3, el = element})
		addEvent(tornado, 500, {cid = cid, ef = CONST_ME_POFF, ar = tor1, el = null})
		addEvent(tornado, 1200, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor3, el = null})
	        return 0
                elseif pokemon.x.spell == "Hydropump" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 53, ar = pump1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 53, ar = pump2, el = element})
	        return 0
	elseif pokemon.x.spell == "Afro Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 132)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 132)
		return 0
                elseif pokemon.x.spell == "Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureName(getCreatureSummons(cid)[1]) == "Snorlax" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], snorlax, 5000)
		doChangeSpeed(getCreatureSummons(cid)[1], 145)
               
		end
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
			local function rest(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then
		        doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
			end
			end
			end
			end
		        for r = 1, 4 do
		        addEvent(rest, 1000*r, {cid = cid})
		        end
			local function stoprest(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			doChangeSpeed(getCreatureSummons(params.cid)[1], -145)
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0)
			end
			end
			end
			end
		        addEvent(stoprest, 4300, {cid = cid})
		return 0
 elseif pokemon.x.spell == "Solar Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Poison Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
                return 0
                elseif pokemon.x.spell == "Psychic" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
                return 0
	elseif pokemon.x.spell == "Fear" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local t = getCreatureTarget(cid)
                setPlayerStorageValue(t, 5, 1)
                local function confused(params)
                if isCreature(params.t) then
                local spdc = getCreatureSpeed(params.t)
                if getCreatureLookDir(params.t) == 0 then
                confs = math.random(1,3)
                elseif getCreatureLookDir(params.t) == 1 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 0
                elseif confurandom >= 67 then
                confs = 2
                else
                confs = 3
                end
                elseif getCreatureLookDir(params.t) == 2 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 3
                elseif confurandom >= 67 then
                confs = 0
                else
                confs = 1
                end
                elseif getCreatureLookDir(params.t) == 3 then
                confs = math.random(0,2)
                end
                doPushCreature(params.t, confs, 1, 0)
                doSendMagicEffect(getThingPos(params.t), 214)
                end
                end
                local function nonc(params)
                if isCreature(params.t) then
                doChangeSpeed(params.t, -getCreatureSpeed(params.t))
                doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
                setPlayerStorageValue(params.t, 5, -1)
                end
                end
                doChangeSpeed(t, -( getCreatureSpeed(t)/3))
                doSendMagicEffect(getThingPos(t), 214)
                for i = 1, math.random(6,7) do
                addEvent(confused, 1000*i, {cid = cid, t = t})
                end
                addEvent(nonc, 7100, {cid - cid, t = t})
                return 0
  elseif pokemon.x.spell == "Psyusion" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = pu1, ef = 136})
		addEvent(storm, 500, {cid = cid, el = element, ar = pu2, ef = 133})
		addEvent(storm, 1000, {cid = cid, el = element, ar = pu3, ef = 136})
		addEvent(storm, 1500, {cid = cid, el = element, ar = pu4, ef = 137})
                addEvent(storm, 2000, {cid = cid, el = element, ar = pu5, ef = 133})
	        return 0
	        elseif pokemon.x.spell == "Water Gun" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Reflect" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 135)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 34, 1)
	        return 0
                elseif pokemon.x.spell == "Fire Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 61, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 61, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 61, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 61, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 61, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 61, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 63, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 63, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 63, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 63, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 63, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 63, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
	 	return 0
elseif pokemon.x.spell == "Wind Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 36)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Ice Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 35)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Poison Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 14)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Horn Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
elseif pokemon.x.spell == "Horn Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 25)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Thunder Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 40)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Leaf Magical" then
  doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 21)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
                elseif pokemon.x.spell == "Ice Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 99)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 105)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 103)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 98)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 105)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 102)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 96)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 104)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 100)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 97)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 104)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 101)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
elseif pokemon.x.spell == "Wardog" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                        local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 146)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(damage, 400, {cid = cid})
		addEvent(damage, 800, {cid = cid})
		addEvent(damage, 1200, {cid = cid})
		addEvent(damage, 1500, {cid = cid})
		return 0
                elseif pokemon.x.spell == "Selfdestruct" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doCreatureAddHealth, 250, getCreatureSummons(cid)[1], -getCreatureHealth(getCreatureSummons(cid)[1]))
		doAreaCombatHealth(getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		addEvent(doAreaCombatHealth, 150, getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct2, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.7), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.8), 5)
		addEvent(doAreaCombatHealth, 250, getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct3, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.4), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.5), 5)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 33, 1)
	        return 0
elseif pokemon.x.spell == "Healera" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
	        elseif pokemon.x.spell == "Psycho Shift" then
		targetpos = getThingPos(getCreatureTarget(cid))
		targetposss = getThingPos(getCreatureTarget(cid))
		if math.random(1,100) >= 51 then
		targetpos.x = targetpos.x+2
		else
		targetpos.x = targetpos.x-2
		end
		if math.random(1,100) >= 51 then
		targetpos.y = targetpos.y-2
		else
		targetpos.y = targetpos.y+2
		end
		tile = getTileItemByType(targetpos, ground).itemid
		if getThingPos(cid).z > 7 then
			if isWalkable(targetpos, cid, 0, 0) then
			doTeleportThing(getCreatureTarget(cid), targetpos)
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetpos, 12)
			else
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetposss, 12)
			end
		else
		if not isInArray(imp, tile) then
			if not isInArray(imp, getTileThingByPos(targetpos).itemid) then
			doTeleportThing(getCreatureTarget(cid), targetpos)
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetpos, 12)
			else
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetposss, 12)
			end
		else
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
		doSendMagicEffect(targetposss, 12)
		end
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Restore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
      elseif pokemon.x.spell == "Roost" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
                elseif pokemon.x.spell == "Psywave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		end
		return 0
	        elseif pokemon.x.spell == "Poison Bomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14)
	        return 0
 elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
	         elseif pokemon.x.spell == "Psywave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		end
		return 0
	        elseif pokemon.x.spell == "Blizzard" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 175})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 175})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 175})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 175})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 175})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 175})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 175})
	return 0
			

	        elseif pokemon.x.spell == "Magma Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 236})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 236})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 236})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 236})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 236})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 236})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 236})
	return 0
            elseif pokemon.x.spell == "Egg Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 5})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 5})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 5})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 5})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 5})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 5})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 5})
	return 0

        elseif pokemon.x.spell == "Psy Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 235})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 235})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 235})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 235})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 235})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 235})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 235})
	return 0
elseif pokemon.x.spell == "Pory Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 230})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 230})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 230})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 230})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 230})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 230})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 230})
	return 0

                elseif pokemon.x.spell == "Hydro Cannon" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 67, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 67, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 67, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 67, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 67, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 67, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 65, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 65, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 65, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 65, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 65, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 65, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
                elseif pokemon.x.spell == "Waterball" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
			else
			end
			end
		addEvent(damage, 100, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Windstorm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 42})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 42})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 42})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 42})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = CONST_ME_POFF})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = CONST_ME_POFF})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = CONST_ME_POFF})
	return 0
                elseif pokemon.x.spell == "Earthquake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 500, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 1000, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 1500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 2000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 2500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 3000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 3500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 4000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 4500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 5000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 5500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 6000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 6500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 7000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 7500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 8000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 8500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 9000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 9500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 10000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 10500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 11000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 11500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 12000, {cid = cid, el = element, ar = earthquake, ef = 118})
	        return 0
                elseif pokemon.x.spell == "Wing Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
		return 0
                elseif pokemon.x.spell == "Mega Kick" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 113)
		return 0

	        elseif pokemon.x.spell == "Harden" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local hardname = getCreatureName(getCreatureSummons(cid)[1])
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
		local oldpos = getThingPos(getCreatureSummons(cid)[1])
			local function efect(params)
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144)
			end
			end
			end
		local function chard(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
		setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1)
		end
		end
		end
		addEvent(efect, 100, {cid = cid, hardname = hardname})
		addEvent(efect, 1600, {cid = cid, hardname = hardname})
		addEvent(efect, 3100, {cid = cid, hardname = hardname})
		addEvent(efect, 4600, {cid = cid, hardname = hardname})
		addEvent(efect, 6100, {cid = cid, hardname = hardname})
		addEvent(efect, 7600, {cid = cid, hardname = hardname})
		addEvent(efect, 9100, {cid = cid, hardname = hardname})
		addEvent(efect, 10600, {cid = cid, hardname = hardname})
		addEvent(chard, 11000, {cid = cid})		
	        return 0
	        elseif pokemon.x.spell == "Electric Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 225})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 225})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 225})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 225})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 225})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 225})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 225})
	return 0
 elseif pokemon.x.spell == "Earthshock" then
	        doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	        doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	        exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	        doAreaCombatHealth(getCreatureSummons(cid)[1], GROUNDDAMAGE, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
	        local sps = getThingPos(getCreatureSummons(cid)[1])
	        sps.x = sps.x+1
	        sps.y = sps.y+1
	        doSendMagicEffect(sps, 127)
	        return 0
                elseif pokemon.x.spell == "Stomp" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), stomp, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
                return 0
                elseif pokemon.x.spell == "Mind Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		local function go(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), psy2, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		end
		end
		end
		addEvent(go, 150, {cid = cid})
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), psy1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		return 0
	elseif pokemon.x.spell == "Toxic Needle" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
	return 0
	elseif pokemon.x.spell == "Thunderbolt" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local posalvo = getThingPos(getCreatureTarget(cid))
		local boltalvo = getCreatureTarget(cid)
		posalvo.x = posalvo.x-2
		posalvo.y = posalvo.y-6
		doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 41)
		local function bolt(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(cid)) then
		if getCreatureTarget(params.cid) == params.boltalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		end
		end
		end
		end
		addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo})
	        return 0
                elseif pokemon.x.spell == "Thunder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), thunder, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
                return 0
elseif pokemon.x.spell == "Rollout" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureName(getCreatureSummons(cid)[1]) == "Voltorb" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], voltorb, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 85)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Electrode" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], electrode, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 101)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandshrew" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], sandshrew, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 93)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandslash" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], sandslash, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 143)
		end
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
			local function roll(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255)
			end
			end
			end
			end
		for r = 1, 8 do
		addEvent(roll, 1000*r, {cid = cid})
		end

			local function stoproll(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			doChangeSpeed(getCreatureSummons(params.cid)[1], -101)
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0)
			end
			end
			end
			end
		addEvent(stoproll, 8300, {cid = cid})
		return 0 
                elseif pokemon.x.spell == "Super Sonic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confused(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 31)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confused, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
		return 0
	end
return 0
end	

 

 

O rei de seu proprio destino é aquele que luta pela gloria do amanhã!
Discord : ZoR#9373


 

Link para o post
Compartilhar em outros sites
6 horas atrás, ZikaLord disse:

[15/07/2017 14:32:45] [Error - TalkAction Interface] 
[15/07/2017 14:32:45] data/talkactions/scripts/move7.lua:onSay
[15/07/2017 14:32:45] Description: 
[15/07/2017 14:32:45] (luaDoCombatAreaCondition) Condition not found

[15/07/2017 14:32:45] [Error - TalkAction Interface] 
[15/07/2017 14:32:45] data/talkactions/scripts/move8.lua:onSay
[15/07/2017 14:32:45] Description: 
[15/07/2017 14:32:45] (luaGetCreatureName) Creature not found

 

Move7

  Mostrar conteúdo oculto


-- Boost sistem --
boostrate = 1

local sleep = createConditionObject(CONDITION_PARALYZE)
setConditionParam(sleep, CONDITION_PARAM_TICKS, 5*1000)
setConditionFormula(sleep, -1.7, 0, -1.8, 0)
function Sleep(insleep)
doAddCondition(insleep , sleep)
p = getCreaturePosition(insleep)
doSendAnimatedText(p, "SLEEP", 154)
for i = 1, 5 do
        if i == 1 then
                doSendMagicEffect(p, 32)
        else
                addEvent(doSendMagicEffect, i * 1000, p, 32)
        end
end
        return true
end

------SLEEP POWNDER
local sleepcondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(sleepcondition, CONDITION_PARAM_TICKS, 10000)  -- 5 segundos
setConditionParam(sleepcondition, CONDITION_PARAM_SPEED, -5000)  -- paralizado
setConditionFormula(sleepcondition, -0.9, 0, -0.9, 0)

local tsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
}

local tss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local tse = createCombatArea{
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
}

local tsw = createCombatArea{
{0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 1, 1, 0},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 1, 0},
}

local oatharea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 3, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local grassarea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}
}

local hl = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
------------------ADD--------------------
local epi1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 2, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local epi4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local pu1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 2, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{1, 1, 1, 1, 0, 2, 0, 1, 1, 1, 1},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0},
{0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 1, 1, 0, 0, 0, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local pu5 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 2, 1, 1, 1, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local wsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
}

local wss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local wse = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 2},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},
}

local wsw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 2, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 1},
}
local bbn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0},
}

local bbs = createCombatArea{
{0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},
}

local bbe = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 1, 0, 1, 2},
{0, 0, 0, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},
}

local bbw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 2, 1, 0, 1, 1},
{0, 0, 0, 0, 1, 1, 0},
{0, 0, 0, 0, 0, 0, 1},
}
local cstomp = createCombatArea{
{0, 0, 1, 0, 0,},
{0, 1, 1, 1, 0,},
{1, 1, 2, 1, 1,},
{0, 1, 1, 1, 0,},
{0, 0, 1, 0, 0,},
}
local confusion = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 2, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0}
}
local bomb = createCombatArea{
{0, 1, 0},
{1, 3, 1},
{0, 1, 0},
}
local dh = createCombatArea{
{1, 1, 1},
{1, 2, 1},
{1, 1, 1},
}
local bms = createCombatArea{
{0, 0, 0, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 2, 0, 0},
}

local bmn = createCombatArea{
{0, 0, 2, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 1, 0, 0},
{0, 0, 0, 0, 0},
}

local bme = createCombatArea{
{0, 1, 1, 1, 1, 1, 2},
}

local bmw = createCombatArea{
{2, 1, 1, 1, 1, 1, 0},
}
local vinen = createCombatArea{
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
{1, 0, 0}
}
local vines = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 0},
{0, 2, 0}
}
local vinee = createCombatArea{
{0, 0, 0},
{1, 0, 0},
{0, 0, 2},
{0, 0, 0}
}
local vinew = createCombatArea{
{0, 0, 0},
{0, 0, 3},
{0, 2, 0},
{0, 0, 0}
}
local whipn = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{1, 1, 1},
{1, 1, 1}
}
local whips = createCombatArea{
{1, 1, 1},
{1, 1, 1},
{0, 2, 0},
{0, 0, 0}
}
local whipe = createCombatArea{
{1, 1, 0},
{1, 1, 2},
{1, 1, 0},
{0, 0, 0}
}
local whipw = createCombatArea{
{0, 1, 1},
{2, 1, 1},
{0, 1, 1},
{0, 0, 0}
}

local sand1 = createCombatArea{
{0, 0, 0},
{0, 3, 0},
{0, 0, 0},
}

local whirl3 = createCombatArea{
{0, 0, 0},
{1, 3, 1},
{0, 0, 0},
}

local whirl5 = createCombatArea{
{0, 0, 0, 0, 0},
{1, 1, 3, 1, 1},
{0, 0, 0, 0, 0},
}

local whirl32 = createCombatArea{
{0, 0, 0},
{1, 3, 1},
{0, 0, 0},
}

local whirl52 = createCombatArea{
{0, 0, 0, 0, 0},
{1, 1, 3, 1, 1},
{0, 0, 0, 0, 0},
}
----------GREAT LOVE------------
local gl1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local gl2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
---------------------------------------
local wingn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 0, 0}, 
}
local wings = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local winge = createCombatArea{
{0, 1, 0}, 
{0, 0, 2}, 
{0, 0, 0}, 
}
local wingw = createCombatArea{
{0, 0, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingds = createCombatArea{
{1, 1, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingdn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 1, 1}, 
}
local wingde = createCombatArea{
{1, 0, 0}, 
{1, 2, 0}, 
{1, 0, 0}, 
}
local wingdw = createCombatArea{
{0, 0, 1}, 
{0, 2, 1}, 
{0, 0, 1}, 
}

local destruct1 = createCombatArea{
	{0, 0, 1, 0, 0},
	{0, 1, 1, 1, 0},
	{1, 1, 3, 1, 1},
	{0, 1, 1, 1, 0},
	{0, 0, 1, 0, 0}
}

local swaven = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 3, 0, 0},
	{0, 0, 1, 0, 0},
	{0, 0, 1, 0, 0}
}

local swaves = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 1, 2, 0, 0},
	{0, 1, 0, 0, 0},
	{0, 1, 0, 0, 0}
}

local swavee = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 2, 0, 0},
	{1, 1, 1, 0, 0},
	{0, 0, 0, 0, 0}
}

local swavew = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0},
	{0, 0, 3, 1, 1},
	{0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0}
}


local eshock = createCombatArea{
	{0, 0, 0, 0, 0},
	{0, 1, 1, 1, 0},
	{0, 1, 2, 1, 0},
	{0, 1, 1, 1, 0},
	{0, 0, 0, 0, 0}
}

local destruct2 = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 3, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local destruct3 = createCombatArea{
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{1, 1, 0, 0, 0, 3, 0, 0, 0, 1, 1},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}

local ws1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 1, 0, 1, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local acid = createCombatArea{
{0, 0, 0, 0, 0},
{0, 1, 1, 1, 0},
{0, 1, 3, 1, 0},
{0, 1, 1, 1, 0}
}
-- WATER GUN
local wg1n = createCombatArea{
{0, 0, 0},
{0, 2, 0},
{0, 1, 0},
}
local wg2n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 1, 0},
{0, 1, 0},
{0, 1, 0},
}
local wg3n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 1, 0},
}

local wg1s = createCombatArea{
{0, 1, 0},
{0, 2, 0},
{0, 0, 0},
}
local wg2s = createCombatArea{
{0, 1, 0},
{0, 1, 0},
{0, 1, 0},
{0, 0, 0},
{0, 2, 0},
}
local wg3s = createCombatArea{
{0, 1, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0},
{0, 2, 0},
}

local wg1e = createCombatArea{
{0, 0, 0},
{1, 2, 0},
{0, 0, 0},
}
local wg2e = createCombatArea{
{1, 1, 1, 0, 2},
}
local wg3e = createCombatArea{
{1, 0, 0, 0, 0, 2},
}

local wg1w = createCombatArea{
{0, 0, 0},
{0, 2, 1},
{0, 0, 0},
}
local wg2w = createCombatArea{
{2, 0, 1, 1, 1},
}
local wg3w = createCombatArea{
{2, 0, 0, 0, 0, 1},
}
-- WATER GUN END
local pokeis = {'ivysaur','venusaur','Charmeleon','Charizard','wartortle','Blastoise','Butterfree', 'Beedrill', 'Pidgeot', 'fearow', 'arbok', 'pikachu', 'raichu','Sandslash', 'nidoqueen', 'nidoking', 'clefable', 'Ninetales', 'Wigglytuff', 'golbat', 'Vileplume', 'Parasect', 'Venomoth','persian', 'Primeape', 'arcanine', 'Poliwrath', 'Kadabra', 'Alakazam', 'machoke', 'machamp', 'Victreebel', 'tentacruel', 'Graveler', 'Golem', 'Rapidash','Slowbro', 'Farfetchd', 'Dodrio', 'dewgong', 'Muk', 'Cloyster', 'haunter', 'gengar', 'onix','hypno', 'kingler', 'Electrode', 'Exeggutor', 'Marowak','Hitmonchan', 'Lickitung', 'Rhydon', 'Tangela', 'Kangaskhan', 'Seadra', 'Seaking', 'Starmie', 'MrMime','Scyther', 'Jynx', 'Electabuzz', 'Magmar', 'Pinsir', 'Tauros', 'Gyarados', 'Lapras', 'Ditto', 'Vaporeon', 'Jolteon', 'Flareon','Porygon', 'Omanyte', 'Omastar', 'Kabuto', 'Kabutops', 'Aerodactyl', 'Snorlax', 'Articuno', 'Zapdos', 'Moltres','Dragonair', 'Dragonite', 'Mewtwo', 'Mew','bayleef','meganium','quilava','typhlosion','Croconaw','Feraligatr', 'Noctowl', 'Ledian', 'Ariados', 'Crobat', 'lanturn' , 'Xatu', 'Togetic', 'Flaaffy', 'Ampharos', 'Bellossom', 'azumarill', 'Sudowoodo', 'Politoed', 'jumpluff', 'Aipom', 'Yanma', 'Quagsire', 'Espeon', 'Umbreon', 'Murkrow', 'Slowking', 'Misdreavus', 'unown a', 'unown b', 'unown c', 'unown d', 'unown e', 'unown f', 'unown g', 'unown h', 'unown i', 'unown j', 'unown k', 'unown l', 'unown m', 'unown n', 'unown o', 'unown p', 'unown q', 'unown r', 'unown s', 'unown t', 'unown u', 'unown v', 'unown x', 'unown w', 'unown y', 'unown z',  'Wobbuffet', 'Girafarig', 'Forretress', 'Steelix', 'Granbull', 'Scizor', 'Heracross', 'Sneasel', 'Ursaring', 'Magcargo', 'Piloswine', 'Corsola', 'Octillery', 'Delibird', 'Mantine', 'Skarmory', 'houndoom', 'Kingdra', 'Donphan', 'Porygon2', 'Stantler', 'Hitmontop', 'miltank', 'Blissey', 'Raikou', 'Entei', 'Suicune', 'Pupitar', 'Tyranitar', 'Lugia', 'Ho Oh', 'Celebi', 'Dark Abra', 'Elder Charizard', 'Crystal Onix', 'Elite Hitmonchan', 'Elite Farfetchd', 'Shiny Arcanine', 'Shiny Beedrill', 'Shiny Blastoise', 'Shiny Butterfree', 'Shiny Electabuzz', 'Shiny Electrode', 'Shiny Gengar', 'Shiny Jynx', 'Shiny Kingler', 'Shiny Muk', 'Shiny Parasect', 'Shiny Raichu', 'Shiny Scyther', 'Shiny Seadra', 'Shiny Tentacruel', 'Shiny Venomoth', 'Shiny Venusaur', 'Mini Gyarados', 'Shiny Golbat', 'Red Gyarados', 'Smeargle Tm 3', 'Smeargle Tm 4', 'Smeargle Tm 5', 'Smeargle Tm 6', 'Smeargle Tm 7', 'Shiny Tangela', 'Big Snorlax', 'Shiny Alakazam', 'Shiny Dodrio', 'Shiny Dragonair', 'Shiny Fearow', 'Shiny Flareon', 'Shiny Golem', 'Shiny Hypno', 'Shiny Jolteon', 'Shiny Machamp', 'Shiny Marowak', 'Shiny MrMime', 'Shiny Nidoking', 'Shiny Ninetales', 'Shiny Pidgeot', 'Shiny Pinsir', 'Shiny Rhydon', 'Shiny Tauros', 'Shiny Vaporeon', 'Shiny Vileplume', 'Shiny Magmar'}
local c = {
[24] = {x = {
			pok = ivysaur,
			spell = "Solar Beam",
			minLv = 40,
			ex = 20007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[22] = {x = {
			pok = venusaur,
			spell = "Trepar Wave",
			minLv = 85,
			ex = 30007,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[496] = {x = {
			pok = shinyvenusaur,
			spell = "Trepar Wave",
			minLv = 100,
			ex = 3007,
			base1 = 1080,
			base2 = 1120,
			dista = 5,
			bonus = 30,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[23] = {x = {
			pok = charmeleon,
			spell = "Fire Blast",
			minLv = 40,
			ex = 50007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[67] = {x = {
			pok = charizard,
			spell = "Fire Blast",
			minLv = 85,
			ex = 60007,
			base1 = 585,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[294] = {x = {
			pok = eldercharizard,
			spell = "Fire Blast",
			minLv = 100,
			ex = 6007,
			base1 = 1170,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[6] = {x = {
			nome = wartortle,
			spell = "Water Oath",
			minLv = 40,
			ex = 80007,
			base1 = 340,
			base2 = 360,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[55] = {x = {
			nome = Blastoise,
			spell = "Water Oath",
			minLv = 85,
			ex = 90007,
			base1 = 520,
			base2 = 530,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[495] = {x = {
			nome = shinyBlastoise,
			spell = "Water Oath",
			minLv = 100,
			ex = 9007,
			base1 = 1040,
			base2 = 1060,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[40] = {x = {
			pok = Butterfree,
			spell = "Sand Oath",
			minLv = 30,
			ex = 1200007,
			base1 = 270,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[485] = {x = {
			pok = shinyButterfree,
			spell = "Sand Oath",
			minLv = 60,
			ex = 120007,
			base1 = 540,
			base2 = 600,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[45] = {x = {
			pok = beedrill,
			spell = "Missile Oath",
			minLv = 30,
			ex = 1500007,
			base1 = 270,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[483] = {x = {
			pok = shinybeedrill,
			spell = "Missile Oath",
			minLv = 60,
			ex = 150007,
			base1 = 540,
			base2 = 600,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[80] = {x = {
			pok = pidgeot,
			spell = "Windstorm",
			minLv = 80,
			ex = 1800007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[364] = {x = {
			pok = shinypidgeot,
			spell = "Windstorm",
			minLv = 100,
			ex = 180007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[799] = {x = {
			pok = pidgeot,
			spell = "Windstorm",
			minLv = 80,
			ex = 1800007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[17] = {x = {
			pok = fearow,
			spell = "Windstorm",
			minLv = 50,
			ex = 2200007,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 10,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[353] = {x = {
			pok = shinyfearow,
			spell = "Windstorm",
			minLv = 65,
			ex = 220007,
			base1 = 960,
			base2 = 1000,
			dista = 5,
			bonus = 20,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[39] = {x = {
			pok = arbok,
			spell = "Missile Oath",
			minLv = 35,
			ex = 2400007,
			base1 = 300,
			base2 = 320,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[59] = {x = {
			pok = pikachu,
			spell = "Focus",
			minLv = 40,
			ex = 2500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[50] = {x = {
			pok = raichu,
			spell = "Focus",
			minLv = 85,
			ex = 2600007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[511] = {x = {
			pok = shinyraichu,
			spell = "Focus",
			minLv = 100,
			ex = 260007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 25
		     }
		 },
[115] = {x = {
			pok = sandslash,
			spell = "Sand Oath",
			minLv = 65,
			ex = 2800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[285] = {x = {
			pok = sandslash,
			spell = "Sand Oath",
			minLv = 65,
			ex = 2800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
 [79] = {x = {
			pok = nidoqueen,
			spell = "Earthquake",
			minLv = 65,
 			ex = 3100007,
			base1 = 490,
			base2 = 520,
			dista = 2,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 40
			}
		},
 [35] = {x = {
			pok = nidoking,
			spell = "Earthquake",
			minLv = 65,
 			ex = 3400007,
			base1 = 530,
			base2 = 550,
			dista = 2,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 50
			}
		},
 [362] = {x = {
			pok = shinynidoking,
			spell = "Earthquake",
			minLv = 85,
 			ex = 340007,
			base1 = 1060,
			base2 = 1100,
			dista = 2,
			bonus = 28,
			type = "earth",
target = "no",
			cd = 50
			}
		},
[68] = {x = {
			pok = clefable,
			spell = "Great Love",
			minLv = 65,
			ex = 3600007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		 }
     },
[114] = {x = {
			pok = ninetales,
			spell = "Fire Blast",
			minLv = 65,
			ex = 3800007,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 10,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[363] = {x = {
			pok = shinyninetales,
			spell = "Fire Blast",
			minLv = 80,
			ex = 380007,
			base1 = 840,
			base2 = 880,
			dista = 5,
			bonus = 20,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[64] = {x = {
			pok = Wigglytuff,
			spell = "Multi Punch",
			minLv = 65,
			ex = 4000007,
			base1 = 345,
			base2 = 365,
			dista = 1,
			bonus = 12,
			type = "fighting",
			cd = 30
		     }
		 },
[122] = {x = {
			pok = golbat,
			spell = "Poisonous Wing",
			minLv = 35,
			ex = 4200007,
			base1 = 250,
			base2 = 280,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 25
		     }
		 },
[334] = {x = {
			pok = shinygolbat,
			spell = "Poisonous Wing",
			minLv = 60,
			ex = 420007,
			base1 = 500,
			base2 = 560,
			dista = 5,
			bonus = 16,
			type = "poison",
target = "no",
			cd = 25
		     }
		 },
[86] = {x = {
			pok = vileplume,
			spell = "Solar Beam",
			minLv = 50,
			ex = 4500007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 10,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[369] = {x = {
			pok = shinyvileplume,
			spell = "Solar Beam",
			minLv = 80,
			ex = 450007,
			base1 = 970,
			base2 = 1010,
			dista = 5,
			bonus = 20,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[95] = {x = {
			pok = Parasect,
			spell = "Poison Oath",
			minLv = 50,
			ex = 4700007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[501] = {x = {
			pok = shinyParasect,
			spell = "Poison Oath",
			minLv = 60,
			ex = 470007,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 20,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[49] = {x = {
			pok = Venomoth,
			spell = "Gastro Acid",
			minLv = 50,
			ex = 4900007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "poison",
			cd = 40
		     }
		 },
[484] = {x = {
			pok = shinyVenomoth,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 490007,
			base1 = 700,
			base2 = 740,
			dista = 5,
			bonus = 20,
			type = "poison",
			cd = 40
		     }
		 },
[3] = {x = {
			pok = Persian,
			spell = "Headbutt",
			minLv = 30,
			ex = 5300007,
			base1 = 270,
			base2 = 290,
			dista = 1,
			bonus = 8,
			type = "normal",
			cd = 30
		     }
		 },
[103] = {x = {
			pok = Primeape,
			spell = "Punch Area",
			minLv = 50,
			ex = 5700007,
			base1 = 490,
			base2 = 515,
			dista = 5,
			bonus = 10,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[88] = {x = {
			pok = arcanine,
			spell = "Fire Blast",
			minLv = 80,
			ex = 5900007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[493] = {x = {
			pok = shinyarcanine,
			spell = "Fire Blast",
			minLv = 100,
			ex = 590007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[104] = {x = {
			pok = poliwrath,
			spell = "Water Oath",
			minLv = 65,
			ex = 6200007,
			base1 = 425,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[491] = {x = {
			pok = darkabra,
			spell = "Shadow Storm",
			minLv = 120,
			ex = 630007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 52,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[219] = {x = {
			pok = kadabra,
			spell = "Reflect",
			minLv = 45,
			ex = 6400007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 50
		     }
		 },
[218] = {x = {
			pok = alakazam,
			spell = "Reflect",
			minLv = 80,
			ex = 6500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 40
		     }
		 },
[349] = {x = {
			pok = shinyalakazam,
			spell = "Reflect",
			minLv = 100,
			ex = 650007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "psychic",
			target = "no",
			cd = 30
		     }
		 },
[113] = {x = {
			pok = machoke,
			spell = "Multi Punch",
			minLv = 45,
			ex = 6700007,
			base1 = 325,
			base2 = 350,
			dista = 1,
			bonus = 8,
			type = "fighting",
			cd = 40
		     }
		 },
[121] = {x = {
			pok = machamp,
			spell = "Multi Punch",
			minLv = 80,
			ex = 6800007,
			base1 = 465,
			base2 = 475,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 40
		     }
		 },
[358] = {x = {
			pok = shinymachamp,
			spell = "Multi Punch",
			minLv = 100,
			ex = 680007,
			base1 = 930,
			base2 = 950,
			dista = 1,
			bonus = 30,
			type = "fighting",
			cd = 40
		     }
		 },
[240] = {x = {
			pok = victreebel,
			spell = "Trepar Wave",
			minLv = 50,
			ex = 7100007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[108] = {x = {
			pok = tentacruel,
			spell = "Water Oath",
			minLv = 80,
			ex = 7300007,
			base1 = 420,
			base2 = 450,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[489] = {x = {
			pok = shinytentacruel,
			spell = "Water Oath",
			minLv = 100,
			ex = 730007,
			base1 = 840,
			base2 = 900,
			dista = 5,
			bonus = 26,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[247] = {x = {
			pok = graveler,
			spell = "Falling Rocks",
			minLv = 40,
			ex = 7500007,
			base1 = 440,
			base2 = 450,
			dista = 5,
			bonus = 8,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[116] = {x = {
			pok = golem,
			spell = "Falling Rocks",
			minLv = 70,
			ex = 7600007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[355] = {x = {
			pok = shinygolem,
			spell = "Falling Rocks",
			minLv = 85,
			ex = 760007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[288] = {x = {
			pok = golemroll,
			spell = "Falling Rocks",
			minLv = 70,
			ex = 7600007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[220] = {x = {
			pok = Rapidash,
			spell = "Fire Blast",
			minLv = 50,
			ex = 7800007,
			base1 = 450,
			base2 = 470,
			dista = 5,
			bonus = 11,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[41] = {x = {
			pok = Slowbro,
			spell = "Water Oath",
			minLv = 45,
			ex = 8000007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		},

[57] = {x = {
			pok = Farfetchd,
			spell = "Sticks",
			minLv = 45,
			ex = 8300007,
			base1 = 370,
			base2 = 390,
			dista = 5,
			bonus = 8,
			type = "flying",
			cd = 40
		     }
		 },
[520] = {x = {
			pok = eliteFarfetchd,
			spell = "Sticks",
			minLv = 80,
			ex = 830007,
			base1 = 740,
			base2 = 780,
			dista = 5,
			bonus = 16,
			type = "flying",
			cd = 40
		     }
		 },
[120] = {x = {
			pok = dodrio,
			spell = "Sand Oath",
			minLv = 45,
			ex = 8500007,
			base1 = 280,
			base2 = 310,
			dista = 5,
			bonus = 8,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[351] = {x = {
			pok = shinydodrio,
			spell = "Sand Oath",
			minLv = 65,
			ex = 850007,
			base1 = 560,
			base2 = 620,
			dista = 5,
			bonus = 16,
			type = "earth",
target = "no",
			cd = 35
		     }
		 },
[110] = {x = {
			pok = dewgong,
			spell = "Blizzard",
			minLv = 65,
			ex = 8700007,
			base1 = 490,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[47] = {x = {
			pok = Muk,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 8900007,
			base1 = 435,
			base2 = 455,
			dista = 5,
			bonus = 12,
			type = "earth",
			cd = 40
		     }
		 },
[488] = {x = {
			pok = shinyMuk,
			spell = "Gastro Acid",
			minLv = 100,
			ex = 890007,
			base1 = 870,
			base2 = 910,
			dista = 5,
			bonus = 24,
			type = "earth",
			cd = 40
		     }
		 },
[72] = {x = {
			pok = Cloyster,
			spell = "Blizzard",
			minLv = 60,
			ex = 9100007,
			base1 = 475,
			base2 = 495,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[65] = {x = {
			pok = haunter,
			spell = "Shadow Storm",
			minLv = 45,
			ex = 9300007,
			base1 = 450,
			base2 = 470,
			dista = 5,
			bonus = 8,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[244] = {x = {
			pok = gengar,
			spell = "Shadow Storm",
			minLv = 80,
			ex = 9400007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[798] = {x = {
			pok = shinygengar,
			spell = "Shadow Storm",
			minLv = 100,
			ex = 940007,
			base1 = 1140,
			base2 = 1200,
			dista = 5,
			bonus = 26,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
 [248] = {x = {
			pok = onix,
			spell = "Falling Rocks",
			minLv = 50,
			ex = 9500007,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 11,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[292] = {x = {
			pok = crystalonix,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 950007,
			base1 = 960,
			base2 = 1000,
			dista = 5,
			bonus = 22,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[119] = {x = {
			nome = hypno,
			spell = "Focus",
			minLv = 55,
			ex = 9700007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[356] = {x = {
			nome = shinyhypno,
			spell = "Focus",
			minLv = 80,
			ex = 970007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 25
		     }
		 },
[245] = {x = {
			pok = kingler,
			spell = "Water Oath",
			minLv = 40,
			ex = 9900007,
			base1 = 320,
			base2 = 335,
			dista = 5,
			bonus = 7,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[500] = {x = {
			pok = shinykingler,
			spell = "Water Oath",
			minLv = 60,
			ex = 990007,
			base1 = 640,
			base2 = 670,
			dista = 5,
			bonus = 14,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[125] = {x = {
			pok = electrode,
			spell = "Selfdestruct",
			minLv = 35,
			ex = 1010007,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 80,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[516] = {x = {
			pok = shinyelectrode,
			spell = "Selfdestruct",
			minLv = 60,
			ex = 101007,
			base1 = 12000,
			base2 = 12000,
			dista = 5,
			bonus = 160,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[286] = {x = {
			pok = electroderoll,
			spell = "Selfdestruct",
			minLv = 35,
			ex = 1010007,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 80,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[46] = {x = {
			pok = Exeggutor,
			spell = "Trepar Wave",
			minLv = 80,
			ex = 1030007,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 12,
			type = "grass",
			target = "no",
			cd = 40
		     }
		 },

[197] = {x = {
			pok = Marowak,
			spell = "Bone Quake",
			minLv = 55,
			ex = 1050007,
			base1 = 455,
			base2 = 475,
			dista = 5,
			bonus = 10,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[360] = {x = {
			pok = shinyMarowak,
			spell = "Bone Quake",
			minLv = 65,
			ex = 105007,
			base1 = 910,
			base2 = 950,
			dista = 5,
			bonus = 20,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[38] = {x = {
			pok = Hitmonchan,
			spell = "Punch Area",
			minLv = 60,
			ex = 1070007,
			base1 = 520,
			base2 = 540,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[486] = {x = {
			pok = eliteHitmonchan,
			spell = "Punch Area",
			minLv = 100,
			ex = 107007,
			base1 = 1040,
			base2 = 1080,
			dista = 5,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[11] = {x = {
			pok = Lickitung,
			spell = "Headbutt",
			minLv = 55,
			ex = 1080007,
			base1 = 265,
			base2 = 285,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 25
		     }
		 },
[200] = {x = {
			pok = Rhydon,
			spell = "Falling Rocks",
			minLv = 75,
			ex = 1120007,
			base1 = 175,
			base2 = 180,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[366] = {x = {
			pok = shinyRhydon,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 112007,
			base1 = 350,
			base2 = 360,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[18] = {x = {
			pok = Tangela,
			spell = "Plant Bomb",
			minLv = 55,
			ex = 1140007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "grass",
			cd = 30
		     }
		 },
[370] = {x = {
			pok = shinyTangela,
			spell = "Plant Bomb",
			minLv = 80,
			ex = 114007,
			base1 = 700,
			base2 = 740,
			dista = 5,
			bonus = 20,
			type = "grass",
			cd = 30
		     }
		 },
[198] = {x = {
			pok = Kangaskhan,
			spell = "Earthquake",
			minLv = 80,
			ex = 1150007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[276] = {x = {
			pok = seadra,
			spell = "Water Oath",
			minLv = 45,
			ex = 1170007,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 6,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[515] = {x = {
			pok = shinyseadra,
			spell = "Water Oath",
			minLv = 60,
			ex = 117007,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[272] = {x = {
			pok = Seaking,
			spell = "Water Oath",
			minLv = 35,
			ex = 1190007,
			base1 = 300,
			base2 = 320,
			dista = 5,
			bonus = 7,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[249] = {x = {
			pok = Starmie,
			spell = "Water Oath",
			minLv = 75,
			ex = 1210007,
			base1 = 305,
			base2 = 325,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[246] = {x = {
			pok = MrMime,
			spell = "Reflect",
			minLv = 60,
			ex = 1220007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[361] = {x = {
			pok = shinyMrMime,
			spell = "Reflect",
			minLv = 85,
			ex = 122007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[15] = {x = {
			pok = Scyther,
			spell = "Poison Oath",
			minLv = 80,
			ex = 1230007,
			base1 = 380,
			base2 = 420,
			dista = 5,
			bonus = 13,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[525] = {x = {
			pok = shinyScyther,
			spell = "Poison Oath",
			minLv = 100,
			ex = 123007,
			base1 = 760,
			base2 = 840,
			dista = 5,
			bonus = 26,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[282] = {x = {
			pok = Jynx,
			spell = "Blizzard",
			minLv = 80,
			ex = 1240007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[499] = {x = {
			pok = shinyJynx,
			spell = "Blizzard",
			minLv = 100,
			ex = 124007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[281] = {x = {
			pok = Electabuzz,
			spell = "Electric Storm",
			minLv = 80,
			ex = 1250007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[497] = {x = {
			pok = shinyElectabuzz,
			spell = "Electric Storm",
			minLv = 100,
			ex = 125007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[76] = {x = {
			pok = Magmar,
			spell = "Magma Storm",
			minLv = 80,
			ex = 1260007,
			base1 = 480,
			base2 = 520,
			dista = 5,
			bonus = 13,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[371] = {x = {
			pok = shinyMagmar,
			spell = "Magma Storm",
			minLv = 100,
			ex = 126007,
			base1 = 960,
			base2 = 1040,
			dista = 5,
			bonus = 26,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[53] = {x = {
			pok = Pinsir,
			spell = "Poison Oath",
			minLv = 45,
			ex = 1270007,
			base1 = 345,
			base2 = 360,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[365] = {x = {
			pok = shinyPinsir,
			spell = "Poison Oath",
			minLv = 70,
			ex = 127007,
			base1 = 690,
			base2 = 720,
			dista = 5,
			bonus = 16,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[93] = {x = {
			pok = Tauros,
			spell = "Afro Rest",
			minLv = 45,
			ex = 1280007,
			base1 = 8100,
			base2 = 8100,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[367] = {x = {
			pok = shinyTauros,
			spell = "Afro Rest",
			minLv = 65,
			ex = 128007,
			base1 = 16200,
			base2 = 16200,
			dista = 5,
			bonus = 16,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[117] = {x = {
			pok = Gyarados,
			spell = "Water Oath",
			minLv = 85,
			ex = 1300007,
			base1 = 505,
			base2 = 520,
			dista = 5,
			bonus = 15,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[327] = {x = {
			pok = miniGyarados,
			spell = "Water Oath",
			minLv = 40,
			ex = 1300007,
			base1 = 250,
			base2 = 260,
			dista = 5,
			bonus = 7,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[528] = {x = {
			pok = redGyarados,
			spell = "Water Oath",
			minLv = 100,
			ex = 130007,
			base1 = 1010,
			base2 = 1040,
			dista = 5,
			bonus = 30,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[193] = {x = {
			pok = Lapras,
			spell = "Blizzard",
			minLv = 80,
			ex = 1310007,
			base1 = 520,
			base2 = 540,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[28] = {x = {
			pok = ditto,
			spell = "Transform",
			minLv = 40,
			ex = 1320001,
			base1 = 0,
			base2 = 0,
			dista = 10,
			bonus = 0,
                        target = "yes",
			type = "normal",
			cd = 50
		     }
		 },
[215] = {x = {
			pok = Vaporeon,
			spell = "Water Oath",
			minLv = 55,
			ex = 1340007,
			base1 = 355,
			base2 = 375,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[368] = {x = {
			pok = shinyVaporeon,
			spell = "Water Oath",
			minLv = 80,
			ex = 134007,
			base1 = 710,
			base2 = 750,
			dista = 5,
			bonus = 20,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[195] = {x = {
			pok = Jolteon,
			spell = "Missile Oath",
			minLv = 55,
			ex = 1350007,
			base1 = 355,
			base2 = 375,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[357] = {x = {
			pok = shinyJolteon,
			spell = "Missile Oath",
			minLv = 80,
			ex = 135007,
			base1 = 710,
			base2 = 750,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[14] = {x = {
			pok = Flareon,
			spell = "Fire Blast",
			minLv = 55,
			ex = 1360007,
			base1 = 425,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[354] = {x = {
			pok = shinyFlareon,
			spell = "Fire Blast",
			minLv = 80,
			ex = 136007,
			base1 = 850,
			base2 = 890,
			dista = 5,
			bonus = 20,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[97] = {x = {
			pok = Porygon,
			spell = "Focus",
			minLv = 45,
			ex = 1370007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[92] = {x = {
			pok = Omanyte,
			spell = "Ancient Power",
			minLv = 20,
			ex = 1380007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 6,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[192] = {x = {
			pok = Omastar,
			spell = "Ancient Power",
			minLv = 80,
			ex = 1390007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 13,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[98] = {x = {
			pok = Kabuto,
			spell = "Ancient Power",
			minLv = 20,
			ex = 1400007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 6,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[13] = {x = {
			pok = Kabutops,
			spell = "Ancient Power",
			minLv = 80,
			ex = 1410007,
			base1 = 520,
			base2 = 550,
			dista = 5,
			bonus = 13,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[10] = {x = {
			pok = Aerodactyl,
			spell = "Ancient Power",
			minLv = 100,
			ex = 1420007,
			base1 = 650,
			base2 = 670,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[51] = {x = {
			pok = Snorlax,
			spell = "Multi Punch",
			minLv = 90,
			ex = 1430007,
			base1 = 490,
			base2 = 510,
			dista = 1,
			bonus = 17,
			type = "fighting",
			cd = 40
		     }
		 },
[348] = {x = {
			pok = bigSnorlax,
			spell = "Multi Punch",
			minLv = 150,
			ex = 143000007,
			base1 = 980,
			base2 = 1020,
			dista = 1,
			bonus = 34,
			type = "fighting",
			cd = 40
		     }
		 },
[258] = {x = {
			pok = restSnorlax,
			spell = "Zzzzz",
			minLv = 90,
			ex = 14300007,
			base1 = 0,
			base2 = 0,
			dista = 1,
			bonus = 0,
			type = "normal",
			cd = 2
		     }
		 },
[283] = {x = {
			pok = Articuno,
			spell = "Blizzard",
			minLv = 250,
			ex = 1440007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[199] = {x = {
			pok = Zapdos,
			spell = "Electric Storm",
			minLv = 250,
			ex = 1450007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[265] = {x = {
			pok = Moltres,
			spell = "Fire Blast",
			minLv = 250,
			ex = 1460007,
			base1 = 64100,
			base2 = 64200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[61] = {x = {
			pok = Dragonair,
			spell = "Hyper Beam",
			minLv = 60,
			ex = 1480007,
			base1 = 460,
			base2 = 500,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[352] = {x = {
			pok = shinyDragonair,
			spell = "Hyper Beam",
			minLv = 80,
			ex = 148007,
			base1 = 920,
			base2 = 1000,
			dista = 5,
			bonus = 20,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[210] = {x = {
			pok = Dragonite,
			spell = "Hyper Beam",
			minLv = 100,
			ex = 1490007,
			base1 = 630,
			base2 = 850,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 45
		     }
		 },
[34] = {x = {
			pok = Mewtwo,
			spell = "Reflect",
			minLv = 700,
			ex = 1500007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[9] = {x = {
			pok = Mew,
			spell = "Reflect",
			minLv = 600,
			ex = 1510007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[536] = {x = {
			pok = bayleef,
			spell = "Trepar Wave",
			minLv = 40,
			ex = 1530007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[581] = {x = {
			pok = Meganium,
			spell = "Trepar Wave",
			minLv = 85,
			ex = 1540007,
			base1 = 595,
			base2 = 610,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 40
		     }
		 },
[597] = {x = {
			pok = quilava,
			spell = "Fire Blast",
			minLv = 40,
			ex = 1560007,
			base1 = 440,
			base2 = 450,
			dista = 5,
			bonus = 8,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[625] = {x = {
			pok = typhlosion,
			spell = "Fire Blast",
			minLv = 85,
			ex = 1570007,
			base1 = 195,
			base2 = 210,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[545] = {x = {
			nome = Croconaw,
			spell = "Water Oath",
			minLv = 40,
			ex = 1590007,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[554] = {x = {
			nome = Feraligatr,
			spell = "Water Oath",
			minLv = 85,
			ex = 1600007,
			base1 = 485,
			base2 = 510,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[586] = {x = {
			pok = noctowl,
			spell = "Echoed Voice",
			minLv = 65,
			ex = 1640007,
			base1 = 340,
			base2 = 360,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[573] = {x = {
			pok = ledian,
			spell = "Poison Oath",
			minLv = 35,
			ex = 1660007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 8,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },
[534] = {x = {
			pok = Ariados,
			spell = "Poison Oath",
			minLv = 35,
			ex = 1680007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 7,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[544] = {x = {
			pok = Crobat,
			spell = "Gastro Acid",
			minLv = 80,
			ex = 1690007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "poison",
			cd = 30
		     }
		 },
[571] = {x = {
			pok = lanturn,
			spell = "Water Oath",
			minLv = 75,
			ex = 1710007,
			base1 = 325,
			base2 = 335,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[622] = {x = {
			pok = Togetic,
			spell = "Great Love",
			minLv = 60,
			ex = 1760007,
			base1 = 500,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[658] = {x = {
			pok = Xatu,
			spell = "Psy Oath",
			minLv = 75,
			ex = 1780007,
			base1 = 400,
			base2 = 420,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 35
		     }
		 },
[555] = {x = {
			pok = Flaaffy,
			spell = "Electric Storm",
			minLv = 40,
			ex = 1800007,
			base1 = 360,
			base2 = 380,
			dista = 5,
			bonus = 8,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[533] = {x = {
			pok = Ampharos,
			spell = "Electric Storm",
			minLv = 85,
			ex = 1810007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[537] = {x = {
			pok = Bellossom,
			spell = "Plant Bomb",
			minLv = 50,
			ex = 1820007,
			base1 = 375,
			base2 = 405,
			dista = 5,
			bonus = 10,
			type = "grass",
			cd = 30
		     }
		 },
[535] = {x = {
			pok = Azumarill,
			spell = "Water Oath",
			minLv = 65,
			ex = 1840007,
			base1 = 315,
			base2 = 335,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 25
		     }
		 },
[615] = {x = {
			pok = Sudowoodo,
			spell = "Falling Rocks",
			minLv = 80,
			ex = 1850007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
[592] = {x = {
			pok = politoed,
			spell = "Water Oath",
			minLv = 65,
			ex = 1860007,
			base1 = 415,
			base2 = 445,
			dista = 5,
			bonus = 10,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[569] = {x = {
			pok = jumpluff,
			spell = "Leaf Blade",
			minLv = 50,
			ex = 1890007,
			base1 = 210,
			base2 = 240,
			dista = 5,
			bonus = 9,
			type = "grass",
target = "no",
			cd = 35
		     }
		 },
[532] = {x = {
			pok = aipom,
			spell = "Punch Area",
			minLv = 40,
			ex = 1900007,
			base1 = 335,
			base2 = 355,
			dista = 5,
			bonus = 6,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },

[659] = {x = {
			pok = Yanma,
			spell = "Poison Oath",
			minLv = 50,
			ex = 1930007,
			base1 = 280,
			base2 = 320,
			dista = 5,
			bonus = 8,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[595] = {x = {
			pok = Quaqsire,
			spell = "Water Oath",
			minLv = 65,
			ex = 1950007,
			base1 = 320,
			base2 = 335,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[553] = {x = {
			pok = espeon,
			spell = "Psy Oath",
			minLv = 55,
			ex = 1960007,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "psychic",
			target = "no",
			cd = 35
		     }
		 },
[628] = {x = {
			pok = Umbreon,
			spell = "Dark Storm",
			minLv = 55,
			ex = 1970007,
			base1 = 550,
			base2 = 570,
			dista = 1,
			bonus = 10,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[584] = {x = {
			pok = murkrow,
			spell = "Headbutt",
			minLv = 50,
			ex = 1980007,
			base1 = 310,
			base2 = 320,
			dista = 1,
			bonus = 10,
			type = "normal",
			cd = 20
		     }
		 },
[606] = {x = {
			pok = Slowking,
			spell = "Hydro Cannon",
			minLv = 100,
			ex = 1990007,
			base1 = 480,
			base2 = 510,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 45
		     }
		 },
[583] = {x = {
			pok = misdreavus,
			spell = "Shadow Storm",
			minLv = 80,
			ex = 2000007,
			base1 = 650,
			base2 = 660,
			dista = 5,
			bonus = 17,
			type = "ghost",
target = "no",
			cd = 50
		     }
		 },
[629] = {x = {
			pok = unowna,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2011007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[630] = {x = {
			pok = unownb,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2012007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[631] = {x = {
			pok = unownc,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2013007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[632] = {x = {
			pok = unownd,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2014007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[633] = {x = {
			pok = unowne,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2015007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[634] = {x = {
			pok = unownf,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2016007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[635] = {x = {
			pok = unowng,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2017007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[636] = {x = {
			pok = unownh,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2018007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[637] = {x = {
			pok = unowni,
			spell = "Psy Oath",
			minLv = 100,
			ex = 2019007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[638] = {x = {
			pok = unownj,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20110007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[639] = {x = {
			pok = unownk,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20111007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[640] = {x = {
			pok = unownl,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20112007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[641] = {x = {
			pok = unownm,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20113007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[642] = {x = {
			pok = unownn,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20114007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[643] = {x = {
			pok = unowno,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20115007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[644] = {x = {
			pok = unownp,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20116007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[645] = {x = {
			pok = unownq,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20117007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[646] = {x = {
			pok = unownr,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20118007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[647] = {x = {
			pok = unowns,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20119007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[648] = {x = {
			pok = unownt,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20120007,
			base1 = 50,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[649] = {x = {
			pok = unownu,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20121007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[650] = {x = {
			pok = unownv,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20122007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[651] = {x = {
			pok = unownx,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20123007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[652] = {x = {
			pok = unownw,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20124007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[653] = {x = {
			pok = unowny,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20125007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[654] = {x = {
			pok = unownz,
			spell = "Psy Oath",
			minLv = 100,
			ex = 20126007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 30
		     }
		 },
[656] = {x = {
			pok = Wobbuffet,
			spell = "Reflect",
			minLv = 80,
			ex = 2020007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[558] = {x = {
			pok = girafarig,
			spell = "Psy Oath",
			minLv = 80,
			ex = 2030007,
			base1 = 385,
			base2 = 400,
			dista = 5,
			bonus = 11,
			type = "psychic",
target = "no",
			cd = 35
		     }
		 },
[556] = {x = {
			pok = forretress,
			spell = "Harden",
			minLv = 65,
			ex = 2050007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
 [724] = {x = {
			pok = Steelix,
			spell = "Falling Rocks",
			minLv = 100,
			ex = 2080007,
			base1 = 580,
			base2 = 610,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 50
		     }
		 },
 [560] = {x = {
			pok = granbull,
			spell = "Destroyer Hand",
			minLv = 65,
 			ex = 2100007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "earth",
target = "no",
			cd = 30
			}
		},

[601] = {x = {
			pok = Scizor,
			spell = "Poison Oath",
			minLv = 100,
			ex = 2120007,
			base1 = 540,
			base2 = 570,
			dista = 5,
			bonus = 17,
			type = "bug",
target = "no",
			cd = 35
		     }
		 },

[561] = {x = {
			pok = Heracross,
			spell = "Poison Oath",
			minLv = 80,
			ex = 2140007,
			base1 = 390,
			base2 = 420,
			dista = 5,
			bonus = 11,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[610] = {x = {
			pok = Sneasel,
			spell = "Ice Punch",
			minLv = 55,
			ex = 2150007,
			base1 = 275,
			base2 = 290,
			dista = 1,
			bonus = 10,
			type = "ice",
			cd = 25
		     }
		 },
[655] = {x = {
			pok = Ursaring,
			spell = "Destroyer Hand",
			minLv = 90,
			ex = 2170007,
			base1 = 440,
			base2 = 490,
			dista = 1,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },

[577] = {x = {
			pok = magcargo,
			spell = "Magma Storm",
			minLv = 75,
			ex = 2190007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 12,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },

[590] = {x = {
			nome = Piloswine,
			spell = "Blizzard",
			minLv = 80,
			ex = 2210007,
			base1 = 485,
			base2 = 505,
			dista = 5,
			bonus = 8,
			type = "ice",
target = "no",
			cd = 50

		     }
		 },
[543] = {x = {
			pok = Corsola,
			spell = "Water Oath",
			minLv = 50,
			ex = 2220007,
			base1 = 330,
			base2 = 350,
			dista = 5,
			bonus = 8,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[587] = {x = {
			pok = octillery,
			spell = "Water Oath",
			minLv = 70,
			ex = 2240007,
			base1 = 385,
			base2 = 425,
			dista = 5,
			bonus = 12,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[548] = {x = {
			pok = delibird,
			spell = "Windstorm",
			minLv = 50,
			ex = 2250007,
			base1 = 470,
			base2 = 530,
			dista = 5,
			bonus = 10,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[578] = {x = {
			pok = mantine,
			spell = "X-Mantine",
			minLv = 80,
			ex = 2260007,
			base1 = 575,
			base2 = 605,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 45
		     }
		 },
[604] = {x = {
			pok = skarmory,
			spell = "Wing Storm",
			minLv = 85,
			ex = 2270007,
			base1 = 565,
			base2 = 575,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 50
		     }
		 },
[566] = {x = {
			pok = houndoom,
			spell = "Fire Blast",
			minLv = 80,
			ex = 2290007,
			base1 = 480,
			base2 = 510,
			dista = 5,
			bonus = 12,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[570] = {x = {
			pok = kingdra,
			spell = "Water Oath",
			minLv = 100,
			ex = 2300007,
			base1 = 150,
			base2 = 160,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[549] = {x = {
			pok = Donphan,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2320007,
			base1 = 420,
			base2 = 450,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[664] = {x = {
			pok = Donphan,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2320007,
			base1 = 420,
			base2 = 450,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 50
		     }
		 },
[593] = {x = {
			pok = Porygon2,
			spell = "Focus",
			minLv = 75,
			ex = 2330007,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 35
		     }
		 },
[613] = {x = {
			pok = Stantler,
			spell = "Destroyer Hand",
			minLv = 55,
			ex = 2340007,
			base1 = 385,
			base2 = 400,
			dista = 1,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[339] = {x = {
			pok = Smeargle3,
			spell = "Gastro Acid",
			minLv = 40,
			ex = 2350007,
			base1 = 350,
			base2 = 370,
			dista = 5,
			bonus = 10,
			type = "poison",
			cd = 40
		     }
		 },
[340] = {x = {
			pok = Smeargle4,
			spell = "Bullet Seed",
			minLv = 40,
			ex = 2350007,
			base1 = 475,
			base2 = 495,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[342] = {x = {
			pok = Smeargle5,
		spell = "Solar Beam",
			minLv = 40,
			ex = 2350007,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 8,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[344] = {x = {
			pok = Smeargle6,
			spell = "Multi Punch",
			minLv = 40,
			ex = 2350007,
			base1 = 325,
			base2 = 350,
			dista = 1,
			bonus = 8,
			type = "fighting",
			cd = 40
		     }
		 },
[345] = {x = {
			pok = Smeargle7,
			spell = "Poison Oath",
			minLv = 40,
				ex = 2350007,
			base1 = 225,
			base2 = 245,
			dista = 5,
			bonus = 7,
			type = "bug",
target = "no",
			cd = 30
		     }
		 },
[562] = {x = {
			pok = Hitmontop,
			spell = "Multi Punch",
			minLv = 60,
			ex = 2370007,
			base1 = 490,
			base2 = 500,
			dista = 1,
			bonus = 15,
			type = "fighting",
			cd = 30
		     }
		 },
[582] = {x = {
			pok = miltank,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2410007,
			base1 = 415,
			base2 = 430,
			dista = 1,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[675] = {x = {
			pok = miltank,
			spell = "Destroyer Hand",
			minLv = 80,
			ex = 2410007,
			base1 = 415,
			base2 = 430,
			dista = 1,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[538] = {x = {
			pok = Blissey,
			spell = "Great Love",
			minLv = 100,
			ex = 2420007,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[599] = {x = {
			pok = Raikou,
			spell = "Electric Storm",
			minLv = 250,
			ex = 2430007,
			base1 = 50100,
			base2 = 50200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 50
		     }
		 },
[552] = {x = {
			pok = Entei,
			spell = "Fire Blast",
			minLv = 250,
			ex = 2440007,
			base1 = 35000,
			base2 = 37000,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[616] = {x = {
			pok = Suicune,
			spell = "Blizzard",
			minLv = 250,
			ex = 2450007,
			base1 = 50100,
			base2 = 50200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 50
		     }
		 },
[594] = {x = {
			pok = pupitar,
			spell = "Epicenter",
			minLv = 60,
			ex = 2470007,
			base1 = 415,
			base2 = 445,
			dista = 5,
			bonus = 12,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[626] = {x = {
			pok = tyranitar,
			spell = "Epicenter",
			minLv = 100,
			ex = 2480007,
			base1 = 550,
			base2 = 600,
			dista = 5,
			bonus = 17,
			type = "earth",
target = "no",
			cd = 40
		     }
		 },
[575] = {x = {
			pok = Lugia,
			spell = "Water Oath",
			minLv = 600,
			ex = 2490007,
			base1 = 30800,
			base2 = 30900,
			dista = 5,
			bonus = 50,
			type = "water",
			target = "no",
			cd = 35
		     }
		 },
[563] = {x = {
			pok = HoOh,
			spell = "Fire Blast",
			minLv = 800,
			ex = 2500007,
			base1 = 40000,
			base2 = 41000,
			dista = 5,
			bonus = 50,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[539] = {x = {
			pok = Celebi,
			spell = "Leaf Blade",
			minLv = 600,
			ex = 2510007,
			base1 = 5000,
			base2 = 6000,
			dista = 5,
			bonus = 50,
			type = "grass",
			target = "no",
			cd = 50
		     }
		 },
}

function onSay(cid)
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end
	pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
	if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn\'t recognize this move.")
	return 0
	end
	if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have enough level to  this move.")
	return 0
	end
	if exhaustion.get(cid, pokemon.x.ex) then
		seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1))
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..seconds.." seconds to  this move again.")
		return 0
		end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then
	doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215)
	setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	return true
	end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then
		if math.random(1,100) <= 33 then
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180)
		local levels = getPlayerLevel(cid)
		doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		return true
		end
	end
if pokemon.x.target ~= "no" then
	if not isMonster(getCreatureTarget(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")
	return 0
	end

	if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to  this move.")
	return 0
	end

		if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then
		return 0
		end
end
	if pokemon.x.type == "flying" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 1)
		elementa = FLYDAMAGE
	elseif pokemon.x.type == "ground" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 2)
		elementa = GROUNDDAMAGE
	elseif pokemon.x.type == "electric" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 3)
		elementa = ELECTRICDAMAGE
	elseif pokemon.x.type == "ghost" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 4)
		elementa = GHOSTDAMAGE
	elseif pokemon.x.type == "normal" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 5)
		elementa = NORMALDAMAGE
	elseif pokemon.x.type == "fighting" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 6)
		elementa = FIGHTINGDAMAGE
	elseif pokemon.x.type == "poison" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 7)
		elementa = POISONDAMAGE
	elseif pokemon.x.type == "rock" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 8)
		elementa = ROCKDAMAGE
	elseif pokemon.x.type == "bug" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 9)
		elementa = BUGDAMAGE
	elseif pokemon.x.type == "fire" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 10)
		elementa = FIREDAMAGE
	elseif pokemon.x.type == "water" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 11)
		elementa = WATERDAMAGE
	elseif pokemon.x.type == "grass" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 12)
		elementa = GRASSDAMAGE
	elseif pokemon.x.type == "psychic" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 13)
		elementa = PSYCHICDAMAGE
	elseif pokemon.x.type == "ice" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 14)
		elementa = ICEDAMAGE
	elseif pokemon.x.type == "dragon" then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 1700, 15)
		elementa = DRAGONDAMAGE
	end
	local element = elementa
	local num1 = (pokemon.x.base1)
	local num2 = (pokemon.x.base2)
	local num3 = (pokemon.x.bonus)




local ball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
local pokename = getItemSpecialDescription(ball.uid)
local boost = pokename:match("\+(%d+)")

if(pokename:find("\+(%d+)"))then 
	num1 = ((pokemon.x.base1)*(boost*(boostrate*2)))
	num2 = ((pokemon.x.base2)*boost)
	num3 = (pokemon.x.bonus)
else
	num1 = (pokemon.x.base1)
	num2 = (pokemon.x.base2)
	num3 = (pokemon.x.bonus)
end


	setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3))))
	if pokemon.x.spell == "Windstorm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 42})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 42})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 42})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 42})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = CONST_ME_POFF})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = CONST_ME_POFF})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = CONST_ME_POFF})
	return 0
	elseif pokemon.x.spell == "Wing Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
		return 0
elseif pokemon.x.spell == "Transform" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd, pokemon.x.base1, pokemon.x.base2, pokemon.x.bonus, pokemon.x.target, pokemon.x.type)
doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(getCreatureTarget(cid)), 130000000)
return 0
----------------------------------------------------------------ADICIONADOS------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------------------------------------
               
			   elseif pokemon.x.spell == "Ice Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 28)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 43)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
		-----------------------------------------------------ADICIONADAS-------------------------------------------------------------------
		-------------------------      -------------------------      -------------------------      -------------------------      -------------------------
                elseif pokemon.x.spell == "Hyper Beam" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 152)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 156)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 151)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 158)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 155)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 149)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 153)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 150)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 157)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 154)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
 elseif pokemon.x.spell == "Shadow Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 140})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 140})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 140})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 140})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 140})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 140})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 140})
	return 0
	        elseif pokemon.x.spell == "Magma Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 236})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 236})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 236})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 236})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 236})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 236})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 236})
	return 0
	        elseif pokemon.x.spell == "Wing Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 249})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 249})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 249})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 249})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 249})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 249})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 249})
	return 0

	        elseif pokemon.x.spell == "Dark Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 222})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 222})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 222})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 222})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 223})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 223})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 223})
	return 0

	        elseif pokemon.x.spell == "Electric Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 225})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 225})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 225})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 225})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 225})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 225})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 225})
	return 0

elseif pokemon.x.spell == "Zap Cannon" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Aurora Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 109)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 108)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 106)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 107)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
	elseif pokemon.x.spell == "Echoed Voice" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 39)
		end
		return 0
	elseif pokemon.x.spell == "Dragon Breath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 47)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 116)
		end
		return 0
	            elseif pokemon.x.spell == "Epicenter" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function ep1(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
	        local function ep2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi2, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
	        local function ep3(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), epi3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 127)
	        end
	        end
                addEvent(ep1, 000, {cid = cid, cb = cb})
                addEvent(ep2, 500, {cid = cid, cb = cb})
                addEvent(ep3, 1000, {cid = cid, cb = cb})
	        return 0
	         elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
			    elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	        elseif pokemon.x.spell == "Falling Rocks" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 228})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 228})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 228})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 228})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 228})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 228})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 228})
	return 0

		        elseif pokemon.x.spell == "Mortal Gas" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function gas(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
	        end
	        end
	        local function gas2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
	        end
	        end
                addEvent(gas, 000, {cid = cid, cb = cb})
                addEvent(gas2, 500, {cid = cid, cb = cb})
                addEvent(gas, 1000, {cid = cid, cb = cb})
                addEvent(gas2, 1500, {cid = cid, cb = cb})
                addEvent(gas, 2200, {cid = cid, cb = cb})
                addEvent(gas2, 2700, {cid = cid, cb = cb})
                addEvent(gas, 3200, {cid = cid, cb = cb})
                addEvent(gas2, 3900, {cid = cid, cb = cb})
                addEvent(gas, 4400, {cid = cid, cb = cb})
                addEvent(gas2, 4900, {cid = cid, cb = cb})
	        return 0
elseif pokemon.x.spell == "Super Sonic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confd(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 31)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confd, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
		return 0
		elseif pokemon.x.spell == "Multi Punch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 350, {cid = cid})
		addEvent(slap, 700, {cid = cid})
		addEvent(slap, 950, {cid = cid})
		return 0
		
	elseif pokemon.x.spell == "Hypnosis" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local alvo = getCreatureTarget(cid)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)
		local function string(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		doSendMagicEffect(getThingPos(params.alvo), 136)
		end
		end
		end
		local function normalstr(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		setPlayerStorageValue(params.alvo, 3, -1)
		end
		end
		end
		addEvent(string, 250, {alvo = alvo})
		addEvent(string, 500, {alvo = alvo})
		addEvent(string, 750, {alvo = alvo})
		addEvent(string, 1000, {alvo = alvo})
		addEvent(string, 1250, {alvo = alvo})
		addEvent(string, 1500, {alvo = alvo})
		addEvent(string, 1750, {alvo = alvo})
		addEvent(string, 2000, {alvo = alvo})
		addEvent(string, 2250, {alvo = alvo})
		addEvent(string, 2500, {alvo = alvo})
		addEvent(string, 2750, {alvo = alvo})
		addEvent(string, 3000, {alvo = alvo})
		addEvent(normalstr, 3050, {alvo = alvo})
		return 0
	elseif pokemon.x.spell == "Tornado" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 42, ar = tor1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 42, ar = tor2, el = element})
		addEvent(tornado, 1000, {cid = cid, ef = 42, ar = tor3, el = element})
		addEvent(tornado, 500, {cid = cid, ef = CONST_ME_POFF, ar = tor1, el = null})
		addEvent(tornado, 1200, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor3, el = null})
	        return 0
		-------------------------      -------------------------      -------------------------      -------------------------
		-------------------------      -------------------------      -------------------------      -------------------------      -------------------------
		-------------------------      -------------------------      -------------------------      -------------------------
	        elseif pokemon.x.spell == "Blizzard" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 175})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 175})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 175})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 175})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 175})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 175})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 175})
	return 0
	        elseif pokemon.x.spell == "Great Love" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 147})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 147})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 147})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 147})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 147})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 147})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 147})
	return 0
		
                elseif pokemon.x.spell == "Harden" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local hardname = getCreatureName(getCreatureSummons(cid)[1])
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
		local oldpos = getThingPos(getCreatureSummons(cid)[1])
			local function efect(params)
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144)
			end
			end
			end
		local function chard(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
		setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1)
		end
		end
		end
		addEvent(efect, 100, {cid = cid, hardname = hardname})
		addEvent(efect, 1600, {cid = cid, hardname = hardname})
		addEvent(efect, 3100, {cid = cid, hardname = hardname})
		addEvent(efect, 4600, {cid = cid, hardname = hardname})
		addEvent(efect, 6100, {cid = cid, hardname = hardname})
		addEvent(efect, 7600, {cid = cid, hardname = hardname})
		addEvent(efect, 9100, {cid = cid, hardname = hardname})
		addEvent(efect, 10600, {cid = cid, hardname = hardname})
		addEvent(chard, 11000, {cid = cid})
	        return 0
                elseif pokemon.x.spell == "Crusher Stomp" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 500, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 1000, {cid = cid, el = element, ar = cstomp, ef = 118})
		addEvent(storm, 1500, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 2000, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 2500, {cid = cid, el = element, ar = cstomp, ef = 118})
                addEvent(storm, 3000, {cid = cid, el = element, ar = cstomp, ef = 118})
	        return 0
		    elseif pokemon.x.spell == "Plant Bomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 54)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 4)
	        return 0
	elseif pokemon.x.spell == "Fire Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureTarget(cid)), 146)
		local function damage(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(params.cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		end
		end
		end
		addEvent(damage, 200, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Trepar Wave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsn, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tse, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tss, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), tsw, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 46)
		end
		return 0
	            elseif pokemon.x.spell == "Earthquake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 200, {cid = cid, el = element, ar = gl1, ef = 3})
		addEvent(storm, 0, {cid = cid, el = element, ar = gl1, ef = 127})
		addEvent(storm, 800, {cid = cid, el = element, ar = gl1, ef = 3})
		addEvent(storm, 600, {cid = cid, el = element, ar = gl2, ef = 127})
	        return 0
        elseif pokemon.x.spell == "Bone Quake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 200, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 0, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 800, {cid = cid, el = element, ar = gl1, ef = 177})
		addEvent(storm, 600, {cid = cid, el = element, ar = gl2, ef = 177})
	        return 0
elseif pokemon.x.spell == "Headbutt" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142)
		return 0
	elseif pokemon.x.spell == "Poison Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
        doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		return 0
elseif pokemon.x.spell == "Rage" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], FLYDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		end
		end
		end
		end
		addEvent(hit, 1000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 2000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 3000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 4000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 5000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 6000, {cid = cid, hitalvo = hitalvo})
		return 0
	 elseif pokemon.x.spell == "Poison Powder" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
		end
		return 0
	  elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	elseif pokemon.x.spell == "Poisonous Wing" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		end
		        elseif pokemon.x.spell == "Focus" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 1)
		local function quiet(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 132)
		end
		end
		end
		end
		local function desc(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 0)
		end
		end
		end
		end
		for calm = 1, 12 do
		addEvent(quiet, calm*500, {cid = cid})
		end
		addEvent(desc, 12*500, {cid = cid})
	        return 0
	   elseif pokemon.x.spell == "X-Mantine" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function attaque(params)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)

		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end

		addEvent(attaque, 0, {cid = cid})
		addEvent(attaque, 500, {cid = cid})
		return 0
			elseif pokemon.x.spell == "Afro Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 132)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 132)
		return 0
	elseif pokemon.x.spell == "Fire Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 61, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 61, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 61, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 61, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 61, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 61, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 63, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 63, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 63, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 63, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 63, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 63, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
elseif pokemon.x.spell == "Ancient Power" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function sandattack(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.wave, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-2, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-3, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-4, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-5, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-2, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-3, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-4, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-5, z=posicao.z}, ef = 137, wave = ap1})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-1, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-2, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-3, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-4, z=posicao.z}, ef = 18, wave = ap2})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+0, y=posicao.y-5, z=posicao.z}, ef = 18, wave = ap2})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+2, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+3, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+4, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+5, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+2, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+3, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+4, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+5, z=posicao.z}, ef = 137, wave = ap3})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+1, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+2, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+3, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+4, z=posicao.z}, ef = 18, wave = ap4})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+0, y=posicao.y+5, z=posicao.z}, ef = 18, wave = ap4})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap5})
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap6})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y+1, z=posicao.z}, ef = 137, wave = ap7})
	        addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y-1, z=posicao.z}, ef = 137, wave = ap7})
	        addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y-0, z=posicao.z}, ef = 18, wave = ap8})
                end
	        return 0
elseif pokemon.x.spell == "Hydro Cannon" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 65, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 65, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 65, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 65, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 65, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 65, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 67, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 67, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 67, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 67, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 67, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 67, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
               elseif pokemon.x.spell == "Solar Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
        elseif pokemon.x.spell == "Fear" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local t = getCreatureTarget(cid)
                setPlayerStorageValue(t, 5, 1)
                local function confused(params)
                if isCreature(params.t) then
                local spdc = getCreatureSpeed(params.t)
                if getCreatureLookDir(params.t) == 0 then
                confs = math.random(1,3)
                elseif getCreatureLookDir(params.t) == 1 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 0
                elseif confurandom >= 67 then
                confs = 2
                else
                confs = 3
                end
                elseif getCreatureLookDir(params.t) == 2 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 3
                elseif confurandom >= 67 then
                confs = 0
                else
                confs = 1
                end
                elseif getCreatureLookDir(params.t) == 3 then
                confs = math.random(0,2)
                end
                doPushCreature(params.t, confs, 1, 0)
                doSendMagicEffect(getThingPos(params.t), 214)
                end
                end
                local function nonc(params)
                if isCreature(params.t) then
                doChangeSpeed(params.t, -getCreatureSpeed(params.t))
                doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
                setPlayerStorageValue(params.t, 5, -1)
                end
                end
                doChangeSpeed(t, -( getCreatureSpeed(t)/3))
                doSendMagicEffect(getThingPos(t), 214)
                for i = 1, math.random(6,7) do
                addEvent(confused, 1000*i, {cid = cid, t = t})
                end
                addEvent(nonc, 7100, {cid - cid, t = t})
                return 0
		
	elseif pokemon.x.spell == "Agility" then
		local pos = getThingPos(getCreatureTarget(cid))
		local pos2 = getThingPos(getCreatureTarget(cid))
		local pos3 = getThingPos(getCreatureSummons(cid)[1])
		pos.x = pos.x + math.random(-1,1)
		pos.y = pos.y + math.random(-1,1)
		if hasSqm(pos)  then
		if getTileThingByPos(pos) and getTileThingByPos(pos).itemid >= 1 and not isInArray({919, 460, 4820, 4821, 4822, 4823, 4824, 4825}, getTileThingByPos(pos).itemid) and isWalkable(pos) then
		pos = getClosestFreeTile(getCreatureTarget(cid), pos)
        doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], pos, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
		else
		local newpos = getClosestFreeTile(getCreatureTarget(cid), pos)
		doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], newpos, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
   		end
		else
		doSendMagicEffect(pos3, 211)
		doTeleportThing(getCreatureSummons(cid)[1], pos3, false)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 159)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
		
	elseif pokemon.x.spell == "Toxic Spikes" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
	    doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 500, {cid = cid})
		addEvent(slap, 1000, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Horn Drill" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function slap(params)
		if isMonster(getCreatureTarget(params.cid)) then
	    doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		else
		end
		end
		addEvent(slap, 0, {cid = cid})
		addEvent(slap, 300, {cid = cid})
		addEvent(slap, 600, {cid = cid})
		addEvent(slap, 900, {cid = cid})
		addEvent(slap, 1200, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Healera" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
----------------------------------------------------------------ADICIONADOS-----------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------
----------------------------------------------------------------------------------------------------------------------------------
	elseif pokemon.x.spell == "Sonicboom" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 31)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)	
		return 0	
	 elseif pokemon.x.spell == "Sleep Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, sleepcondition, 255)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 27)
                return 0
	elseif pokemon.x.spell == "Destroyer Hand" then
	        doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	        doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	        exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	        doAreaCombatHealth(getCreatureSummons(cid)[1], GROUNDDAMAGE, getThingPos(getCreatureSummons(cid)[1]), eshock, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
	        local sps = getThingPos(getCreatureSummons(cid)[1])
	        sps.x = sps.x+1
	        sps.y = sps.y+1
	        doSendMagicEffect(sps, 127)
	        return 0
	elseif pokemon.x.spell == "Dream Eater" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 214)
		return 0

	
	elseif pokemon.x.spell == "Selfdestruct" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local function death(params)
		if isCreature(params.cid) then
		doCreatureAddHealth(getCreatureSummons(params.cid)[1], -getCreatureHealth(getCreatureSummons(cid)[1]))
		end
		end
		addEvent(death, 250, {cid = cid})
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		addEvent(doAreaCombatHealth, 150, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct2, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.7), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.8), 5)
		addEvent(doAreaCombatHealth, 250, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), destruct3, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.4), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.5), 5)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 33, 1)
	return 0
	elseif pokemon.x.spell == "Reflect" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 135)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 34, 1)
	return 0
	elseif pokemon.x.spell == "Shockwave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function sandattack(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.wave, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-1, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-2, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-3, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-4, z=posicao.z}, ef = 126, wave = swaven})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y-5, z=posicao.z}, ef = 126, wave = swaven})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+2, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+3, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+4, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+5, z=posicao.z}, ef = 125, wave = swaves})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+1, y=posicao.y+6, z=posicao.z}, ef = 125, wave = swaves})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x+2, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x+3, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x+4, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x+5, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x+6, y=posicao.y+1, z=posicao.z}, ef = 124, wave = swavee})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(sandattack, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 400, {cid = cid, ar = {x=posicao.x-2, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 800, {cid = cid, ar = {x=posicao.x-3, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 1200, {cid = cid, ar = {x=posicao.x-4, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		addEvent(sandattack, 1600, {cid = cid, ar = {x=posicao.x-5, y=posicao.y+1, z=posicao.z}, ef = 123, wave = swavew})
		end
	return 0
	elseif pokemon.x.spell == "Leaf Blade" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local function gas(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 50)
	        end
	        end
	        local function gas2(params)
	        if isCreature(getCreatureSummons(params.cid)[1]) then
	        doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 45)
	        end
	        end
                addEvent(gas, 000, {cid = cid, cb = cb})
                addEvent(gas2, 500, {cid = cid, cb = cb})
                addEvent(gas, 1000, {cid = cid, cb = cb})
                addEvent(gas2, 1500, {cid = cid, cb = cb})
                addEvent(gas, 2200, {cid = cid, cb = cb})
                addEvent(gas2, 2700, {cid = cid, cb = cb})
                addEvent(gas, 3200, {cid = cid, cb = cb})
                addEvent(gas2, 3900, {cid = cid, cb = cb})
                addEvent(gas, 4400, {cid = cid, cb = cb})
                addEvent(gas2, 4900, {cid = cid, cb = cb})
	        return 0
	elseif pokemon.x.spell == "Gastro Acid" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	target = getCreatureTarget(cid)
	pos1 = getThingPos(target)
	posa = getThingPos(target)
	pos2 = getThingPos(target)
	pos3 = getThingPos(target)
	posb = getThingPos(target)
	pos1.x = pos1.x-2
	pos2.x = pos2.x+2
	pos1.y = pos1.y-4
	pos2.y = pos2.y-4
	pos3.y = pos3.y-4
	posa.x = posa.x-1
	posb.x = posb.x+1
	doSendDistanceShoot(pos1, posa, 14)
	doSendDistanceShoot(pos3, getThingPos(target), 14)
	doSendDistanceShoot(pos2, posb, 14)
	doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), acid, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 143)
	return 0
	elseif pokemon.x.spell == "Sticks" then
	doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	target = getCreatureTarget(cid)
	pos1 = getThingPos(target)
	posa = getThingPos(target)
	pos2 = getThingPos(target)
	pos3 = getThingPos(target)
	posb = getThingPos(target)
	pos1.x = pos1.x-2
	pos2.x = pos2.x+2
	pos1.y = pos1.y-4
	pos2.y = pos2.y-4
	pos3.y = pos3.y-4
	posa.x = posa.x-1
	posb.x = posb.x+1
	doSendDistanceShoot(pos1, posa, 14)
	doSendDistanceShoot(pos3, getThingPos(target), 14)
	doSendDistanceShoot(pos2, posb, 14)
	doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), acid, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 212)
	return 0
	elseif pokemon.x.spell == "Missile Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 13)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Sand Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 23)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Poison Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 14)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Punch Area" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 26)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Psy Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 24)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	elseif pokemon.x.spell == "Water Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), oatharea, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 2)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
	end
return 0
end
	
	

 

 

Move8

  Mostrar conteúdo oculto


-- Boost sistem --
boostrate = 1

local thunderwavecondition = createConditionObject(CONDITION_PARALYZE)
setConditionParam(thunderwavecondition, CONDITION_PARAM_TICKS, 9000)
setConditionFormula(thunderwavecondition, -0.75, -0.75, -0.75, -0.75)

local waba = createCombatArea{
	{0, 1, 1, 1, 0},
	{1, 1, 1, 1, 1},
	{1, 1, 3, 1, 1},
	{1, 1, 1, 1, 1},
	{0, 1, 1, 1, 0},
}


local snorlax = {lookType = 258}

local skullb = createCombatArea{
{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0}
}



local twn = createCombatArea{
        {0, 0, 0, 2, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local tws = createCombatArea{
        {0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0},
        {0, 0, 0, 2, 0, 0, 0},
}
local tww = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 0, 0},
	{2, 1, 0, 1, 0, 1, 0},
	{0, 0, 0, 0, 1, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local twe = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0},
	{0, 1, 0, 1, 0, 1, 2},
	{0, 0, 1, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0, 0, 0},
}
local ws1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0},
{0, 1, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 2, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 2, 1, 0, 1, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 0, 0, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 1, 0, 2, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local ws4 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 0, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 1, 0, 1, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 1, 0, 1, 0},
{0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 0, 1, 0, 1, 0, 1, 0},
{0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0},
{0, 1, 0, 1, 0, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local thunder = createCombatArea{
{1, 0, 0, 1, 0, 0, 1},
{0, 1, 0, 1, 0, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{1, 1, 1, 2, 1, 1, 1},
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 0, 1, 0, 1, 0},
{1, 0, 0, 1, 0, 0, 1},
}

local destruct1 = createCombatArea{
	{0, 0, 1, 0, 0},
	{0, 1, 1, 1, 0},
	{1, 1, 3, 1, 1},
	{0, 1, 1, 1, 0},
	{0, 0, 1, 0, 0}
}

local destruct2 = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 3, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local destruct3 = createCombatArea{
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{1, 1, 0, 0, 0, 3, 0, 0, 0, 1, 1},
	{0, 1, 1, 0, 0, 0, 0, 0, 1, 1, 0},
	{0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0},
	{0, 0, 0, 1, 1, 0, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0}
}

local grassarea = createCombatArea{
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{1, 1, 1, 1, 1, 1, 1, 3, 1, 1, 1, 1, 1, 1, 1},
	{0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0},
	{0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0},
	{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
	{0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0, 0},
	{0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0}
}

local confusion = createCombatArea{
{0, 1, 1, 1, 0},
{1, 1, 1, 1, 1},
{1, 1, 2, 1, 1},
{1, 1, 1, 1, 1},
{0, 1, 1, 1, 0},
}

local stomp = createCombatArea{
        {1, 0, 1, 0, 1},
	{0, 1, 1, 1, 0},
	{1, 1, 2, 1, 1},
	{0, 1, 1, 1, 0},
	{1, 0, 1, 0, 1}
}

-- WATER GUN
local bomb = createCombatArea{
{0, 1, 0}, 
{1, 3, 1}, 
{0, 1, 0}, 
}

local wg1n = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{0, 1, 0}, 
}
local wg2n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 1, 0}, 
{0, 1, 0}, 
{0, 1, 0}, 
}
local wg3n = createCombatArea{
{0, 2, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 1, 0}, 
}

local wg1s = createCombatArea{
{0, 1, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wg2s = createCombatArea{
{0, 1, 0},
{0, 1, 0},
{0, 1, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}
local wg3s = createCombatArea{
{0, 1, 0},
{0, 0, 0},
{0, 0, 0},
{0, 0, 0}, 
{0, 0, 0}, 
{0, 2, 0}, 
}

local wg1e = createCombatArea{
{0, 0, 0}, 
{1, 2, 0}, 
{0, 0, 0}, 
}
local wg2e = createCombatArea{ 
{1, 1, 1, 0, 2}, 
}
local wg3e = createCombatArea{ 
{1, 0, 0, 0, 0, 2}, 
}

local wg1w = createCombatArea{
{0, 0, 0}, 
{0, 2, 1}, 
{0, 0, 0}, 
}
local wg2w = createCombatArea{ 
{2, 0, 1, 1, 1}, 
}
local wg3w = createCombatArea{ 
{2, 0, 0, 0, 0, 1}, 
}
-- WATER GUN END

local pump1 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 3, 1, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}
local pump2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 3, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 1, 0, 1, 0, 1, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
}

local tor1 = createCombatArea{
{0, 1, 0}, 
{1, 2, 1}, 
{0, 1, 0}, 
}
local tor2 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 2, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}
local tor3 = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 0, 0, 2, 0, 0, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local earthquake = createCombatArea{
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 1, 2, 1, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 0, 0, 0},
{0, 0, 0, 0, 1, 1, 1, 1, 1, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 1, 1, 1, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
{0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
}

local sand1 = createCombatArea{
{0, 0, 0}, 
{0, 3, 0}, 
{0, 0, 0}, 
}

local whirl3 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl5 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

local whirl32 = createCombatArea{
{0, 0, 0}, 
{1, 3, 1}, 
{0, 0, 0}, 
}

local whirl52 = createCombatArea{
{0, 0, 0, 0, 0}, 
{1, 1, 3, 1, 1}, 
{0, 0, 0, 0, 0}, 
}

--WING ATTACK
local wingn = createCombatArea{
{0, 0, 0}, 
{1, 2, 0}, 
{0, 0, 0}, 
}
local wings = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local winge = createCombatArea{
{1, 0, 0}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingw = createCombatArea{
{0, 2, 3}, 
{0, 2, 2}, 
{0, 0, 0}, 
}
local wingds = createCombatArea{
{1, 1, 1}, 
{0, 2, 0}, 
{0, 0, 0}, 
}
local wingdn = createCombatArea{
{0, 0, 0}, 
{0, 2, 0}, 
{1, 1, 1}, 
}
local wingde = createCombatArea{
{1, 0, 0}, 
{1, 2, 0}, 
{1, 0, 0}, 
}
local wingdw = createCombatArea{
{0, 0, 1}, 
{0, 2, 1}, 
{0, 0, 1}, 
}

local tsn = createCombatArea{
{0, 0, 0, 2, 0, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},  
{0, 1, 1, 1, 1, 1, 0},
}
local tss = createCombatArea{
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 0, 1, 0, 0, 0},
{0, 0, 0, 2, 0, 0, 0},  
}
local tse = createCombatArea{
{0, 0, 1, 0, 0, 0, 0},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 1, 1, 1, 2},
{0, 0, 1, 1, 1, 0, 0},
{0, 0, 1, 0, 0, 0, 0},  
}
local tsw = createCombatArea{
{0, 0, 0, 0, 0, 0, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 2, 1, 1, 1, 1},
{0, 0, 0, 0, 1, 1, 1},
{0, 0, 0, 0, 0, 0, 1},  
}

local pokeis = {'venusaur','Charizard','Blastoise', 'Pidgeot', 'raichu', 'nidoqueen', 'nidoking', 'clefable', 'Wigglytuff', 'arcanine', 'Poliwrath', 'Alakazam', 'machamp', 'tentacruel', 'Golem', 'Rapidash', 'dewgong', 'gengar', 'Hitmonchan', 'Rhydon', 'Kangaskhan', 'MrMime','Scyther', 'Jynx', 'Electabuzz', 'Magmar', 'Gyarados', 'Lapras', 'Ditto', 'Omastar', 'Kabutops', 'Aerodactyl', 'Snorlax', 'Articuno', 'Zapdos', 'Moltres','Dragonair', 'Dragonite', 'Mewtwo', 'Mew','meganium','typhlosion','Feraligatr', 'Noctowl', 'Crobat', 'lanturn', 'Togetic', 'Xatu', 'Ampharos', 'Sudowoodo', 'Slowking', 'Misdreavus', 'unown a', 'unown b', 'unown c', 'unown d', 'unown e', 'unown f', 'unown g', 'unown h', 'unown i', 'unown j', 'unown k', 'unown l', 'unown m', 'unown n', 'unown o', 'unown p', 'unown q', 'unown r', 'unown s', 'unown t', 'unown u', 'unown v', 'unown x', 'unown w', 'unown y', 'unown z',  'Wobbuffet', 'Girafarig', 'Steelix', 'Granbull', 'Scizor', 'Heracross', 'Sneasel', 'Ursaring', 'Magcargo', 'Piloswine', 'Mantine', 'Skarmory', 'houndoom', 'Kingdra', 'Porygon2', 'Stantler', 'Hitmontop', 'miltank', 'Blissey', 'Raikou', 'Entei', 'Suicune', 'Tyranitar', 'Lugia', 'Ho Oh', 'Celebi', 'Dark Abra', 'Elder Charizard', 'Elite Hitmonchan', 'Shiny Arcanine', 'Shiny Blastoise', 'Shiny Electabuzz', 'Shiny Gengar', 'Shiny Jynx', 'Shiny Raichu', 'Shiny Scyther', 'Shiny Tentacruel', 'Shiny Venusaur', 'Mini Gyarados', 'Red Gyarados', 'Smeargle Tm 5', 'Smeargle Tm 6', 'Big Snorlax', 'Shiny Alakazam', 'Shiny Dragonair', 'Shiny Golem', 'Shiny Machamp', 'Shiny MrMime', 'Shiny Nidoking', 'Shiny Pidgeot', 'Shiny Rhydon', 'Shiny Magmar'}
local c = {

[22] = {x = {
			pok = venusaur,
			spell = "Solar Beam",
			minLv = 85,
			ex = 30008,
			base1 = 685,
			base2 = 700,
			dista = 5,
			bonus = 15,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[496] = {x = {
			pok = shinyvenusaur,
			spell = "Solar Beam",
			minLv = 100,
			ex = 3008,
			base1 = 1370,
			base2 = 1400,
			dista = 5,
			bonus = 30,
			type = "grass",
target = "no",
			cd = 50
		     }
		 },
[67] = {x = {
			pok = charizard,
			spell = "Magma Storm",
			minLv = 85,
			ex = 60008,
			base1 = 685,
			base2 = 700,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[294] = {x = {
			pok = eldercharizard,
			spell = "Magma Storm",
			minLv = 100,
			ex = 6008,
			base1 = 1370,
			base2 = 1400,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[55] = {x = {
			nome = Blastoise,
			spell = "Water Bash",
			minLv = 85,
			ex = 90008,
			base1 = 525,
			base2 = 540,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[495] = {x = {
			nome = shinyBlastoise,
			spell = "Water Bash",
			minLv = 100,
			ex = 9008,
			base1 = 1050,
			base2 = 1080,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[80] = {x = {
			pok = pidgeot,
			spell = "Wind Oath",
			minLv = 80,
			ex = 1800008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[364] = {x = {
			pok = shinypidgeot,
			spell = "Wind Oath",
			minLv = 100,
			ex = 180008,
			base1 = 940,
			base2 = 1000,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[799] = {x = {
			pok = pidgeot,
			spell = "Wind Oath",
			minLv = 80,
			ex = 1800008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[50] = {x = {
			pok = raichu,
			spell = "Thunder Oath",
			minLv = 85,
			ex = 2600008,
			base1 = 470,
			base2 = 500,
			dista = 5,
			bonus = 14,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[511] = {x = {
			pok = shinyraichu,
			spell = "Thunder Oath",
			minLv = 100,
			ex = 260008,
			base1 = 940,
			base2 = 1000,
			dista = 5,
			bonus = 28,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
 [79] = {x = {
			pok = nidoqueen,
			spell = "Poison Oath",
			minLv = 65,
 			ex = 3100008,
			base1 = 440,
			base2 = 470,
			dista = 5,
			bonus = 14,
			type = "poison",
target = "no",
			cd = 35
			}
		},
 [35] = {x = {
			pok = nidoking,
			spell = "Horn Oath",
			minLv = 65,
 			ex = 3400008,
			base1 = 440,
			base2 = 470,
			dista = 5,
			bonus = 14,
			type = "earth",
target = "no",
			cd = 35
			}
		},
 [362] = {x = {
			pok = shinynidoking,
			spell = "Horn Oath",
			minLv = 85,
 			ex = 340008,
			base1 = 880,
			base2 = 940,
			dista = 5,
			bonus = 28,
			type = "earth",
target = "no",
			cd = 35
			}
		},
[68] = {x = {
			pok = clefable,
			spell = "Harden",
			minLv = 65,
			ex = 3600008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		 }
     },
[64] = {x = {
			pok = Wigglytuff,
			spell = "Melody",
			minLv = 65,
			ex = 4000008,
			base1 = 60,
			base2 = 70,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[88] = {x = {
			pok = arcanine,
			spell = "Wardog",
			minLv = 80,
			ex = 5900008,
			base1 = 300,
			base2 = 320,
			dista = 1,
			bonus = 15,
			type = "normal",
			cd = 30
		     }
		 },
[493] = {x = {
			pok = shinyarcanine,
			spell = "Wardog",
			minLv = 100,
			ex = 590008,
			base1 = 600,
			base2 = 640,
			dista = 1,
			bonus = 30,
			type = "normal",
			cd = 30
		     }
		 },
[104] = {x = {
			pok = poliwrath,
			spell = "Harden",
			minLv = 65,
			ex = 6200008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[491] = {x = {
			pok = darkabra,
			spell = "Mind Blast",
			minLv = 120,
			ex = 630008,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[219] = {x = {
			pok = kadabra,
			spell = "Restore",
			minLv = 45,
			ex = 6400008,
			base1 = 3300,
			base2 = 3300,
			dista = 5,
			bonus = 60,
			type = "psychic",
			target = "no",
			cd = 60
		     }
		 },
[218] = {x = {
			pok = alakazam,
			spell = "Mind Blast",
			minLv = 80,
			ex = 6500008,
			base1 = 280,
			base2 = 300,
			dista = 5,
			bonus = 13,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[349] = {x = {
			pok = Shinyalakazam,
			spell = "Mind Blast",
			minLv = 100,
			ex = 650008,
			base1 = 560,
			base2 = 600,
			dista = 5,
			bonus = 26,
			type = "psychic",
			target = "yes",
		cd = 35
		     }
		 },
[121] = {x = {
			pok = machamp,
			spell = "Punch Bash",
			minLv = 80,
			ex = 6800008,
			base1 = 465,
			base2 = 525,
			dista = 1,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 30
		     }
		 },
[358] = {x = {
			pok = shinymachamp,
			spell = "Punch Bash",
			minLv = 100,
			ex = 680008,
			base1 = 930,
			base2 = 1050,
			dista = 1,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 30
		     }
		 },
[108] = {x = {
			pok = tentacruel,
			spell = "Poison Oath",
			minLv = 80,
			ex = 7300008,
			base1 = 400,
			base2 = 420,
			dista = 5,
			bonus = 13,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[489] = {x = {
			pok = shinytentacruel,
			spell = "Poison Oath",
			minLv = 100,
			ex = 730008,
			base1 = 800,
			base2 = 840,
			dista = 5,
			bonus = 26,
			type = "poison",
target = "no",
			cd = 35
		     }
		 },
[116] = {x = {
			pok = golem,
			spell = "Selfdestruct",
			minLv = 70,
			ex = 7600008,
			base1 = 8000,
			base2 = 8000,
			dista = 5,
			bonus = 170,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[355] = {x = {
			pok = shinygolem,
			spell = "Selfdestruct",
			minLv = 85,
			ex = 760008,
			base1 = 24000,
			base2 = 24000,
			dista = 5,
			bonus = 340,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[288] = {x = {
			pok = golemroll,
			spell = "Selfdestruct",
			minLv = 70,
			ex = 7600008,
		base1 = 8000,
			base2 = 8000,
			dista = 5,
			bonus = 170,
			type = "fire",
target = "no",
			cd = 100
		     }
		 },
[220] = {x = {
			pok = Rapidash,
			spell = "Horn Attack",
			minLv = 50,
			ex = 7800008,
			base1 = 300,
			base2 = 320,
			dista = 1,
			bonus = 11,
			type = "normal",
			cd = 20
		     }
		 },
[110] = {x = {
			pok = dewgong,
			spell = "Afro Rest",
			minLv = 65,
			ex = 8700008,
			base1 = 11100,
			base2 = 11100,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[47] = {x = {
			pok = Muk,
			spell = "harden",
			minLv = 80,
			ex = 8900008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 30
		     }
		 },
[488] = {x = {
			pok = shinyMuk,
			spell = "harden",
			minLv = 100,
			ex = 890008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 8,
			type = "normal",
target = "no",
			cd = 20
		     }
		 },
[244] = {x = {
			pok = gengar,
			spell = "Skull Bash",
			minLv = 80,
			ex = 9400008,
			base1 = 530,
			base2 = 550,
			dista = 5,
			bonus = 15,
			type = "ghost",
target = "no",
			cd = 35
		     }
		 },
[798] = {x = {
			pok = shinygengar,
			spell = "Skull Bash",
			minLv = 100,
			ex = 9400008,
			base1 = 1060,
			base2 = 1100,
			dista = 5,
			bonus = 30,
			type = "ghost",
target = "no",
			cd = 35
		     }
		 },
[38] = {x = {
			pok = Hitmonchan,
			spell = "Punch Bash",
			minLv = 60,
			ex = 1070008,
			base1 = 460,
			base2 = 480,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[486] = {x = {
			pok = eliteHitmonchan,
			spell = "Punch Bash",
			minLv = 100,
			ex = 107008,
			base1 = 920,
			base2 = 960,
			dista = 5,
			bonus = 30,
			type = "fighting",
target = "no",
			cd = 40
		     }
		 },
[200] = {x = {
			pok = Rhydon,
			spell = "Horn Oath",
			minLv = 75,
			ex = 1120008,
			base1 = 445,
			base2 = 460,
			dista = 5,
			bonus = 15,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[366] = {x = {
			pok = shinyRhydon,
			spell = "Horn Oath",
			minLv = 100,
			ex = 112008,
			base1 = 890,
			base2 = 920,
			dista = 5,
			bonus = 30,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[198] = {x = {
			pok = Kangaskhan,
			spell = "Harden",
			minLv = 80,
			ex = 1150008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[246] = {x = {
			pok = MrMime,
			spell = "Mind Blast",
			minLv = 60,
			ex = 1220008,
			base1 = 200,
			base2 = 250,
			dista = 5,
			bonus = 13,
			type = "psychic",
			cd = 40
		     }
		 },
[361] = {x = {
			pok = shinyMrMime,
			spell = "Mind Blast",
			minLv = 85,
			ex = 122008,
			base1 = 400,
			base2 = 500,
			dista = 5,
			bonus = 26,
			type = "psychic",
			cd = 40
		     }
		 },
[15] = {x = {
			pok = Scyther,
			spell = "Scy Bash",
			minLv = 80,
			ex = 1230008,
			base1 = 380,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[525] = {x = {
			pok = shinyScyther,
			spell = "Scy Bash",
			minLv = 100,
			ex = 123008,
			base1 = 760,
			base2 = 880,
			dista = 5,
			bonus = 26,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[282] = {x = {
			pok = Jynx,
			spell = "Ice Oath",
			minLv = 80,
			ex = 1240008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 13,
			type = "ice",
target = "no",
			cd = 35
		     }
		 },
[499] = {x = {
			pok = shinyJynx,
			spell = "Ice Oath",
			minLv = 100,
			ex = 124008,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 26,
			type = "ice",
target = "no",
			cd = 35
		     }
		 },
[281] = {x = {
			pok = Electabuzz,
			spell = "Thunder Oath",
			minLv = 80,
			ex = 1250008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 13,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[497] = {x = {
			pok = shinyElectabuzz,
			spell = "Thunder Oath",
			minLv = 100,
			ex = 125008,
			base1 = 760,
			base2 = 800,
			dista = 5,
			bonus = 26,
			type = "electric",
target = "no",
			cd = 35
		     }
		 },
[76] = {x = {
			pok = Magmar,
			spell = "Scratch",
			minLv = 80,
			ex = 1260008,
			base1 = 270,
			base2 = 300,
			dista = 1,
			bonus = 13,
			type = "normal",
			cd = 20
		     }
		 },
[371] = {x = {
			pok = shinyMagmar,
			spell = "Scratch",
			minLv = 100,
			ex = 126008,
			base1 = 540,
			base2 = 600,
			dista = 1,
			bonus = 26,
			type = "normal",
			cd = 20
		     }
		 },
[117] = {x = {
			pok = Gyarados,
			spell = "Water Bash",
			minLv = 85,
			ex = 1300008,
			base1 = 465,
			base2 = 510,
			dista = 5,
			bonus = 13,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[327] = {x = {
			pok = miniGyarados,
			spell = "Water Bash",
			minLv = 40,
			ex = 1300008,
			base1 = 230,
			base2 = 250,
			dista = 5,
			bonus = 7,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[528] = {x = {
			pok = redGyarados,
			spell = "Water Bash",
			minLv = 100,
			ex = 130008,
			base1 = 930,
			base2 = 1020,
			dista = 5,
			bonus = 26,
                        target = "no",
			type = "Water",
			cd = 35
		     }
		 },
[193] = {x = {
			pok = Lapras,
			spell = "Hydropump",
			minLv = 80,
			ex = 1310008,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 50
		     }
		 },
[28] = {x = {
			pok = ditto,
			spell = "Transform",
			minLv = 40,
			ex = 1320001,
			base1 = 0,
			base2 = 0,
			dista = 10,
			bonus = 0,
                        target = "yes",
			type = "normal",
			cd = 50
		     }
		 },
[192] = {x = {
			pok = Omastar,
			spell = "Water Bash",
			minLv = 80,
			ex = 1390008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[13] = {x = {
			pok = Kabutops,
			spell = "Rock Bash",
			minLv = 80,
			ex = 1410008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 30
		     }
		 },
[10] = {x = {
			pok = Aerodactyl,
			spell = "Rock Bash",
			minLv = 100,
			ex = 1420008,
			base1 = 510,
			base2 = 520,
			dista = 5,
			bonus = 20,
			type = "rock",
target = "no",
			cd = 35
		     }
		 },
[51] = {x = {
			pok = Snorlax,
			spell = "Rest",
			minLv = 90,
			ex = 1430008,
			base1 = 20100,
			base2 = 20100,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[348] = {x = {
			pok = bigsnorlax,
			spell = "Roost",
			minLv = 150,
			ex = 143000008,
			base1 = 40200,
			base2 = 40200,
			dista = 5,
			bonus = 34,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[258] = {x = {
			pok = restSnorlax,
			spell = "Zzzzz",
			minLv = 90,
			ex = 14300008,
			base1 = 0,
			base2 = 0,
			dista = 1,
			bonus = 0,
			type = "normal",
			cd = 2
		     }
		 },
[283] = {x = {
			pok = Articuno,
			spell = "Ice Oath",
			minLv = 250,
			ex = 1440008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "ice",
target = "no",
			cd = 15
		     }
		 },
[199] = {x = {
			pok = Zapdos,
			spell = "Thunder Oath",
			minLv = 250,
			ex = 1450008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 15
		     }
		 },
[265] = {x = {
			pok = Moltres,
			spell = "Wind Oath",
			minLv = 250,
			ex = 1460008,
			base1 = 11100,
			base2 = 11200,
			dista = 5,
			bonus = 30,
			type = "flying",
target = "no",
			cd = 15
		     }
		 },
[352] = {x = {
			pok = Dragonair,
			spell = "Twister",
			minLv = 80,
			ex = 148008,
			base1 = 860,
			base2 = 900,
			dista = 5,
			bonus = 20,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[210] = {x = {
			pok = Dragonite,
			spell = "Twister",
			minLv = 100,
			ex = 1490008,
			base1 = 530,
			base2 = 550,
			dista = 5,
			bonus = 17,
			type = "flying",
target = "no",
			cd = 35
		     }
		 },
[34] = {x = {
			pok = Mewtwo,
			spell = "Mind Blast",
			minLv = 700,
			ex = 1500008,
			base1 = 1500,
			base2 = 1700,
			dista = 5,
			bonus = 50,
			type = "psychic",
			cd = 35
		     }
		 },
[9] = {x = {
			pok = Mew,
			spell = "Mind Blast",
			minLv = 600,
			ex = 1510008,
			base1 = 1400,
			base2 = 1800,
			dista = 5,
			bonus = 50,
			type = "psychic",
			cd = 35
		     }
		 },
[581] = {x = {
			pok = Meganium,
			spell = "Reflect",
			minLv = 85,
			ex = 1540008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[625] = {x = {
			pok = typhlosion,
			spell = "Magma Storm",
			minLv = 85,
			ex = 1570008,
			base1 = 605,
			base2 = 620,
			dista = 5,
			bonus = 15,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[554] = {x = {
			nome = Feraligatr,
			spell = "Water Bash",
			minLv = 85,
			ex = 1600008,
			base1 = 390,
			base2 = 410,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 35
		     }
		 },
[586] = {x = {
			pok = noctowl,
			spell = "Roost",
			minLv = 65,
			ex = 1640008,
			base1 = 8600,
			base2 = 8600,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[544] = {x = {
			pok = Crobat,
			spell = "Poison Oath",
			minLv = 80,
			ex = 1690008,
			base1 = 500,
			base2 = 520,
			dista = 5,
			bonus = 15,
			type = "poison",
target = "no",
			cd = 40
		     }
		 },
[571] = {x = {
			pok = lanturn,
			spell = "Thunder Oath",
			minLv = 75,
			ex = 1710008,
			base1 = 470,
			base2 = 520,
			dista = 1,
			bonus = 2.4,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[622] = {x = {
			pok = Togetic,
			spell = "Leaf Magical",
			minLv = 60,
			ex = 1760008,
			base1 = 470,
			base2 = 520,
			dista = 5,
			bonus = 12,
			type = "psychic",
			cd = 40
		     }
		 },
[658] = {x = {
			pok = Xatu,
			spell = "Wind Oath",
			minLv = 75,
			ex = 1780008,
			base1 = 470,
			base2 = 520,
			dista = 5,
			bonus = 10,
			type = "flying",
			target = "no",
			cd = 40
		     }
		 },
[533] = {x = {
			pok = Ampharos,
			spell = "Thunder Oath",
			minLv = 85,
			ex = 1810008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 15,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[615] = {x = {
			pok = Sudowoodo,
			spell = "Rock Bash",
			minLv = 80,
			ex = 1850008,
			base1 = 580,
			base2 = 600,
			dista = 5,
			bonus = 13,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
[606] = {x = {
			pok = Slowking,
			spell = "Water Bash",
			minLv = 100,
			ex = 1990008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[583] = {x = {
			pok = misdreavus,
			spell = "Ghost Bash",
			minLv = 80,
			ex = 2000008,
			base1 = 550,
			base2 = 570,
			dista = 5,
			bonus = 17,
			type = "ghost",
target = "no",
			cd = 40
		     }
		 },
[629] = {x = {
			pok = unowna,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2011008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[630] = {x = {
			pok = unownb,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2012008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[631] = {x = {
			pok = unownc,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2013008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[632] = {x = {
			pok = unownd,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2014008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[633] = {x = {
			pok = unowne,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2015008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[634] = {x = {
			pok = unownf,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2016008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[635] = {x = {
			pok = unowng,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2017008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[636] = {x = {
			pok = unownh,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2018008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[637] = {x = {
			pok = unowni,
			spell = "Psy Storm",
			minLv = 100,
			ex = 2019008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[638] = {x = {
			pok = unownj,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20110008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[639] = {x = {
			pok = unownk,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20111008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[640] = {x = {
			pok = unownl,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20112008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[641] = {x = {
			pok = unownm,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20113008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[642] = {x = {
			pok = unownn,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20114008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[643] = {x = {
			pok = unowno,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20115008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[644] = {x = {
			pok = unownp,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20116008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[645] = {x = {
			pok = unownq,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20117008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[646] = {x = {
			pok = unownr,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20118008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[647] = {x = {
			pok = unowns,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20119008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[648] = {x = {
			pok = unownt,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20120008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[649] = {x = {
			pok = unownu,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20121008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[650] = {x = {
			pok = unownv,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20122008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[651] = {x = {
			pok = unownx,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20123008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[652] = {x = {
			pok = unownw,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20124008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[653] = {x = {
			pok = unowny,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20125008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[654] = {x = {
			pok = unownz,
			spell = "Psy Storm",
			minLv = 100,
			ex = 20126008,
			base1 = 620,
			base2 = 640,
			dista = 5,
			bonus = 17,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[656] = {x = {
			pok = Wobbuffet,
			spell = "Harden",
			minLv = 80,
			ex = 2020008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[558] = {x = {
			pok = girafarig,
			spell = "Psy Storm",
			minLv = 80,
			ex = 2030008,
			base1 = 525,
			base2 = 540,
			dista = 5,
			bonus = 11,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
 [724] = {x = {
			pok = Steelix,
			spell = "Rock Bash",
			minLv = 100,
			ex = 2080008,
			base1 = 540,
			base2 = 560,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 40
		     }
		 },
 [560] = {x = {
			pok = granbull,
			spell = "Harden",
			minLv = 65,
 			ex = 2100008,
			base1 = 0,
			base2 = 0,
			dista = 5,
			bonus = 0,
			type = "normal",
target = "no",
			cd = 30
			}
		},
[601] = {x = {
			pok = Scizor,
			spell = "Scy Bash",
			minLv = 100,
			ex = 2120008,
			base1 = 600,
			base2 = 620,
			dista = 5,
			bonus = 17,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[561] = {x = {
			pok = Heracross,
			spell = "Horn Oath",
			minLv = 80,
			ex = 2140008,
			base1 = 460,
			base2 = 500,
			dista = 5,
			bonus = 11,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[610] = {x = {
			pok = Sneasel,
			spell = "Ice Oath",
			minLv = 55,
			ex = 2150008,
			base1 = 375,
			base2 = 400,
			dista = 5,
			bonus = 10,
			type = "ice",
target = "no",
			cd = 30
		     }
		 },
[655] = {x = {
			pok = Ursaring,
			spell = "Afro Rest",
			minLv = 90,
			ex = 2170008,
			base1 = 18100,
			base2 = 18100,
			dista = 5,
			bonus = 15,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[577] = {x = {
			pok = magcargo,
			spell = "Rock Bash",
			minLv = 75,
			ex = 2190008,
			base1 = 285,
			base2 = 315,
			dista = 5,
			bonus = 12,
			type = "rock",
target = "no",
			cd = 20
		     }
		 },
[590] = {x = {
			nome = Piloswine,
			spell = "Ice Oath",
			minLv = 80,
			ex = 2210008,
			base1 = 420,
			base2 = 440,
			dista = 5,
			bonus = 8,
			type = "ice",
target = "no",
			cd = 40
		     }
		 },

[578] = {x = {
			pok = mantine,
			spell = "Water Bash",
			minLv = 80,
			ex = 2260008,
			base1 = 475,
			base2 = 505,
			dista = 5,
			bonus = 15,
			type = "water",
target = "no",
			cd = 40
		     }
		 },
[604] = {x = {
			pok = skarmory,
			spell = "Scy Bash",
			minLv = 85,
			ex = 2270008,
			base1 = 485,
			base2 = 525,
			dista = 5,
			bonus = 15,
			type = "flying",
target = "no",
			cd = 40
		     }
		 },
[566] = {x = {
			pok = houndoom,
			spell = "Ghost Bash",
			minLv = 85,
			ex = 2290008,
			base1 = 380,
			base2 = 400,
			dista = 5,
			bonus = 12,
			type = "ghost",
target = "no",
			cd = 40
		     }
		 },
[570] = {x = {
			pok = kingdra,
			spell = "Water Bash",
			minLv = 100,
			ex = 2300008,
			base1 = 370,
			base2 = 390,
			dista = 5,
			bonus = 13,
			type = "water",
target = "no",
			cd = 30
		     }
		 },
[593] = {x = {
			pok = Porygon2,
			spell = "Pory Storm",
			minLv = 75,
			ex = 2330008,
			base1 = 570,
			base2 = 600,
			dista = 5,
			bonus = 15,
			type = "psychic",
target = "no",
			cd = 50
		     }
		 },
[613] = {x = {
			pok = Stantler,
			spell = "Stomp Tomb",
			minLv = 55,
			ex = 2340008,
			base1 = 375,
			base2 = 400,
			dista = 5,
			bonus = 11,
			type = "earth",
target = "no",
			cd = 30

		     }
		 },
[342] = {x = {
			pok = Smeargle5,
		spell = "Melody",
			minLv = 40,
			ex = 2350008,
			base1 = 30,
			base2 = 50,
			dista = 5,
			bonus = 12,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[344] = {x = {
			pok = Smeargle6,
			spell = "Roost",
			minLv = 40,
			ex = 1640008,
			base1 = 4000,
			base2 = 4000,
			dista = 5,
			bonus = 10,
			type = "normal",
target = "no",
			cd = 40
		     }
		 },
[562] = {x = {
			pok = Hitmontop,
			spell = "Punch Bash",
			minLv = 60,
			ex = 2370008,
			base1 = 480,
			base2 = 500,
			dista = 5,
			bonus = 15,
			type = "fighting",
target = "no",
			cd = 35
		     }
		 },
[582] = {x = {
			pok = miltank,
			spell = "Stomp Tomb",
			minLv = 80,
			ex = 2410008,
			base1 = 305,
			base2 = 320,
			dista = 5,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 23
		     }
		 },
[675] = {x = {
			pok = miltank,
			spell = "Stomp Tomb",
			minLv = 80,
			ex = 2410008,
			base1 = 305,
			base2 = 320,
			dista = 5,
			bonus = 13,
			type = "earth",
target = "no",
			cd = 23
		     }
		 },
[538] = {x = {
			pok = Blissey,
			spell = "Egg Storm",
			minLv = 100,
			ex = 2420008,
			base1 = 600,
			base2 = 620,
			dista = 5,
			bonus = 17,
			type = "normal",
target = "no",
			cd = 50
		     }
		 },
[599] = {x = {
			pok = Raikou,
			spell = "Thunder Oath",
			minLv = 250,
			ex = 2430008,
			base1 = 31100,
			base2 = 31200,
			dista = 5,
			bonus = 30,
			type = "electric",
target = "no",
			cd = 40
		     }
		 },
[552] = {x = {
			pok = Entei,
			spell = "Magma Storm",
			minLv = 250,
			ex = 2440008,
			base1 = 31100,
			base2 = 31200,
			dista = 5,
			bonus = 30,
			type = "fire",
target = "no",
			cd = 40
		     }
		 },
[616] = {x = {
			pok = Suicune,
			spell = "Water Bash",
			minLv = 250,
			ex = 2450008,
			base1 = 11600,
			base2 = 12000,
			dista = 5,
			bonus = 30,
			type = "water",
target = "no",
			cd = 20
		     }
		 },
[626] = {x = {
			pok = tyranitar,
			spell = "Rock Bash",
			minLv = 100,
			ex = 2480008,
			base1 = 440,
			base2 = 460,
			dista = 5,
			bonus = 17,
			type = "rock",
target = "no",
			cd = 30
		     }
		 },
[575] = {x = {
			pok = Lugia,
			spell = "Water Bash",
			minLv = 600,
			ex = 2490008,
			base1 = 35800,
			base2 = 35900,
			dista = 5,
			bonus = 50,
			type = "water",
			target = "no",
			cd = 40
		     }
		 },
[563] = {x = {
			pok = HoOh,
			spell = "Magma Storm",
			minLv = 800,
			ex = 2500008,
			base1 = 40070,
			base2 = 40080,
			dista = 5,
			bonus = 50,
			type = "fire",
target = "no",
			cd = 50
		     }
		 },
[539] = {x = {
			pok = Celebi,
			spell = "Leaf Magical",
			minLv = 600,
			ex = 2510008,
			base1 = 20800,
			base2 = 20900,
			dista = 5,
			bonus = 50,
			type = "psychic",
			target = "no",
			cd = 20
		     }
		 },
}

function onSay(cid)	
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end
if getTilePzInfo(getPlayerPosition(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Can't use Moves on protect zone.")
    return true
	end
	if not isInArray(pokeis, getCreatureName(getCreatureSummons(cid)[1])) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Your pokemon doesn\'t recognize this move.")
	return 0
	end
	pokemon = c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType]
	if getPlayerLevel(cid) < c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.minLv then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have enough level to use this move.")
	return 0
	end
	if exhaustion.get(cid, pokemon.x.ex) then
		seconds = math.floor(((exhaustion.get(cid, pokemon.x.ex)) + 1))
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You have to wait "..seconds.." seconds to use this move again.")
		return 0
		end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 3) >= 1 then
	doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "MISS", 215)
	setPlayerStorageValue(getCreatureSummons(cid)[1], 3, -1)
	doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	return true
	end
	if getPlayerStorageValue(getCreatureSummons(cid)[1], 5) >= 1 then
		if math.random(1,100) <= 33 then
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "SELF HIT", 180)
		local levels = getPlayerLevel(cid)
		doTargetCombatHealth(cid, getCreatureSummons(cid)[1], COMBAT_PHYSICALDAMAGE, -(math.random((levels*3),(levels*5))), -((math.random((levels*3),(levels*5))+10)), 3)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		return true
		end
	end
if pokemon.x.target ~= "no" then
	if not isMonster(getCreatureTarget(cid)) then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You don\'t have any targets.")
	return 0
	end

	if getDistanceBetween(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid))) > pokemon.x.dista then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Get closer to the target to use this move.")
	return 0
	end

	if not isSightClear(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), false) then
	return 0
	end
end
	if pokemon.x.type == "flying" then
		elementa = FLYDAMAGE
	elseif pokemon.x.type == "ground" then
		elementa = GROUNDDAMAGE
	elseif pokemon.x.type == "electric" then
		elementa = ELECTRICDAMAGE
	elseif pokemon.x.type == "ghost" then
		elementa = GHOSTDAMAGE
	elseif pokemon.x.type == "normal" then
		elementa = NORMALDAMAGE
	elseif pokemon.x.type == "fighting" then
		elementa = FIGHTINGDAMAGE
	elseif pokemon.x.type == "poison" then
		elementa = POISONDAMAGE
	elseif pokemon.x.type == "rock" then
		elementa = ROCKDAMAGE
	elseif pokemon.x.type == "bug" then
		elementa = BUGDAMAGE
	elseif pokemon.x.type == "fire" then
		elementa = FIREDAMAGE
	elseif pokemon.x.type == "water" then
		elementa = WATERDAMAGE
	elseif pokemon.x.type == "grass" then
		elementa = GRASSDAMAGE
	elseif pokemon.x.type == "psychic" then
		elementa = PSYCHICDAMAGE
	elseif pokemon.x.type == "ice" then
		elementa = ICEDAMAGE
	elseif pokemon.x.type == "dragon" then
		elementa = DRAGONDAMAGE
	end

	local element = elementa
	local num1 = (pokemon.x.base1)
	local num2 = (pokemon.x.base2)
	local num3 = (pokemon.x.bonus)


local ball = getPlayerSlotItem(cid, CONST_SLOT_FEET)
local pokename = getItemSpecialDescription(ball.uid)
local boost = pokename:match("\+(%d+)")

if(pokename:find("\+(%d+)"))then 
	num1 = ((pokemon.x.base1)*(boost*(boostrate*2)))
	num2 = ((pokemon.x.base2)*boost)
	num3 = (pokemon.x.bonus)
else
	num1 = (pokemon.x.base1)
	num2 = (pokemon.x.base2)
	num3 = (pokemon.x.bonus)
end


	setPlayerStorageValue(getCreatureSummons(cid)[1], 1000, ((num1)+(getPlayerLevel(cid)*(num3))))


	if pokemon.x.spell == "Healeara" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), grassarea, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
	elseif pokemon.x.spell == "Rock Slide" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local posalvo = getThingPos(getCreatureTarget(cid))
		local boltalvo = getCreatureTarget(cid)
		posalvo.x = posalvo.x-2
		posalvo.y = posalvo.y-6
		doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 11)
		local function bolt(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(cid)) then
		if getCreatureTarget(params.cid) == params.boltalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 44)
		end
		end
		end
		end
		addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo})
	        elseif pokemon.x.spell == "Gust" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		end
		return 0
---------------------ADICIONADAS---------------------------------------------------------------------------
------------------------------------------------------------------------------------------------------------
	elseif pokemon.x.spell == "Hypnosis" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		setPlayerStorageValue(getCreatureTarget(cid), 3, 1)
		local alvo = getCreatureTarget(cid)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 24)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 136)
		local function string(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		doSendMagicEffect(getThingPos(params.alvo), 136)
		end
		end
		end
		local function normalstr(params)
		if isCreature(params.alvo) then
		if getPlayerStorageValue(params.alvo, 3) >= 1 then
		setPlayerStorageValue(params.alvo, 3, -1)
		end
		end
		end
		addEvent(string, 250, {alvo = alvo})
		addEvent(string, 500, {alvo = alvo})
		addEvent(string, 750, {alvo = alvo})
		addEvent(string, 1000, {alvo = alvo})
		addEvent(string, 1250, {alvo = alvo})
		addEvent(string, 1500, {alvo = alvo})
		addEvent(string, 1750, {alvo = alvo})
		addEvent(string, 2000, {alvo = alvo})
		addEvent(string, 2250, {alvo = alvo})
		addEvent(string, 2500, {alvo = alvo})
		addEvent(string, 2750, {alvo = alvo})
		addEvent(string, 3000, {alvo = alvo})
		addEvent(normalstr, 3050, {alvo = alvo})
		return 0
 elseif pokemon.x.spell == "Focus" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 1)
		local function quiet(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 132)
		end
		end
		end
		end
		local function desc(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(cid)[1], 254) >= 1 then
		setPlayerStorageValue(getCreatureSummons(cid)[1], 254, 0)
		end
		end
		end
		end
		for calm = 1, 12 do
		addEvent(quiet, calm*500, {cid = cid})
		end
		addEvent(desc, 12*500, {cid = cid})
	        return 0
---------------------ADICIONADAS---------------------------------------------------------------------------
---------------------------------------------------------------------------------------------------------------
	        elseif pokemon.x.spell == "Rage" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		local hitalvo = getCreatureTarget(cid)
		local function hit(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(params.cid)) then
		if getCreatureTarget(params.cid) == params.hitalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], FLYDAMAGE, getThingPos(getCreatureTarget(params.cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 110)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), CONST_ME_MAGIC_RED)
		end
		end
		end
		end
		addEvent(hit, 1000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 2000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 3000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 4000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 5000, {cid = cid, hitalvo = hitalvo})
		addEvent(hit, 6000, {cid = cid, hitalvo = hitalvo})
		return 0
		 elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
	   elseif pokemon.x.spell == "Charge Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
       elseif pokemon.x.spell == "Melody" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), earthquake, thunderwavecondition, 255)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = earthquake, ef = 19})
		addEvent(storm, 1000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 2000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 3000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 4000, {cid = cid, el = element, ar = earthquake, ef = 19})
                addEvent(storm, 5000, {cid = cid, el = element, ar = earthquake, ef = 19})
	        return 0
			
        elseif pokemon.x.spell == "Fist Machine" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+0
		flamepos.y = flamepos.y-1
		doSendMagicEffect(flamepos, 217)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x+2
		flamepos.y = flamepos.y+0
		doSendMagicEffect(flamepos, 215)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-0
		flamepos.y = flamepos.y+2
		doSendMagicEffect(flamepos, 218)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		local flamepos = getThingPos(getCreatureSummons(cid)[1])
		flamepos.x = flamepos.x-1
		flamepos.y = flamepos.y+0
		doSendMagicEffect(flamepos, 216)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)		
                end
		return 0
elseif pokemon.x.spell == "Transform" then
doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd, pokemon.x.base1, pokemon.x.base2, pokemon.x.bonus, pokemon.x.target, pokemon.x.type)
doSetCreatureOutfit(getCreatureSummons(cid)[1], getCreatureOutfit(getCreatureTarget(cid)), 130000000)
return 0
	elseif pokemon.x.spell == "Mega Horn" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 25)
			else
			end
			end
                        local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 15)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Water Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 30)
                return 0
elseif pokemon.x.spell == "Rock Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 238)
                return 0
elseif pokemon.x.spell == "Scy Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 249)
                return 0
elseif pokemon.x.spell == "Skull Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 208)
                return 0
elseif pokemon.x.spell == "Punch Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 112)
                return 0
elseif pokemon.x.spell == "Ghost Bash" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), skullb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 115)
                return 0
		elseif pokemon.x.spell == "Whirlwind" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, params.br, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, br = whirl3})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, br = whirl5})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, br = whirl5})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, br = whirl52})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, br = sand1})
		addEvent(gust, 500, {cid = cid, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, br = whirl32})
		addEvent(gust, 1000, {cid = cid, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, br = whirl52})
		addEvent(gust, 1500, {cid = cid, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, br = whirl52})
		end
	        return 0
elseif pokemon.x.spell == "Scratch" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 142)
		return 0
                elseif pokemon.x.spell == "Sleep Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 27)
				doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
                return 0
                elseif pokemon.x.spell == "Twister" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twe, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tws, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tww, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 42)
		end
		return 0
 elseif pokemon.x.spell == "Stomp Tomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), twe, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tws, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tww, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
		end
		return 0
                elseif pokemon.x.spell == "Stun Spore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatCondition(getCreatureSummons(cid)[1], getThingPos(getCreatureSummons(cid)[1]), confusion, thunderwavecondition, 255)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 85)
		end
		return 0
	        elseif pokemon.x.spell == "Hyper Fang" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 159)
		return 0
                elseif pokemon.x.spell == "Tornado" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 42, ar = tor1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 42, ar = tor2, el = element})
		addEvent(tornado, 1000, {cid = cid, ef = 42, ar = tor3, el = element})
		addEvent(tornado, 500, {cid = cid, ef = CONST_ME_POFF, ar = tor1, el = null})
		addEvent(tornado, 1200, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor2, el = null})
		addEvent(tornado, 1900, {cid = cid, ef = CONST_ME_POFF, ar = tor3, el = null})
	        return 0
                elseif pokemon.x.spell == "Hydropump" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function tornado(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(tornado, 0, {cid = cid, ef = 53, ar = pump1, el = element})
		addEvent(tornado, 500, {cid = cid, ef = 53, ar = pump2, el = element})
	        return 0
	elseif pokemon.x.spell == "Afro Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 132)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 132)
		return 0
                elseif pokemon.x.spell == "Rest" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureName(getCreatureSummons(cid)[1]) == "Snorlax" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], snorlax, 5000)
		doChangeSpeed(getCreatureSummons(cid)[1], 145)
               
		end
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
			local function rest(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then
		        doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
			end
			end
			end
			end
		        for r = 1, 4 do
		        addEvent(rest, 1000*r, {cid = cid})
		        end
			local function stoprest(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			doChangeSpeed(getCreatureSummons(params.cid)[1], -145)
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0)
			end
			end
			end
			end
		        addEvent(stoprest, 4300, {cid = cid})
		return 0
 elseif pokemon.x.spell == "Solar Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 94)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 95)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 91)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 93)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 92)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 86)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 87)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 89)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 88)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 90)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Poison Powder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 84)
                return 0
                elseif pokemon.x.spell == "Psychic" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), confusion, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
                return 0
	elseif pokemon.x.spell == "Fear" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                local t = getCreatureTarget(cid)
                setPlayerStorageValue(t, 5, 1)
                local function confused(params)
                if isCreature(params.t) then
                local spdc = getCreatureSpeed(params.t)
                if getCreatureLookDir(params.t) == 0 then
                confs = math.random(1,3)
                elseif getCreatureLookDir(params.t) == 1 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 0
                elseif confurandom >= 67 then
                confs = 2
                else
                confs = 3
                end
                elseif getCreatureLookDir(params.t) == 2 then
                confurandom = math.random(1,99)
                if confurandom <= 33 then
                confs = 3
                elseif confurandom >= 67 then
                confs = 0
                else
                confs = 1
                end
                elseif getCreatureLookDir(params.t) == 3 then
                confs = math.random(0,2)
                end
                doPushCreature(params.t, confs, 1, 0)
                doSendMagicEffect(getThingPos(params.t), 214)
                end
                end
                local function nonc(params)
                if isCreature(params.t) then
                doChangeSpeed(params.t, -getCreatureSpeed(params.t))
                doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
                setPlayerStorageValue(params.t, 5, -1)
                end
                end
                doChangeSpeed(t, -( getCreatureSpeed(t)/3))
                doSendMagicEffect(getThingPos(t), 214)
                for i = 1, math.random(6,7) do
                addEvent(confused, 1000*i, {cid = cid, t = t})
                end
                addEvent(nonc, 7100, {cid - cid, t = t})
                return 0
  elseif pokemon.x.spell == "Psyusion" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = pu1, ef = 136})
		addEvent(storm, 500, {cid = cid, el = element, ar = pu2, ef = 133})
		addEvent(storm, 1000, {cid = cid, el = element, ar = pu3, ef = 136})
		addEvent(storm, 1500, {cid = cid, el = element, ar = pu4, ef = 137})
                addEvent(storm, 2000, {cid = cid, el = element, ar = pu5, ef = 133})
	        return 0
	        elseif pokemon.x.spell == "Water Gun" then
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 74)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 76)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 77)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 75)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 78)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 69)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 71)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 72)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 70)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 73)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Reflect" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 135)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 34, 1)
	        return 0
                elseif pokemon.x.spell == "Fire Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 35)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 60, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 62, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 61, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 61, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 61, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 61, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 61, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 61, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 63, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 63, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 63, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 63, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 63, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 63, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
	 	return 0
elseif pokemon.x.spell == "Wind Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 36)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Ice Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 35)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Poison Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 14)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Horn Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 3)
		return 0
elseif pokemon.x.spell == "Horn Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 25)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Thunder Oath" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 40)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
elseif pokemon.x.spell == "Leaf Magical" then
  doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 0, getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
		local function shoot(params)
		lugar = getThingPos(getCreatureSummons(params.cid)[1])
			for x= -3,3 do
				for y= -3,3 do
				topos = {x=lugar.x+x, y=lugar.y+y, z=lugar.z}
				doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), topos, 21)
				end
			end
		end
		addEvent(shoot, 0, {cid = cid})
	return 0
                elseif pokemon.x.spell == "Ice Beam" then
		alvo = getCreatureName(getCreatureTarget(cid))
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 99)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 105)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3n, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 103)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 98)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 105)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3s, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 102)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 96)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 104)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3e, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 100)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg1w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 97)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg2w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 104)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wg3w, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 101)
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
elseif pokemon.x.spell == "Wardog" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                        local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 146)
			else
			end
			end
		addEvent(damage, 0, {cid = cid})
		addEvent(damage, 400, {cid = cid})
		addEvent(damage, 800, {cid = cid})
		addEvent(damage, 1200, {cid = cid})
		addEvent(damage, 1500, {cid = cid})
		return 0
                elseif pokemon.x.spell == "Selfdestruct" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doCreatureAddHealth, 250, getCreatureSummons(cid)[1], -getCreatureHealth(getCreatureSummons(cid)[1]))
		doAreaCombatHealth(getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 5)
		addEvent(doAreaCombatHealth, 150, getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct2, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.7), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.8), 5)
		addEvent(doAreaCombatHealth, 250, getCreatureSummons(cid)[1], NORMALDAMAGE, getThingPos(getCreatureSummons(cid)[1]), destruct3, -(((num1)+(getPlayerLevel(cid)*(num3)))*0.4), -(((num2)+(getPlayerLevel(cid)*(num3)))*0.5), 5)
		setPlayerStorageValue(getCreatureSummons(cid)[1], 33, 1)
	        return 0
elseif pokemon.x.spell == "Healera" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), hl, ((num1)+(getPlayerLevel(cid)*(num3))), ((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_MAGIC_BLUE)
        doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
	        elseif pokemon.x.spell == "Psycho Shift" then
		targetpos = getThingPos(getCreatureTarget(cid))
		targetposss = getThingPos(getCreatureTarget(cid))
		if math.random(1,100) >= 51 then
		targetpos.x = targetpos.x+2
		else
		targetpos.x = targetpos.x-2
		end
		if math.random(1,100) >= 51 then
		targetpos.y = targetpos.y-2
		else
		targetpos.y = targetpos.y+2
		end
		tile = getTileItemByType(targetpos, ground).itemid
		if getThingPos(cid).z > 7 then
			if isWalkable(targetpos, cid, 0, 0) then
			doTeleportThing(getCreatureTarget(cid), targetpos)
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetpos, 12)
			else
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetposss, 12)
			end
		else
		if not isInArray(imp, tile) then
			if not isInArray(imp, getTileThingByPos(targetpos).itemid) then
			doTeleportThing(getCreatureTarget(cid), targetpos)
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetpos, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetpos, 12)
			else
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, targetposss, 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
			doSendMagicEffect(targetposss, 12)
			end
		else
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 134)
		doSendMagicEffect(targetposss, 12)
		end
		end
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		return 0
                elseif pokemon.x.spell == "Restore" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
      elseif pokemon.x.spell == "Roost" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 14)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 35)
		return 0
                elseif pokemon.x.spell == "Psywave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		end
		return 0
	        elseif pokemon.x.spell == "Poison Bomb" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		addEvent(doAreaCombatHealth, 100, getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), bomb, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 114)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 14)
	        return 0
 elseif pokemon.x.spell == "Zzzzz" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendMagicEffect(getThingPos(getCreatureSummons(cid)[1]), 32)
		doCreatureAddHealth(getCreatureSummons(cid)[1], ((num2)+((getPlayerLevel(cid))*(num3))))
		doSendAnimatedText(getThingPos(getCreatureSummons(cid)[1]), "+"..((num2)+((getPlayerLevel(cid))*(num3))).."", 32)
		return 0
	         elseif pokemon.x.spell == "Psywave" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tse, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tss, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), tsw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 133)
		end
		return 0
	        elseif pokemon.x.spell == "Blizzard" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 175})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 175})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 175})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 175})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 175})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 175})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 175})
	return 0
			

	        elseif pokemon.x.spell == "Magma Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 236})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 236})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 236})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 236})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 236})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 236})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 236})
	return 0
            elseif pokemon.x.spell == "Egg Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 5})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 5})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 5})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 5})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 5})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 5})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 5})
	return 0

        elseif pokemon.x.spell == "Psy Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 235})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 235})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 235})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 235})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 235})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 235})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 235})
	return 0
elseif pokemon.x.spell == "Pory Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 230})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 230})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 230})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 230})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 230})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 230})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 230})
	return 0

                elseif pokemon.x.spell == "Hydro Cannon" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function gust(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.ar, sand1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.eee)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, params.ar, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], null, params.arr, whirl3, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
		else
		end
		end
		local posicao = getThingPos(getCreatureSummons(cid)[1])
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		addEvent(gust, 0, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 66, ar = {x=posicao.x, y=posicao.y-6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y-5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		addEvent(gust, 0, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+1, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+2, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+1, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+3, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+2, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+4, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+3, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+5, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+4, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 64, ar = {x=posicao.x, y=posicao.y+6, z=posicao.z}, arr = {x=posicao.x, y=posicao.y+5, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		addEvent(gust, 0, {cid = cid, eee = 67, ar = {x=posicao.x+1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 67, ar = {x=posicao.x+2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 67, ar = {x=posicao.x+3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 67, ar = {x=posicao.x+4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 67, ar = {x=posicao.x+5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 67, ar = {x=posicao.x+6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x+5, y=posicao.y, z=posicao.z}})
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		addEvent(gust, 0, {cid = cid, eee = 65, ar = {x=posicao.x-1, y=posicao.y, z=posicao.z}, arr = posicao})
		addEvent(gust, 300, {cid = cid, eee = 65, ar = {x=posicao.x-2, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-1, y=posicao.y, z=posicao.z}})
		addEvent(gust, 600, {cid = cid, eee = 65, ar = {x=posicao.x-3, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-2, y=posicao.y, z=posicao.z}})
		addEvent(gust, 900, {cid = cid, eee = 65, ar = {x=posicao.x-4, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-3, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1200, {cid = cid, eee = 65, ar = {x=posicao.x-5, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-4, y=posicao.y, z=posicao.z}})
		addEvent(gust, 1500, {cid = cid, eee = 65, ar = {x=posicao.x-6, y=posicao.y, z=posicao.z}, arr = {x=posicao.x-5, y=posicao.y, z=posicao.z}})
		end
		return 0
                elseif pokemon.x.spell == "Waterball" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
			local function throw(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doSendDistanceShoot(getThingPos(getCreatureSummons(params.cid)[1]), getThingPos(getCreatureTarget(params.cid)), 2)
			else
			end
			end
			local function damage(params)
			if isMonster(getCreatureTarget(params.cid)) then
			doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), waba, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 68)
			else
			end
			end
		addEvent(damage, 100, {cid = cid})
		addEvent(throw, 0, {cid = cid})
		return 0
	elseif pokemon.x.spell == "Windstorm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 42})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 42})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 42})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 42})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = CONST_ME_POFF})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = CONST_ME_POFF})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = CONST_ME_POFF})
	return 0
                elseif pokemon.x.spell == "Earthquake" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 500, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 1000, {cid = cid, el = element, ar = earthquake, ef = 118})
		addEvent(storm, 1500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 2000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 2500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 3000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 3500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 4000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 4500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 5000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 5500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 6000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 6500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 7000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 7500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 8000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 8500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 9000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 9500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 10000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 10500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 11000, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 11500, {cid = cid, el = element, ar = earthquake, ef = 118})
                addEvent(storm, 12000, {cid = cid, el = element, ar = earthquake, ef = 118})
	        return 0
                elseif pokemon.x.spell == "Wing Attack" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureLookDir(getCreatureSummons(cid)[1]) == 0 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 128)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdn, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 1 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), winge, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 129)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingde, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 2 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wings, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 131)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingds, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		elseif getCreatureLookDir(getCreatureSummons(cid)[1]) == 3 then
		doAreaCombatHealth(getCreatureSummons(cid)[1], COMBAT_PDAMAGE, getThingPos(getCreatureSummons(cid)[1]), wingw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 130)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), wingdw, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), CONST_ME_NONE)
		end
		return 0
                elseif pokemon.x.spell == "Mega Kick" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 113)
		return 0

	        elseif pokemon.x.spell == "Harden" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local hardname = getCreatureName(getCreatureSummons(cid)[1])
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
		local oldpos = getThingPos(getCreatureSummons(cid)[1])
			local function efect(params)
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			doSendMagicEffect(getThingPos(getCreatureSummons(params.cid)[1]), 144)
			end
			end
			end
		local function chard(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
		setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, -1)
		end
		end
		end
		addEvent(efect, 100, {cid = cid, hardname = hardname})
		addEvent(efect, 1600, {cid = cid, hardname = hardname})
		addEvent(efect, 3100, {cid = cid, hardname = hardname})
		addEvent(efect, 4600, {cid = cid, hardname = hardname})
		addEvent(efect, 6100, {cid = cid, hardname = hardname})
		addEvent(efect, 7600, {cid = cid, hardname = hardname})
		addEvent(efect, 9100, {cid = cid, hardname = hardname})
		addEvent(efect, 10600, {cid = cid, hardname = hardname})
		addEvent(chard, 11000, {cid = cid})		
	        return 0
	        elseif pokemon.x.spell == "Electric Storm" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		posit = getThingPos(getCreatureSummons(cid)[1])
		local function storm(params)
		if #getCreatureSummons(params.cid) >= 1 then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], params.el, posit, params.ar, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), params.ef)
		else
		end
		end
		addEvent(storm, 0, {cid = cid, el = element, ar = ws1, ef = 225})
		addEvent(storm, 500, {cid = cid, el = element, ar = ws2, ef = 225})
		addEvent(storm, 1000, {cid = cid, el = element, ar = ws3, ef = 225})
		addEvent(storm, 1500, {cid = cid, el = element, ar = ws4, ef = 225})
		addEvent(storm, 700, {cid = cid, el = null, ar = ws4, ef = 225})
		addEvent(storm, 1200, {cid = cid, el = null, ar = ws1, ef = 225})
		addEvent(storm, 1800, {cid = cid, el = null, ar = ws3, ef = 225})
	return 0
 elseif pokemon.x.spell == "Earthshock" then
	        doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
	        doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
	        exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
	        doAreaCombatHealth(getCreatureSummons(cid)[1], GROUNDDAMAGE, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 255)
	        local sps = getThingPos(getCreatureSummons(cid)[1])
	        sps.x = sps.x+1
	        sps.y = sps.y+1
	        doSendMagicEffect(sps, 127)
	        return 0
                elseif pokemon.x.spell == "Stomp" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), stomp, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 118)
                return 0
                elseif pokemon.x.spell == "Mind Blast" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..",  "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		local function go(params)
		if isCreature(getCreatureSummons(params.cid)[1]) then
		if isCreature(getCreatureTarget(cid)) then
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), psy2, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		end
		end
		end
		addEvent(go, 150, {cid = cid})
		if math.random(1,3) == 1 then
		random = 133
		else
		if math.random(1,2) == 2 then
		random = 134
		else
		random = 136
		end
		end
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), psy1, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), random)
		return 0
	elseif pokemon.x.spell == "Toxic Needle" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 15)
		doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 8)
	return 0
	elseif pokemon.x.spell == "Thunderbolt" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local posalvo = getThingPos(getCreatureTarget(cid))
		local boltalvo = getCreatureTarget(cid)
		posalvo.x = posalvo.x-2
		posalvo.y = posalvo.y-6
		doSendDistanceShoot(posalvo, getThingPos(getCreatureTarget(cid)), 41)
		local function bolt(params)
		if isCreature(params.cid) then
		if isCreature(getCreatureTarget(cid)) then
		if getCreatureTarget(params.cid) == params.boltalvo then
		doAreaCombatHealth(getCreatureSummons(params.cid)[1], element, getThingPos(getCreatureTarget(cid)), 0, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
		end
		end
		end
		end
		addEvent(bolt, 200, {cid = cid, boltalvo = boltalvo})
	        return 0
                elseif pokemon.x.spell == "Thunder" then
                doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
                doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
                exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
                doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), thunder, -((num1)+(getPlayerLevel(cid)*(num3))), -((num2)+(getPlayerLevel(cid)*(num3))), 48)
                return 0
elseif pokemon.x.spell == "Rollout" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		if getCreatureName(getCreatureSummons(cid)[1]) == "Voltorb" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], voltorb, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 85)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Electrode" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], electrode, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 101)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandshrew" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], sandshrew, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 93)
		elseif getCreatureName(getCreatureSummons(cid)[1]) == "Sandslash" then
		doSetCreatureOutfit(getCreatureSummons(cid)[1], sandslash, 8300)
		doChangeSpeed(getCreatureSummons(cid)[1], 143)
		end
		setPlayerStorageValue(getCreatureSummons(cid)[1], 4, 1)
			local function roll(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			if getCreatureCondition(getCreatureSummons(params.cid)[1], CONDITION_OUTFIT) == true then
			doAreaCombatHealth(getCreatureSummons(cid)[1], element, getThingPos(getCreatureSummons(cid)[1]), rollout, -((num1)+(getPlayerLevel(cid)*(num3))), -((num1)+(getPlayerLevel(cid)*(num3))), 255)
			end
			end
			end
			end
		for r = 1, 8 do
		addEvent(roll, 1000*r, {cid = cid})
		end

			local function stoproll(params)
			if isCreature(params.cid) then
			if isCreature(getCreatureSummons(params.cid)[1]) then
			doChangeSpeed(getCreatureSummons(params.cid)[1], -101)
			if getPlayerStorageValue(getCreatureSummons(params.cid)[1], 4) >= 1 then
			setPlayerStorageValue(getCreatureSummons(params.cid)[1], 4, 0)
			end
			end
			end
			end
		addEvent(stoproll, 8300, {cid = cid})
		return 0 
                elseif pokemon.x.spell == "Super Sonic" then
		doCreatureSay(getCreatureSummons(cid)[1], ""..string.upper(c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell).."!", TALKTYPE_MONSTER)
		doCreatureSay(cid, ""..getCreatureName(getCreatureSummons(cid)[1])..", use "..c[getCreatureOutfit(getCreatureSummons(cid)[1]).lookType].x.spell.."!", TALKTYPE_SAY)
		exhaustion.set(cid, pokemon.x.ex, pokemon.x.cd)
		local t = getCreatureTarget(cid)
		setPlayerStorageValue(t, 5, 1)
		local function confused(params)
		if isCreature(params.t) then
		local spdc = getCreatureSpeed(params.t)
		if getCreatureLookDir(params.t) == 0 then
		confs = math.random(1,3)
		elseif getCreatureLookDir(params.t) == 1 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 0
			elseif confurandom >= 67 then
			confs = 2
			else
			confs = 3
			end
		elseif getCreatureLookDir(params.t) == 2 then
			confurandom = math.random(1,99)
			if confurandom <= 33 then
			confs = 3
			elseif confurandom >= 67 then
			confs = 0
			else
			confs = 1
			end
		elseif getCreatureLookDir(params.t) == 3 then
		confs = math.random(0,2)
		end
		doPushCreature(params.t, confs, 1, 0)
		doSendMagicEffect(getThingPos(params.t), 31)
		end
		end
		local function nonc(params)
		if isCreature(params.t) then
		doChangeSpeed(params.t, -getCreatureSpeed(params.t))
		doChangeSpeed(params.t, getCreatureBaseSpeed(params.t))
		setPlayerStorageValue(params.t, 5, -1)
		end
		end
		doSendDistanceShoot(getThingPos(getCreatureSummons(cid)[1]), getThingPos(getCreatureTarget(cid)), 32)

		doChangeSpeed(t, -( getCreatureSpeed(t)/3))
		doSendMagicEffect(getThingPos(t), 31)
		for i = 1, math.random(6,7) do
		addEvent(confused, 1000*i, {cid = cid, t = t})
		end
		addEvent(nonc, 7100, {cid - cid, t = t})
		return 0
	end
return 0
end	

 

 

Em Move7 procure por:

function onSay(cid)
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end

Substitua por:

function onSay(cid)
	if getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end

Em Move8 procure por:

function onSay(cid)	
	if #getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end

Substitua por:

function onSay(cid)	
	if getCreatureSummons(cid) == 0 then
	doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "You need a pokemon to use moves.")
	return 0
	end

 

Em 13/07/2017 ás 17:11, ZikaLord disse:

Erro


[13/07/2017 17:11:49] [Error - Npc interface] 
[13/07/2017 17:11:49] data/npc/scripts/heal.lua:onCreatureSay
[13/07/2017 17:11:49] Description: 
[13/07/2017 17:11:49] data/npc/scripts/heal.lua:125: bad argument #1 to 'sub' (number expected, got no value)
[13/07/2017 17:11:49] stack traceback:
[13/07/2017 17:11:49] 	[C]: in function 'sub'
[13/07/2017 17:11:49] 	data/npc/scripts/heal.lua:125: in function <data/npc/scripts/heal.lua:81>
  Mostrar conteúdo oculto

local focus = 0

local talk_start = 0

local target = 0

local following = false

local attacking = false

local talkState = {}
local states = {'1', '2', '3', '4', '5', '6'}
local store = {1001, 1002, 1003, 1004, 1005, 1006, 1007, 1008, 1009, 1010, 1011, 1012, 1013, 1014, 1015, 1016, 1017, 1018, 1019, 1020, 1021, 1022, 1023, 1024, 1025, 1026, 1027, 1028, 1029, 1030, 1031, 1032, 1033, 1034, 1035, 1036, 1037, 1038, 1039, 1040, 1041, 1042, 1043, 1044, 1045, 1046, 1047, 1048, 1049, 1050, 1051, 1052, 1053, 1054, 1055, 1056, 1057, 1058, 1059, 1060, 1061, 1062, 1063, 1064, 1065, 1066,  1067, 1068, 1069, 1071, 1072, 1073, 1074, 1075, 1076, 1077, 1078, 1079, 1080, 1081, 1082, 1083, 1084, 1085, 1086, 1087, 1088, 1089, 1090, 1091, 1092, 1093, 1094, 1095, 1096, 1097, 1098, 1099, 1100, 1101, 1102, 1103, 1104, 1105, 1106, 1107, 1108, 1109, 1110, 1111, 1112, 1113, 1114, 1115, 1116, 1117, 1118, 1119, 1120, 1121, 1122, 1123, 1124, 1125, 1126, 1127, 1128, 1129, 1130, 1131, 1132, 1133, 1134, 1135, 1136, 1137, 1138, 1139, 1140, 1141, 1142, 1143, 1144, 1145, 1146, 1147, 1148, 1149, 1150, 1151}
local unlock = {}
local pokeballs = {'2222', '2224'}
local ultraballs = {'2220', '2227'} 
local greatballs = {'2651', '2657'}
local superballs = {'2653', '2658'}
local saffariballs = {'2655', '2659'}
local darkballs = {'11618', '11619'}
local loveballs = {'11621', '11622'}
local goldenballs = {'11624', '11625'}
local frozenballs = {'11627', '11628'}


function onThingMove(creature, thing, oldpos, oldstackpos)

end

function onCreatureAppear(creature)

end

function onCreatureDisappear(cid, pos)
    if focus == cid then

selfSay('Good bye sir!')

focus = 0

talk_start = 0

    end

end

function onCreatureTurn(creature)

end

function msgcontains(txt, str)

return (string.find(txt, str) and not string.find(txt, '(%w+)' .. str) and not string.find(txt, str .. '(%w+)'))

end

function onCreatureSay(cid, type, msg)
local msg = string.lower(msg)
local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
if((msgcontains(msg, 'hi') or msgcontains(msg, 'heal') or msgcontains(msg, 'help')) and (getDistanceToCreature(cid) <= 3)) then
     if exhaustion.get(cid, 9211) then
    selfSay('Please wait a few moment before asking me to heal your pokemons again!')
    return true
    end
    exhaustion.set(cid, 9211, 5)
    doCreatureAddHealth(cid, getCreatureMaxHealth(cid)-getCreatureHealth(cid))
    doSendMagicEffect(getThingPos(cid), 132)
    if isInArray(pokeballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2222)
    end
    if isInArray(ultraballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2220)
    end
    if isInArray(greatballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2651)
    end
    if isInArray(superballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2653)
    end
    if isInArray(saffariballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 2655)
    end
    if isInArray(darkballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11618)
    end
    if isInArray(loveballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11621)
    end
    if isInArray(goldenballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11624)
    end
    if isInArray(frozenballs, getPlayerSlotItem(cid, CONST_SLOT_FEET).itemid) then
    local feet = getPlayerSlotItem(cid, CONST_SLOT_FEET)
    local maxh = tonumber(getItemAttribute(feet.uid, "poke"):match("/(.+)]"))
    doItemSetAttribute(feet.uid, "poke", getItemAttribute(feet.uid, "poke"):sub(1, findLetter(getItemAttribute(feet.uid, "poke"), "[")) .. maxh .. getItemAttribute(feet.uid, "poke"):sub(findLetter(getItemAttribute(feet.uid, "poke"), "/")))
    doTransformItem(feet.uid, 11627)
    end
        local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
            if #getCreatureSummons(cid) >= 1 then
            local jui = getCreatureSummons(cid)[1]
            doCreatureAddHealth(jui, getCreatureMaxHealth(jui)-getCreatureHealth(jui))
            doSendMagicEffect(getThingPos(jui), 12)
            end
            local items = getItemsInContainerById(bp.uid, 2224)
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2222)
            end
local items = getItemsInContainerById(bp.uid, 2222)
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2222)
            end
            local items = getItemsInContainerById(bp.uid, 2227) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2220)
            end
            local items = getItemsInContainerById(bp.uid, 2657) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2651)
            end
            local items = getItemsInContainerById(bp.uid, 2658) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2653)
            end
            local items = getItemsInContainerById(bp.uid, 2659) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 2655)
            end
            local items = getItemsInContainerById(bp.uid, 11619) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11618)
            end
            local items = getItemsInContainerById(bp.uid, 11618) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11618)
            end
            local items = getItemsInContainerById(bp.uid, 11623) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11621)
            end
            local items = getItemsInContainerById(bp.uid, 11626) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11624)
            end
            local items = getItemsInContainerById(bp.uid, 11629) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            doTransformItem(uid, 11627)
            end
            local items = getItemsInContainerById(bp.uid, 2220) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2651) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2653) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 2655) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11618) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11621) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11624) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
            local items = getItemsInContainerById(bp.uid, 11627) 
            for _, uid in pairs(items) do
            local maxh = tonumber(getItemAttribute(uid, "poke"):match("/(.+)]"))
            doItemSetAttribute(uid, "poke", getItemAttribute(uid, "poke"):sub(1, findLetter(getItemAttribute(uid, "poke"), "[")) .. maxh .. getItemAttribute(uid, "poke"):sub(findLetter(getItemAttribute(uid, "poke"), "/")))
            end
    selfSay('There you go! You and your pokemons are healthy again.')
end
end
 
function onThink()

if focus ~= 0 then
a, b, c = selfGetPosition()
if c ~= getThingPos(focus).z then
focus = 0
end
end

if focus ~= 0 then
if getDistanceToCreature(focus) > 3 then
focus = 0
end
end

return true
end

 

Em data/npc/scripts/heal.lua procure por:

        local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
            if #getCreatureSummons(cid) >= 1 then
            local jui = getCreatureSummons(cid)[1]
            doCreatureAddHealth(jui, getCreatureMaxHealth(jui)-getCreatureHealth(jui))
            doSendMagicEffect(getThingPos(jui), 12)
            end

Substitua por:

        local bp = getPlayerSlotItem(cid, CONST_SLOT_BACKPACK)
            if getCreatureSummons(cid) >= 1 then
            local jui = getCreatureSummons(cid)[1]
            doCreatureAddHealth(jui, getCreatureMaxHealth(jui)-getCreatureHealth(jui))
            doSendMagicEffect(getThingPos(jui), 12)
            end

 

Editado por Billihard (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

VLW,VLW,VLW!!

O rei de seu proprio destino é aquele que luta pela gloria do amanhã!
Discord : ZoR#9373


 

Link para o post
Compartilhar em outros sites

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

  • Conteúdo Similar

    • Por LeoTK
      Salve galera neste tópico irei postar algumas prints do mapa do servidor para quem queira acompanhar e quem sabe até utilizar de inspiração para mapear o seu NTO.
       
      #Att 11/08/2022

       
       
       
       
      Konoha (Em Desenvolvimento)
       
       
       
       
    • Por DiigooMix
      Como o título já diz, será que alguém possui sprite do hitto e se possível as transformações dele?
    • Por OmegaZero
      Olá gostaria que alguém me ajudasse com uma "scripting" não sei se é pela mesma, seria o seguinte uma determinada arma teria a chance de dar double hit e não sei oque fazer alguem poderia ajudar?

      OBS:não sei se é o local correto se não for mova, desculpe
    • Por Madarasenju
      Olá galera do Tibia King, queria por uns npc's no meu server que não tem função de trade nem nada do tipo, queria que eles só andassem como enfeite, Rep+ Pra quem me ajudar... grato desde já.
    • Por SilenceRoot
      A magia é assim o você usa a a magia e ela ficará ativado por 10 segundos, até que o inimigo lance a primeira magia ou todos de uma vez, quando ele lançar a primeira magia, ele não lhe acertará ou seja esquivando dela, e logo em seguida será teletransportado aleatoriamente ao redor do inimigo que usou.
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo