frerety 7 Postado Abril 9, 2006 Share Postado Abril 9, 2006 O que significam as funções? OBS01.: Axu q jah tah completu, si eu lembrar outros eu edito OBS02.: Ty Colex pelo apoio e pelas correções. OBS03.: Se você estiver procurando por uma função específica, digite Ctrl + F e irá abrir uma janela. Digite o nome da função e clique em "Localizar Próxima" function onUse(cid, item, frompos, item2, topos)cid => Player que usou o item item => Item que foi usado frompos => Posição do item usado item2 => Quando usa o item em outro item ou player (Ex: runas) topos => Posição onde o item foi usado Stackposposition = {x=111, y=111, z=7, stackpos=?} stackpos = 0 -- mexe com xão stackpos = 1 -- mexe com algum item emcima du xão stackpos = 2 -- mexe com um item ke ta emcima de outro item stackpos = 3 -- mexe num item ke ta em cima de 2 items stackpos = 4 --- etc... stackpos = 253 mexe com player ou monstros stackpos = 255 mexe com fields PS.: Ty Colex!(tuto de stackpos by colex) doChangeTypeItem sintaxe => doChangeTypeItem(uid,novo_tipo) ação => Muda o tipo de um item por exemplo em runas com cargas. exemplo: -- Remove 1 carga de uma runa (item.uid) doChangeTypeItem(item.uid,item.type-1) doCreateItem sintaxe => doCreateItem(itemid,quantidade_ou_cargas,position) ação => Cria um item com um certo numero de cargas(runas) ou quantidade na posição selecionada. exemplo: -- Cria uma uh de 99x na posição selecionada(topos). doCreateItem(2273,99,topos) doDecayItem sintaxe => doDecayItem(uid) ação => Começar o tempo de "volta" para o item anterior. exemplo1: -- Iniciar o tempo de "volta" para o item anterior. doDecayItem(item.uid) exemplo2: -- Exemplo (machete) doDecayItem(). function onUse(cid, item, frompos, item2, topos) if item2.itemid == 2782 then doTransformItem(item2.uid,item2.itemid-1) doDecayItem(item2.uid) else return 0 end return 1 end doPlayerAddHealth sintaxe => doPlayerAddHealth(uid,health) ação => Remove Life do player quando e negativo caso contrario aumenta o life. exemplo1: -- Adiciona 100 de life ao player quando ele usar o objeto. doPlayerAddHealth(cid,100) exemplo2: -- Remove 100 de life do player quando ele usar o objeto. doPlayerAddHealth(cid,-100) OBS => Por mais que você tire life do player com essa action, o player não morre, ele sempre fica com 1 de life exemplo3: -- Um player tem 100 de life doPlayerAddHealth(cid,-200) -- aki ele ficará com 1 de life, não morrerá doPlayerAddItem sintaxe => doPlayerAddItem(uid,itemid,Carga _ou_quantidade) ação => Cria um item no inventario do player se possível caso contrario, embaixo dele. exemplo1: -- Dar uma magic Sword Para o player. doPlayerAddItem(cid,2400,1) exemplo2: -- Quest chest if item.uid == 5002 then queststatus = getPlayerStorageValue(cid,5000) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a magic sword.") doPlayerAddItem(cid,2400,1) setPlayerStorageValue(cid,5000,1) else doPlayerSendTextMessage(cid,22,"The chest is empty.") end end doPlayerAddMana sintaxe => doPlayerAddMana(uid,mana) ação => Remove Mana do Player caso seja valor negativo e adiciona caso seja positivo exemplo1: -- Adiciona 100 de mana para o player quando ele usar o objeto. doPlayerAddMana(cid,100) exemplo2: -- Remove 100 de mana quando o player usar o objeto doPlayerAddMana(cid,-100) doPlayerAddSkillTry sintaxe => doPlayerAddSkillTry(uid,skillid,numero) ação => Adiciona uma Try de skill ao player, quando try e um hit q o player de em um monstro por exemplo. lista: 0, Fist. 1, Club. 2, Sword. 3, Axe. 4, Distance. 5, Shielding. 6, Fishing. exemplo1: -- Adiciona 5 "tryes" de fist ao player. doPlayerAddSkillTry(cid,0,5) exemplo2: -- Fishing com skills up function onUse(cid, item, frompos, item2, topos) if item2.itemid == 618 then fishingskill = getPlayerSkill(cid,6) formula = fishingskill /200+0.85* math.random() if formula > 0.65 then doTransformItem(item2.uid,619) doDecayItem(item2.uid) doSendMagicEffect(topos,1) doPlayerAddSkillTry(cid,6,2) doPlayerAddItem(cid,2667,1) else doSendMagicEffect(topos,1) doPlayerAddSkillTry(cid,6,1) end elseif item2.itemid == 619 or item2.itemid == 620 then doSendMagicEffect(topos,1) end return 1 end doPlayerFeed sintaxe => doPlayerFeed(uid,food) ação => Adiciona um tempo em segundos em que o player recuperara life e mana(comida) exemplo1: -- Adicionar um tempo de 120 segundos. doPlayerFeed(cid,120) exemplo2: -- Food script function onUse(cid, item, frompos, item2, topos) max_food = 1024 if item.itemid == 2667 then food = 120 elseif item.itemid == 2671 then food = 240 end if getPlayerFood(cid) + food > max_food then doPlayerSendCancel(cid,"You are full.") else doPlayerFeed(cid,food) doRemoveItem(item.uid,1) end return 1 end doPlayerRemoveItem sintaxe => doPlayerRemoveItem(uid,itemid,count) ação => Remove um item do inventario do player exemplo: -- Remove um item de id 2400 do inventório do player doPlayerRemoveItem(cid,2400,1) doPlayerRemoveMoney sintaxe => doPlayerRemoveMoney(uid,money) ação => Remove um valor X de dinheiro do player exemplo: -- Remove 100 gold from the players inventory. doPlayerRemoveMoney(cid,100) doPlayerSay sintaxe => doPlayerSay(uid,text,type) ação => Faz o player falar uma msg. exemplo: -- Enviar uma msg normal. doPlayerSay(cid,"Hello world!",2) doPlayerSendCancel sintaxe => doPlayerSendCancel(uid,text) ação => Envia a msg branca embaixo da tela( You cannot use this object) exemplo: -- Envia uma msg escrita Desculpe mas isso n e possível. doPlayerSendCancel(cid,"desculpe mas isso n e possível.") doPlayerSendTextMessage sintaxe => doPlayerSendTextMessage(uid,MessageClasses,message) ação => Envia diferentes tipos de mensagem ao player. exemplo: -- SEnvia uma msg vermelha no meio da tela para o player. doPlayerSendTextMessage(cid,22,"Hello world!") doPlayerSetMasterPos sintaxe => doPlayerSetMasterPos(uid,pos) ação => Seta uma nova MasterPos (posição do templo) ao player. exemplo: -- Posição do novo templo newpos = {x=20, y=20, z=7} -- atualizar a posição. doPlayerSetMasterPos(cid,newpos) doPlayerSetVocation sintaxe => doPlayerSetVocation(uid,voc) ação => Setar uma nova Vocação ao player. lista: 1, Sorcerer. 2, Druid. 3, Paladin. 4, Knight. exemplo: -- Mudar a vocaçao do player para 1. doPlayerSetVocation(cid,1) doRemoveItem sintaxe => doRemoveItem(item_id,numero) ação => Remover items, so e possivel remover um por tile(exemplo 40 bolts e etc). exemplo: -- Remover 5 items dessa posiçao. (Power bolts etc) doRemoveItem(item.uid,5) doSendMagicEffect sintaxe => doSendMagicEffect(position,type) ação => Fazer um efeito magico. exemplo: -- Enviar efetosinhu de fumaça para a posiçao(topos). doSendMagicEffect(topos,2) doSetItemActionId sintaxe => doSetItemActionId(uid,actionid) ação => Indicar o action id de um item. exemplo1: -- Colocar actionID 5020 no item. doSetItemActionId(item.uid,5020) exemplo2: -- Exemplo em loot de quest function onUse(cid, item, frompos, item2, topos) if item.uid == 5020 then queststatus = getPlayerStorageValue(cid,5020) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a silver key.") key = doPlayerAddItem(cid,2088,1) doSetItemActionId(key,5020) setPlayerStorageValue(cid,5020,1) else doPlayerSendTextMessage(cid,22,"It is empty.") end end return 1 end doSetItemSpecialDescription sintaxe => doSetItemSpecialDescription(uid,description) ação => Colocar um descrição especial em um item de quest por exemplo. exemplo1: -- Colocar uma descrçao especia no item quando o mesmo for usado. doSetItemSpecialDescription(item.uid,"Hello world!") exemplo2: -- exemplo em quest function onUse(cid, item, frompos, item2, topos) if item.uid == 3000 then queststatus = getPlayerStorageValue(cid,3000) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a pair of magic boots.") boots = doPlayerAddItem(cid,2640,1) doSetItemActionId(boots,3000) doSetItemSpecialDescription(boots, "This boots are magical.") setPlayerStorageValue(cid,3000,1) else doPlayerSendTextMessage(cid,22,"It is empty.") end end return 1 end doSetItemText sintaxe => doSetItemText(item.uid,"texto") --- para usar a função da tecla "enter" escrever \n ação => Adiciona um texto a um objeto exemplo: doSetItemText(item.uid,"aew\neste livro tem texto.") -- Aparecerá: aew este livro tem texto. doShowTextWindow sintaxe => doShowTextWindow(item.uid,numero_de_letras,editavel) ---- nu editavel é 0 para não poder alterar e 1 para poder alterar ação => Abre uma janela com o texto que está setado em um objeto exemplo: doShowTextWindow(item.uid,500,1) --- este sera editavel com direito a 500 caracteres doSendAnimatedText sintaxe => doSendAnimatedText(position,text,color) ação => Fazer um efeito animado no client do tibia. (Semelhante a perder hp ou ganhar exp) exemplo: -- Mandar um efeito em vemelho escrito 100. doSendAnimatedText(frompos,100,180) doSummonCreature sintaxe => doSummonCreature("nome", posiçao) ação => Sumonar uma criatura. exemplo: -- Summonar um demon para a posição na qual o item foi usado. doSummonCreature("Demon",topos) doTeleportThing sintaxe => doTeleportThing(uid,newpos) ação => Teleportar um item/player para uma nova posição exemplo1: -- Teleportar o player para a posição q o item foi usado. doTeleportThing(cid,topos) exemplo2: -- Teleportar player function onUse(cid, item, frompos, item2, topos) if item2.itemid == 0 then doPlayerSendCancel(cid,"Sorry, not possible.") else if getPlayerAccess(cid) == 3 then playerpos = getPlayerPosition(cid) doTeleportThing(cid,topos) doSendMagicEffect(playerpos,2) doSendMagicEffect(topos,10) else doPlayerSendCancel(cid,"You are not allowed to use this rune.") end end return 1 end doTransformItem sintaxe => doTransformItem(uid,toitemid) ação => Transformar um item em outro exemplo1: -- Trasformar o item usado no item 2400. doTransformItem(item.uid,2400) exemplo2: -- Ex. alavanca function onUse(cid, item, frompos, item2, topos) if item.itemid == 1946 then doTransformItem(item.uid,item.itemid-1) elseif item.itemid == 1945 then doTransformItem(item.uid,item.itemid+1) end return 1 end getPlayerAccess sintaxe => getPlayerAccess(uid) ação => Pegar o Access do Player. exemplo1: -- Pegar o nível de aceso do player. getPlayerAccess(cid) exemplo2: -- Apenas players de access 1 ou + podem usar o item function onUse(cid, item, frompos, item2, topos) if getPlayerAccess(cid) >= 1 then doTransformItem(item.uid,2400) else doPlayerSendCancel(cid,"Sorry, not possible.") end return 1 end getPlayerFood sintaxe => getPlayerFood(uid) ação => Pega o status da food do player exemplo: -- Pegar o status da food do player getPlayerFood(cid) getPlayerGuildId sintaxe => getPlayerGuildId(uid) ação => Pega o id da guild do player. exemplo: -- Pegar o id da quild do player getPlayerGuildId(cid) getPlayerHealth sintaxe => getPlayerHealth(uid) ação => Pegar a quantidade de life do player. exemplo: -- Pega o life do player para alguma ação(se a vida for maior ou igual a 500, no caso abaixo) if getPlayerHealth(cid) >= 500 then getPlayerLevel sintaxe => getPlayerLevel(uid) ação => Pega o level do player exemplo: -- Pegar o level do player para acontecer algo se o lvl for maior q 30. if getPlayerLevel(cid) >= 30 then getPlayerMagLevel sintaxe => getPlayerMagLevel(uid) ação => Pega o ML do Player exemplo: -- Pegar o ml do player. getPlayerMagLevel(cid) getPlayerMana sintaxe => getPlayerMana(uid) ação => Pega a mana atual do player(não a completa) exemplo: -- Pegar o valor atual da mana. getPlayerMana(cid) getPlayerMasterPos sintaxe => getPlayerMasterPos(uid) ação => Pegar a MasterPos do player (posição do templo) exemplo: -- Pegar a MasterPos do Player. getPlayerMasterPos(cid) getPlayerName sintaxe => getPlayerName(uid) ação => Pega o nome do Player exemplo: -- Pegar o nome do Player. getPlayerName(cid) getPlayerPosition sintaxe => getPlayerPosition(uid) ação => Pega posição atual do Player exemplo: -- Pegar a posição atual do Player. getPlayerPosition(cid) getPlayerSkill sintaxe => getPlayerSkill(uid,skillid) ação => Pega o skill atual do Player lista: 0, Fist 1, Club 2, Sword 3, Axe 4, Distance 5, Shielding 6, Fishing exemplo: -- Pegar o skill de fist do Player. getPlayerSkill(cid,0) getPlayerStorageValue sintaxe => getPlayerStorageValue(uid,valueid) ação => Pegar o "Storage Value" do player(usado em quests, vide exemplo) exemplo1: -- Obter a informçao da quest 5000. getPlayerStorageValue(cid,5000) exemplo2: -- Exemplo do getPlayerStorageValue() (num baú de quest). if item.uid == 5002 then queststatus = getPlayerStorageValue(cid,5000) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a magic sword.") doPlayerAddItem(cid,2400,1) setPlayerStorageValue(cid,5000,1) else doPlayerSendTextMessage(cid,22,"The chest is empty.") end end setPlayerStorageValue sintaxe => setPlayerStorageValue(uid,valueid, newvalue) ação => Atualizar o numero do Storage Value exemplo1: -- Mudar o StorageValue da quest n° 5000 para 1. setPlayerStorageValue(cid,5000,1) exemplo2: -- Exemplo do setPlayerStorageValue() em um baú de quest if item.uid == 5002 then queststatus = getPlayerStorageValue(cid,5000) if queststatus == -1 then doPlayerSendTextMessage(cid,22,"You have found a magic sword.") doPlayerAddItem(cid,2400,1) setPlayerStorageValue(cid,5000,1) else doPlayerSendTextMessage(cid,22,"The chest is empty.") end end getPlayerVocation sintaxe => getPlayerVocation(uid) ação => Pega a Vocação do Player exemplo: -- Obter a Vocação do Player. getPlayerVocation(cid) getThingfromPos sintaxe => getThingfromPos(pos) ação => Seleciona um item que está na posição especificada exemplo1: -- Adquirir informações da posiçao. geti = getThingfromPos(topos) exemplo2: -- Checar se o uniqueID do item q esta na posição e 5000. if geti.uid == 5000 then code end getTilePzInfo sintaxe => getTilePzInfo(pos) ação => Retorna 1 se o tile for PZ e 0 se não for PZ PZ => Protection zone (templos, dps, houses) exemplo1: -- Checar se o Tile e pz. getTilePzInfo(topos) exemplo2: -- Exemplo do getTilePzInfo() num simples script de remoçao -- A action funciona só se o player estiver fora d um pz function onUse(cid, item, frompos, item2, topos) if getPlayerMagLevel(cid) >= 4 then ipos = {x=topos.x, y=topos.y, z=topos.z, stackpos=255} geti = getThingfromPos(ipos) if geti.itemid > 0 then if getTilePzInfo(topos) == 0 then doSendMagicEffect(topos,2) doRemoveItem(geti.uid,100) if item.type > 1 then doChangeTypeItem(item.uid,item.type-1) else doRemoveItem(item.uid,1) end else doSendMagicEffect(frompos,2) doPlayerSendCancel(cid,"This action is not allowed in protection zone.") end else doSendMagicEffect(frompos,2) return 0 end else doSendMagicEffect(frompos,2) doPlayerSendCancel(cid,"You don't have the required magic level to use that rune.") end return 1 end Como colocar texto em um livro arquivo.lua function onUse(cid, item, frompos, item2, topos)doSetItemText(item.uid,"Texto do livro!") doShowTextWindow(item.uid,100,0) -- Qualquer dúvida procure pelas respectivas funções return 1 end Caso você não saiba criar actions, olhe os seguintes tutoriais, ambos do Colex: .:. Tutorial de Actions 01 .:. .:. Tutorial de Actions 02 .:, .:. Tutorial de Actions 03 .:. Espero que vocês aproveitem porque isso deu um trabalho! ^^ FlW CyA! Link para o comentário Compartilhar em outros sites More sharing options...
colex 8 Postado Abril 9, 2006 Share Postado Abril 9, 2006 (editado) ta legal u tuto mas tem um errinhu doPlayerSendTextMessagesintaxe => doPlayerSendTextMessage(uid,MessageClasses,message) ação => Envia diferentes tipos de mensagem ao player. exemplo: -- SEnvia uma msg vermelha no meio da tela para o player. doPlayerSendTextMessage(cid,2,"Hello world!") doPlayerSendTextMessage(cid,2,"Hello world!") 2 é msg amarela doSetItemText: doSetItemText(item.uid,"texto") --- para usar a função da tecla "enter" escrever \n exemplo: doSetItemText(item.uid,"aew\neste livro tem texto.") doShowTextWindow: doShowTextWindow(item.uid,numero_de_letras,editavel) ---- nu editavel é 0 para não e 1 para sim exemplo: doShowTextWindow(item.uid,500,1) --- este sera editavel com direito a 500 caracteres issu é só pra naum ficar akelas parte incompleta gratz pelo trabalhu Editado Maio 18, 2006 por colex Link para o comentário Compartilhar em outros sites More sharing options...
#pico# 0 Postado Maio 18, 2006 Share Postado Maio 18, 2006 ta GRandeee :PP nao li tudo mais pelo que li ta bem explicado ^^ Link para o comentário Compartilhar em outros sites More sharing options...
Rikezenho 2 Postado Maio 18, 2006 Share Postado Maio 18, 2006 Muito boa a lista de funções, Só recomendo deixar em negrito cada função. Por exemplo: doSendMagicEffect: Blablablabla blablablabla Fica mais organizado e fácil de achar ^^ Flws! Link para o comentário Compartilhar em outros sites More sharing options...
maxdash 0 Postado Junho 12, 2006 Share Postado Junho 12, 2006 frerety ou colex ... to com uma duvida neste "doShowTextWindow" tpw.... se ja pois o tanto de letras e se pode ou nao ser mexido, mas onde eu ponho o texto q aparecerá nakela telinha preta d livros ??? ajudem ae plz ... flws ... abraço Link para o comentário Compartilhar em outros sites More sharing options...
colex 8 Postado Junho 12, 2006 Share Postado Junho 12, 2006 frerety ou colex ...to com uma duvida neste "doShowTextWindow" tpw.... se ja pois o tanto de letras e se pode ou nao ser mexido, mas onde eu ponho o texto q aparecerá nakela telinha preta d livros ??? ajudem ae plz ... flws ... abraço <{POST_SNAPBACK}> ta la dizendo como nesta parte: doSetItemTextsintaxe => doSetItemText(item.uid,"texto") --- para usar a função da tecla "enter" escrever \n ação => Adiciona um texto a um objeto exemplo: doSetItemText(item.uid,"aew\neste livro tem texto.") -- Aparecerá: aew este livro tem texto.doSetItemText sintaxe => doSetItemText(item.uid,"texto") --- para usar a função da tecla "enter" escrever \n ação => Adiciona um texto a um objeto exemplo: doSetItemText(item.uid,"aew\neste livro tem texto.") -- Aparecerá: aew este livro tem texto. (usando esse comando o book pode ter texto predefinido por voce) cya~~ Link para o comentário Compartilhar em outros sites More sharing options...
maxdash 0 Postado Junho 12, 2006 Share Postado Junho 12, 2006 blz. ... vlw ae colex .. eu tava tentando faze essa action usando o seu action maker mas eh mtu dificil qdo vc tive um tempim, posta um tuto das funçoes do seu action maker plz !!! xD brigadao ae ... vo tenta faze aki ... qlq coisa t pesso ajuda sera q tem como se posta uma action assim ??? do começo ao fim? pronta. nao to conseguindo cara ... por favor vlw ... flws Link para o comentário Compartilhar em outros sites More sharing options...
Dark-X 10 Postado Junho 12, 2006 Share Postado Junho 12, 2006 Demorei 3 horas lendo minha vista meio embaçada .mais isso nao tem nada a ver com o casa,cara seu tuto ta muito rox,mais tipo arruma ae o que o colex falo porque aqui nao ta dando certo e pode ser isso ae que o colex ta mensionando ae em cima. Da um olhada la ;D Obrigado Dark-X Link para o comentário Compartilhar em outros sites More sharing options...
frerety 7 Postado Junho 12, 2006 Autor Share Postado Junho 12, 2006 HiHo! @Dark-X Por favor, seja mais específico, não entendi a dúvida: ... arruma ae o que o colex falo porque aqui nao ta dando certo ... ^^... Se for de como colocar texto em livros, leia no final, irei editar e colocar um script de exemplo. Espero ter ajudado FlW CyA! Link para o comentário Compartilhar em outros sites More sharing options...
Jvchequer 63 Postado Julho 11, 2007 Share Postado Julho 11, 2007 Movido para a seção de Tutoriais. Atenciosamente, JV Link para o comentário Compartilhar em outros sites More sharing options...
Muadogib 1 Postado Agosto 11, 2007 Share Postado Agosto 11, 2007 excelente, nota 10, ajudou a lot, valeu Link para o comentário Compartilhar em outros sites More sharing options...
GM Volcano 1 Postado Agosto 13, 2007 Share Postado Agosto 13, 2007 (editado) Pow cara...sempre procurei sobre essas parada de stackpos... Achei! =P Vlws mesmo, mereceu o fixo.... ^^ Sugestão: Adicionar ai um tuto do AddEvents(axo q eh assim q screve..) Abraço //RayaN Editado Agosto 13, 2007 por GM Volcano Link para o comentário Compartilhar em outros sites More sharing options...
leo_itachi 0 Postado Outubro 29, 2007 Share Postado Outubro 29, 2007 cara muito bom APROVADO Link para o comentário Compartilhar em outros sites More sharing options...
brunohenriq 1 Postado Dezembro 29, 2007 Share Postado Dezembro 29, 2007 super rox nem tenho palavras ajudo mto Link para o comentário Compartilhar em outros sites More sharing options...
SaMuOT 0 Postado Janeiro 14, 2008 Share Postado Janeiro 14, 2008 Show de Bola... tava precisando... VLW AI.... flw Link para o comentário Compartilhar em outros sites More sharing options...
Posts Recomendados