Dilong Publicado 19 de Noviembre del 2018 Reportar Compartir Publicado 19 de Noviembre del 2018 Esto lo hice basandome en la idea de alguien que pedia uno via source con gui y todo, pero en mi caso es solo quest simple, asi que no es gran cosa Avisen si hay algun problema con la quest Quest: Spoiler quest test begin state start begin when 20091.chat."Evento de Apuestas GM" with pc.is_gm() begin say_title("Npc:") say("Activar evento") local evento_apuesta = {"Activar","Cancelar evento","Decidir ganador apuesta","Habilitar reembolso","Cerrar"} local event_apuesta2 = select_table(evento_apuesta) if event_apuesta2 == 1 then if game.get_event_flag("event_apuesta")== 1 then say_title("Npc:") say_reward("El evento de apuestas ya esta[ENTER]activo") return end mysql_direct_query("INSERT INTO `Apuestas`.`nombre_apuestas`(`nombre`, `nombre2`) VALUES ('0', '0')") mysql_direct_query("INSERT INTO `Apuestas`.`apuestas_equipo_1`(`apuestas_equipo_1`, `numeros_de_apuestas_equipo_1`) VALUES (0, 0)") mysql_direct_query("INSERT INTO `Apuestas`.`apuestas_equipo_2`(`apuestas_equipo_2`, `numeros_de_apuestas_equipo_2`) VALUES (0, 0)") say_title("Npc:") say_reward("Escribe sobre que se estara apostando") local nombre = input() if nombre == "" then notice("error texto") return end say_title("Npc:") say_reward("Escribe sobre que se estara apostando") local nombre2 = input() if nombre2 == "" then notice("error texto2") return end mysql_direct_query("UPDATE `Apuestas`.`nombre_apuestas` SET `nombre` = '"..nombre.."', `nombre2` = '"..nombre2.."' WHERE `nombre` = '0' AND `nombre2` = '0'") game.set_event_flag("event_apuesta",1) notice_all("El evento de apuestas ha comenzado") notice_all("La apuesta es sobre: ["..nombre.." "..nombre2.."]") notice_all("Dirijanse al npc para ingresar sus apuestas!") elseif event_apuesta2 == 2 then say_title("Npc:") say("Elige una opcion") local event = {"Resetear(Borra todas las apuestas)","Cancelar(Terminar el evento y dejar intacto las apuestas)","Continuar evento","Cerrar"} local event2 = select_table(event) if event2 == 1 then mysql_direct_query("TRUNCATE TABLE Apuestas.apostadores_equipo_1") mysql_direct_query("TRUNCATE TABLE Apuestas.apostadores_equipo_2") mysql_direct_query("TRUNCATE TABLE Apuestas.apuestas_equipo_1") mysql_direct_query("TRUNCATE TABLE Apuestas.apuestas_equipo_2") mysql_direct_query("TRUNCATE TABLE Apuestas.nombre_apuestas") say_reward("Todas las apuestas han sido eliminadas") elseif event2 == 2 then game.set_event_flag("event_apuesta",0) notice_all("El evento de apuestas ha sido cancelado") elseif event2 == 3 then game.set_event_flag("event_apuesta",1) notice_all("El evento de apuestas ha sido continuado") return end end if event_apuesta2 == 3 then if game.get_event_flag("event_apuesta")== 0 then say_title("Npc:") say_reward("El evento de apuestas no esta[ENTER]activo") return end local ganadores = select("Apuestas Equipo 1","Apuestas Equipo 2","Cerrar") if ganadores == 1 then local apuesta_list,s = mysql_direct_query("SELECT apuestas_equipo_2 FROM Apuestas.apuestas_equipo_2") local apuesta_list,s2 = mysql_direct_query("SELECT numeros_de_apuestas_equipo_1 FROM Apuestas.apuestas_equipo_1") mysql_direct_query("UPDATE `Apuestas`.`apostadores_equipo_1` SET `recompensa_equipo_1` = '"..s[1].apuestas_equipo_2.."' / '"..s2[1].numeros_de_apuestas_equipo_1.."'") notice_all("El equipo 2 ha perdido la apuesta") notice_all("La cantidad de apuestas del equipo 2: ["..s[1].apuestas_equipo_2.."] han sido dividas entre los ["..s2[1].numeros_de_apuestas_equipo_1.."] apostadores del equipo 1 ") game.set_event_flag("event_apuesta",0) notice_all("El evento de apuestas ha terminado") elseif ganadores == 2 then local apuesta_list,s = mysql_direct_query("SELECT apuestas_equipo_1 FROM Apuestas.apuestas_equipo_1") local apuesta_list,s2 = mysql_direct_query("SELECT numeros_de_apuestas_equipo_2 FROM Apuestas.apuestas_equipo_2") mysql_direct_query("UPDATE `Apuestas`.`apostadores_equipo_2` SET `recompensa_equipo_2` = '"..s[1].apuestas_equipo_1.."' / '"..s2[1].numeros_de_apuestas_equipo_2.."'") notice_all("El equipo 1 ha perdido la apuesta") notice_all("La cantidad de apuestas del equipo 1: ["..s[1].apuestas_equipo_1.."] han sido dividas entre los ["..s2[1].numeros_de_apuestas_equipo_2.."] apostadores del equipo 2 ") game.set_event_flag("event_apuesta",0) notice_all("El evento de apuestas ha terminado") return end elseif event_apuesta2 == 4 then say_title("Npc:") say("Los jugadores tendran la oportunidad de[ENTER]retirar sus apuestas") local rb = select("Continuar","Desactivar reembolso","Cerrar") if rb == 1 then game.set_event_flag("reembolso",1) notice_all("Reembolso activo") notice_all("Los jugadores pueden retirar sus apuestas") elseif rb == 2 then game.set_event_flag("reembolso",0) notice_all("Reembolso desactivado") return end end end when 20091.chat."Evento de Apuestas" with game.get_event_flag("event_apuesta")==1 and game.get_event_flag("reembolso")==0 begin say_title("Npc:") local apuesta1 = {"Apostar por equipo 1","Apostar por equipo 2","Lista de apuestas","Cerrar"} local apuesta = select_table(apuesta1) if apuesta == 1 then say_title("Npc:") say_reward("Puedes apostar desde 50 a 100 Md`s") if pc.get_level()< 70 then notice("No tienes el nivel necesario") return end local s1, s2 = mysql_direct_query("SELECT id FROM `Apuestas`.`apostadores_equipo_1`") for i=1,s1 do if pc.get_account_id()==s2[i].id then notice("Ya has apostado") return end end local s1, s2 = mysql_direct_query("SELECT id FROM `Apuestas`.`apostadores_equipo_2`") for i=1,s1 do if pc.get_account_id()==s2[i].id then notice("Ya has apostado") return end end local cant = tonumber(input()) if cant < 50 then chat("error") return end if cant == "" then chat("error3") return end if cant > 100 then chat("error2") return end local md, md2 = mysql_direct_query("SELECT coins FROM `account`.`account` WHERE id = '"..pc.get_account_id().."'") if md2[1].coins < cant then notice("Error coins") return end mysql_direct_query("UPDATE account.account SET coins = coins - '"..cant.."' WHERE id = '"..pc.get_account_id().."'") mysql_direct_query("INSERT INTO `Apuestas`.`apostadores_equipo_1`(`id`, `apostador_equipo_1`, `cant_equipo_1`) VALUES ('"..pc.get_account_id().."', '"..pc.get_name().."', '"..cant.."')") mysql_direct_query("UPDATE `Apuestas`.`apuestas_equipo_1` SET `apuestas_equipo_1` = `apuestas_equipo_1` + '"..cant.."', `numeros_de_apuestas_equipo_1` = `numeros_de_apuestas_equipo_1` + 1") notice("test") elseif apuesta == 2 then say_title("Npc:") say_reward("Puedes apostar desde 50 a 100 Md`s") if pc.get_level()< 70 then notice("No tienes el nivel necesario") return end local s1, s2 = mysql_direct_query("SELECT id FROM `Apuestas`.`apostadores_equipo_1`") for i=1,s1 do if pc.get_account_id()==s2[i].id then notice("Ya has apostado") return end end local s1, s2 = mysql_direct_query("SELECT id FROM `Apuestas`.`apostadores_equipo_2`") for i=1,s1 do if pc.get_account_id()==s2[i].id then notice("Ya has apostado") return end end local cant2 = tonumber(input()) local md, md2 = mysql_direct_query("SELECT coins FROM `account`.`account` WHERE id = '"..pc.get_account_id().."'") if md2[1].coins < cant2 then notice("Error coins") return end if cant2 < 50 then chat("error") return end if cant2 == "" then chat("error3") return end if cant2 > 100 then chat("error2") return end mysql_direct_query("UPDATE account.account SET coins = coins - '"..cant2.."' WHERE id = '"..pc.get_account_id().."'") mysql_direct_query("INSERT INTO `Apuestas`.`apostadores_equipo_2`(`id`, `apostador_equipo_2`, `cant_equipo_2`) VALUES ('"..pc.get_account_id().."', '"..pc.get_name().."', '"..cant2.."')") mysql_direct_query("UPDATE `Apuestas`.`apuestas_equipo_2` SET `apuestas_equipo_2` = `apuestas_equipo_2` + '"..cant2.."',`numeros_de_apuestas_equipo_2` = `numeros_de_apuestas_equipo_2` + 1") notice("test") elseif apuesta == 3 then local lista_de_apuestas,s2 = mysql_direct_query("SELECT apuestas_equipo_1,numeros_de_apuestas_equipo_1 FROM Apuestas.apuestas_equipo_1") local lista_de_apuestas,s3 = mysql_direct_query("SELECT apuestas_equipo_2,numeros_de_apuestas_equipo_2 FROM Apuestas.apuestas_equipo_2") say_reward("Equipo 1:") say("Cantidad apostadas: "..s2[1].apuestas_equipo_1.." Numero de apuestas: "..s2[1].numeros_de_apuestas_equipo_1.."") say("................................................") say_reward("Equipo 2:") say("Cantidad apostadas: "..s3[1].apuestas_equipo_2.." Numero de apuestas: "..s3[1].numeros_de_apuestas_equipo_2.."") say("................................................") return end end when 20091.chat."Reembolso evento de apuestas" with game.get_event_flag("reembolso")== 1 begin say_title("Npc:") say("Podras retirar la apuesta que haz hecho[ENTER]en el evento, siempre y cuando exista un registro[ENTER]de la apuesta") say_reward("Si no retiras tu apuesta, es posible que lo pierdas") local rb2 = select("Reembolso Equipo 1","Reembolso Equipo 2","Cerrar") if rb2 == 1 then local s1, s2 = mysql_direct_query("SELECT id, cant_equipo_1 FROM `Apuestas`.`apostadores_equipo_1`") for i=1,s1 do if pc.get_account_id()==s2[i].id then mysql_direct_query("UPDATE account.account SET coins = coins + '"..s2[1].cant_equipo_1.."' WHERE `id` = '"..pc.get_account_id().."'") mysql_direct_query("DELETE FROM `Apuestas`.`apostadores_equipo_1` WHERE `id` = '"..pc.get_account_id().."'") notice("Md`s retirados") else notice("Sin registro de apuesta 1") return end end elseif rb2 == 2 then local s1, s2 = mysql_direct_query("SELECT id, cant_equipo_2 FROM `Apuestas`.`apostadores_equipo_2`") for i=1,s1 do if pc.get_account_id()==s2[i].id then mysql_direct_query("UPDATE account.account SET coins = coins + '"..s2[1].cant_equipo_2.."' WHERE `id` = '"..pc.get_account_id().."'") mysql_direct_query("DELETE FROM `Apuestas`.`apostadores_equipo_2` WHERE `id` = '"..pc.get_account_id().."'") notice("Md`s retirados") else notice("Sin registro de apuesta 2") return end end end end end end Dejo el .sql en un adjunto Debes iniciar sesión para ver el contenido del enlace en esta publicación. Frezi Op, Ícaro Quin, Christofer Siguas y 14 mas reacciono a esto 13 4 Citar Enlace para comentar Compartir en otros sitios Mas opciones de compartir...
TTV_RANDARON Publicado 19 de Noviembre del 2018 Reportar Compartir Publicado 19 de Noviembre del 2018 excelente gracias por compartir. Citar Enlace para comentar Compartir en otros sitios Mas opciones de compartir...
Dilong Publicado 20 de Noviembre del 2018 Author Reportar Compartir Publicado 20 de Noviembre del 2018 Arreglado unos detalles Citar Enlace para comentar Compartir en otros sitios Mas opciones de compartir...
Mensajes recomendados
Unirse a la conversación
Puedes publicar ahora y registrarte más tarde. Si tienes una cuenta, regístrate para publicar con su cuenta.