From d692ffc24a032a6b782eef0539d4dfbb572a2d59 Mon Sep 17 00:00:00 2001 From: DiscoDurodeRoer <30374642+DiscoDurodeRoer@users.noreply.github.com> Date: Sun, 23 Dec 2018 01:33:43 +0100 Subject: [PATCH] v1.0 --- .../1_generacion_modelo_entidad_relacion.xml" | 2 +- .../1_generacion_modelo_relacional.xml" | 2 +- .../1_generacion_mysql_workbenh.pdf" | Bin 40885 -> 41756 bytes "1\302\272_generacion/mysql_pokemon.sql" | 343 +++++++++--------- 4 files changed, 174 insertions(+), 173 deletions(-) diff --git "a/1\302\272_generacion/1_generacion_modelo_entidad_relacion.xml" "b/1\302\272_generacion/1_generacion_modelo_entidad_relacion.xml" index d9c9871..5495d80 100644 --- "a/1\302\272_generacion/1_generacion_modelo_entidad_relacion.xml" +++ "b/1\302\272_generacion/1_generacion_modelo_entidad_relacion.xml" @@ -1 +1 @@ -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 \ No newline at end of file +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 \ No newline at end of file diff --git "a/1\302\272_generacion/1_generacion_modelo_relacional.xml" "b/1\302\272_generacion/1_generacion_modelo_relacional.xml" index 331aa8a..e22cc90 100644 --- "a/1\302\272_generacion/1_generacion_modelo_relacional.xml" +++ "b/1\302\272_generacion/1_generacion_modelo_relacional.xml" @@ -1 +1 @@ -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 \ No newline at end of file +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 \ No newline at end of file diff --git "a/1\302\272_generacion/1_generacion_mysql_workbenh.pdf" "b/1\302\272_generacion/1_generacion_mysql_workbenh.pdf" index 9538d9eaf5ccaa2262e13f71a3d9a26159e17fd3..0c71d9ba9342764df5ea0b8cd42ce2905828e330 100644 GIT binary patch delta 27888 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

