-
Total de itens
706 -
Registro em
-
Última visita
-
Dias Ganhos
10
Tudo que DevilMoon postou
-
[Patrimônio XTibia] Sua última Foto - Mapping
tópico respondeu ao Feyzer de DevilMoon em Mapping Show-Off
Tava Esperando um Download e Fiz isso no Rme .. Tou Apredendo nao Zoem -
Ataa Aprendi.................... é que eu nao sabia q éra com o Botao do Mause Direito vlww!! REP++
-
Cara Primeiramente o Npc Foi Criada Pela Equipe do Tibia!! Coloque Os Creditos ao Tibia..
-
Cara da sim... tenta adicionar assim no seu login.lua blessing.login(cid) Ou Assim bless.login(cid) Ou Voce Adicionou Errado no Seu Login.lua..
-
link kebrado ageita ai!
-
Data>Npc crie uma pasta.xml chamada The Oracle e coloca isso dentro: <npc name="The Oracle" floorchange="0" walkinterval="0"> <health now="150" max="150"/> <look typeex="1448"/> <interaction range="3" idletime="30"> <interact keywords="hi" focus="1"> <!--These are the keywords will trigger this interaction--> <keywords>hello</keywords> <keywords>greet</keywords> <response> <action name="script"> <![CDATA[ if(getPlayerLevel(cid)) >= 8 then selfSay(getCreatureName(cid) .. ", ARE YOU PREPARED O FACE YOUR DESTINY?") _state.b1 = (isPremium(cid) == TRUE) _state.topic = 1 else selfSay("CHILD! COME BACK WHEN YOU HAVE GROWN UP!") _state.isidle = true end ]]> </action> </response> </interact> <interact keywords="yes" topic="1"> <!--Premium account, b1 is set in above--> <response b1="1" text="IN WHICH TOWN DO YOU WANT TO LIVE: CARLIN, EDRON, THAIS, OR VENORE?"> <action name="topic" value="2"/> </response> <!--Normal account--> <response text="IN WHICH TOWN DO YOU WANT TO LIVE: CARLIN, THAIS, OR VENORE?"> <action name="topic" value="2"/> </response> </interact> <interact keywords="carlin" topic="2"> <response text="IN CARLIN! AND WHAT PROFESSION HAVE YOU CHOSEN: KNIGHT, PALADIN, SORCERER, OR DRUID?"> <!--n1: 1 = carlin, 2 = edron, 3 = thais, 4 = venore--> <action name="script"> <![CDATA[ _state.n1 = 2 _state.topic = 3 ]]> </action> </response> </interact> <interact keywords="thais" topic="2"> <response text="IN THAIS! AND WHAT PROFESSION HAVE YOU CHOSEN: KNIGHT, PALADIN, SORCERER, OR DRUID?"> <!--n1: 1 = carlin, 2 = edron, 3 = thais, 4 = venore--> <action name="script"> <![CDATA[ _state.n1 = 5 _state.topic = 3 ]]> </action> </response> </interact> <interact keywords="venore" topic="2"> <response text="IN VENORE! AND WHAT PROFESSION HAVE YOU CHOSEN: KNIGHT, PALADIN, SORCERER, OR DRUID?"> <!--n1: 1 = carlin, 2 = edron, 3 = thais, 4 = venore--> <action name="script"> <![CDATA[ _state.n1 = 1 _state.topic = 3 ]]> </action> </response> </interact> <interact keywords="edron" topic="2"> <response text="YOU NEED A PREMIUM ACCOUNT IN ORDER TO GO THERE!"> <!--Set the topic back to 2, ie. choose a new town.--> <action name="topic" value="2"/> </response> <!--b1: premium account, see <interact keywords="hi" focus="1"> where _state.b1 is is set.--> <response b1="1" text="IN EDRON! AND WHAT PROFESSION HAVE YOU CHOSEN: KNIGHT, PALADIN, SORCERER, OR DRUID?"> <!--n1: 1 = carlin, 2 = edron, 3 = thais, 4 = venore--> <action name="script"> <![CDATA[ _state.n1 = 9 _state.topic = 3 ]]> </action> </response> </interact> <!--If the player does not say any city, repeat our question--> <interact keywords="|*|" topic="2"> <response b1="1" text="CARLIN, EDRON, THAIS, OR VENORE?"/> <response text="CARLIN, EDRON, THAIS, OR VENORE?"/> </interact> <interact keywords="sorcerer" topic="3"> <response text="A SORCERER! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!"> <!--n2: 1 = sorcerer, 2 = druid, 3 = paladin, 4 = knight--> <action name="script"> <![CDATA[ _state.n2 = 1 _state.topic = 4 ]]> </action> </response> </interact> <interact keywords="druid" topic="3"> <response text="A DRUID! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!"> <!--n2: 1 = sorcerer, 2 = druid, 3 = paladin, 4 = knight--> <action name="script"> <![CDATA[ _state.n2 = 2 _state.topic = 4 ]]> </action> </response> </interact> <interact keywords="paladin" topic="3"> <response text="A PALADIN! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!"> <!--n2: 1 = sorcerer, 2 = druid, 3 = paladin, 4 = knight--> <action name="script"> <![CDATA[ _state.n2 = 3 _state.topic = 4 ]]> </action> </response> </interact> <interact keywords="knight" topic="3"> <response text="A KNIGHT! ARE YOU SURE? THIS DECISION IS IRREVERSIBLE!"> <!--n2: 1 = sorcerer, 2 = druid, 3 = paladin, 4 = knight--> <action name="script"> <![CDATA[ _state.n2 = 4 _state.topic = 4 ]]> </action> </response> </interact> <!--If the player does not say any profession, repeat our question--> <interact keywords="|*|" topic="3"> <response text="KNIGHT, PALADIN, SORCERER, OR DRUID?"/> </interact> <interact keywords="yes" topic="4"> <response> <!--n1: 1 = carlin, 2 = edron, 3 = thais, 4 = venore--> <!--n2: 1 = knight, 2 = paladin, 3 = sorcerer, 4 = druid--> <action name="script"> <![CDATA[ local pos = 0 if(_state.n1 == 1) then pos = {x=32957, y=32076, z=7} elseif(_state.n1 == 2) then pos = {x=32360, y=31782, z=7} elseif(_state.n1 == 5) then pos = {x=32369, y=32241, z=7} elseif(_state.n1 == 9) then pos = {x=33217, y=31814, z=8} else selfSay("I DO NOT KNOW WHAT PROFESSION THAT IS, ASK THE GODS FOR GUIDANCE!") return end selfSay("SO BE IT!") doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) if(doTeleportThing(cid, pos) == 0) then doPlayerSetTown(cid, _state.n1) doPlayerSetVocation(cid, _state.n2) doSendMagicEffect(getCreaturePosition(cid), CONST_ME_TELEPORT) end ]]> </action> <action name="idle" value="1"/> </response> </interact> <interact keywords="bye" focus="0"> <keywords>farewell</keywords> <response text="Good bye. Recommend us, if you were satisfied with our service."/> </interact> <interact event="onBusy"> <response text="WAIT UNTIL IT IS YOUR TURN!"> <action name="addqueue" value="|PLAYER|"/> </response> </interact> <!--This event triggers if the player goes to far away from the npc/logout/idle timeout--> <interact event="onPlayerLeave" focus="0"> <response text="COME BACK WHEN YOU ARE PREPARED TO FACE YOUR DESTINY!"/> </interact> </interaction> </npc> Abraços..
-
Fato cara Alguns nao Posta Merd@ Nenhuma!! So se Esforça para Pegar a Vaga 2 ou 3 Semanas max 1 Mes de Trabalho dps Para!! Concordo Com ele 100%!!
-
a com ele vivo! Por Isso que ta dando o erro!
-
qal seu servidor vou fazer um download dele e testar ate funcionar!! e ir ageitando tbm!! Abraços..
-
Hmm, eu liguei nesses erros so que eu ia fazer para min tipow qalquer voc ia virar uma vocation vip '-' e nao Vip Kina e etc.. Mais se for para usar nesse tipo como o vodkart falo, é muinto simplisinho!!
-
ãn Nao entendi nada cara e foi esse mesmo tutorial que eu vi e n consigui!!
-
Ja li Todos os Tutoriais Aqui do Xtibia e Nao Consigo !! Alguem tem Como me Explica mais bem explicadinho em Ss's.. ou ate video ;P REP+ Para qm ajudar!! Abraços..
-
Muinto Bom cara Pode feichar o Topico!! REP+ !! (Como Disse o Won agora os Moderadores vao dar Rep+ e eu ja bati o meu limite) Vlw Abraços..
-
Muinto Bom Cara, Estava Pensando em Fazer algo Assim agora nao preciso Mais!! REP+
-
Todos Monstros tem como Sumonar pelo /m!!
-
Voce esta tentando pegar ele morto ou vivo?
-
QUERO GANHAR UMA CAMISAAAAAA DO XTIBIAAAAAAAAAAAAAAA AAAAA EU QUERO!! @Topic Muinto Bom Xtibia Sempre Melhorando!!! Agora Estara Bem Melhor!! Abraços..
-
o Seguinte.. Voce ataka o Monstro e o pet ataka so que ele solta as spells automaticamente!! Abraços..
-
Ola Xtibianos, Vejo Muintas Pessoas Com Problemas em Seus Pets como Eu!! Entao decidi Achar um Para minha TFS 0.3.4 e Achei um Perfeitinho e Quis Compartilhar a Galera Xtibiana!! Comandos: !pet summon !pet buy Cat !pet release !pet move !pet say Começando: Vá em Data>Talkactions.xml Adicione Isso: <talkaction words="!pet" script="pet.lua"/> Agora em Data>Talkactions>Scripts crie uma pasta.lua chamada pet e coloque isso: local PET = -- CONFIG -- { -- storages name = 7700, petuid = 7701, online = 7702, damage = 7703, allowed = { -- allowed pets, costs & level required ["cat"] = {cost = 50, level = 1}, ["dog"] = {cost = 50, level = 1}, ["deer"] = {cost = 50, level = 1}, ["pig"] = {cost = 50, level = 1}, ["parrot"] = {cost = 50, level = 1}, ["seagull"] = {cost = 50, level = 1}, ["chicken"] = {cost = 50, level = 1}, ["rabbit"] = {cost = 50, level = 1}, ["squirrel"] = {cost = 50, level = 1}, ["frog"] = {cost = 50, level = 1}, ["rat"] = {cost = 50, level = 1}, ["sheep"] = {cost = 100, level = 1}, ["wolf"] = {cost = 300, level = 8}, ["skeleton"] = {cost = 300, level = 15}, ["war wolf"] = {cost = 1000, level = 20}, ["demon skeleton"] = {cost = 3000, level = 25} }, direction = {["up"] = NORTH, ["down"] = SOUTH, ["right"] = EAST, ["left"] = WEST}, -- used with !pet move help = { -- used with !pet say "Type '!pet summon' to summon your pet.", "Type '!pet buy [petname]' to buy a pet. e.g. '!pet buy war_wolf'", "Type '!pet move [direction]' to ask your pet to move.", "Type '!pet say \"text' to ask your pet to say something.", "Type '!pet release' to release your pet." } } function petHelp(p) doPlayerSendTextMessage(p.cid, 19, PET.help[p.i]) end function onSay(cid, words, param) local p = {""} if param ~= "" then p = string.explode(param, " ") end local petuid = getPlayerStorageValue(cid, PET.petuid) local online = getPlayerStorageValue(cid, PET.online) if p[1] == "help" then for i = 1, #PET.help do addEvent(petHelp, 1000*i - 1000, {i = i, cid = cid}) end elseif p[1] == "summon" then local name = getPlayerStorageString(cid, PET.name) if isCreature(petuid) == FALSE then if online == 1 then local tile = getClosestFreeTile(cid, getThingPos(cid), FALSE, FALSE) if getTilePzInfo(getThingPos(cid)) ~= 1 and getTilePzInfo(tile) ~= 1 then if name ~= "" then if getMonsterInfo(name) ~= nil then petuid = doSummonCreature(name, tile) doConvinceCreature(cid, petuid) doCreatureSay(petuid, 'hey, sup', TALKTYPE_ORANGE_1) doChangeSpeed(petuid, getCreatureBaseSpeed(cid) - getCreatureBaseSpeed(petuid)) setPlayerStorageValue(cid, PET.online, 2) setPlayerStorageValue(cid, PET.petuid, petuid) doPlayerSendCancel(cid, 'Summoning '..name..'.') if getPlayerStorageValue(cid, PET.damage) > 0 then if getPlayerStorageValue(cid, PET.damage) < getCreatureMaxHealth(petuid) then doCreatureAddHealth(petuid, getPlayerStorageValue(cid, PET.damage)*-1) end end else doPlayerSendCancel(cid, 'Invalid pet name.') end else doPlayerSendCancel(cid, 'Invalid pet name.') end else doPlayerSendCancel(cid, 'You may not summon your pet here.') end else doPlayerSendCancel(cid, 'You do not have a pet. Type !pet <pet name> to get one.') end else setPlayerStorageValue(cid, PET.damage, getCreatureMaxHealth(petuid) - getCreatureHealth(petuid)) doCreatureSay(petuid, 'gtg, cya', TALKTYPE_ORANGE_1) doSendMagicEffect(getThingPos(petuid),CONST_ME_POFF) doRemoveCreature(petuid) doPlayerSendCancel(cid, 'Retrieving '..name..'.') setPlayerStorageValue(cid, 7702, 1) end elseif p[1] == "buy" then local text if p[2] ~= nil then name = string.gsub(p[2], "_", " ") if (isCreature(petuid) ~= TRUE and online == 2) or online <= 0 then if PET.allowed[name] ~= nil then if getPlayerLevel(cid) >= PET.allowed[name].level then if getPlayerMoney(cid) >= PET.allowed[name].cost then doPlayerRemoveMoney(cid, PET.allowed[name].cost) setPlayerStorageValue(cid, PET.online, 1) setPlayerStorageValue(cid, PET.damage, 0) setPlayerStorageString(cid, PET.name, name) text = "You have bought a pet \""..name.."\" for "..PET.allowed[name].cost.." gold coins." else text = "You do not have enough money. It costs "..PET.allowed[name].cost.." gold coins to buy a "..name.."." end else text = "You need level "..PET.allowed[name].level.." to buy this pet." end else text = "You may not buy that pet." end else text = "You already have a pet." end else text = "!pet buy [petname]" end if text ~= nil then doPlayerSendTextMessage(cid, 19, text) end elseif p[1] == "move" then if isCreature(petuid) == TRUE then if p[2] ~= nil then if PET.direction[p[2]] ~= nil then if doTileQueryAdd(petuid, getPosByDir(getThingPos(petuid), PET.direction[p[2]], 1)) == 1 then doMoveCreature(petuid, PET.direction[p[2]]) else doPlayerSendCancel(cid, 'Tile is blocked.') end else doPlayerSendCancel(cid, '!pet move [up/down/left/right]') end else doPlayerSendCancel(cid, '!pet move [up/down/left/right]') end else doPlayerSendCancel(cid, 'Summon a pet first.') end elseif p[1] == "say" then text = string.explode(param, "\"") if isCreature(petuid) == TRUE then if text[2] ~= nil then if string.len(text[2]) < 39 then doCreatureSay(petuid, text[2], TALKTYPE_ORANGE_1) else doPlayerSendCancel(cid, 'Too long text.') end else doPlayerSendCancel(cid, '!pet say "I am '..getCreatureName(cid)..'\'s pet.') end else doPlayerSendCancel(cid, 'Summon a pet first.') end elseif p[1] == "release" then if isCreature(petuid) == TRUE and getPlayerStorageValue(cid, PET.online) == 2 then doCreatureSay(petuid, ':\'(', TALKTYPE_ORANGE_1) doSendMagicEffect(getThingPos(petuid),CONST_ME_POFF) doRemoveCreature(petuid) doPlayerSendCancel(cid, 'Releasing '..name..'.') setPlayerStorageValue(cid, 7702, 1) end setPlayerStorageValue(cid, PET.online, 2) setPlayerStorageValue(cid, PET.damage, 0) doPlayerSendTextMessage(cid, 19, "You have released your pet \""..name.."\".") setPlayerStorageString(cid, PET.name, "") else doPlayerSendTextMessage(cid, 19, "!pet [help/summon/buy/move/say/release]") end return TRUE end Ok Acabamos com as Talkactions agora vá em Data>CreatureEvents.xml e Adicione Isso: Obs: ( Caso Ja Ouver a Pasta Logout.lua Delete Tudu dela e Coloque a Nova ) <event type="logout" name="logout" event="script" value="logout.lua"/> Agora vá em Data>CreatureEvents>Scripts crie uma pasta.lua chamada logout e coloque isso: local petuidstor = 7701 -- storages, have to be same as your other script. local onlinestor = 7702 local damagestor = 7703 function onLogout(cid) if isCreature(getPlayerStorageValue(cid, petuidstor)) == 1 then if getPlayerStorageValue(cid, onlinestor) == 2 then local petuid = getPlayerStorageValue(cid, petuidstor) setPlayerStorageValue(cid, damagestor, getCreatureMaxHealth(petuid) - getCreatureHealth(petuid)) doSendMagicEffect(getThingPos(petuid),CONST_ME_POFF) setPlayerStorageValue(cid, onlinestor, 1) end end return TRUE end Abra a pata login.lua que se localiza em Data>CreatureEvents>Scripts abra ela e coloque isso: registerCreatureEvent(cid, "logout") Agora para Finalizar vá em Data>Lib>Function.lua e Acresente Isso: string.explode = function (str, sep) local pos, t = 1, {} if #sep == 0 or #str == 0 then return end for s, e in function() return str:find(sep, pos) end do table.insert(t, str:sub(pos, s - 1):trim()) pos = e + 1 end table.insert(t, str:sub(pos):trim()) return t end _warpzone = 2147483648 -- start storing strings here (THIS IS THE ABSOLUTE MAXIMUM VALUE FOR THIS) _maxlength = 1024 -- multiply by 3 to get the true length. setPlayerStorageInteger = setPlayerStorageValue getPlayerStorageInteger = getPlayerStorageValue function setPlayerStorageString(cid, key, value) if #value > (_maxlength-1) * 3 - 1 then -- Last word is reserved for 0 termination of the string. error("Storage string is too long") end if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local word = 0 local wordwrap = 0 local wordcount = 0 local i = 1 while i <= #value do local byte = string.byte(string.sub(value, i, i)) word = bit.bor(word, bit.lshift(byte, wordwrap)) wordwrap = wordwrap + 8 if wordwrap == 24 then --[[ In the ideal world we would be able to store 4 characters per word, however, as the default return value for getPlayerStorageValue is -1, we can't use the last bit. ]]-- setPlayerStorageInteger(cid, key + wordcount, word) word = 0 wordwrap = 0 wordcount = wordcount + 1 end i = i + 1 end -- store the last word setPlayerStorageInteger(cid, key + wordcount, word) end function getPlayerStorageString(cid, key) if key > _warpzone / _maxlength then error("Storage string key is too large (" .. key .. ")") end key = _warpzone + key * _maxlength local wordcount = 0 local str = "" while true do if wordcount >= _maxlength then break end local word = getPlayerStorageInteger(cid, key + wordcount) if word == -1 then -- end of string break else -- Extract the 3 characters from the value byte = bit.band(word, 255) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 65280), 8) if byte == 0 then break else str = str .. string.char(byte) end byte = bit.rshift(bit.band(word, 16711680), 16) if byte == 0 then break else str = str .. string.char(byte) end end wordcount = wordcount + 1 end return str end Obs²: Delete Todos Arquivos de Pets System Velhos para nao Causar nem um Bug!! Creditos: jordanhenry. Sugestoes, Duvidas Somente neste Topico!! Abraços..
-
Tente fazer Assim nao sei se da Certo!! Data>CreatureEvent>Scripts Acha Login.lua e Adicione isso: blessing.login(cid) Por Acaso se Tiver Logout.lua Adicione Isso La tambem: blessing.logout(cid) E Em PlayerDeath.lua Adicione Isso: blessing.die(cid) Nao testado Ainda!! Talvez esta Parte esteja Errada!! Abraços..
-
Exclui..Pode mandar @Edit n deu o crack mais dexa!!
-
Como Sempre o Henrique Apanhando Kkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk Brinks
-
Deu Exclui pode Mandar..
-
Seguinte ta Pedindo License (RK) Para fazer o Downloads dos Drivers..
-
Muinto Bom Cara REP+ (dou amanha ja to com o limite) Obs: Nao poderia Mudar a Cor, Botar um Efeito no DevilMoon, sei la a Letra, ou a Fonte nao Combino com o Texto!!
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.