Histórico de Curtidas
-
bim deu reputação a Nogard em Free for use!
-
bim deu reputação a Nogard em Free for use!
-
bim deu reputação a Nogard em Free for use!kk
-
bim deu reputação a raphaelpdc em Free for use!Pode usar D:
-
bim deu reputação a Nechros em Free for use!Tutorialzinho pra fazer folhagens,
Usei essa técnica pra fazer a arvore de cima. Pode ajudar alguém
C achar q vale a pena pode dar REP++ ai, n sei pra q serve, mas pelo jeito ajuda ja q tanta gente pede haha
-
bim deu reputação a xWhiteWolf em Sistema de Auto-Facing: Vire Automaticamente para o Target ao Atacar (TFS 0.3.6)Bom galera, tem uma coisa bem simples que nem o tibia global fez e que eu to trazendo aqui pra vocês. Trata-se de um pequeno sistema que fará você sempre virar pra direção do seu target ao atacar.
Testado em TFS 0.3.6 Cliente 8.54.
Imagem auto explicativa:
Chega de atacar de costas!
Agora pra instalar é bem tranquilo. Abra um arquivo .lua em data\creaturescripts\scripts chamado target e coloque o seguinte conteudo dentro dele:
Feito isso adicione essa linha no creaturescripts.xml:
<event type="attack" name="targetCreature" script="target.lua"/> E para finalizar adicione a seguinte tag em creaturescripts\scripts\login.lua:
registerCreatureEvent(cid, "targetCreature") Espero que vcs tenham curtido, é algo bem simples mas ninguém havia pensado nisso antes (nem o próprio Tibia), é uma coisa bem básica e que torna o jogo bem mais importante e sério.
EDIT:: Usem essa versão que está mais completa, na anterior se o target estivesse na diagonal ele não virava.
-
bim deu reputação a lordzetros em Fly System com modal 1.3Introdução
Estive procurando no fórum e não encontrei esse sistema de TP para versões com modal, aliás, até achei um semelhante, só que possuía algumas instabilidades e também com uma ideia de waypoints (que estava também fazendo dessa forma, mas não vem ao caso o motivo disso não ser viável no Tibia). O que trago aqui é algo mais simples, porém o necessário.
O sistema de TP é muito importante em alguns servidores que fogem um pouco de RPG (não que seja exclusivamente para estes), ele possibilita viagens de um local para outro em instantes, como por exemplo, do Templo para o Depot ou para qualquer outra localização configurada no script (a seu gosto). Uma coisa adicional que coloquei no script, foi de listar também a house do jogador que utilizar o comando, onde você poderá configurar se será necessário pagar ou não para o mesmo ser teleportado, enfim, dê uma olhada no código depois, tá tudo comentado.
Informações do sistema
- Locais configuráveis
- Configurável se é necessário pagar ou não para determinado local
- Configurável a quantidade de dinheiro de cada local
- Condições ao utilizar o comando (Protect Zone e tempo para utilizar o comando novamente)
- É requisitado o jogador está possuindo a quantia necessária para o teleport
Instalação
1 - crie um arquivo chamado teleportSystem.lua em data/talkactions/scripts/ e cole o código abaixo:
2 - Em seguida, cole este trecho de código em data/talkactions/talkactions.xml abaixo de algum semelhante:
3 - Agora crie um arquivo chamado modalTpSystem.lua em data/creaturescripts/scripts/ e cole o código abaixo nele:
4 - E para finalizar, cole este código em data/creaturescripts/creaturescripts.xml abaixo de um semelhante:
Explicação do script
A única coisa que você vai mexer é no teleportSystem, onde terá a opção de configurar os preços, locais, etc.
Configurando as houses:
houses_modal = Se será habilitado o player teleportar para a house dele
house_pago = Se será pago o teleport para a house
house_custo = Custo do teleport para a house, caso seja pago
Configurando o local:
nome = Nome do local a ser mostrado na janela
pago = Se ele vai ser pago ou não, coloque false caso queira que não cobre nada do jogador
custo = Caso tenha colocado como pago, o custo do teleport para o local
pos = Posição do local (X,Y,Z)
Quando for adicionar outro, copie esta mesma parte acima e altera o número [3] para [4] e os outros dados também, assim por diante.
O restante também tá explicado no script, basta ler.
Demonstração
UTILIZE O COMANDO !fly
Enfim, script simples, tem para outras versões, mas como falei, não tinha encontrado ainda para 1.x com esse funcionamento. Qualquer coisa, só comentar, .
-
bim deu reputação a ViitinG em Item que teleporta o player para housePara quem não sabe como funciona o script : O player usa um certo item e se ele for dono de alguma house ele será teleportado para ela.
• Adicionando o script •
Em "data/actions/scripts/tphouse.lua" :
function onUse(cid, item, fromPosition, itemEx, toPosition) if hasCondition(cid, CONDITION_INFIGHT) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe,voce esta em batalha.") end if getPlayerLevel(cid) < getConfigInfo("levelToBuyHouse") then return doPlayerSendCancel(cid, "Sorry, not possible.") end if not getHouseByPlayerGUID(getPlayerGUID(cid)) then return doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Desculpe voce nao tem house.") end doTeleportThing(cid, getHouseEntry(getHouseByPlayerGUID(getPlayerGUID(cid)))) doRemoveItem(item.uid, 1) return true end Em "data/actions/actions.xml" :
<action itemid="7722" event="script" value="tphouse.lua"/> Créditos :
MaXwEllDeN por ajudar em algumas funções.
• Configurando •
-
bim deu reputação a ViitinG em [action] Canoa em MovimentoBom para quem não sabe,este é um script que faz o character andar em conjunto com a canoa.(você pode configurar a rota)
(Testado em TFS 0.3.6 e TFS 0.2.14)
Como criar :
Adicione a actionid 6901 no meio da canoa.
Onde a canoa deve ir você coloca o itemid 4820.
Você tem que usar as bordas com o mesmo ID que está nas configurações endborders.
"data/actions/actions.xml" :
(TFS 0.3/0.4)
<action actionid="6901" event="script" value="other/movingboat.lua"/> (TFS 0.2/1.0)
<action actionid="6901" script="other/movingboat.lua"/> "data/actions/scripts/movingboat.lua" :
local config = { endborders = {4644, 4646}, speed = 300, ignorefirstborders = 3 } local fight = createConditionObject(CONDITION_INFIGHT) setConditionParam(fight, CONDITION_PARAM_TICKS, -1) local function comparePos(poss, pos) return pos.x == poss.x and pos.y == poss.y end local n, s = 0, 0 local function getRightPos(poss, last) ps = { {x = poss.x, y = poss.y - 1, z = poss.z}, {x = poss.x + 1, y = poss.y, z = poss.z}, {x = poss.x, y = poss.y + 1, z = poss.z}, {x = poss.x - 1, y = poss.y, z = poss.z} } for _, pos in pairs(ps) do if(getTileItemById(pos, 4820).uid > 0) then if(not comparePos(last, pos)) then p = pos return p end else for b = 1, #config.endborders do if(getTileItemById(pos, config.endborders[b]).uid > 0 and s > config.ignorefirstborders) then n = n + 1 p = pos return p and n end end end end end local function doTravel(cid, poss, last) getRightPos(poss, last) travel = p.x > poss.x and "east" or (p.y < poss.y and "north" or (p.y > poss.y and "south" or (p.x < poss.x and "west" or "false"))) if n > 1 then p = poss end if(travel == "false") then if(getCreatureCondition(cid, CONDITION_INFIGHT)) then doRemoveCondition(cid, CONDITION_INFIGHT) end n = 0 s = 0 return false end local des = { ["north"] = {cPos = {{x = p.x, y = p.y - 1, z = p.z}, p, {x = p.x, y = p.y + 1, z = p.z}}, dir = 0, boat = {3587, 3589, 3591}}, ["east"] = {cPos = {{x = p.x + 1, y = p.y, z = p.z}, p, {x = p.x - 1, y = p.y, z = p.z}}, dir = 1, boat = {3596, 3594, 3592}}, ["south"] = {cPos = {{x = p.x, y = p.y + 1, z = p.z}, p, {x = p.x, y = p.y - 1, z = p.z}}, dir = 2, boat = {3591, 3589, 3587}}, ["west"] = {cPos = {{x = p.x - 1, y = p.y, z = p.z}, p, {x = p.x + 1, y = p.y, z = p.z}}, dir = 3, boat = {3592, 3594, 3596}} } local x = des[travel] if(x) then for x = p.x - 2, p.x + 2 do for y = p.y - 2, p.y + 2 do pos = {x = x, y = y, z = p.z} for id = 3587, 3596 do if(getTileItemById(pos, id).uid > 0) then doRemoveItem(getTileItemById(pos, id).uid, 1) end end end end for c = 1, #x.boat do its = doCreateItem(x.boat[c], 1, x.cPos[c]) if(n > 0 and c == 2) then doSetItemActionId(its, 6901) end end doTeleportThing(cid, x.cPos[2], false) doCreatureSetLookDir(cid, x.dir) if(n > 1) then if(getCreatureCondition(cid, CONDITION_INFIGHT)) then doRemoveCondition(cid, CONDITION_INFIGHT) end n = 0 s = 0 return false end s = s + 1 end return addEvent(doTravel, config.speed, cid, p, poss) end function onUse(cid, item, fromPosition, itemEx, toPosition) if(getCreatureCondition(cid, CONDITION_INFIGHT)) then return doPlayerSendCancel(cid, "You can't travel when you're in a fight.") end doTeleportThing(cid, toPosition) doAddCondition(cid, fight) doTravel(cid, getPlayerPosition(cid), getPlayerPosition(cid)) return true end "data/movements/movements.xml" :
(TFS 0.3/0.4)
<movevent type="StepIn" itemid="4820" event="script" value="water.lua"/> (TFS 0.2/1.0)
<movevent event="StepIn" itemid="4820" script="water.lua"/> "data/movements/scripts/water.lua" :
local boatids = {3589, 3594} function onStepIn(cid, item, position, fromPosition) for _, id in pairs(boatids) do if(getTileItemById(fromPosition, id).uid > 0) then return doTeleportThing(cid, fromPosition) end end return true end Se você usa TFS 0.3/0.4, adicione isto em "data/lib/050-function.lua" (se você ja não tiver).
function doSetItemActionId(uid, actionid) return doItemSetAttribute(uid, "aid", actionid) end Creditos :
99% - Limos o/.
1% - ViitinG.
-
bim deu reputação a Fir3element em [0.3.6pl1] Atacar e usar runa ao mesmo tempo & usar runa enquanto corre1. Atacar com a arma e usar runa ao mesmo tempo.
Em player.cpp, procure por:
else if((!weapon->hasExhaustion() || !hasCondition(CONDITION_EXHAUST, EXHAUST_COMBAT)) && weapon->useWeapon(this, tool, attackedCreature)) Troque por:
else if(!weapon->hasExhaustion() && weapon->useWeapon(this, tool, attackedCreature)) 2. Usar runa enquanto corre.
Em player.cpp, remova essa linha:
setNextAction(OTSYS_TIME() + getStepDuration(dir)); Créditos: Xellath