caanmasu Posted May 20, 2022 Report Share Posted May 20, 2022 borrar ColosusMGF, ๐๐ฟ๐ฒ๐, Break and 8 others 10 1 Quote Link to comment Share on other sites More sharing options...
๐๐ฟ๐ฒ๐ Posted May 20, 2022 Report Share Posted May 20, 2022 hace 1 minuto, caanmasu dijo: ¡Hola a todos! Hoy he llegado a los 700 likes. Gracias a todos los que han apoyado mis posts. Saludos a Debes iniciar sesión para ver el contenido del enlace en esta publicación., Debes iniciar sesión para ver el contenido del enlace en esta publicación. mis socios con los que trabajo También a Askira, Nazox, el crack Break, a mi amigo Deiklo, Dur, Viksant, Mau, al admin Peluche, Enju, Delaro, Mix (Legion), Master (Yelson) y todos los que no recuerdo en este momento xD El regalo de hoy es una quest que consiste en agregar un set de armas (skins) en un cofre. En esta quest podrás: - Agregar de la manera más sencilla los sets de armas (skins) que quieras, sin preocuparte por la programación. - Elegir un arma de uno o varios sets de armas (skins), según como lo hayas configurado. - Ver el nombre del set junto con el tipo de arma (espada, daga, dos manos, etc. los que quieras agregar. Se puede poner garras también) - Al elegir el tipo de arma, te mostrará el ícono y te pedirá confirmar. Una vez confirmado, te entrega el objeto y se borra el cofre. - Agregar uno o varios sets en un solo baúl. En ese caso te pedirá elegir según el nombre del set. No tengo fotos pero sé que funciona porque yo lo hice xD weapon_skin.quest quest weapon_skin begin state start begin function bug_control() return pc.count_item(item.vnum) < 1 end function data() return { [1] = { title = "Prueba", --Nombre del set {40159, "Espada"}, --vnum y tipo de arma {40160, "Daga"}, {40161, "Arco"}, {40162, "Dos manos"}, {40163, "Campana"}, {40164, "Fan"}, {40165, "Garras"} }, [2] = { title = "Nemere", {40400, "Espada"}, {40403, "Daga"}, {40404, "Arco"}, {40402, "Dos manos"}, {40405, "Campana"}, {40406, "Fan"}, {40407, "Garras"} }, [3] = { title = "Arrador", {40666, "Espada"}, {40668, "Daga"}, {40669, "Arco"}, {40667, "Dos manos"}, {40670, "Campana"}, {40671, "Fan"}, {40672, "Garras"} }, [4] = { title = "Hongos", {40300, "Espada"}, {40303, "Daga"}, {40304, "Arco"}, {40302, "Dos manos"}, {40305, "Campana"}, {40306, "Fan"}, {40307, "Garras"} }, [5] = { title = "Submarinas", {19960, "Espada"}, {19963, "Daga"}, {19964, "Arco"}, {19962, "Dos manos"}, {19965, "Campana"}, {19966, "Fan"}, {19967, "Garras"} }, [6] = { title = "Cristal", {40408, "Espada"}, {40411, "Daga"}, {40412, "Arco"}, {40410, "Dos manos"}, {40413, "Campana"}, {40414, "Fan"}, {40415, "Garras"} }, [7] = { title = "Jotun", {61110, "Espada"}, {61113, "Daga"}, {61114, "Arco"}, {61112, "Dos manos"}, {61115, "Campana"}, {61116, "Fan"}, {61117, "Garras"} }, [8] = { title = "Hidra", {40590, "Espada"}, {40592, "Daga"}, {40593, "Arco"}, {40591, "Dos manos"}, {40594, "Campana"}, {40595, "Fan"}, {40596, "Garras"} }, [9] = { title = "Zodíaco", {40316, "Espada"}, {40319, "Daga"}, {40320, "Arco"}, {40318, "Dos manos"}, {40321, "Campana"}, {40322, "Fan"}, {40323, "Garras"} } } end when 30335.use or --vnum del cofre 30339.use or 8011.use or 8012.use or 8013.use or 8014.use or 8015.use or 8016.use or 8017.use or 8018.use begin if weapon_skin.bug_control() then return end local list = { [30335] = {1}, --vnum del cofre y seguido el id del set. En este caso muestra el set 1. [30339] = {2, 3, 4, 5, 6, 7, 8, 9}, --vnum del cofre y seguido el id del set. En este caso muestra varios sets. El personaje solo podrá elegir uno. [8011] = {2}, [8012] = {3}, [8013] = {8}, [8014] = {9}, [8015] = {7}, [8016] = {6}, [8017] = {5}, [8018] = {4} } if list[item.vnum] != nil then weapon_skin.giveSkinSet(list[item.vnum]) end end function giveSkinSet(set_elements) local data = weapon_skin.data() local id_set_selected = 1 if table.getn(set_elements) > 1 then local table_names_set = {} for i = 1, table.getn(set_elements) do if data[set_elements[i]] != nil then if data[set_elements[i]].title != nil then table.insert(table_names_set, data[set_elements[i]].title) end end end table.insert(table_names_set, "Cerrar") say_title(item_name(item.vnum)) say() id_set_selected = select_table(table_names_set) if id_set_selected == table.getn(table_names_set) then return end end say_title(item_name(item.vnum)) say() if data[set_elements[id_set_selected]].title != nil then say_title_center(data[set_elements[id_set_selected]].title) end local table_names_weapon = {} for i = 2, table.getn(data[set_elements[id_set_selected]]) do table_names_weapon[i-1] = data[set_elements[id_set_selected]][i-1][2] end table.insert(table_names_weapon, "Cerrar") local weapon_selected = select_table(table_names_weapon) if weapon_selected == table.getn(table_names_weapon) then return end say_title(item_name(item.vnum)) say("Recibirás: ") say_item_vnum(item.vnum) if select("Confirmar", "Cancelar") == 1 then pc.give_item2(data[set_elements[s1]][weapon_selected][1]) pc.remove_item(item.vnum) end end end end ¿Cómo agregar un skin de set de arma? 1. Ten listado el vnum del cofre y los vnum de las armas que pertenecen a ese set. 2. Agrega un nuevo elemento a la tabla data. function data() return { [1] = { title = "Prueba", --Nombre del set {40159, "Espada"}, --vnum y tipo de arma {40160, "Daga"}, {40161, "Arco"}, {40162, "Dos manos"}, {40163, "Campana"}, {40164, "Fan"}, {40165, "Garras"} }, --Aquí voy a agregar este nuevo set [10] = { title = "Set Zone", {11111, "Espada"}, --Si tienes una espada de sura, solo agrega una línea abajo así: {tu_vnum, "Espada Sura"} {11112, "Daga"}, {11113, "Arco"}, {11114, "Dos manos"}, {11115, "Campana"}, {11116, "Fan"}, {11117, "Garras"} }, -- Ten en cuenta el número que agregaste, en este caso yo agregué el 2. No puedes repetir números en la tabla y no necesariamente deben ser en orden. 3. Agrega el cofre when 30335.use or --vnum del cofre 30339.use or 8011.use or 8012.use or 8013.use or 8014.use or 8015.use or 8016.use or 8017.use or 8018.use or --añado el or al final -- Agregando mi cofre de Zone 22222.use -- begin 4. Poner el set o los sets en el cofre local list = { [30335] = {1}, --vnum del cofre y seguido el id del set. En este caso muestra el set 1. [30339] = {2, 3, 4, 5, 6, 7, 8, 9}, --vnum del cofre y seguido el id del set. En este caso muestra varios sets. El personaje solo podrá elegir uno. [8011] = {2}, [8012] = {3}, [8013] = {8}, [8014] = {9}, [8015] = {7}, [8016] = {6}, [8017] = {5}, [8018] = {4}, --pongo la coma --Agregando mi set de Zone [22222] = {10} --el 10 es el id de la tabla del set que agregué } 5. Compilar Hay que compilar necesariamente porque el when item_vnum.use es estático y no le echo mano para que sea dinámico xD Repasemos cómo se vería (sin fotos xD) Cofre con un solo set: Al darle clic al cofre, va a mostrar un say donde muestra el nombre del set y los botones "Espada", "Daga", "Arco", "Dos manos", etc. El personaje elije el arma que desea y le aparece una nueva ventana donde sale el ícono del objeto y un botón que dice confirmar. Al confirmar, el cofre será borrado y el skin será dado. Cofre con varios sets: Al darle clic al cofre, mostrará varios botones con el nombre de los sets. Al elegir alguno de ellos, pasará lo mismo que he mencionado arriba. Espero que sea de alguna utilidad y saludos a todos! Debes iniciar sesión para ver el contenido del enlace en esta publicación. Encantado de trabajar contigo brother. Increible trabajo sobre la quest. Tus manos son arte e.e Quote Link to comment Share on other sites More sharing options...
clocki Posted May 21, 2022 Report Share Posted May 21, 2022 Muchas gracias caanmasu y otro like más Quote Link to comment Share on other sites More sharing options...
NazoX Posted May 21, 2022 Report Share Posted May 21, 2022 Que fiera estás hecho el mejor de todos!!! buen trabajo, código limpio, funcional, y encima guapo que más queréis? Quote Link to comment Share on other sites More sharing options...
ใโ-๐ใโ๐๐ผ๐ Posted May 22, 2022 Report Share Posted May 22, 2022 Gracias por el aporte, hoy en dia todo es c++ binario/source game pero nunca está de más implementar alguna que otra quest e.e Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.