Ir para conteúdo

julhinhuu

Visconde
  • Total de itens

    352
  • Registro em

  • Última visita

  • Dias Ganhos

    2

Tudo que julhinhuu postou

  1. Olá bom dia xt; Venho lhes pedir uma ajuda para fazer uma mudança de script, não conheço muito bem as novas funções do TFS 1x... Agradeceria muito se alguém pudesse ajudar; Segue o script: Já vou agradecer desde já, pois existe o Xtibia que ja me ajudou muito, creio que irão me ajudar novamente.
  2. Não aparece erro na Distro nem nada, só que o player fala !comprar skillaxe10 e apenas saiu a mensagem como se ele estivesse falando normalmente com outro jogador no caso... Não seria preciso uma Query? ou está no script mesmo o erro? UP
  3. Você é zikka mesmo, '-' obrigado você me ajudou muito.
  4. O erro saiu mais o player não compra skill, pode continuar ajudando?
  5. Nada, ja havia tentado e tentei novamente mesma coisa, rsrs.
  6. O codigo não é diferente é o mesmo, e da o erro da imagem postada. SKILL_CLUB = "skill_club" SKILL_DISTANCE = "skill_dist" SKILL_SHIELD = "skill_shielding" SKILL_MAGLEVEL = "maglevel" SKILL_SWORD = "skill_sword" SKILL_AXE = "skill_axe" local coinID = 9971 -- moeda para comprar skills local tb = { ["sd"] = {t= 1, bag = 5926, item= 2268, bag_quant = 2, price= 50, msg= "Parabéns você comprou 4k de SD com sucesso."}, ["uh"] = {t= 1, bag = 2002, item= 2273, bag_quant = 3, price= 30, msg= "Parabéns você comprou 6k de UH com sucesso."}, ["explo"] = {t= 1, bag = 2001, item= 2313, bag_quant = 3, price= 10, msg= "Parabéns você comprou 6k de Explosion com sucesso."}, ["super divine axe"] = {t= 2, item = 8926, price= 60, msg= "Você comprou um super divine axe com sucesso."}, ["super divine staff"] = {t= 2, item = 8922, price= 60, msg= "Você comprou um super divine staff com sucesso."}, ["super divine club"] = {t= 2, item = 7423, price= 60, msg= "Você comprou um super divine club com sucesso."}, ["super divine sword"] = {t= 2, item = 7403, price= 60, msg= "Você comprou um super divine sword com sucesso."}, ["super divine crossbow"] = {t= 2, item = 8851, price= 60, msg= "Você comprou um super divine crossbow com sucesso."}, ["livro nivel 6"] = {t= 2, item = 8921, price= 60, msg= "Você comprou um livro nivel 6 com sucesso."}, ["vip10"] = {t= 3, days= 10, price= 5}, ["vip30"] = {t= 3, days= 30, price= 10}, ["magiclevel"] = {t= 4, vocations = {1, 5, 2, 6, 11, 12}, voc_msg= "Somente Sorcerers, Druids e Infernalists podem comprar magic level.", lim = 200, lim_msg = "Você não pode ter magic level acima de 200.", price= 3, incre = 1, skill = SKILL_MAGLEVEL}, ["skillclub"] = {t= 5, vocations = {9, 10}, voc_msg= "Somente Drunous podem comprar skill de club.", lim = 350, price= 1, incre = 1, skill = SKILL_CLUB}, ["skillsword"] = {t= 5, vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de sword.", lim = 350, price= 1, incre = 1, skill = SKILL_SWORD}, ["skillaxe"] = {t=5 , vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de axe.", lim = 350, price= 1, incre = 1, skill = SKILL_AXE}, ["skilldistance"] = {t= 5, vocations = {3, 7}, voc_msg= "Somente Paladins podem comprar skill de distance.", lim = 350, price= 1, incre = 1, skill = SKILL_DISTANCE}, ["skillshielding"] = {t= 5, vocations = {3, 7, 4, 8, 9, 10}, voc_msg= "Somente Paladins, Knights e Drunous podem comprar skill de shield.", lim = 350, price= 1, incre = 1, skill = SKILL_SHIELD}, ["magiclevel5"] = {t= 4, vocations = {1, 5, 2, 6, 11, 12}, voc_msg= "Somente Sorcerers, Druids e Infernalists podem comprar magic level.", lim = 200, lim_msg = "Você não pode ter magic level acima de 200.", price= 15, incre = 5, skill = SKILL_MAGLEVEL}, ["skillclub10"] = {t= 5, vocations = {9, 10}, voc_msg= "Somente Drunous podem comprar skill de club.", lim = 350, price= 10, incre = 10, skill = SKILL_CLUB}, ["skillsword10"] = {t= 5, vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de sword.", lim = 350, price= 10, incre = 10, skill = SKILL_SWORD}, ["skillaxe10"] = {t=5 , vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de axe.", lim = 350, price= 10, incre = 10, skill = SKILL_AXE}, ["skilldistance10"] = {t= 5, vocations = {3, 7}, voc_msg= "Somente Paladins podem comprar skill de distance.", lim = 350, price= 10, incre = 10, skill = SKILL_DISTANCE}, ["skillshielding10"] = {t= 5, vocations = {3, 7, 4, 8, 9, 10}, voc_msg= "Somente Paladins, Knights e Drunous podem comprar skill de shield.", lim = 350, price= 10, incre = 10, skill = SKILL_SHIELD}, ["removerfrag"] = {t= 6, price= 10}, } local storage = 45611 function onSay(player, words, param) local pid = player:getGuid() local tile = player:getTile() if not tile:hasFlag(TILESTATE_PROTECTIONZONE) then player:sendCancelMessage("Você precisa está em área protegida para utilizar este comando.") return true end if player:getStorageValue(storage) >= os.time() then player:sendCancelMessage("Por medidas de segurança você só pode utilizar este comando em " .. player:getStorageValue(storage)-os.time() .. " segundos.") return true end if param == "" then player:popupFYI("Para comprar digite !comprar (nome do item)\nOpcoes:\nsd = 4000 em SD por 50 barras.\nuh = 6000 em UH por 40 barras.\nexplo = 6000 em explosion por 10 barras.\nvip10 = 10 dias de vip por 5 barras.\nvip30 = 30 dias de vip por 10 barras.\ndivine staff = divine staff por 30 barras.\ndivine axe = divine axe por 30 barras.\nlivro nivel 6 = livro nivel 6 por 60 barras.\ndivine club = divine club por 30 barras.\ndivine sword = divine sword por 30 barras.\ndivine crossbow = divine crossbow por 30 barras.\nlivro nivel 5 = livro nivel 5 por 30 barras.\nsuper divine axe = super divine axe por 60 barras.\nsuper divine club = super divine club por 60 barras.\nsuper divine sword = super divine sword por 60 barras.\nsuper divine staff = super divine staff por 60 barras.\nsuper divine crossbow = super divine crossbow por 60 barras.\nskillclub = adiciona 1 skill club por 1 barras.\nskillsword = adiciona 1 skill sword por 1 barras.\nskillaxe = adiciona 1 skill axe por 1 barras.\nskilldistance = adiciona 1 skill distance por 1 barras.\nskillshielding = adiciona 1 skill shielding por 1 barras.\nmagiclevel = adiciona 1 magic level por 3 barras.\nmagiclevel5 = adiciona 5 magic level por 15 barras.\nskillclub10 = adiciona 10 skills club por 10 barras.\nskillsword10 = adiciona 10 skills sword por 10 barras.\nskillaxe10 = adiciona 10 skills axe por 10 barras.\nskilldistance10 = adiciona 10 skill distance por 10 barras.\nskillshielding10 = adiciona 10 skill shielding por 10 barras.\nremoverfrag = remove todos frags por 100k.\nO Item desejado não existe em nosso stock. Veja a cima os detalhes dos items disponíveis.") return true end for f, v in pairs(tb) do if param == f then if v.t == 1 then if player:getItemCount(coinID) >= v.price then local item_quant = (v.bag_quant * 2000)/100 for x = 1, v.bag_quant do local bag = player:addItem(v.bag, 1) for i = 1, item_quant do bag:addItem(v.item, 100) end end player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, v.msg) player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 2 then if player:getItemCount(coinID) >= v.price then item = player:addItem(v.item, 1) item:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, "Este item pode ser adquirido através do shopping. Adquirido dia " .. os.date("%d/%m/%Y - %X") .." por ".. player:getName() ..". Serial: ".. player:getGuid() ..".") player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, v.msg) player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 3 then if player:getItemCount(coinID) >= v.price then player:addPremiumDays(v.days) player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou " .. v.days .. " dias de vip com sucesso.") player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 4 then if player:getBaseMagicLevel() >= v.lim then player:sendCancelMessage(v.lim_msg) return true end if not isInArray(v.vocations, player:getVocation():getId()) then player:sendCancelMessage(v.voc_msg) return true end if player:getItemCount(coinID) >= v.price then player:removeItem(coinID, v.price) player:setStorageValue(storage, os.time()+3) player:remove() db.query("UPDATE `players` SET ".. v.skill .. " = " .. v.skill .. " + " .. v.incre .. " WHERE `id` = ".. pid) else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 5 then if not isInArray(v.vocations, player:getVocation():getId()) then player:sendCancelMessage(v.voc_msg) return false end if player:getSkillLevel(v.skill) >= v.lim or (v.lim - player:getSkillLevel(v.skill)) < v.incre then player:sendCancelMessage("Você não pode comprar esse skill.") return false end if player:getItemCount(coinID) >= v.price then player:removeItem(coinID, v.price) player:setStorageValue(storage, os.time()+3) player:remove() db.query("UPDATE `players` SET ".. v.skill .. " = " .. v.skill .. " + " .. v.incre .. " WHERE `id` = ".. pid) return true else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") return false end elseif v.t == 6 then if player:getItemCount(2160) >= v.price then player:removeItem(2160, v.price) player:setSkull(SKULL_NONE) player:setSkullTime(0) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your skull and frags has been removed!") player:setStorageValue(storage, os.time()+3) db.query("UPDATE `player_deaths` SET `unjustified` = 0 WHERE `unjustified` = 1 AND `killed_by` = " .. db.escapeString(player:getName())) else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end end end end return false end UP
  7. Bom Dia, Hoje gostaria da ajuda de vocês para quando o jogador for viajar apenas precise falar o nome da cidade e ele viajaria; Segue o NPC de viagem: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) -- OTServ event handling functions start 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 -- OTServ event handling functions end -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'yalahar'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para Yalahar por 210 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 210, destination = {x=1555, y=2576, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Eu posso te levar para {dorion}, {Yalahar}, {Alfon}, {venonh} e {Anknor} por um pequeno custo.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'dorion'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para Dorion por 110 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 110, destination = {x=31, y=79, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'dorion\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'alfon'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para alfon por 115 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 115, destination = {x=114, y=282, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'Alfon\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'venonh'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para venonh por 100 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 100, destination = {x=238, y=370, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'venohn\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'anknor'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para anknor por 175 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 175, destination = {x=487, y=261, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'Anknor\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'evora'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para évora por 175 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 175, destination = {x=1046, y=2048, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'Anknor\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'anknor'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para anknor por 100 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 100, destination = {x=487, y=261, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'anknor\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'smallville'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para smallville por 190 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 190, destination = {x=1995, y=2394, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'smallville\' for just a small fee.'}) -- Don't forget npcHandler = npcHandler in the parameters. It is required for all StdModule functions! local travelNode = keywordHandler:addKeyword({'goroma'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'Voce quer viajar para Goroma por 55 gold coins?'}) travelNode:addChildKeyword({'yes'}, StdModule.travel, {npcHandler = npcHandler, premium = true, level = 2, cost = 55, destination = {x=1367, y=195, z=6} }) travelNode:addChildKeyword({'no'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, reset = true, text = 'I wouldn\'t go there either.'}) keywordHandler:addKeyword({'destination'}, StdModule.say, {npcHandler = npcHandler, onlyFocus = true, text = 'I can take you to \'goroma\' for just a small fee.'}) -- Makes sure the npc reacts when you say hi, bye etc. npcHandler:addModule(FocusModule:new())
  8. Imagem: http://prntscr.com/9riidk
  9. Está parte eu resolvi, pesquisei e achei algumas coisas que ajudaram. Obrigado assim mesmo.
  10. Bom dia gente estava procurando um script de comprar skill e achei so que no meu TFS esta dando o erro e gostaria que vocês me ajudassem, agradeceria muito. Segue o script que achei aqui: SKILL_CLUB = "skill_club" SKILL_DISTANCE = "skill_dist" SKILL_SHIELD = "skill_shielding" SKILL_MAGLEVEL = "maglevel" SKILL_SWORD = "skill_sword" SKILL_AXE = "skill_axe" local coinID = 9971 -- moeda para comprar skills local tb = { ["sd"] = {t= 1, bag = 5926, item= 2268, bag_quant = 2, price= 50, msg= "Parabéns você comprou 4k de SD com sucesso."}, ["uh"] = {t= 1, bag = 2002, item= 2273, bag_quant = 3, price= 30, msg= "Parabéns você comprou 6k de UH com sucesso."}, ["explo"] = {t= 1, bag = 2001, item= 2313, bag_quant = 3, price= 10, msg= "Parabéns você comprou 6k de Explosion com sucesso."}, ["super divine axe"] = {t= 2, item = 8926, price= 60, msg= "Você comprou um super divine axe com sucesso."}, ["super divine staff"] = {t= 2, item = 8922, price= 60, msg= "Você comprou um super divine staff com sucesso."}, ["super divine club"] = {t= 2, item = 7423, price= 60, msg= "Você comprou um super divine club com sucesso."}, ["super divine sword"] = {t= 2, item = 7403, price= 60, msg= "Você comprou um super divine sword com sucesso."}, ["super divine crossbow"] = {t= 2, item = 8851, price= 60, msg= "Você comprou um super divine crossbow com sucesso."}, ["livro nivel 6"] = {t= 2, item = 8921, price= 60, msg= "Você comprou um livro nivel 6 com sucesso."}, ["vip10"] = {t= 3, days= 10, price= 5}, ["vip30"] = {t= 3, days= 30, price= 10}, ["magiclevel"] = {t= 4, vocations = {1, 5, 2, 6, 11, 12}, voc_msg= "Somente Sorcerers, Druids e Infernalists podem comprar magic level.", lim = 200, lim_msg = "Você não pode ter magic level acima de 200.", price= 3, incre = 1, skill = SKILL_MAGLEVEL, skill_id = 7}, ["skillclub"] = {t= 5, vocations = {9, 10}, voc_msg= "Somente Drunous podem comprar skill de club.", lim = 350, price= 1, incre = 1, skill = SKILL_CLUB, skill_id = 1}, ["skillsword"] = {t= 5, vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de sword.", lim = 350, price= 1, incre = 1, skill = SKILL_SWORD, skill_id = 2}, ["skillaxe"] = {t=5 , vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de axe.", lim = 350, price= 1, incre = 1, skill = SKILL_AXE, skill_id = 3}, ["skilldistance"] = {t= 5, vocations = {3, 7}, voc_msg= "Somente Paladins podem comprar skill de distance.", lim = 350, price= 1, incre = 1, skill = SKILL_DISTANCE, skill_id = 4}, ["skillshielding"] = {t= 5, vocations = {3, 7, 4, 8, 9, 10}, voc_msg= "Somente Paladins, Knights e Drunous podem comprar skill de shield.", lim = 350, price= 1, incre = 1, skill = SKILL_SHIELD, skill_id = 5}, ["magiclevel5"] = {t= 4, vocations = {1, 5, 2, 6, 11, 12}, voc_msg= "Somente Sorcerers, Druids e Infernalists podem comprar magic level.", lim = 200, lim_msg = "Você não pode ter magic level acima de 200.", price= 15, incre = 5, skill = SKILL_MAGLEVEL, skill_id = 7}, ["skillclub10"] = {t= 5, vocations = {9, 10}, voc_msg= "Somente Drunous podem comprar skill de club.", lim = 350, price= 10, incre = 10, skill = SKILL_CLUB, skill_id = 1}, ["skillsword10"] = {t= 5, vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de sword.", lim = 350, price= 10, incre = 10, skill = SKILL_SWORD, skill_id = 2}, ["skillaxe10"] = {t=5 , vocations = {4, 8}, voc_msg= "Somente Knights podem comprar skill de axe.", lim = 350, price= 10, incre = 10, skill = SKILL_AXE, skill_id = 3}, ["skilldistance10"] = {t= 5, vocations = {3, 7}, voc_msg= "Somente Paladins podem comprar skill de distance.", lim = 350, price= 10, incre = 10, skill = SKILL_DISTANCE, skill_id = 4}, ["skillshielding10"] = {t= 5, vocations = {3, 7, 4, 8, 9, 10}, voc_msg= "Somente Paladins, Knights e Drunous podem comprar skill de shield.", lim = 350, price= 10, incre = 10, skill = SKILL_SHIELD, skill_id = 5}, ["removerfrag"] = {t= 6, price= 10}, } local storage = 45611 function onSay(player, words, param) local pid = player:getGuid() local tile = player:getTile() if not tile:hasFlag(TILESTATE_PROTECTIONZONE) then player:sendCancelMessage("Você precisa está em área protegida para utilizar este comando.") return true end if player:getStorageValue(storage) >= os.time() then player:sendCancelMessage("Por medidas de segurança você só pode utilizar este comando em " .. player:getStorageValue(storage)-os.time() .. " segundos.") return true end if param == "" then player:popupFYI("Para comprar digite !comprar (nome do item)\nOpcoes:\nsd = 4000 em SD por 50 barras.\nuh = 6000 em UH por 40 barras.\nexplo = 6000 em explosion por 10 barras.\nvip10 = 10 dias de vip por 5 barras.\nvip30 = 30 dias de vip por 10 barras.\ndivine staff = divine staff por 30 barras.\ndivine axe = divine axe por 30 barras.\nlivro nivel 6 = livro nivel 6 por 60 barras.\ndivine club = divine club por 30 barras.\ndivine sword = divine sword por 30 barras.\ndivine crossbow = divine crossbow por 30 barras.\nlivro nivel 5 = livro nivel 5 por 30 barras.\nsuper divine axe = super divine axe por 60 barras.\nsuper divine club = super divine club por 60 barras.\nsuper divine sword = super divine sword por 60 barras.\nsuper divine staff = super divine staff por 60 barras.\nsuper divine crossbow = super divine crossbow por 60 barras.\nskillclub = adiciona 1 skill club por 1 barras.\nskillsword = adiciona 1 skill sword por 1 barras.\nskillaxe = adiciona 1 skill axe por 1 barras.\nskilldistance = adiciona 1 skill distance por 1 barras.\nskillshielding = adiciona 1 skill shielding por 1 barras.\nmagiclevel = adiciona 1 magic level por 3 barras.\nmagiclevel5 = adiciona 5 magic level por 15 barras.\nskillclub10 = adiciona 10 skills club por 10 barras.\nskillsword10 = adiciona 10 skills sword por 10 barras.\nskillaxe10 = adiciona 10 skills axe por 10 barras.\nskilldistance10 = adiciona 10 skill distance por 10 barras.\nskillshielding10 = adiciona 10 skill shielding por 10 barras.\nremoverfrag = remove todos frags por 100k.\nO Item desejado não existe em nosso stock. Veja a cima os detalhes dos items disponíveis.") return true end for f, v in pairs(tb) do if param == f then if v.t == 1 then if player:getItemCount(coinID) >= v.price then local item_quant = (v.bag_quant * 2000)/100 for x = 1, v.bag_quant do local bag = player:addItem(v.bag, 1) for i = 1, item_quant do bag:addItem(v.item, 100) end end player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, v.msg) player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 2 then if player:getItemCount(coinID) >= v.price then item = player:addItem(v.item, 1) item:setAttribute(ITEM_ATTRIBUTE_DESCRIPTION, "Este item pode ser adquirido através do shopping. Adquirido dia " .. os.date("%d/%m/%Y - %X") .." por ".. player:getName() ..". Serial: ".. player:getGuid() ..".") player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, v.msg) player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 3 then if player:getItemCount(coinID) >= v.price then player:addPremiumDays(v.days) player:removeItem(coinID, v.price) player:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "Parabéns você comprou " .. v.days .. " dias de vip com sucesso.") player:setStorageValue(storage, os.time()+3) break else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 4 then if player:getBaseMagicLevel() >= v.lim then player:sendCancelMessage(v.lim_msg) return true end if not isInArray(v.vocations, player:getVocation():getId()) then player:sendCancelMessage(v.voc_msg) return true end if player:getItemCount(coinID) >= v.price then player:removeItem(coinID, v.price) player:setStorageValue(storage, os.time()+3) player:remove() db.query("UPDATE `players` SET ".. v.skill .. " = " .. v.skill .. " + " .. v.incre .. " WHERE `id` = ".. pid) else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end elseif v.t == 5 then if not isInArray(v.vocations, player:getVocation():getId()) then player:sendCancelMessage(v.voc_msg) return false end if player:getSkillLevel(v.skillid) >= v.lim then player:sendCancelMessage("Você não pode comprar esse skill.") return false end if player:getItemCount(coinID) >= v.price then player:removeItem(coinID, v.price) player:setStorageValue(storage, os.time()+3) player:remove() db.query("UPDATE `players` SET ".. v.skill .. " = " .. v.skill .. " + " .. v.incre .. " WHERE `id` = ".. pid) return true else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") return false end elseif v.t == 6 then if player:getItemCount(2160) >= v.price then player:removeItem(2160, v.price) player:setSkull(SKULL_NONE) player:setSkullTime(0) player:getPosition():sendMagicEffect(CONST_ME_MAGIC_GREEN) player:sendTextMessage(MESSAGE_EVENT_ADVANCE, "Your skull and frags has been removed!") player:setStorageValue(storage, os.time()+3) db.query("UPDATE `player_deaths` SET `unjustified` = 0 WHERE `unjustified` = 1 AND `killed_by` = " .. db.escapeString(player:getName())) else player:sendCancelMessage("Você não possui a quantidade necessária para comprar.") end end end end return false end Só que da o seguinte erro: Por favor me ajudem :'(
  11. Como que faço pra colocar online para todos entrarem no Site e criarem suas contas?
  12. Só você ir em Localhost/phpmyadmin e na sua database e editar o rook sample para level 8 que alterara seus samples, se não acontecer so editar 1 por 1.
  13. Só trocar o Rook Sample que o restante também se altera... Vlw cara ja te dei meu REP Posso PM? '-' na Humildade.
  14. Funcionou perfeitamente muito obrigado , Quanto ao level também não sei, sou novato com site então estou a aprender. Reponde PM deixar trocar ideia contigo.
  15. Vlw, chegar em casa eu irei testar... amo vocês mano hahah Mas uma dúvida, quero que os players já criem seus chares com profissões como que eu deveria fazer? o Site que estou usando e o que Mitsuig posto como recomendado.
  16. Consegui resolver o problema de deixar online, agora o administrador não cria itens com comando /i, qual seria o motivo?
  17. Mano qual xammp se está usando? E qual a versão?
  18. Chegar em casa irei tentar sim, obrigado a vocês dois por estarem ajudando espero que der certo agora.
  19. Erro e no site, enfim coloquei a barra normalmente no final... E quanto a colocar elas apenas para / não tentei ainda se for isso quando chegar em casa eu irei tentar novamente.Uso Windows também, por enquanto. Usa qual xammp? So por curiosidade.
  20. Então, estou usando o TFS 64X só que não inverti nada, crio a conta suave aí depois que entra em my account da este erro.
  21. Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Strict Standards: date() [function.date]: It is not safe to rely on the system's timezone settings. Please use the date.timezone setting, the TZ environment variable or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/Sao_Paulo' for '-2.0/DST' instead in C:\xampp\htdocs\classes\account.php on line 189 Parse error: syntax error, unexpected T_PAAMAYIM_NEKUDOTAYIM in C:\xampp\htdocs\classes\databaselist.php on line 105 Quando crio uma conta e tento entrar acontece este erro, alguem ajuda a solucionar?
  22. Não funciona dan, e a pasta e 10.82 e 10.90.
  23. julhinhuu

    Video Aula

    Esse é um tutorial de compilação, preciso de um para colocar otserver online com site no XAMMP. Mesmo assm obrigado por tentar ajudar.
  24. Olá galeria do XT, tudo bem com vocês? O que eu gostaria era de uma Vídeo-aula de como colocar o meu otserver online com SITE. -TFS 1.2 -V 10.90 obs: Não conseguir achar, por favor não critique.
  25. Olá galera do XT, Boa tarde O que eu gostaria hoje era que meu npc de casamento retirasse o anel de casado ao se divorciarem e desse o broken com o look de divorcio. Exemplo: Você vê um engraved wedding ring. Fulano & Sicrano para sempre - casaram em 29 December 2015 11:39:46 . obs: Esse eles estão casados O do divorcio seria mais o menos assim: Exemplo: Você vê um broken engraved wedding ring. Fulano e Sicrano para sempre não existe - Se divorciaram em 29 December 2015 11:39:46 . Se não tiver o look não tem problema, poderia ser so o npc retirando o engraved ring e dando o broken aos jogadores. Então o script que eu uso é esse: http://www.xtibia.com/forum/topic/188712-marriage-system-npc/ Para aqueles que não quiserem entrar na pagina o script do NPC: <spoiler> domodlib('marry_func') local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) local talkState = {} 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 function creatureSayCallback(cid, type, msg) if(not npcHandler:isFocused(cid)) then return false end local talkUser = NPCHANDLER_CONVbehavior == CONVERSATION_DEFAULT and 0 or cid msg,players = string.lower(msg), {getPlayerGUID(cid)} if msgcontains(msg, 'marry') or msgcontains(msg, 'marriage') then if isMarried(cid) then npcHandler:say("Sorry, You already is wedded.", cid) elseif getPlayerStorageValue(cid, marry_config.storage3) >= 1 then npcHandler:say("you must sign the {divorce}.", cid) elseif getPlayerStorageValue(cid, marry_config.storage1) >= os.time() then local pid = getPlayerStorageValue(cid, marry_config.storage2) npcHandler:say(getPlayerNameByGUID(pid).." has set a wedding date with you. Do you want to {proceed} or {cancel} the wedding?", cid) talkState[talkUser] = 2 else npcHandler:say("Would you like to get married?", cid) talkState[talkUser] = 1 end elseif msgcontains(msg, "yes") and talkState[talkUser] == 1 then npcHandler:say("And what\'s the name of your future partner?", cid) talkState[talkUser] = 3 elseif talkState[talkUser] == 3 then local player = getPlayerByNameWildcard(msg) if(not player)then npcHandler:say(msg.." is offline or does not exist.", cid) return true elseif isMarried(player) then npcHandler:say("He already is wedded.", cid) return true elseif getPlayerStorageValue(cid, marry_config.storage3) >= 1 or getPlayerStorageValue(player, marry_config.storage3) >= 1 then npcHandler:say((getPlayerStorageValue(cid, marry_config.storage1) >= 1 and "You" or "He").." must sign the divorce.", cid) return true elseif getPlayerLevel(cid) < marry_config.Level or getPlayerLevel(player) < marry_config.Level then npcHandler:say("players must to be level "..marry_config.Level, cid) return true elseif getPlayerStorageValue(player, marry_config.storage1) >= os.time() then npcHandler:say(msg.." already have a wedding invitation, wait.", cid) return true elseif getDistanceBetween(getCreaturePosition(cid), getCreaturePosition(player)) > marry_config.MaxSqm then npcHandler:say("you are far away from each other to get married.", cid) return true elseif marry_config.OnlyDifferentSex and getPlayerSex(cid) == getPlayerSex(player) then npcHandler:say("you can only marry the opposite sex", cid) return true elseif not doPlayerRemoveMoney(cid, marry_config.Marry_Price) then npcHandler:say("Sorry, but you do not have "..marry_config.Marry_Price.." gp(s) to ask "..msg.." in marriage.", cid) return true end setPlayerStorageValue(player, marry_config.storage1,os.time()+marry_config.TimeAccept) setPlayerStorageValue(player, marry_config.storage2, getPlayerGUID(cid)) npcHandler:say("you asked "..msg.." in marriage, wait a answer!", cid) doPlayerSendTextMessage(player, MESSAGE_STATUS_CONSOLE_ORANGE,getCreatureName(cid).." asked you in marriage.") talkState[talkUser] = 0 elseif msgcontains(msg, "proceed") and talkState[talkUser] == 2 then player = getPlayerStorageValue(cid, marry_config.storage2) if getPlayerStorageValue(cid, marry_config.storage1) >= os.time() then if not isMarried(cid) then if Ponline(player) then x = getPlayerByNameWildcard(getPlayerNameByGUID(player)) if getDistanceBetween(getCreaturePosition(cid), getCreaturePosition(x)) <= marry_config.MaxSqm then table.insert(players, player) doMarry(cid, player) for i = 1, #players do local ring = doPlayerAddItem(getPlayerByNameWildcard(getPlayerNameByGUID(players[i])), marry_config.RingID, 1) doItemSetAttribute(ring, "description", getCreatureName(cid) .. " & " .. getPartner(cid) .. " forever - married on " ..getMarryDate(cid).. ".") doCreatureSay(getPlayerByNameWildcard(getPlayerNameByGUID(players[i])), marry_config.Text[math.random(1,#marry_config.Text)], TALKTYPE_ORANGE_1) doSendMagicEffect(getCreaturePosition(getPlayerByNameWildcard(getPlayerNameByGUID(players[i]))), 35) setPlayerStorageValue(getPlayerByNameWildcard(getPlayerNameByGUID(players[i])), marry_config.storage3, 1) setPlayerStorageValue(getPlayerByNameWildcard(getPlayerNameByGUID(players[i])), 150420, 1) end npcHandler:say("Congratulations! Now you may kiss your partner! to see the status of marriage enter !marriage status", cid) talkState[talkUser] = 0 else npcHandler:say("you're far away from her suitor.", cid) end else npcHandler:say("suitor offline.", cid) end else npcHandler:say("you are not married.", cid) talkState[talkUser] = 0 end else npcHandler:say("you do not received none wedding invitation.", cid) talkState[talkUser] = 0 end elseif msgcontains(msg, "cancel") and talkState[talkUser] == 2 then player = getPlayerStorageValue(cid, marry_config.storage2) if getPlayerStorageValue(cid, marry_config.storage1) >= os.time() then if not isMarried(cid) then setPlayerStorageValue(cid, marry_config.storage1, -1) npcHandler:say("You just refuse the wedding invitation from player "..getPlayerNameByGUID(player), cid) if Ponline(player) then doPlayerSendTextMessage(getPlayerByNameWildcard(getPlayerNameByGUID(player)), MESSAGE_STATUS_CONSOLE_ORANGE,getCreatureName(cid).." rejected his marriage proposal.") end else npcHandler:say("you are already married.", cid) talkState[talkUser] = 0 end else npcHandler:say("you do not received none wedding invitation.", cid) talkState[talkUser] = 0 end elseif msgcontains(msg, "divorce") then if isMarried(cid) then npcHandler:say("Would you like to divorce of your partner for "..marry_config.Divorce_Price.." gp(s) ? {yes}", cid) talkState[talkUser] = 6 elseif getPlayerStorageValue(cid, marry_config.storage3) >= 1 then npcHandler:say("you must sign here to end your marriage, ok? {yes}", cid) talkState[talkUser] = 7 else npcHandler:say("you are not married", cid) talkState[talkUser] = 0 end elseif msgcontains(msg, "yes") and talkState[talkUser] == 6 then if isMarried(cid) then if doPlayerRemoveMoney(cid, marry_config.Divorce_Price) then npcHandler:say("Congratulations, you end up divorcing from player: "..getPartner(cid), cid) setPlayerStorageValue(cid, 150420, -1) setPlayerStorageValue(cid, marry_config.storage3, -1) pguid = getPlayerGUIDByName(getPartner(cid)) if Ponline(pguid) then setPlayerStorageValue(getPlayerByNameWildcard(getPlayerNameByGUID(pguid)), 150420, -1) else db.executeQuery("DELETE FROM `player_storage` WHERE `player_id` = " .. pguid .. " AND `key` = 150420;") end doDivorcePlayer(cid) else npcHandler:say("Sorry, you do not have "..marry_config.Divorce_Price.." gp(s).", cid) end else npcHandler:say("you are not married.", cid) end elseif msgcontains(msg, "yes") and talkState[talkUser] == 7 then npcHandler:say("Congratulations, you end up divorcing.", cid) setPlayerStorageValue(cid, marry_config.storage3, -1) elseif msg == "no" and talkState[talkUser] >= 1 then selfSay("tudo bem então.", cid) talkState[talkUser] = 0 npcHandler:releaseFocus(cid) end return TRUE end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new()) <spoiler/> Aqui é o MOD, creio que onde tudo se resume ao look no ring. <spoiler> <?xml version="1.0" encoding="UTF-8"?> <mod name="MarriageSystem" version="1.0" author="Vodkart" contact="xtibia.com" enabled="yes"> <config name="marry_func"><![CDATA[ marry_config = { OnlyDifferentSex = false, Marry_Price = 300000, Divorce_Price = 100000, Level = 50, MaxSqm = 7, -- to marry Text = {'I love you!','My love!','Baby dear!'}, RingID = 10502, TimeAccept = 30, storage1 = 300235, storage2 = 300236, storage3 = 300237 } function isMarried(cid) local m = db.getResult("SELECT `player_id` FROM `marriage_system` WHERE `player_id` = '"..getPlayerGUID(cid).."';") if(m:getID() == -1) then local e = db.getResult("SELECT `partner` FROM `marriage_system` WHERE `partner` = '"..getPlayerGUID(cid).."';") if(e:getID() == -1) then return false end end return true end function isPatner(cid) local p = db.getResult("SELECT `partner` FROM `marriage_system` WHERE `player_id` = '"..getPlayerGUID(cid).."';") if(p:getID() == -1) then return true end return false end function Ponline(player) local rows = db.getResult("SELECT `online` FROM `players` WHERE `id` = " .. player .. ";") local on = rows:getDataInt("online") if on ~= 0 then return TRUE else return FALSE end end function getPartner(cid) if isPatner(cid) then a = db.getResult("SELECT `player_id` FROM `marriage_system` WHERE `partner` = '"..getPlayerGUID(cid).."';") b = "player_id" else a = db.getResult("SELECT `partner` FROM `marriage_system` WHERE `player_id` = '"..getPlayerGUID(cid).."';") b = "partner" end local query = a return getPlayerNameByGUID(query:getDataString(b)) end function doMarry(cid, patner) return db.executeQuery("INSERT INTO `marriage_system` (`player_id`, `partner`, `marriage_date`) VALUES ('".. getPlayerGUID(cid) .."', '"..patner.."', '".. os.time() .."');") end function doDivorcePlayer(cid) if isPatner(cid) then pid,player = getPlayerGUIDByName(getPartner(cid)),getPlayerByNameWildcard(getPartner(cid)) else pid,player = getPlayerGUID(cid),cid end return db.executeQuery("DELETE FROM `marriage_system` WHERE `player_id` = '" .. pid .. "';") end function getMarryDate(cid) local player = isPatner(cid) and getPlayerGUIDByName(getPartner(cid)) or getPlayerGUID(cid) local date = db.getResult("SELECT `marriage_date` FROM `marriage_system` WHERE `player_id` = '"..player.."';") return os.date("%d %B %Y %X ", date:getDataInt("marriage_date")) end ]]></config> <talkaction words="/marriage;!marriage" event="buffer"><![CDATA[ domodlib('marry_func') param = string.lower(param) if (param == "") then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"invalid command, for more information enter !marriage info") elseif(param == "info") then doShowTextDialog(cid,2160,"Marriage Info:\n\nLevel Minimum: "..marry_config.Level.."\nMarriage Cost: "..marry_config.Marry_Price.."\nDivorce Cost: "..marry_config.Divorce_Price.."\n\nMarried Players have a special buffs as a wedding gift given by the union\n\nThis bonus is only given if the married players are nearby.") elseif(param == "status") then doPlayerPopupFYI(cid,""..(isMarried(cid) and "Marriage Status".."\n\nMarried with: ["..getPartner(cid).."]\n\nThe date of his marriage was: "..getMarryDate(cid).."" or "you are not married").."") end return true ]]></talkaction> <event type="login" name="MarryRegister" event="script"><![CDATA[ function onLogin(cid) registerCreatureEvent(cid, "MarryLook") registerCreatureEvent(cid, "MarryNoAttack") return true end]]></event> <event type="look" name="MarryLook" event="script"><![CDATA[ domodlib('marry_func') function onLook(cid, thing, position, lookDistance) if isPlayer(thing.uid) and isMarried(thing.uid) then doPlayerSetSpecialDescription(thing.uid,'.\n'..(getPlayerSex(thing.uid) == 0 and 'She' or 'He')..' is married to '..getPartner(thing.uid)) end return true end]]></event> <event type="combat" name="MarryNoAttack" event="script"><![CDATA[ domodlib('marry_func') if isPlayer(cid) and isPlayer(target) and isMarried(cid) and isMarried(target) then if (getCreatureName(target) == getPartner(cid))then doPlayerSendCancel(cid, "You may not attack this player.") return false end end return true ]]></event> </mod> <spoiler/>
  • Quem Está Navegando   0 membros estão online

    • Nenhum usuário registrado visualizando esta página.
×
×
  • Criar Novo...