7wR1bm%7i+J&VLRBa?{sfQeTg9Cd(M+X++ezV< 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 P2f~L+M<=Nyh5CO0YDY#G delta 27379 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 diff --git "a/1\302\272_generacion/mysql_pokemon.sql" "b/1\302\272_generacion/mysql_pokemon.sql" index 3bab1fa..1c9242c 100644 --- "a/1\302\272_generacion/mysql_pokemon.sql" +++ "b/1\302\272_generacion/mysql_pokemon.sql" @@ -8,13 +8,13 @@ drop table if exists nivel_aprendizaje; drop table if exists pokemon_tipo; drop table if exists piedra; drop table if exists tipo_piedra; -drop table if exists tipo_forma_aprendizaje; -drop table if exists tipo_evolucion; drop table if exists nivel_evolucion; -drop table if exists pokemon_forma_evolucion; drop table if exists pokemon_movimiento_forma; +drop table if exists pokemon_forma_evolucion; drop table if exists forma_evolucion; +drop table if exists tipo_evolucion; drop table if exists forma_aprendizaje; +drop table if exists tipo_forma_aprendizaje; drop table if exists movimiento_efecto_secundario; drop table if exists efecto_secundario; drop table if exists movimiento; @@ -25,7 +25,6 @@ drop table if exists estadisticas_base; drop table if exists evoluciona_de; drop table if exists pokemon; - /*Tablas*/ Create table if not exists pokemon ( @@ -73,7 +72,10 @@ Create table if not exists movimiento ( potencia int not null, precision_mov int not null, descripcion varchar(500) not null, - pp int not null + pp int not null, + id_tipo int not null, + prioridad int not null default 0, + foreign key (id_tipo) references tipo(id_tipo) ); Create table if not exists efecto_secundario ( @@ -144,7 +146,7 @@ Create table if not exists pokemon_movimiento_forma ( pokemon_evolucionado int, pokemon_origen int, primary key(pokemon_evolucionado, pokemon_origen), - foreign key (pokemon) references pokemon(numero_pokedex), + foreign key (pokemon_evolucionado) references pokemon(numero_pokedex), foreign key (pokemon_origen) references pokemon(numero_pokedex) ); @@ -956,170 +958,170 @@ insert into pokemon_forma_evolucion values (148, 29); -- Movimientos -insert into movimiento values(1, 'Placaje', 40, 100, 'Causa daño', 35, 9); -insert into movimiento values(2, 'Danza espada', 0, 100, 'Aumenta en dos niveles el ataque del usuario', 30, 9); -insert into movimiento values(3, 'Burbuja', 20, 100, 'Causa daño y tiene una probabilidad del 10% de bajar la velocidad', 30, 1); -insert into movimiento values(4, 'Cascada', 80, 100, 'Causa daño', 15, 1); -insert into movimiento values(5, 'Hidrobomba', 120, 80, 'Causa daño', 5, 1); -insert into movimiento values(6, 'Martillazo', 90, 85, 'Causa daño con probabilidad de dar golpe critico(12,5%)', 10, 1); -insert into movimiento values(7, 'Pistola de agua', 40, 100, 'Causa daño', 25,1); -insert into movimiento values(8, 'Rayo burbuja', 65, 100, 'Causa daño y tiene una probabilidad del 10% de bajar la velocidad', 20,1); -insert into movimiento values(9, 'Refugio', 0, 100, 'Aumenta la defensa en un nivel', 40, 1); -insert into movimiento values(10, 'Surf', 95, 100, 'Causa daño', 15,1); -insert into movimiento values(11, 'Tenaza', 35, 75, 'Causa daño durante 2-5 turnos. Imposibilidad de atacar al objetivo', 15, 1); -insert into movimiento values(12, 'Chupa vidas', 20, 100, 'Causa daño y recupera el 50% PS quitados', 15, 2); -insert into movimiento values(13, 'Disparo demora', 0, 95, 'Baja la velocidad del objetivo', 40,2); -insert into movimiento values(14, 'Doble ataque', 25, 100, 'Causa daño golpeando dos veces. Cada golpe tiene un 20% de probabilidad de envenenar.', 20,2); -insert into movimiento values(15, 'Pin misil', 14, 85, 'Causa daño al objetivo de 2 a 5 veces', 20, 2); -insert into movimiento values(16, 'Furia dragón', 0, 100, 'Quita siempre 40 PS al obejtivo', 10, 3); -insert into movimiento values(17, 'Impactrueno', 40, 100, 'Causa daño y tiene una probabilidad del 10% de paralizar el objetivo.', 30, 4); -insert into movimiento values(18, 'Onda trueno', 0, 100, 'Paraliza el objetivo', 20,4); -insert into movimiento values(19, 'Puño trueno', 75, 100, 'Causa daño y tiene un 10% de paralizar el objetivo', 35, 4); -insert into movimiento values(20, 'Rayo', 95, 100, 'Causa daño y tiene un 10% de paralizar el objetivo', 15, 4); -insert into movimiento values(21, 'Trueno', 120, 70, 'Causa daño y tiene un 10% de paralizar el objetivo', 10, 4); -insert into movimiento values(23, 'Lenguetazo', 20, 100, 'Causa daño y tiene un 30% de paralizar el objetivo', 30, 5); -insert into movimiento values(24, 'Rayo confuso', 0, 100, 'Confunde al objetivo', 10, 5); -insert into movimiento values(25, 'Tinieblas', 0, 100, 'Resta la cantidad de PS equivalentes al nivel de usuario', 15, 5); -insert into movimiento values(26, 'Ascuas', 40, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 25, 6); -insert into movimiento values(27, 'Giro fuego', 15, 100, 'Causa dañó de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 15, 6); -insert into movimiento values(28, 'Lanzallamas', 95, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 15, 6); -insert into movimiento values(29, 'Llamarada', 120, 85, 'Causa daño y tiene una probabilidad del 30% de quemar al objetivo', 5, 6); -insert into movimiento values(30, 'Puño fuego', 75, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 15, 4); -insert into movimiento values(31, 'Neblina', 0, 0, 'Neblina evita durante 5 turnos otros pokemon puedan reducir las estadisiticas del equipo aliado', 30, 7); -insert into movimiento values(32, 'Niebla', 0, 0, 'Restaura todos los cambios, tantos positivos como negativos, en las estadisitcas de todos los pokemon.', 30, 7); -insert into movimiento values(33, 'Puño hielo', 75, 100, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 15, 7); -insert into movimiento values(34, 'Rayo aurora', 65, 100, 'Causa daño y tiene una probabilidad del 10% de bajar un nivel el ataque del objetivo', 20, 7); -insert into movimiento values(35, 'Rayo hielo', 95, 100, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 10, 7); -insert into movimiento values(36, 'Ventisca', 120, 90, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 5, 7); -insert into movimiento values(37, 'Contraataque', 0, 100, 'Devuelve el doble daño recibido si es un físico', 20, 8); -insert into movimiento values(38, 'Doble patada', 30, 100, 'Causa daño, golpeando 2 veces en un mismo turno', 30, 8); -insert into movimiento values(39, 'Movimiento sísmico', 0, 100, 'Resta la cantidad de PS equivalentes al nivel de usuario', 20, 8); -insert into movimiento values(40, 'Patada baja', 50, 90, 'Causa daño y tiene del 30% de retroceder al objetivo', 20, 8); -insert into movimiento values(41, 'Patada giro', 60, 85, 'Causa daño y tiene del 30% de retroceder al objetivo', 15, 8); -insert into movimiento values(42, 'Patada salto', 70, 100, 'Causa daño. Si falla, el usuario se golpea a si mismo restandole 1 PS.', 25, 8); -insert into movimiento values(43, 'Patada salto alta', 85, 90, 'Causa daño. Si falla, el usuario se golpea a si mismo restandole 1 PS.', 20, 8); -insert into movimiento values(44, 'Sumisión', 80, 80, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado.', 20, 8); -insert into movimiento values(45, 'Afilar', 0, 100, 'sube el ataque del usuario en un nivel', 30, 9); -insert into movimiento values(46, 'Agarre', 55, 100, 'Causa daño.', 30, 9); -insert into movimiento values(47, 'Amortiguador', 0, 0, 'Restaura la mitad de los PS máximos del usuario', 10, 9); -insert into movimiento values(48, 'Anulación', 0, 55, 'Anula un movimiento del objetivo', 20, 9); -insert into movimiento values(49, 'Arañazo', 40, 100, 'Causa daño.', 35, 9); -insert into movimiento values(50, 'Atadura', 15, 75, 'Causa daño de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 20, 9); -insert into movimiento values(51, 'Ataque arena', 0, 100, 'Baja la precisión en un nivel.', 15, 9); -insert into movimiento values(52, 'Ataque furia', 15, 85, 'Causa daño de 2 a 5 turnos.', 20, 9); -insert into movimiento values(53, 'Ataque rápido', 40, 100, 'Causa daño.', 30, 9); -insert into movimiento values(54, 'Autodestrucción', 130, 100, 'Causa daño y debilita al usuario.', 5, 9); -insert into movimiento values(55, 'Beso amoroso', 0, 75, 'Duerme al obejtivo', 10, 9); -insert into movimiento values(56, 'Bomba huevo', 100, 75, 'Causa daño', 10, 9); -insert into movimiento values(57, 'Bomba sónica', 0, 90, 'siempre quita 20 PS', 20, 9); -insert into movimiento values(58, 'Cabezazo', 100, 100, 'Se prepara durante el primer turno y ataca en el segundo', 15, 9); -insert into movimiento values(59, 'Canto', 0, 55, 'Duerme al objetivo.', 15, 9); -insert into movimiento values(60, 'Chirrido', 0, 85, 'Baja en dos niveles la defensa del objetivo.', 40, 9); -insert into movimiento values(61, 'Clavo cañón', 20, 100, 'Causa daño de 2 a 5 turnos.', 15, 9); -insert into movimiento values(62, 'Conversión', 0, 0, 'Cambia el tipo del usuario del oponente', 30, 9); -insert into movimiento values(63, 'Cornada', 65, 100, 'Causa daño.', 25, 9); -insert into movimiento values(64, 'Corte', 50, 100, 'Causa daño.', 30, 9); -insert into movimiento values(65, 'Cuchillada', 70, 100, 'Causa daño y tiene una alta probabilidad de causar un golpe crítico (12,5%).', 20, 9); -insert into movimiento values(66, 'Derribo', 90, 85, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado ', 20, 9); -insert into movimiento values(67, 'Desarrollo', 0, 0, 'Aumenta en un nivel el especial del usuario.', 40, 9); -insert into movimiento values(68, 'Deslumbrar', 0, 100, 'Provoca paralisis al objetivo.', 30, 9); -insert into movimiento values(69, 'Destello', 0, 100, 'Baja un nivel la precisición del oponente.', 20, 9); -insert into movimiento values(70, 'Destructor', 40, 100, 'Causa daño.', 35, 9); -insert into movimiento values(71, 'Día de pago', 40, 100, 'Causa daño. Se esparcen monedas que se recogen al final del combate', 20, 9); -insert into movimiento values(72, 'Doble equipo', 0, 0, 'Aumenta en un nivel la evasión del usuario.', 15, 9); -insert into movimiento values(73, 'Doble filo', 100, 100, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado.', 15, 9); -insert into movimiento values(74, 'Doblebofetón', 15, 85, 'Causa daño de 2 a 5 turnos.', 10, 9); -insert into movimiento values(75, 'Explosión', 170, 100, 'Causa daño y debilita al usuario.', 5, 9); -insert into movimiento values(76, 'Foco energía', 0, 0, 'Aumenta la probabilidad asestar golpes criticos.', 40, 9); -insert into movimiento values(77, 'Fortaleza', 0, 0, 'Aumenta en un nivel la defensa del usuario.', 30, 9); -insert into movimiento values(78, 'Fuerza', 80, 100, 'Causa daño.', 15, 9); -insert into movimiento values(79, 'Furia', 20, 100, 'Causa daño. No puede cambiar de movimiento.', 20, 9); -insert into movimiento values(80, 'Golpe', 90, 100, 'Causa daño entre 3 o 4 turnos seguidos. El usuario termina confundido.', 20, 9); -insert into movimiento values(81, 'Golpe cabeza', 70, 100, 'Causa daño y tiene una probabilidad del 30% de hacer retroceder.', 15, 9); -insert into movimiento values(82, 'Golpe cuerpo', 85, 100, 'Causa daño y tiene una probabilidad del 30% de paralizar el objetivo.', 15, 9); -insert into movimiento values(83, 'Golpe kárate', 50, 100, 'Causa daño y tiene un alto índice de golpe crítico.', 25, 9); -insert into movimiento values(84, 'Golpes furia', 50, 100, 'Causa daño de 2 a 5 turnos.', 15, 9); -insert into movimiento values(85, 'Gruñido', 0, 100, 'Baja un nivel el ataque del objetivo.', 40, 9); -insert into movimiento values(86, 'Guillotina', 0, 30, 'Si acierta, provoca KO en un turno.', 5, 9); -insert into movimiento values(87, 'Hipercolmillo', 80, 90, 'Causa daño y tiene un una probabilidad del 10% de hacer retroceder al objetivo.', 15, 9); -insert into movimiento values(88, 'Hiperrayo', 150, 90, 'Causa daño. No podra moverse en el segundo turno.', 5, 9); -insert into movimiento values(89, 'Látigo', 0, 100, 'Baja en un nivel la defensa del oponente.', 30, 9); -insert into movimiento values(90, 'Malicioso', 0, 100, 'Baja en un nivel la defensa del oponente.', 30, 9); -insert into movimiento values(91, 'Megapatada', 120, 75, 'Causa daño.', 5, 9); -insert into movimiento values(92, 'MegaPuño', 80, 85, 'Causa daño.', 20, 9); -insert into movimiento values(93, 'Metrónomo', 0, 0, 'Utiliza un movimiento al azar.', 15, 9); -insert into movimiento values(94, 'Mimético', 0, 0, 'Permite al usuario elegir uno de los movimientos del objetivo y copiarlo.', 25, 9); -insert into movimiento values(95, 'Mordisco', 60, 100, 'Causa daño y tiene una probabilidad del 10% de hacer retroceder.', 25, 9); -insert into movimiento values(96, 'Pantalla de humo', 0, 100, 'Baja en un nivel la precisión del oponente.', 20, 9); -insert into movimiento values(97, 'Perforador',0, 30, 'Si acierta, provoca KO en un turno.', 5, 9); -insert into movimiento values(98, 'Pisotón', 65, 100, 'Causa daño y tiene una probabilidad del 30% de hacer retroceder.', 20, 9); -insert into movimiento values(100, 'Atizar', 80, 75, 'Causa daño.', 20, 9); -insert into movimiento values(101, 'Presa', 50, 100, 'Causa daño de 2 a 5 turnos.', 20, 9); -insert into movimiento values(102, 'Puño cometa', 18, 85, 'Causa daño de 2 a 5 turnos.', 15, 9); -insert into movimiento values(103, 'Rapidez', 60, 0, 'Causa daño. No falla.', 20, 9); -insert into movimiento values(104, 'Recuperación', 0, 0, 'Restaura la mitad de los PS máximos del usuario', 20, 9); -insert into movimiento values(105, 'Reducción', 0, 0, 'Aumenta la evasión del usuario en un nivel.', 10, 9); -insert into movimiento values(106, 'Remolino', 0, 85, 'Ahuyenta a los pokemon salvajes.', 20, 9); -insert into movimiento values(107, 'Constricción', 15, 85, 'Causa daño de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 20, 9); -insert into movimiento values(109, 'Rizo de defensa', 0, 100, 'Aumenta en un nivel la defensa del usuario.', 40, 9); -insert into movimiento values(110, 'Rugido', 0, 0, 'Ahuyenta a los pokemon salvajes.', 20, 9); -insert into movimiento values(111, 'Salpicadura', 0, 0, 'No tiene ningún efecto.', 40, 9); -insert into movimiento values(112, 'Superdiente', 0, 90, 'Quita al objetivo la mitad de sus PS actuales.', 10, 9); -insert into movimiento values(113, 'Supersónico', 0, 55, 'Confunde al objetivo.', 20, 9); -insert into movimiento values(114, 'Sustituto', 0, 0, 'Crea un sustituo con el 25% de los PS maximos del usuario para que reciba el daño de los movimientos', 10, 9); -insert into movimiento values(115, 'Tornado', 40, 100, 'Causa daño.', 35, 9); -insert into movimiento values(116, 'Transformación', 0, 0, 'Convierte al usuario en el Pokémon objetivo, copiando su tipo, sus movimientos, habilidad, su ratio de captura, sus estadísticas y cambios en las mismas.', 10, 9); -insert into movimiento values(117, 'Triataque', 80, 100, 'Causa daño. Tiene un 20% de provocar quemaduras, paralisis o congelación', 10, 9); -insert into movimiento values(118, 'Venganza', 0, 0, ' Hace que el usuario se mantenga inmóvil durante 2-3 turnos seguidos, sin poder realizar ninguna acción, para después devolver el doble del daño recibido. El movimiento falla si el usuario no resulta dañado por el enemigo.', 10, 9); -insert into movimiento values(119, 'Viento cortante', 80, 75, 'carga en el primer turno que es efectuado, creando un remolino. En el segundo turno, causa daño.', 10, 9); -insert into movimiento values(120, 'Absorber', 20, 100, 'Causa daño y el usuario recupera el 50% de los PS quitados por el movimiento al objetivo', 20, 10); -insert into movimiento values(121, 'Danza pétalo', 70, 100, 'Causa daño entre 3 o 4 turnos seguidos. El usuario termina confundido.', 20, 10); -insert into movimiento values(122, 'Drenadoras', 0, 90, 'Planta tres semillas en el oponente, las cuales le roban 1/16 de sus PS máximos al final de cada turno. El usuario recupera esa misma cantidad de PS. Si el usuario es cambiado, el Pokémon que pase a ocupar su lugar recibirá esos puntos de salud. El efecto se pasa al cambiar el Pokémon infectado por drenadoras. Drenadoras no afecta a Pokémon de tipo planta.', 10, 10); -insert into movimiento values(123, 'Espora', 0, 100, 'Duerme al objetivo.', 15, 10); -insert into movimiento values(124, 'Hoja afilada', 55, 95, 'Causa daño y tiene una alta probabilidad de dar un golpe crítico (12,5%).', 25, 10); -insert into movimiento values(125, 'Látigo cepa', 35, 100, 'Causa daño.', 25, 10); -insert into movimiento values(126, 'Megaagotar', 45, 100, 'Causa daño y el usuario recupera el 50% de los PS quitados por el movimiento al objetivo', 15, 10); -insert into movimiento values(127, 'Paralizador', 0, 75, 'Paraliza al objetivo', 30, 10); -insert into movimiento values(128, 'Rayo solar', 120, 100, 'utiliza este movimiento concentra la energía solar un turno, para liberar un rayo que causa daño en el siguiente turno.', 10, 10); -insert into movimiento values(129, 'Somnífero', 0, 75, 'Duerme al objetivo', 15, 10); -insert into movimiento values(130, 'Agilidad', 0, 0, 'Sube en dos niveles la velocidad del usuario.', 30, 11); -insert into movimiento values(131, 'Amnesia', 0, 0, 'Aumenta en dos niveles el especial del usuario', 20, 11); -insert into movimiento values(132, 'Barrera', 0, 0, 'Aumneta en dos niveles la defensa del usuario.', 30, 11); -insert into movimiento values(133, 'Comesueños', 100, 100, 'Causa daño a un objetivo dormido y el usuario recupera el 50% de los PS quitados por movimiento al objetivo.', 15, 11); -insert into movimiento values(134, 'Confusión', 50, 100, 'Causa daño y tiene una probabilidad del 10% de confundir al objetivo.', 25, 11); -insert into movimiento values(135, 'Descanso', 0, 0, 'hace que el usuario se duerma y recupere la totalidad de los PS, curando en el proceso cualquier problema de estado. El usuario después permanece dormido durante 2 turnos.', 10, 11); -insert into movimiento values(136, 'Hipnosis', 0, 60, 'Duerme al objetivo.', 20, 11); -insert into movimiento values(137, 'Kinético', 0, 80, 'Baja la precisión del objetivo en un nivel.', 15, 11); -insert into movimiento values(138, 'Meditación', 0, 0, 'aumenta un nivel el ataque del usuario.', 40, 11); -insert into movimiento values(139, 'Pantalla de luz', 0, 0, 'Dobla la defensa especial del usuario.', 30, 11); -insert into movimiento values(140, 'Psicoonda', 0, 80, 'Causa un daño variable al oponente, elegido al azar de un número entre 0,5 y 1,5 veces el nivel del usuario.', 15, 11); -insert into movimiento values(141, 'Psicorrayo', 65, 60, 'Causa daño y tiene una probabilidad del 10% de confundir al objetivo.', 20, 11); -insert into movimiento values(142, 'Psíquico', 90, 100, 'Causa daño y tiene una probabilidad del 30% de bajar en un nivel el especial del objetivo.', 20, 11); -insert into movimiento values(143, 'Reflejo', 0, 0, 'Dobla la defensa física del usuario.', 20, 11); -insert into movimiento values(144, 'Teletransporte', 0, 0, 'Permite huir de combates individuales.', 20, 11); -insert into movimiento values(145, 'Avalancha', 75, 90, 'Causa daño.', 10, 12); -insert into movimiento values(146, 'Lanzarocas', 50, 65, 'Causa daño.', 15, 12); -insert into movimiento values(147, 'Excavar', 100, 100, 'Cava en el primer turno y el segundo turno ataca.', 10, 13); -insert into movimiento values(148, 'Fisura', 0, 30, 'Si acierta, provoca un golpe fulminante.', 5, 13); -insert into movimiento values(149, 'Hueso palo', 65, 85, 'Causa daño y tiene una probabilidad del 10% de hacer retroceder al objetivo.', 20, 13); -insert into movimiento values(150, 'Huesomerang', 50, 90, 'Causa daño, golpeando al objetivo en un mismo turno.', 10, 13); -insert into movimiento values(151, 'Terremoto', 100, 100, 'Causa daño.', 10, 13); -insert into movimiento values(152, 'Ácido', 40, 100, 'Causa daño y tiene una probabilidad deñ 10% de bajar un nivel la defensa del objetivo.', 30, 14); -insert into movimiento values(153, 'Armadura ácida', 0, 0, 'Sube en dos niveles la defensa del usuario.', 20, 14); -insert into movimiento values(154, 'Gas venenoso', 0, 55, 'Envenena al objetivo', 40, 14); -insert into movimiento values(155, 'Picotazo venenoso', 15, 100, 'Causa daño y tiene una probabilidad del 30% de envenenar al oponente.', 35, 14); -insert into movimiento values(156, 'Polución', 20, 70, 'Causa daño y tiene una probabilidad del 40% de envenar al objetivo.', 20, 14); -insert into movimiento values(157, 'Polvo veneno', 0, 75, 'Envenena al objetivo', 35, 14); -insert into movimiento values(158, 'Residuos', 65, 100, 'Causa daño y tiene una probabilidad del 30% de envenenar al objetivo.', 20, 14); -insert into movimiento values(159, 'Tóxico', 0, 85, 'provoca un grave envenenamiento que se agrava con el paso de los turnos.', 10, 14); -insert into movimiento values(160, 'Ataque aéreo', 140, 90, 'Se prepara durante el primer turno. En el segundo turno causa daño al objetivo.', 5, 15); -insert into movimiento values(161, 'Ataque ala', 35, 100, 'Causa daño.', 35, 15); -insert into movimiento values(162, 'Movimiento espejo', 0, 0, 'Utiliza el último ataque usado que haya tenido al usuario por objetivo. ', 20, 15); -insert into movimiento values(164, 'Pico taladro', 80, 100, 'Causa daño.', 20, 15); -insert into movimiento values(165, 'Picotazo', 35, 100, 'Causa daño.', 35, 15); -insert into movimiento values(166, 'Vuelo', 70, 100, ' emplea dos turnos: en el primero, el Pokémon vuela muy alto, tanto que estará fuera del alcance de la mayoría de los movimientos. En el segundo turno ocurre la caída del vuelo, en la cual el Pokémon golpea al oponente, pero puede ser interrumpida de muchas maneras.', 15, 15); -insert into movimiento values(167, 'Restricción', 10, 100, 'Restricción causa daño y tiene una probabilidad del 10% de bajar un nivel la velocidad del oponente.', 35, 9); -insert into movimiento values(168, 'Puño mareo', 70, 100, 'Causa daño y tiene una probabilidad del 20% de confundir al objetivo.', 10, 9); +insert into movimiento values(1, 'Placaje', 40, 100, 'Causa daño', 35, 9, 0); +insert into movimiento values(2, 'Danza espada', 0, 100, 'Aumenta en dos niveles el ataque del usuario', 30, 9, 0); +insert into movimiento values(3, 'Burbuja', 20, 100, 'Causa daño y tiene una probabilidad del 10% de bajar la velocidad', 30, 1, 0); +insert into movimiento values(4, 'Cascada', 80, 100, 'Causa daño', 15, 1, 0); +insert into movimiento values(5, 'Hidrobomba', 120, 80, 'Causa daño', 5, 1, 0); +insert into movimiento values(6, 'Martillazo', 90, 85, 'Causa daño con probabilidad de dar golpe critico(12,5%)', 10, 1, 0); +insert into movimiento values(7, 'Pistola de agua', 40, 100, 'Causa daño', 25,1, 0); +insert into movimiento values(8, 'Rayo burbuja', 65, 100, 'Causa daño y tiene una probabilidad del 10% de bajar la velocidad', 20,1, 0); +insert into movimiento values(9, 'Refugio', 0, 100, 'Aumenta la defensa en un nivel', 40, 1, 0); +insert into movimiento values(10, 'Surf', 95, 100, 'Causa daño', 15,1, 0); +insert into movimiento values(11, 'Tenaza', 35, 75, 'Causa daño durante 2-5 turnos. Imposibilidad de atacar al objetivo', 15, 1, 0); +insert into movimiento values(12, 'Chupa vidas', 20, 100, 'Causa daño y recupera el 50% PS quitados', 15, 2, 0); +insert into movimiento values(13, 'Disparo demora', 0, 95, 'Baja la velocidad del objetivo', 40,2, 0); +insert into movimiento values(14, 'Doble ataque', 25, 100, 'Causa daño golpeando dos veces. Cada golpe tiene un 20% de probabilidad de envenenar.', 20,2, 0); +insert into movimiento values(15, 'Pin misil', 14, 85, 'Causa daño al objetivo de 2 a 5 veces', 20, 2, 0); +insert into movimiento values(16, 'Furia dragón', 0, 100, 'Quita siempre 40 PS al obejtivo', 10, 3, 0); +insert into movimiento values(17, 'Impactrueno', 40, 100, 'Causa daño y tiene una probabilidad del 10% de paralizar el objetivo.', 30, 4, 0); +insert into movimiento values(18, 'Onda trueno', 0, 100, 'Paraliza el objetivo', 20,4, 0); +insert into movimiento values(19, 'Puño trueno', 75, 100, 'Causa daño y tiene un 10% de paralizar el objetivo', 35, 4, 0); +insert into movimiento values(20, 'Rayo', 95, 100, 'Causa daño y tiene un 10% de paralizar el objetivo', 15, 4, 0); +insert into movimiento values(21, 'Trueno', 120, 70, 'Causa daño y tiene un 10% de paralizar el objetivo', 10, 4, 0); +insert into movimiento values(23, 'Lenguetazo', 20, 100, 'Causa daño y tiene un 30% de paralizar el objetivo', 30, 5, 0); +insert into movimiento values(24, 'Rayo confuso', 0, 100, 'Confunde al objetivo', 10, 5, 0); +insert into movimiento values(25, 'Tinieblas', 0, 100, 'Resta la cantidad de PS equivalentes al nivel de usuario', 15, 5, 0); +insert into movimiento values(26, 'Ascuas', 40, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 25, 6, 0); +insert into movimiento values(27, 'Giro fuego', 15, 100, 'Causa dañó de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 15, 6, 0); +insert into movimiento values(28, 'Lanzallamas', 95, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 15, 6, 0); +insert into movimiento values(29, 'Llamarada', 120, 85, 'Causa daño y tiene una probabilidad del 30% de quemar al objetivo', 5, 6, 0); +insert into movimiento values(30, 'Puño fuego', 75, 100, 'Causa daño y tiene una probabilidad del 10% de quemar al objetivo', 15, 4, 0); +insert into movimiento values(31, 'Neblina', 0, 0, 'Neblina evita durante 5 turnos otros pokemon puedan reducir las estadisiticas del equipo aliado', 30, 7, 0); +insert into movimiento values(32, 'Niebla', 0, 0, 'Restaura todos los cambios, tantos positivos como negativos, en las estadisitcas de todos los pokemon.', 30, 7, 0); +insert into movimiento values(33, 'Puño hielo', 75, 100, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 15, 7, 0); +insert into movimiento values(34, 'Rayo aurora', 65, 100, 'Causa daño y tiene una probabilidad del 10% de bajar un nivel el ataque del objetivo', 20, 7, 0); +insert into movimiento values(35, 'Rayo hielo', 95, 100, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 10, 7, 0); +insert into movimiento values(36, 'Ventisca', 120, 90, 'Causa daño y tiene una probabilidad del 10% de congelar al objetivo', 5, 7, 0); +insert into movimiento values(37, 'Contraataque', 0, 100, 'Devuelve el doble daño recibido si es un físico', 20, 8, -5); +insert into movimiento values(38, 'Doble patada', 30, 100, 'Causa daño, golpeando 2 veces en un mismo turno', 30, 8, 0); +insert into movimiento values(39, 'Movimiento sísmico', 0, 100, 'Resta la cantidad de PS equivalentes al nivel de usuario', 20, 8, 0); +insert into movimiento values(40, 'Patada baja', 50, 90, 'Causa daño y tiene del 30% de retroceder al objetivo', 20, 8, 0); +insert into movimiento values(41, 'Patada giro', 60, 85, 'Causa daño y tiene del 30% de retroceder al objetivo', 15, 8, 0); +insert into movimiento values(42, 'Patada salto', 70, 100, 'Causa daño. Si falla, el usuario se golpea a si mismo restandole 1 PS.', 25, 8, 0); +insert into movimiento values(43, 'Patada salto alta', 85, 90, 'Causa daño. Si falla, el usuario se golpea a si mismo restandole 1 PS.', 20, 8, 0); +insert into movimiento values(44, 'Sumisión', 80, 80, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado.', 20, 8, 0); +insert into movimiento values(45, 'Afilar', 0, 100, 'sube el ataque del usuario en un nivel', 30, 9, 0); +insert into movimiento values(46, 'Agarre', 55, 100, 'Causa daño.', 30, 9, 0); +insert into movimiento values(47, 'Amortiguador', 0, 0, 'Restaura la mitad de los PS máximos del usuario', 10, 9, 0); +insert into movimiento values(48, 'Anulación', 0, 55, 'Anula un movimiento del objetivo', 20, 9, 0); +insert into movimiento values(49, 'Arañazo', 40, 100, 'Causa daño.', 35, 9, 0); +insert into movimiento values(50, 'Atadura', 15, 75, 'Causa daño de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 20, 9, 0); +insert into movimiento values(51, 'Ataque arena', 0, 100, 'Baja la precisión en un nivel.', 15, 9, 0); +insert into movimiento values(52, 'Ataque furia', 15, 85, 'Causa daño de 2 a 5 turnos.', 20, 9, 0); +insert into movimiento values(53, 'Ataque rápido', 40, 100, 'Causa daño.', 30, 9, 1); +insert into movimiento values(54, 'Autodestrucción', 130, 100, 'Causa daño y debilita al usuario.', 5, 9, 0); +insert into movimiento values(55, 'Beso amoroso', 0, 75, 'Duerme al obejtivo', 10, 9, 0); +insert into movimiento values(56, 'Bomba huevo', 100, 75, 'Causa daño', 10, 9, 0); +insert into movimiento values(57, 'Bomba sónica', 0, 90, 'siempre quita 20 PS', 20, 9, 0); +insert into movimiento values(58, 'Cabezazo', 100, 100, 'Se prepara durante el primer turno y ataca en el segundo', 15, 9, 0); +insert into movimiento values(59, 'Canto', 0, 55, 'Duerme al objetivo.', 15, 9, 0); +insert into movimiento values(60, 'Chirrido', 0, 85, 'Baja en dos niveles la defensa del objetivo.', 40, 9, 0); +insert into movimiento values(61, 'Clavo cañón', 20, 100, 'Causa daño de 2 a 5 turnos.', 15, 9, 0); +insert into movimiento values(62, 'Conversión', 0, 0, 'Cambia el tipo del usuario del oponente', 30, 9, 0); +insert into movimiento values(63, 'Cornada', 65, 100, 'Causa daño.', 25, 9, 0); +insert into movimiento values(64, 'Corte', 50, 100, 'Causa daño.', 30, 9, 0); +insert into movimiento values(65, 'Cuchillada', 70, 100, 'Causa daño y tiene una alta probabilidad de causar un golpe crítico (12,5%).', 20, 9, 0); +insert into movimiento values(66, 'Derribo', 90, 85, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado ', 20, 9, 0); +insert into movimiento values(67, 'Desarrollo', 0, 0, 'Aumenta en un nivel el especial del usuario.', 40, 9, 0); +insert into movimiento values(68, 'Deslumbrar', 0, 100, 'Provoca paralisis al objetivo.', 30, 9, 0); +insert into movimiento values(69, 'Destello', 0, 100, 'Baja un nivel la precisición del oponente.', 20, 9, 0); +insert into movimiento values(70, 'Destructor', 40, 100, 'Causa daño.', 35, 9, 0); +insert into movimiento values(71, 'Día de pago', 40, 100, 'Causa daño. Se esparcen monedas que se recogen al final del combate', 20, 9, 0); +insert into movimiento values(72, 'Doble equipo', 0, 0, 'Aumenta en un nivel la evasión del usuario.', 15, 9, 0); +insert into movimiento values(73, 'Doble filo', 100, 100, 'Causa daño. Causa daño de retroceso al usuario de 1/4 del daño causado.', 15, 9, 0); +insert into movimiento values(74, 'Doblebofetón', 15, 85, 'Causa daño de 2 a 5 turnos.', 10, 9, 0); +insert into movimiento values(75, 'Explosión', 170, 100, 'Causa daño y debilita al usuario.', 5, 9, 0); +insert into movimiento values(76, 'Foco energía', 0, 0, 'Aumenta la probabilidad asestar golpes criticos.', 40, 9, 0); +insert into movimiento values(77, 'Fortaleza', 0, 0, 'Aumenta en un nivel la defensa del usuario.', 30, 9, 0); +insert into movimiento values(78, 'Fuerza', 80, 100, 'Causa daño.', 15, 9, 0); +insert into movimiento values(79, 'Furia', 20, 100, 'Causa daño. No puede cambiar de movimiento.', 20, 9, 0); +insert into movimiento values(80, 'Golpe', 90, 100, 'Causa daño entre 3 o 4 turnos seguidos. El usuario termina confundido.', 20, 9, 0); +insert into movimiento values(81, 'Golpe cabeza', 70, 100, 'Causa daño y tiene una probabilidad del 30% de hacer retroceder.', 15, 9, 0); +insert into movimiento values(82, 'Golpe cuerpo', 85, 100, 'Causa daño y tiene una probabilidad del 30% de paralizar el objetivo.', 15, 9, 0); +insert into movimiento values(83, 'Golpe kárate', 50, 100, 'Causa daño y tiene un alto índice de golpe crítico.', 25, 9, 0); +insert into movimiento values(84, 'Golpes furia', 50, 100, 'Causa daño de 2 a 5 turnos.', 15, 9, 0); +insert into movimiento values(85, 'Gruñido', 0, 100, 'Baja un nivel el ataque del objetivo.', 40, 9, 0); +insert into movimiento values(86, 'Guillotina', 0, 30, 'Si acierta, provoca KO en un turno.', 5, 9, 0); +insert into movimiento values(87, 'Hipercolmillo', 80, 90, 'Causa daño y tiene un una probabilidad del 10% de hacer retroceder al objetivo.', 15, 9, 0); +insert into movimiento values(88, 'Hiperrayo', 150, 90, 'Causa daño. No podra moverse en el segundo turno.', 5, 9, 0); +insert into movimiento values(89, 'Látigo', 0, 100, 'Baja en un nivel la defensa del oponente.', 30, 9, 0); +insert into movimiento values(90, 'Malicioso', 0, 100, 'Baja en un nivel la defensa del oponente.', 30, 9, 0); +insert into movimiento values(91, 'Megapatada', 120, 75, 'Causa daño.', 5, 9, 0); +insert into movimiento values(92, 'MegaPuño', 80, 85, 'Causa daño.', 20, 9, 0); +insert into movimiento values(93, 'Metrónomo', 0, 0, 'Utiliza un movimiento al azar.', 15, 9, 0); +insert into movimiento values(94, 'Mimético', 0, 0, 'Permite al usuario elegir uno de los movimientos del objetivo y copiarlo.', 25, 9, 0); +insert into movimiento values(95, 'Mordisco', 60, 100, 'Causa daño y tiene una probabilidad del 10% de hacer retroceder.', 25, 9, 0); +insert into movimiento values(96, 'Pantalla de humo', 0, 100, 'Baja en un nivel la precisión del oponente.', 20, 9, 0); +insert into movimiento values(97, 'Perforador',0, 30, 'Si acierta, provoca KO en un turno.', 5, 9, 0); +insert into movimiento values(98, 'Pisotón', 65, 100, 'Causa daño y tiene una probabilidad del 30% de hacer retroceder.', 20, 9, 0); +insert into movimiento values(100, 'Atizar', 80, 75, 'Causa daño.', 20, 9, 0); +insert into movimiento values(101, 'Presa', 50, 100, 'Causa daño de 2 a 5 turnos.', 20, 9, 0); +insert into movimiento values(102, 'Puño cometa', 18, 85, 'Causa daño de 2 a 5 turnos.', 15, 9, 0); +insert into movimiento values(103, 'Rapidez', 60, 0, 'Causa daño. No falla.', 20, 9, 0); +insert into movimiento values(104, 'Recuperación', 0, 0, 'Restaura la mitad de los PS máximos del usuario', 20, 9, 0); +insert into movimiento values(105, 'Reducción', 0, 0, 'Aumenta la evasión del usuario en un nivel.', 10, 9, 0); +insert into movimiento values(106, 'Remolino', 0, 85, 'Ahuyenta a los pokemon salvajes.', 20, 9, 0); +insert into movimiento values(107, 'Constricción', 15, 85, 'Causa daño de 2 a 5 turnos. Imposibilidad de atacar al objetivo', 20, 9, 0); +insert into movimiento values(109, 'Rizo de defensa', 0, 100, 'Aumenta en un nivel la defensa del usuario.', 40, 9, 0); +insert into movimiento values(110, 'Rugido', 0, 0, 'Ahuyenta a los pokemon salvajes.', 20, 9, -6); +insert into movimiento values(111, 'Salpicadura', 0, 0, 'No tiene ningún efecto.', 40, 9, 0); +insert into movimiento values(112, 'Superdiente', 0, 90, 'Quita al objetivo la mitad de sus PS actuales.', 10, 9, 0); +insert into movimiento values(113, 'Supersónico', 0, 55, 'Confunde al objetivo.', 20, 9, 0); +insert into movimiento values(114, 'Sustituto', 0, 0, 'Crea un sustituo con el 25% de los PS maximos del usuario para que reciba el daño de los movimientos', 10, 9, 0); +insert into movimiento values(115, 'Tornado', 40, 100, 'Causa daño.', 35, 9, 0); +insert into movimiento values(116, 'Transformación', 0, 0, 'Convierte al usuario en el Pokémon objetivo, copiando su tipo, sus movimientos, habilidad, su ratio de captura, sus estadísticas y cambios en las mismas.', 10, 9, 0); +insert into movimiento values(117, 'Triataque', 80, 100, 'Causa daño. Tiene un 20% de provocar quemaduras, paralisis o congelación', 10, 9, 0); +insert into movimiento values(118, 'Venganza', 0, 0, ' Hace que el usuario se mantenga inmóvil durante 2-3 turnos seguidos, sin poder realizar ninguna acción, para después devolver el doble del daño recibido. El movimiento falla si el usuario no resulta dañado por el enemigo.', 10, 9, 0); +insert into movimiento values(119, 'Viento cortante', 80, 75, 'carga en el primer turno que es efectuado, creando un remolino. En el segundo turno, causa daño.', 10, 9, 0); +insert into movimiento values(120, 'Absorber', 20, 100, 'Causa daño y el usuario recupera el 50% de los PS quitados por el movimiento al objetivo', 20, 10, 0); +insert into movimiento values(121, 'Danza pétalo', 70, 100, 'Causa daño entre 3 o 4 turnos seguidos. El usuario termina confundido.', 20, 10, 0); +insert into movimiento values(122, 'Drenadoras', 0, 90, 'Planta tres semillas en el oponente, las cuales le roban 1/16 de sus PS máximos al final de cada turno. El usuario recupera esa misma cantidad de PS. Si el usuario es cambiado, el Pokémon que pase a ocupar su lugar recibirá esos puntos de salud. El efecto se pasa al cambiar el Pokémon infectado por drenadoras. Drenadoras no afecta a Pokémon de tipo planta.', 10, 10, 0); +insert into movimiento values(123, 'Espora', 0, 100, 'Duerme al objetivo.', 15, 10, 0); +insert into movimiento values(124, 'Hoja afilada', 55, 95, 'Causa daño y tiene una alta probabilidad de dar un golpe crítico (12,5%).', 25, 10, 0); +insert into movimiento values(125, 'Látigo cepa', 35, 100, 'Causa daño.', 25, 10, 0); +insert into movimiento values(126, 'Megaagotar', 45, 100, 'Causa daño y el usuario recupera el 50% de los PS quitados por el movimiento al objetivo', 15, 10, 0); +insert into movimiento values(127, 'Paralizador', 0, 75, 'Paraliza al objetivo', 30, 10, 0); +insert into movimiento values(128, 'Rayo solar', 120, 100, 'utiliza este movimiento concentra la energía solar un turno, para liberar un rayo que causa daño en el siguiente turno.', 10, 10, 0); +insert into movimiento values(129, 'Somnífero', 0, 75, 'Duerme al objetivo', 15, 10, 0); +insert into movimiento values(130, 'Agilidad', 0, 0, 'Sube en dos niveles la velocidad del usuario.', 30, 11, 0); +insert into movimiento values(131, 'Amnesia', 0, 0, 'Aumenta en dos niveles el especial del usuario', 20, 11, 0); +insert into movimiento values(132, 'Barrera', 0, 0, 'Aumneta en dos niveles la defensa del usuario.', 30, 11, 0); +insert into movimiento values(133, 'Comesueños', 100, 100, 'Causa daño a un objetivo dormido y el usuario recupera el 50% de los PS quitados por movimiento al objetivo.', 15, 11, 0); +insert into movimiento values(134, 'Confusión', 50, 100, 'Causa daño y tiene una probabilidad del 10% de confundir al objetivo.', 25, 11, 0); +insert into movimiento values(135, 'Descanso', 0, 0, 'hace que el usuario se duerma y recupere la totalidad de los PS, curando en el proceso cualquier problema de estado. El usuario después permanece dormido durante 2 turnos.', 10, 11, 0); +insert into movimiento values(136, 'Hipnosis', 0, 60, 'Duerme al objetivo.', 20, 11, 0); +insert into movimiento values(137, 'Kinético', 0, 80, 'Baja la precisión del objetivo en un nivel.', 15, 11, 0); +insert into movimiento values(138, 'Meditación', 0, 0, 'aumenta un nivel el ataque del usuario.', 40, 11, 0); +insert into movimiento values(139, 'Pantalla de luz', 0, 0, 'Dobla la defensa especial del usuario.', 30, 11, 0); +insert into movimiento values(140, 'Psicoonda', 0, 80, 'Causa un daño variable al oponente, elegido al azar de un número entre 0,5 y 1,5 veces el nivel del usuario.', 15, 11, 0); +insert into movimiento values(141, 'Psicorrayo', 65, 60, 'Causa daño y tiene una probabilidad del 10% de confundir al objetivo.', 20, 11, 0); +insert into movimiento values(142, 'Psíquico', 90, 100, 'Causa daño y tiene una probabilidad del 30% de bajar en un nivel el especial del objetivo.', 20, 11, 0); +insert into movimiento values(143, 'Reflejo', 0, 0, 'Dobla la defensa física del usuario.', 20, 11, 0); +insert into movimiento values(144, 'Teletransporte', 0, 0, 'Permite huir de combates individuales.', 20, 11, 0); +insert into movimiento values(145, 'Avalancha', 75, 90, 'Causa daño.', 10, 12, 0); +insert into movimiento values(146, 'Lanzarocas', 50, 65, 'Causa daño.', 15, 12, 0); +insert into movimiento values(147, 'Excavar', 100, 100, 'Cava en el primer turno y el segundo turno ataca.', 10, 13, 0); +insert into movimiento values(148, 'Fisura', 0, 30, 'Si acierta, provoca un golpe fulminante.', 5, 13, 0); +insert into movimiento values(149, 'Hueso palo', 65, 85, 'Causa daño y tiene una probabilidad del 10% de hacer retroceder al objetivo.', 20, 13, 0); +insert into movimiento values(150, 'Huesomerang', 50, 90, 'Causa daño, golpeando al objetivo en un mismo turno.', 10, 13, 0); +insert into movimiento values(151, 'Terremoto', 100, 100, 'Causa daño.', 10, 13, 0); +insert into movimiento values(152, 'Ácido', 40, 100, 'Causa daño y tiene una probabilidad deñ 10% de bajar un nivel la defensa del objetivo.', 30, 14, 0); +insert into movimiento values(153, 'Armadura ácida', 0, 0, 'Sube en dos niveles la defensa del usuario.', 20, 14, 0); +insert into movimiento values(154, 'Gas venenoso', 0, 55, 'Envenena al objetivo', 40, 14, 0); +insert into movimiento values(155, 'Picotazo venenoso', 15, 100, 'Causa daño y tiene una probabilidad del 30% de envenenar al oponente.', 35, 14, 0); +insert into movimiento values(156, 'Polución', 20, 70, 'Causa daño y tiene una probabilidad del 40% de envenar al objetivo.', 20, 14, 0); +insert into movimiento values(157, 'Polvo veneno', 0, 75, 'Envenena al objetivo', 35, 14, 0); +insert into movimiento values(158, 'Residuos', 65, 100, 'Causa daño y tiene una probabilidad del 30% de envenenar al objetivo.', 20, 14, 0); +insert into movimiento values(159, 'Tóxico', 0, 85, 'provoca un grave envenenamiento que se agrava con el paso de los turnos.', 10, 14, 0); +insert into movimiento values(160, 'Ataque aéreo', 140, 90, 'Se prepara durante el primer turno. En el segundo turno causa daño al objetivo.', 5, 15, 0); +insert into movimiento values(161, 'Ataque ala', 35, 100, 'Causa daño.', 35, 15, 0); +insert into movimiento values(162, 'Movimiento espejo', 0, 0, 'Utiliza el último ataque usado que haya tenido al usuario por objetivo. ', 20, 15, 0); +insert into movimiento values(164, 'Pico taladro', 80, 100, 'Causa daño.', 20, 15, 0); +insert into movimiento values(165, 'Picotazo', 35, 100, 'Causa daño.', 35, 15, 0); +insert into movimiento values(166, 'Vuelo', 70, 100, ' emplea dos turnos: en el primero, el Pokémon vuela muy alto, tanto que estará fuera del alcance de la mayoría de los movimientos. En el segundo turno ocurre la caída del vuelo, en la cual el Pokémon golpea al oponente, pero puede ser interrumpida de muchas maneras.', 15, 15, 0); +insert into movimiento values(167, 'Restricción', 10, 100, 'Restricción causa daño y tiene una probabilidad del 10% de bajar un nivel la velocidad del oponente.', 35, 9, 0); +insert into movimiento values(168, 'Puño mareo', 70, 100, 'Causa daño y tiene una probabilidad del 20% de confundir al objetivo.', 10, 9, 0); -- Efectos secundarios insert into efecto_secundario values(1, 'Bajar velocidad'); @@ -2716,7 +2718,6 @@ insert into pokemon_movimiento_forma values(49, 119, 2); insert into pokemon_movimiento_forma values(49, 106, 4); insert into pokemon_movimiento_forma values(49, 88, 15); insert into pokemon_movimiento_forma values(49, 144, 30); -insert into pokemon_movimiento_forma values(49, 118, 34); insert into pokemon_movimiento_forma values(49, 103, 39); insert into pokemon_movimiento_forma values(49, 159, 6); insert into pokemon_movimiento_forma values(49, 66, 9);