
Tudo que xWhiteWolf postou
-
Logout desmontar automaticamente!
não era isso que eu esperava kkkkk não tem nenhum comando de entendimento um pouco mais simplificado? passa seu script de mount aí
-
(Resolvido)Heal Small Basin
qnd alguém te responder clique em "Melhor resposta" para que o tópico seja dado como resolvido e possa ajudar outros que possuam a mesma dúvida, obrigado.
-
(Resolvido)[AJUDA] Mount Doll / Addon Doll / Stamina Refiller , todas do TFS 1.0
eu te ajudaria também se eu entendesse oque é cada uma dessas coisas aí... explica melhor oque vc quer amigo, eu não jogo tibia a uns 6 anos
-
[PEDIDO] Npcs Msg :c
isso você define no próprio script de npc: local keywordHandler = KeywordHandler:new() local npcHandler = NpcHandler:new(keywordHandler) NpcSystem.parseParameters(npcHandler) 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
-
Logout desmontar automaticamente!
tem alguma função pra desmontar e checar montaria? se tiver é só adicionar ela no login.lua do creaturescripts: if estámontado then desmontar end
- (Resolvido)[AJUDA] Como Mudar A Cor Da Magia "Correr"
-
(Resolvido)Heal Small Basin
nao testei local quantity = 500 function onUse(cid, item, frompos, item2, topos) if item.itemid == 1481 then local pos = getPlayerPosition(cid) doCreatureAddHealth(cid, quantity, 1) doCreatureAddMana(cid, quantity, 1) doSendMagicEffect(topos,13) doSendAnimatedText(pos, "+"..quantity , TEXTCOLOR_GREEN) doCreatureSay(cid, "Ahhh.....", 19) else end return 1 end e no actions.xml adiciona: <action uniqueid="6894" script="coalbasin.lua"/> daí é só colocar a uniqueid no coal que vc queira q dê vida e mana e editar no script a quantidade que dá de ambos. Lembre de editar no script o item.id do coal que vc for utilizar: no caso eu to usando o 1481 mas vc pode editar qualquer um ali dentro do script
-
(Resolvido)Castle 24Hrs
xWhiteWolf respondeu ao post em um tópico de tiago.bordin1988 em Suporte Tibia OTServer (Resolvidos)foi exatamente assim q eu tinha feito: local storage_guild = getGlobalStorageValue(123123) -- A storage configurada em Castle.lua local pos = {x = 160, y = 54, z = 7} function onStepIn(cid, item, position, fromPosition) if isPlayer(cid) == TRUE then if getPlayerGuildId(cid) ~= storage_guild then doTeleportThing(cid, pos) doSendMagicEffect(getThingPos(cid), 37) doPlayerSendTextMessage(cid, 22, "You no longer have acess to the castle!") end end return TRUE end o problema é que, segundo o Max, só funciona quando dá reload. Meu server não tem sistema de guild e nem players então não consegui testar mas não vejo porque daria errado, mas a AnaPaula tinha feito um update no próprio script de castle (num outro tópico) em que ao apertar a alavanca ele verifica de uma dada pos até a outra (toda a area correspondida entre as duas pontas da diagonal) se tinha algum player, se tivesse mandava pro templo (arrumando assim o script do castle da forma que ele pediu) O problema seria se houvessem areas que só os players do castle pudessem acessar e tivesse algum player nessas áreas, se ele não saísse ele poderia ficar lá pra sempre. EDIT: EIS OQUE O MAX ME RESPONDEU DPS DE EU PASSAR O SCRIPT PRA ELE:
-
[Pedido] Castle 24h
tem um tópico embaixo desse na categoria de ajuda que tá o script inteiro e ainda melhorado pra remover o pessoal da guild anterior quando uma nova guild conquista. Usem o search galera..
-
(Resolvido)[AJUDA] Como Mudar A Cor Da Magia "Correr"
até onde eu sei você tem que ir no config.lua e colocar pra não sair nada qnd a spell for conjurada. Daí você tem que editar spell por spell e adicionar isso daqui nelas: doCreatureSay(uid, text, 19) sendo uid o unique id da criatura que irá falar, text sendo o texto que ela vai falar (no caso o nome da magia) e 19 é a cor (laranja que nem os monstros)
-
(Resolvido)Castle 24Hrs
xWhiteWolf respondeu ao post em um tópico de tiago.bordin1988 em Suporte Tibia OTServer (Resolvidos)o Max veio com essa mesma dúvida via PM e eu tentei ajudar ele, acontece que o storage é Global, e não um storage do player. O movements funciona perfeitamente, o unico problema é que pelo storage ser global é necessário um reload no movements pra que dê certo. Contudo a Ana (no próprio tópico do max) adicionou uma parte no script que remove todo mundo de dentro da posição do castle.
-
[DUVIDA] Alavanca que teleporta e dá Item!
vc edita a posição ali do piso, qnd usar o script vai chamar a posição do player.. se ele tiver na posição certa teleporta. OBS: editei e coloquei a stackpos, podia ser isso... testa agora e me fala oque deu
-
NPC Dicer
gostei, agora entendi oque ele quis dizer mas acho q vc deveria colocar um if pra verificar uma quantidade máxima e após ganhar, a quantidade máxima (para aquele player) se tornasse igual ao maior valor já ganho. Podia começar com 10k e a cada vez que ganhasse ele retornasse o valor do premio e salvasse num storage, daí se o valor do storage fosse maior que 10k, o máximo que ele poderia apostar é igual ao valor do storage.
-
[DUVIDA] Alavanca que teleporta e dá Item!
não testei: nexus.lua local pos = {x=221, y=117, z=7, stackpos=253} --- pos inicial local posfinal = {x=160, y=54, z=7, stackpos=253} --- pos final local idholly = 7494 -- id da holly watter local iditemfinal = YYYY -- id do item final da INQ function onUse(cid, item, frompos, item2, topos) if item2.itemid == iditemfinal and getPlayerItemCount(cid, idholly) >= 1 then local position = getCreaturePosition(cid) if position == pos then doTeleportThing(cid, posfinal, TRUE) doPlayerRemoveItem(cid, idholly, 1) doSendMagicEffect(topos,13) else doPlayerSendTextMessage(cid,22,"You're not near Nexus.") return false end else doPlayerSendTextMessage(cid,22,"You need to have ".. getItemNameById(idholly).." to proceed here.") end return true end substitua o YYYY pelo id do item final da inquis q vc citou anteriormente <action itemid="7494" script="nexus.lua"/>
-
(Resolvido)[Npc] não está funcionando
a melhor forma de fazer isso seria colocando um creaturescript onKill pra esse monstro mas isso ia fazer com que qualquer monstro q vc matasse com esse nome te desse o storage da quest, dessa forma q e eu coloquei mesmo se o cara morrer ou não matar o monstro ele consegue o premio depois local nomeMonst = "Danger ice" -- Nome do mosntro que ele vai sumonarlocal itemid = 2160 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 if getPlayerStorageValue(cid, 9755) == -1 then if(msgcontains(msg, 'yes')) then selfSay('Mate este monstro para completar sua tarefa.', cid) doCreateMonster(nomeMonst,getThingPos(cid)) setPlayerStorageValue(cid, 9755,1) talkState[talkUser] = 1 end return true end if getPlayerStorageValue(cid, 9755) == 1 then selfSay('Você matou o monstro e ganhou um item.', cid) doPlayerAddItem(cid, itemid,1) setPlayerStorageValue(cid, 9755,2) talkState[talkUser] = 0 return true end if getPlayerStorageValue(cid, 9755) == 2 then selfSay('Você já fez esta tarefa.', cid) talkState[talkUser] = 0 return true end return true end npcHandler:setCallback(CALLBACK_MESSAGE_DEFAULT, creatureSayCallback) npcHandler:addModule(FocusModule:new())
-
[Pedido] Evento The Walking Dead
não to com tempo pra fazer algo tão complexo mas é só fazer os monstros e criar função onKill no creature scripts, cada zumbi normal dá um value no mesmo storage, daí o final do evento era só pegar quem tem o maior storage. (essa é a unica parte dificil). As invasões dos zumbis dá pra fazer por uma raid controlada, daí é só fazer a talkaction do GM pra ativar essa raid. Se alguém tiver alguma ideia de como faz pra pegar quem tem o maior valor de storage no server me avisa porque eu não sei.
-
Castle
use o 'pesquisar' na próxima, o sistema mais plagiado do tibia é o sistema de castle '-' http://www.tibiaking.com/forum/topic/8016-castle-war-20/
-
teleporte que da XP
cara, isso vai bugar seu server porque a unica forma de remover exp é por database. Em todo caso se vc ainda tiver interessado é só fazer um movements on step in e colocar actionid no teleporte de entrada, ao pisar e depois uma outra actionid no teleporte de saida local storage = 37783 setPlayerStorageValue(cid, storage, getPlayerExperience(cid)) local amount = (getExperienceForLevel(getPlayerLevel(cid)+1))/2 doPlayerAddExperience(cid, amount). Depois vc tem que criar outro script que (tenta colocar -amount no playeraddExperience, se não der certo faz isso daqui abaixo) local playerid = getPlayerGUID(cid) local storage = 37783 local exp = getPlayerStorageValue(cid, storage) db.executeQuery("UPDATE `players` SET `experience` = "..exp.." WHERE `id` = "..playerid) perceba que eu não coloquei 50% de exp, eu coloquei pra adicionar metade da exp que ele precisa pra upar, isso porque se você fizer o player upar pode dar erro no script (daí vc teria que salvar o level dele num storage também e setar o level igual eu fiz com a exp)
-
Castle
1- cria um castle e coloca uma sala de teleporte pras areas de hunt, como só quem é do castle vai conseguir acessar a room, só a guild que ganhou vai poder utilizar as áreas. 2- Pra colocar no castle pra só as guilds vencedoras conseguirem entrar é só colocar um script que checa o globalstorage == getPlayerGuildId, daí no seu script de castle vc coloca a linha que pega o PlayerGuildId e seta o value de GetGlobalStorageValue de numero XXXXX pra getPlayerGuildId
-
(Resolvido)[duvida] meu ot...
Prontinho -- script by Marcryzius D'evil. function onSay(cid, words, param) config = { level=100000, -- level necessario pra reseta. RemainingLvl=100, -- level que ficará depois de ser resetado. exper=4200, -- experiencia que ficará depois de ser resetado. pid=getPlayerGUID(cid), -- não mecha skull="yes", -- players com white skull podem resetar? ("yes" or "no"). redskull="yes", -- players com red skull podem resetar? ("yes" or "no"). prot="yes", -- players precisam estar em protection zone pra resetar? ("yes" or "no"). bat="yes" --players precisam estar sem fight pra resetarem? ("yes" or "no"). } function getResets(cid) reset = getPlayerStorageValue(cid,1020) if reset < 0 then reset = 0 end return reset end if(config.skull == "no") and (getCreatureSkullType(cid) == 3) then doPlayerSendTextMessage(cid,22,"apenas players sem white skull podem resetar.") return TRUE end if(config.redskull == "no") and (getCreatureSkullType(cid) == 4) then doPlayerSendTextMessage(cid,22,"apenas player sem red skull podem resetar.") return TRUE end if(config.prot == "yes") and (getTilePzInfo(getCreaturePosition(cid)) == FALSE) then doPlayerSendTextMessage(cid,22,"você precisa estar em protection zone pra poder resetar.") return TRUE end if(config.bat == "yes") and (getCreatureCondition(cid, CONDITION_INFIGHT) == TRUE) then doPlayerSendTextMessage(cid,22,"você precisa estar sem battler pra poder resetar.") return TRUE end if getPlayerLevel(cid) >= config.level then setPlayerStorageValue(cid,1020,getResets(cid)+1) doPlayerPopupFYI(cid,"you now was reset, you have "..getResets(cid)+(1).." reset\'s.") doTeleportThing(cid, getTownTemplePosition(getPlayerTown(cid))) doRemoveCreature(cid) db.executeQuery("UPDATE `players` SET `description` = ' [Reset: "..getResets(cid)+(1).."]' WHERE `players`.`id` = "..config.pid) db.executeQuery("UPDATE `players` SET `level` = "..config.RemainingLvl..", `experience` = "..config.exper.." WHERE `id` = "..config.pid) else doPlayerSendCancel(cid, "You need to have level "..config.level.." or more you may be reset.") doSendMagicEffect(getPlayerPosition(cid), CONST_ME_POFF) end return TRUE end
-
(Resolvido)[duvida] meu ot...
posta o script da talkaction aqui que eu ja arrumo pra ti pra ele colocar na descrição o numero de resets. Outra coisa, seu server é que versão?
-
(Resolvido)[duvida] meu ot...
que sistema de reset vc usa? é por npc/talkaction ou é uma lib com a função addReset? me responde isso q eu te ajudo
-
(Resolvido)[magia] Minha magia...
usa doCreatureAddHealth(cid, 6000) e doCreatureAddMana(cid, 6000). É bem mais fácil doque criar combat, a menos que vc utilize uma fórmula e chame um callback pra essa fórmula
-
Script De outift
eu tenho 2 provas essa semana então eu só vou deixar aqui a "dica" pra você ou pra quem for tentar te ajudar: Procure alguns scripts de outfit aqui pelo fórum e edite eles pra eles virarem um movements, daí é só brincar com function onStepIn e funtion onStepOut pra dar e tirar o outfit;
-
[PEDIDO] Npc que muda o nome do palayer
cria essa talkaction e coloca o npc pra executar ela http://www.tibiaking.com/forum/topic/16596-talkaction-comando-name-mudar-nome-de-char/ boa sorte