• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [Pedido] Nobility Effect

    Compartir:

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

    1default [Pedido] Nobility Effect Miér Nov 04, 2020 5:30 am

    lsenturion

    lsenturion
    Miembro
    Miembro
    Descripcion escribió:Buenas amigos hoy les vengo a pedir un script que haga lo siguiente:

    El player que tenga mas Nobility Points le aparezca un efecto [KING], y si alguien le gana en Nobility Points, se le remueva el efecto y se le añada al nuevo Top Nobility.

    En pocas palabras funciona como el Top Level Effect. Si alguien es Top nobility, y otro personaje revasa al top anterior, se le añada el efecto al nuevo y se le remueva al viejo.

    ya tengo la tabla creada en MySQL solo me hace falta que cuando

    Dejo aqui el script por si necesitan reemplazar tablas:
    Código:
    local config = {
      tempo = 5, --tempo em segundos
      mensagem = {
          texto = "[TOP]", --não use mais de 9 caracteres
          efeito = TEXTCOLOR_LIGHTBLUE --efeito para a função doSendAnimatedText
      },
      efeito = 30, --efeito da função doSendMagicEffect
      globalstr = 150202 -- uma global storage qualquer q esteje vazia
    }
    function TopEffect(cid)
      local var = tostring(getGlobalStorageValue(config.globalstr)):gsub(':', ''):explode(',')
      if not isCreature(cid) or getPlayerName(cid) ~= var[1] then return LUA_ERROR end
      doSendAnimatedText(getCreaturePosition(cid), config.mensagem.texto, config.mensagem.efeito)
      doSendMagicEffect(getCreaturePosition(cid), config.efeito)
      addEvent(TopEffect, config.tempo*1000, cid)
    end
    function onLogin(cid)
      if tonumber(getGlobalStorageValue(config.globalstr)) then -- virgin
          local query = db.getResult("SELECT `name`, `level` FROM `players` WHERE `group_id` < 2 ORDER BY `level` DESC LIMIT 1")
          if (query:getID() ~= -1) then
            setGlobalStorageValue(config.globalstr, ":"..query:getDataString("name")..",:"..query:getDataInt("level"))
            TopEffect(cid)
          end
      else
          TopEffect(cid)
      end
      registerCreatureEvent(cid, "CheckTop")
      return true
    end
    function onAdvance(cid, skill, oldLevel, newLevel)
      if skill ~= SKILL__LEVEL then return true end
      local var = tostring(getGlobalStorageValue(config.globalstr)):gsub(':', ''):explode(',')
      if newLevel > tonumber(var[2]) then
          doBroadcastMessage("O jogador " .. getPlayerName(cid) .. " tornou-se o novo Top Level. Parabens!", 22)
          setGlobalStorageValue(config.globalstr, ":"..getPlayerName(cid)..",:"..newLevel)
          TopEffect(cid)
      end       
      return true
    end
    Imagen Explicativa escribió:Imagen Explicativa: [Pedido] Nobility Effect Tibiaf10
    Version del Scripts: TFs 0.4.0

    http://krudaserver.com

    2default Re: [Pedido] Nobility Effect Miér Nov 04, 2020 9:16 pm

    [Admin] God Maya

    [Admin] God Maya
    Administrador
    Administrador
    peroe sto es muy distinto ya que aqui esta tomando un funcion interna

    Código:
    function onAdvance(cid, skill, oldLevel, newLevel)

    donde verifica el level practicamente habria que rediceñar algo complejo



    [Pedido] Nobility Effect YNU5B25
    https://www.tibiaface.com

    3default Re: [Pedido] Nobility Effect Miér Nov 04, 2020 10:56 pm

    lsenturion

    lsenturion
    Miembro
    Miembro
    Y hay alguna manera alternativa de hacer algo que funcione como quisiera?

    Que al lograr estar en el top 1 de nobility points, ceda el puesto al player correspondiente?

    http://krudaserver.com

    Contenido patrocinado


    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).