• TibiaFace

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

    .
    demo menumenu

    Afiliados



    Votar:

    [NPC] Recompensa para 7.4

    Compartir:

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

    1default [NPC] Recompensa para 7.4 el Jue Nov 23, 2017 8:05 am

    cimmeria

    avatar
    Miembro
    Miembro
    Hola amigos estoy intentando buscar algun npc que haga una funcion pero no doy con el y que sea para mi version de servidor haber si alguien me puede ayudar. 
    Lo que necesito que  haga el npc que te pide XXX cantidad de un itemp y tede puntos en la store de la web xxx cantidad si alguien me puede ayudar l o agradeceria ya que es para darle un impulso al servidor aora mas estas navidades. 
    Gracias y saludos

    este es el server que  uso
    [Tienes que estar registrado y conectado para ver este vínculo]

    Ver perfil de usuario http://sayayinz.ddns.net

    2default Re: [NPC] Recompensa para 7.4 el Jue Nov 23, 2017 5:37 pm

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    aqui lo tienes

    Código:
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState, xmsg = {}, {}
     
    function onCreatureAppear(cid)                npcHandler:onCreatureAppear(cid) end
    function onCreatureDisappear(cid)            npcHandler:onCreatureDisappear(cid) end
    function onCreatureSay(cid, type, msg)            npcHandler:onCreatureSay(cid, type, msg) end
    function onThink()                    npcHandler:onThink() end
     

     
    local items = {
        ["thaian sword"] = {cantidad = 100, itemid = 7391}, 
        ["golden helmet"] = {cantidad = 100, itemid = 2471}
    }
     
    function creatureSayCallback(cid, type, msg)
        if not npcHandler:isFocused(cid) then
            return false
        end
     
        local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
     
        local x = items[msg:lower()]
     
        if msgcontains(msg, 'buy') then
       
       
            selfSay('Which donate item would you like to buy?', cid)
           
           
            talkState[talkUser] = 2
           
           
        elseif x and talkState[talkUser] >= 1 then
       
       
            selfSay('Do you want to buy 1 '..msg..' for '..x.cantidad..' soul orb?', cid)
           
           
            xmsg[cid] = msg
           
           
            talkState[talkUser] = 3
           
           
        elseif msgcontains(msg, 'yes') and talkState[talkUser] == 3 then
       
       
       
       
            x = items[xmsg[cid]:lower()]
           
           
            if getPlayerItemCount(cid,5944) >= x.cantidad then
           
                selfSay('Here you are, have fun with it.', cid)
               
               
                doPlayerAddItem(cid, x.itemid, 1)
               
                doPlayerRemoveItem(cid,5944,x.cantidad)
               
                db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + '1' WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
               
         
               
                talkState[talkUser] = 1
            else
                selfSay('You don\'t have enough soul orb.', cid)
                talkState[talkUser] = 1
            end
        elseif msgcontains(msg, 'list') then
            text = 'Donation Items\n'
            for i, x in pairs(items) do
                    text = text .. "\n" .. i .. " - "..x.cantidad.." soul orb"
            end
            doShowTextDialog(cid, 7391, "" .. text)
            talkState[talkUser] = 1
        elseif talkState[talkUser] == 2 then
            selfSay('You can\'t buy this item from me, look in the {list} which items you can buy.', cid)
        else
            selfSay('What? I don\'t understand what you mean with '..msg..'.', cid)
        end
        return true
    end
     
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())



    Ver perfil de usuario http://www.tibiaface.com

    3default Re: [NPC] Recompensa para 7.4 el Vie Nov 24, 2017 5:56 am

    cimmeria

    avatar
    Miembro
    Miembro
    vale bro lo voy a testear aora mismo un pregunta simple 
    ["thaian sword"] = {cantidad = 100, itemid = 7391},


    donde pone cantidad que seran los points que nos dara en la web me gustaria saber donde sale para especificar la cantidad de premium
    points que quiero que reciba un player al entregar un item

    Ver perfil de usuario http://sayayinz.ddns.net

    4default Re: [NPC] Recompensa para 7.4 el Vie Nov 24, 2017 7:29 am

    [Admin] God Maya

    avatar
    Administrador
    Administrador
    [Tienes que estar registrado y conectado para ver este vínculo] escribió:vale bro lo voy a testear aora mismo un pregunta simple 
    ["thaian sword"] = {cantidad = 100, itemid = 7391},


    donde pone cantidad que seran los points que nos dara en la web me gustaria saber donde sale para especificar la cantidad de premium
    points que quiero que reciba un player al entregar un item


    aqui

    Código:
    db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + '1' WHERE `id` = " .. getPlayerAccountId(cid) .. ";")


    premium_points` = `premium_points` + '1' <<<<<<<< 1 premium point por item



    Ver perfil de usuario http://www.tibiaface.com

    5default Re: [NPC] Recompensa para 7.4 el Dom Nov 26, 2017 3:18 am

    cimmeria

    avatar
    Miembro
    Miembro
    hola Maya bro el npc que me pasaste va fenomenal e conseguido adaptarlo a lo que quiero que haga que es que pida 100 gold nugget que y tede 1 point en la web pero me sale este error en la consola pero lo hace todo bien lo que yo e modificado es que no canbiara el itemp por otro y aparte tede un  itemp que te daba otra cosa cuando efectuas la palabra list me tira el ot no hay manera de quitar esa opción sin dañar el npc

    Código:
    local keywordHandler = KeywordHandler:new()
    local npcHandler = NpcHandler:new(keywordHandler)
    NpcSystem.parseParameters(npcHandler)
    local talkState, xmsg = {}, {}
     
    function onCreatureAppear(cid)                npcHandler:onCreatureAppear(cid) end
    function onCreatureDisappear(cid)            npcHandler:onCreatureDisappear(cid) end
    function onCreatureSay(cid, type, msg)            npcHandler:onCreatureSay(cid, type, msg) end
    function onThink()                    npcHandler:onThink() end
     

     
    local items = {
        [""] = {cantidad = 0, itemid = 0},  
        ["gold nugget"] = {cantidad = 100, itemid = 2157}
    }
     
    function creatureSayCallback(cid, type, msg)
        if not npcHandler:isFocused(cid) then
            return false
        end
     
        local talkUser = NPCHANDLER_CONVBEHAVIOR == CONVERSATION_DEFAULT and 0 or cid
     
        local x = items[msg:lower()]
     
        if msgcontains(msg, 'buy') then
        
        
            selfSay('Which donate item would you like to buy?', cid)
            
            
            talkState[talkUser] = 2
            
            
        elseif x and talkState[talkUser] >= 0 then
        
        
            selfSay('Do you want to buy  premium points for '..x.cantidad..' gold nuggets?', cid)
            
            
            xmsg[cid] = msg
            
            
            talkState[talkUser] = 3
            
            
        elseif msgcontains(msg, 'yes') and talkState[talkUser] == 3 then
        
        
        
        
            x = items[xmsg[cid]:lower()]
            
            
            if getPlayerItemCount(cid,2157) >= x.cantidad then
            
                selfSay('Here you are, have fun with it.', cid)
                
                
                 doPlayerAddItem(cid, x.itemid, 0)
                
                 doPlayerRemoveItem(cid,2157,x.cantidad)
                
                 db.executeQuery("UPDATE `accounts` SET `premium_points` = `premium_points` + '1' WHERE `id` = " .. getPlayerAccountId(cid) .. ";")
                
          
                
                talkState[talkUser] = 1
            else
                selfSay('You don\'t have enough soul orb.', cid)
                talkState[talkUser] = 1
            end
        elseif msgcontains(msg, 'list') then
            text = 'Donation Items\n'
            for i, x in pairs(items) do
                    text = text .. "\n" .. i .. " - "..x.cantidad.." soul orb"
            end
            doShowTextDialog(cid, 7391, "" .. text)
            talkState[talkUser] = 1
        elseif talkState[talkUser] == 2 then
            selfSay('You can\'t buy this item from me, look in the {list} which items you can buy.', cid)
        else
            selfSay('What? I don\'t understand what you mean with '..msg..'.', cid)
        end
        return true
    end
     
    npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback)
    npcHandler:addModule(FocusModule:new())

    asin quedo

    piensa que el itemp lo pondre en todos los monster pondre el drop de las boh y ellos podran canjear sus nuggets por puntos vip es como un evento de navidad para que no este todo basado en donar y una manera de hacer el juego mas adicto gracias bro.

    se me olvidaba

    Ver perfil de usuario http://sayayinz.ddns.net

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