Uranio2 Posted January 14, 2018 Report Share Posted January 14, 2018 es posible hacer una quest que al matar un jefe te entrege x coins directamente? Link to comment Share on other sites More sharing options...
Anthony's Posted January 14, 2018 Report Share Posted January 14, 2018 Claro que es posible ademas es muy sencillo xD #Yo no te digo como se hace porque no se demasiado de quest, pero se que se puede xD# Link to comment Share on other sites More sharing options...
Zart Posted January 15, 2018 Report Share Posted January 15, 2018 Estaba aburrido así que te hice esta quest. -- //Jayden// quest give_coins_by_boss begin state start begin -- Quest functions function set_unique_boss() local boss = { -- Si eliges la versión de boss por coins unico, coloca aqui en el mismo formato los boss que quieras: [ID_MOB] = CANTIDAD_DE_COINS, [101] = 100, [102] = 200, [103] = 300, [104] = 400 } return boss[npc.get_race()] end function check_race_exist(x) local race = {101,102,103,104} -- Si eliges la versión de boss global, coloca aqui en el mismo formato los boss que quieras: {ID_MOB, ID_MOB, ID_MOB} for index, value in ipairs(race) do if value == x then return true end end return false end function settings() return { ["coins"] = 100, -- Introduce aquí la cantidad de Coins en caso de ser la versión global que quieras que de a todos los boss dentro de la lista. ["player"] = pc.get_account_id() } end function set_config(val) if val == 1 then return true else return false end end -- ./Quest functions -- Quest body when kill with not npc.is_pc() begin local settings,boss_setting = give_coins_by_boss.settings(), give_coins_by_boss.set_unique_boss() if give_coins_by_boss.set_config(1) then -- Cambia este valor por 0 para activar el modo unico, dejalo en 1 para activar el modo global. if give_coins_by_boss.check_race_exist(npc.get_race()) then mysql_query(string.format("UPDATE account.account SET coins=coins+%d WHERE id = %d",settings.coins,settings.player)) end else mysql_query(string.format("UPDATE account.account SET coins=coins+%d WHERE id = %d",boss_setting,settings.player)) end end end end -- //Jayden// Pues te explico. Tiene dos formas de entregar los coins: Global y Único (No se me ocurrió otro nombre.) En el modo Global, todos los Jefes/Mobs/etc que ingreses en la lista, darán la misma cantidad de coins. En el modo Único, puedes establecer cuantos coins dará cada Jefe/Mob/etc. Como se configura? Simple: MODO ÚNICO Si eliges el modo Único para que tu elijas la cantidad de Coins que quieres que otorgue cada Boss, tienes que agregarlos a este Array, en este formato [ID_DEL_BOSS] = CANTIDAD_DE_COINS, (El ultimo nunca debe llevar una coma "," al final). Esto lo miras en la quest: local boss = { ID -> [101] = 100, <-- Cantidad de coins [102] = 200, [103] = 300, [104] = 400 <--- El último no lleva coma "," } MODO GLOBAL Si eliges el modo Global para que todos los boss den la misma cantidad de Coins, tienes que añadirlos a este otro Array simple, en este formato: {ID_DEL_BOSS, ID_DEL_BOSS, ID_DEL_BOSS} (El último de aquí tampoco lleva coma "," al final). Esto también lo miras en la quest: local race = {101,102,103,104} <------ El ultimo no lleva coma Para establecer la cantidad de coins global de este, lo cambias aquí: { ["coins"] = 100, <--------------------------- ["player"] = pc.get_account_id() } ¿COMO PUEDO SELECCIONAR LA VERSION ÚNICA O GLOBAL? Con cambiar un numero lo harás: if give_coins_by_boss.set_config(1) then -- Cambia este valor por 0 para activar el modo Único, déjalo en 1 para activar el modo Global. FIN DEL TUTORIAL Saludos, aburrimiento, ojalá te sirva de alguna manera, háblame al privado si tienes alguna duda, y como conclusión: Sí, se puede hacer una quest que otorgue coins, de muchas formas, esta es una de ellas, y al igual que esto existen muchas otras cosas que se pueden hacer. Uranio2, Meruem and Marcos Pinheiro 1 2 Link to comment Share on other sites More sharing options...
Uranio2 Posted January 16, 2018 Author Report Share Posted January 16, 2018 En 15/1/2018 a las 4:01, Jayden dijo: Estaba aburrido así que te hice esta quest. -- //Jayden// quest give_coins_by_boss begin state start begin -- Quest functions function set_unique_boss() local boss = { -- Si eliges la versión de boss por coins unico, coloca aqui en el mismo formato los boss que quieras: [ID_MOB] = CANTIDAD_DE_COINS, [101] = 100, [102] = 200, [103] = 300, [104] = 400 } return boss[npc.get_race()] end function check_race_exist(x) local race = {101,102,103,104} -- Si eliges la versión de boss global, coloca aqui en el mismo formato los boss que quieras: {ID_MOB, ID_MOB, ID_MOB} for index, value in ipairs(race) do if value == x then return true end end return false end function settings() return { ["coins"] = 100, -- Introduce aquí la cantidad de Coins en caso de ser la versión global que quieras que de a todos los boss dentro de la lista. ["player"] = pc.get_account_id() } end function set_config(val) if val == 1 then return true else return false end end -- ./Quest functions -- Quest body when kill with not npc.is_pc() begin local settings,boss_setting = give_coins_by_boss.settings(), give_coins_by_boss.set_unique_boss() if give_coins_by_boss.set_config(1) then -- Cambia este valor por 0 para activar el modo unico, dejalo en 1 para activar el modo global. if give_coins_by_boss.check_race_exist(npc.get_race()) then mysql_query(string.format("UPDATE account.account SET coins=coins+%d WHERE id = %d",settings.coins,settings.player)) end else mysql_query(string.format("UPDATE account.account SET coins=coins+%d WHERE id = %d",boss_setting,settings.player)) end end end end -- //Jayden// Pues te explico. Tiene dos formas de entregar los coins: Global y Único (No se me ocurrió otro nombre.) En el modo Global, todos los Jefes/Mobs/etc que ingreses en la lista, darán la misma cantidad de coins. En el modo Único, puedes establecer cuantos coins dará cada Jefe/Mob/etc. Como se configura? Simple: MODO ÚNICO Si eliges el modo Único para que tu elijas la cantidad de Coins que quieres que otorgue cada Boss, tienes que agregarlos a este Array, en este formato [ID_DEL_BOSS] = CANTIDAD_DE_COINS, (El ultimo nunca debe llevar una coma "," al final). Esto lo miras en la quest: local boss = { ID -> [101] = 100, <-- Cantidad de coins [102] = 200, [103] = 300, [104] = 400 <--- El último no lleva coma "," } MODO GLOBAL Si eliges el modo Global para que todos los boss den la misma cantidad de Coins, tienes que añadirlos a este otro Array simple, en este formato: {ID_DEL_BOSS, ID_DEL_BOSS, ID_DEL_BOSS} (El último de aquí tampoco lleva coma "," al final). Esto también lo miras en la quest: local race = {101,102,103,104} <------ El ultimo no lleva coma Para establecer la cantidad de coins global de este, lo cambias aquí: { ["coins"] = 100, <--------------------------- ["player"] = pc.get_account_id() } ¿COMO PUEDO SELECCIONAR LA VERSION ÚNICA O GLOBAL? Con cambiar un numero lo harás: if give_coins_by_boss.set_config(1) then -- Cambia este valor por 0 para activar el modo Único, déjalo en 1 para activar el modo Global. FIN DEL TUTORIAL Saludos, aburrimiento, ojalá te sirva de alguna manera, háblame al privado si tienes alguna duda, y como conclusión: Sí, se puede hacer una quest que otorgue coins, de muchas formas, esta es una de ellas, y al igual que esto existen muchas otras cosas que se pueden hacer. gracias por tu ayuda Link to comment Share on other sites More sharing options...
Recommended Posts