• TibiaFace

    Tibiaface | Una comunidad Open Tibia donde encontras : mapas, scripts, Otserver, npc y amigos etc ...

    .
    demo menumenu

    Afiliados



    Votar:

    [GlobalEvents] Automensaje cliente 12

    Compartir:

    Ver el tema anterior Ver el tema siguiente Ir abajo  Mensaje (Página 1 de 1.)

    1[GlobalEvents] Automensaje cliente 12 Empty [GlobalEvents] Automensaje cliente 12 Mar Ago 27, 2019 5:53 pm

    Eyow

    Eyow
    Nuevo Miembro
    Nuevo Miembro
    Buenas usuarios de TibiaFace.

    Hoy vamos a aprender la nueva forma de mandar un automensaje en nuestro servidor para tibia 12.
    *Tfs +1.2.

    Primero vamos a data/globalevents. Y en globalevents.xml escribimos:
    Código:

    <globalevent name="mensajes" interval="60000" script="spam.lua"

    Ahora nos vamos a data/globalevents/scripts Copiamos un archivo lua y le borramos el contenido. Despues le cambiamos el nombre a spam(en mi caso).
    Código:

    function onThink()
    Game.broadcastMessage("Esto es un automensaje.")
    end

    Notas:
    *Es posible que os marque un error en la consola diciendo que hay un fallo al ejecutar el globalevent. Pero es un fallo de la consola porque el mensaje lo vemos en nuestro cliente, en caso contrario tendriamos debug en éste o se cerraría el servidor.
    *1 segundo - 1000
    *1 minuto - 60000

    Espero que os sirva Smile

    4 participantes

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    seria mejor asi


    Código:


    function onThink(interval, lastExecution)
       local messages = {
       "[TICKETS]: Tibiaface la mejor comunidad.",
       "[TEAMSPEAK3]: Tibiaface la mejor comunidad.",
       "[REGRAS]: Tibiaface la mejor comunidad.",
       "[SISTEMA]: Tibiaface la mejor comunidad.",
       "[SEGURANÇA]: Tibiaface la mejor comunidad.",
       "[SEGURANÇA]: Tibiaface la mejor comunidad."
    }

        Game.broadcastMessage(messages[math.random(#messages)], MESSAGE_EVENT_ADVANCE)
        return true
    end




    de igual manera gracias por el aporte +1 (y)



    [GlobalEvents] Automensaje cliente 12 YNU5B25
    4 participantes
    http://www.tibiaface.com

    3[GlobalEvents] Automensaje cliente 12 Empty pregunta Miér Feb 15, 2023 10:18 am

    confortch

    confortch
    Nuevo Miembro
    Nuevo Miembro
    Hola gracias por el aporte!, una pregunta en la configuración de mi servidor no tengo el archivo globalevents.xml, de que otra forma lo podría implementar?

    4 participantes

    4[GlobalEvents] Automensaje cliente 12 Empty Re: [GlobalEvents] Automensaje cliente 12 Miér Feb 15, 2023 10:30 am

    SoyFabi

    SoyFabi
    Miembro
    Miembro
    Código:
    local Globalevent = GlobalEvent(“Messages”)
    function Globalevent.onThink(interval, lastExecution)
       local messages = {
       "[TICKETS]: Tibiaface la mejor comunidad.",
       "[TEAMSPEAK3]: Tibiaface la mejor comunidad.",
       "[REGRAS]: Tibiaface la mejor comunidad.",
       "[SISTEMA]: Tibiaface la mejor comunidad.",
       "[SEGURANÇA]: Tibiaface la mejor comunidad.",
       "[SEGURANÇA]: Tibiaface la mejor comunidad."
    }

        Game.broadcastMessage(messages[math.random(#messages)], MESSAGE_EVENT_ADVANCE)
        return true
    end

    Globalevent:interval(10000)
    Globalevent:register()


    Se coloca en data/scripts



    Última edición por SoyFabi el Miér Feb 15, 2023 12:50 pm, editado 1 vez

    4 participantes

    5[GlobalEvents] Automensaje cliente 12 Empty Re: [GlobalEvents] Automensaje cliente 12 Miér Feb 15, 2023 11:14 am

    confortch

    confortch
    Nuevo Miembro
    Nuevo Miembro
    Gracias!! me sirvió, con respecto a esto, hay varios post que editan archivos xml o tienen rutas distintas a la de mi servidor. ¿Cómo encontraste esta solución? esto se puede aplicar para otros temas?
    Saludos!

    4 participantes

    6[GlobalEvents] Automensaje cliente 12 Empty Re: [GlobalEvents] Automensaje cliente 12 Miér Feb 15, 2023 1:13 pm

    SoyFabi

    SoyFabi
    Miembro
    Miembro
    confortch escribió:Gracias!! me sirvió, con respecto a esto, hay varios post que editan archivos xml o tienen rutas distintas a la de mi servidor. ¿Cómo encontraste esta solución? esto se puede aplicar para otros temas?
    Saludos!

    A eso se le llama RevScripts, es una forma directa de registrar scripts sin necesidad de tenerlo en XML, se puede implementar a cualquier scripts que contenga XML.

    Por lo que puedo notar es que al parecer es un OtServBR lo que utilizas, ahi es puro RevScripts.

    4 participantes

    7[GlobalEvents] Automensaje cliente 12 Empty Re: [GlobalEvents] Automensaje cliente 12 Miér Feb 15, 2023 1:22 pm

    confortch

    confortch
    Nuevo Miembro
    Nuevo Miembro
    Gracias Fabi!, existe alguna guía de como transformar Scripts a Revscripts?

    4 participantes

    8[GlobalEvents] Automensaje cliente 12 Empty [Codigo] Revscripts Miér Feb 15, 2023 3:41 pm

    SoyFabi

    SoyFabi
    Miembro
    Miembro
    confortch escribió:Gracias Fabi!, existe alguna guía de como transformar Scripts a Revscripts?

    Es sencillo de transformar un scripts a revscripts..

    En este caso en vez de ser asi:

    Código:
    <action actionid="10103" script="testscripts"/>

    Que eso seria dentro de XML.

    Pasarlo a Revscripts seria algo como esto:

    Ejemplo de Scripts:
    Código:
    local config = {
        text = "Hola",
        effect = CONST_ME_TELEPORT,
    }

    function onUse(player, item, fromPosition, target, toPosition, isHotkey)
        player:say(config.text)
        player:getPosition():sendMagicEffect(config.effect)
     return true
    end
    Que es donde tienes que tambien en XML para colocar un Actionid, uniqueid o ID.

    Algo como Revscripts seria esto:
    Código:
    local config = {
        text = "Hola",
        effect = CONST_ME_TELEPORT,
    }

    local actions = Action()
    function actions.onUse(player, item, fromPosition, target, toPosition, isHotkey)
        player:say(config.text)
        player:getPosition():sendMagicEffect(config.effect)
     return true
    end

    --ID, AID, UID.
    actions:id(7486)
    actions:register()

    Si te das cuenta los revscripts siempre lleva la variable (Estamos hablando de Actions):
    Código:
    local actions = Action()

    En la funcion onUse siempre se le coloca el nombre de la variable al principio es decir:
    Código:
    actions.onUse

    Y luego para terminar como no lleva XML, en el mismo archivo se puede registrar usando esto:
    Código:
    actions:id(7486)

    En ese caso ID del item, si es un actionid entonces seria cambiar donde dice id a aid.

    Y luego para registrar el scripts para que funcione seria colocar el nombre de la variable actions y luego un register:
    Código:
    actions:register()

    Coje un ejemplo de los scripts que ya estan hechos en data/scripts, ahi habra de globalevents, movements, talkaction.

    4 participantes

    Contenido patrocinado


    4 participantes

    Ver el tema anterior Ver el tema siguiente Volver arriba  Mensaje (Página 1 de 1.)

    Permisos de este foro:
    No puedes responder a temas en este foro.

     

    BienvenidosTibiaFace es una comunidad de Open Tibia. Para participar debes estar registrado (click para Regístrate).