Ir para conteúdo

DuuhCarvalho

Posts Recomendados

​Sabe quando um player te trapa e não tem escapatória, Aqui a solução .


Ao usar x item no Player Você troca de Posição com Ele .



​Claro que também não pode dar moleza pra quem foi traped .


Você só pode usar o item a cada X minutos.


E você só pode usar o item se não tiver com Skull.



vamos lá ..


em data / actions / scripts,


crie um arquivo.lua



e cole isso dentro :



function onUse(cid, item, fromPosition, itemEx, toPosition)

local time = 1 -- tempo por minuto
local storage = 1961 -- storage


local pos = getCreaturePosition(cid)
local pos2 = getCreaturePosition(itemEx.uid)
if isPlayer(itemEx.uid) then
if getDistanceBetween(pos, pos2) == 1 then
if getPlayerStorageValue(cid, storage) - os.time() <= 0 then
if getCreatureSkullType(cid) == SKULL_NONE then
doTeleportThing(cid, pos2)
doTeleportThing(itemEx.uid, pos)
doSendMagicEffect(pos, 4)
doSendMagicEffect(pos2, 4)
setPlayerStorageValue(cid, storage, os.time()+time*1*60)
else
doPlayerSendCancel(cid, "Você está com Skull.")
end
else
doPlayerSendCancel(cid, "Você só pode usar esse item denovo a "..time.." Minutos.")
end
else
doPlayerSendCancel(cid, "Você está muito longe do jogador.")
end
else
doPlayerSendCancel(cid, "Você só pode usar este item em Players.")
end
return TRUE
end

e em Actions.xml coloque a tag :



<action itemid="IDdoItem" script="NomeDoArquivo.lua"/>

Editado por DuuhCarvalho
Link para o comentário
Compartilhar em outros sites

não e muito bom Porque tira a War, mas pode ser bem útil em um Server Global, já que o Global também aderiu a esse item.

 

para não tirar tanto assim a war , o player só pode usar se não tiver skull, pq se caso ele for trapado Red ele vai morrer !

Link para o comentário
Compartilhar em outros sites

tem que colocar para checar se ele está mesmo trapado e não pode se mexer, porque só com skull ele vai poder bugar muita coisa, quest's ou houses

 

depois eu faço isso .

 

Mais ele so consegui usar o item se tiver do lado do player.

se tiver longe não funfa .

Link para o comentário
Compartilhar em outros sites

 

tem que colocar para checar se ele está mesmo trapado e não pode se mexer, porque só com skull ele vai poder bugar muita coisa, quest's ou houses

 

depois eu faço isso .

 

Mais ele so consegui usar o item se tiver do lado do player.

se tiver longe não funfa .

 

 

longe quer dizer o que? uma tela ? ele pode passar nas portas, paredes, etc... coloca outra função para checar se o player está na frente dele(até um limite de 2 sqm por exemplo)

 

 

if getDistanceBetween(pos, pos2) > 2 then
doPlayerSendCancel(cid, "Você pode usar este item até 2 sqm longe do jogador.") return true
end
Link para o comentário
Compartilhar em outros sites

 

 

tem que colocar para checar se ele está mesmo trapado e não pode se mexer, porque só com skull ele vai poder bugar muita coisa, quest's ou houses

 

depois eu faço isso .

 

Mais ele so consegui usar o item se tiver do lado do player.

se tiver longe não funfa .

 

 

longe quer dizer o que? uma tela ? ele pode passar nas portas, paredes, etc... coloca outra função para checar se o player está na frente dele(até um limite de 2 sqm por exemplo)

if getDistanceBetween(pos, pos2) > 2 then
doPlayerSendCancel(cid, "Você pode usar este item até 2 sqm longe do jogador.") return true
end

 

editei lá o post .

é que na verdade o item que eu usei so podia da user no player se tivesse ao lado dele. nem 2 nem 3 sqm a mais.

Mais creio que outros items podiam dar use de longe, com essa função que você mandou não tem perigo , Thanks ><

Link para o comentário
Compartilhar em outros sites

Oie, tenho essa spell que pode te ajudar em algo talvez, quando usada e o target está perto de você os dois trocam de lugar.

 

Spells.xml

<instant name="Anti Trap" words="Utevo Help" lvl="100" mana="500" prem="1" range="1" needtarget="1" exhaustion="10000" blockwalls="1" needlearn="1" event="script" value="Anti Trap.lua">
<vocation id="X"/>
</instant>

Anti Trap.lua

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 7)
function onCastSpell(cid, var)
local jogadorpos = getCreaturePosition(cid)
local target = getCreatureTarget(cid)
local monsterpos = getCreaturePosition(target)
if isPlayer(target) then
doTeleportThing(cid,monsterpos)
doTeleportThing(target,jogadorpos)
doSendMagicEffect(jogadorpos, 65)
doSendMagicEffect(monsterpos, 65)
return doCombat(cid, combat, var)
else
doPlayerSendTextMessage(cid,20,'You can only use it on creatures')
return doCombat(cid, combat, var)
end
end

Editado por biancasouza
Link para o comentário
Compartilhar em outros sites

 

Oie, tenho essa spell que pode te ajudar em algo talvez, quando usada e o target está perto de você os dois trocam de lugar.

 

Spells.xml

<instant name="Anti Trap" words="Utevo Help" lvl="100" mana="500" prem="1" range="1" needtarget="1" exhaustion="10000" blockwalls="1" needlearn="1" event="script" value="Anti Trap.lua">
<vocation id="X"/>
</instant>

Anti Trap.lua

local combat = createCombatObject()
setCombatParam(combat, COMBAT_PARAM_TYPE, COMBAT_FIREDAMAGE)
setAttackFormula(combat, COMBAT_FORMULA_LEVELMAGIC, 5, 5, 4, 7)
function onCastSpell(cid, var)
local jogadorpos = getCreaturePosition(cid)
local target = getCreatureTarget(cid)
local monsterpos = getCreaturePosition(target)
if isPlayer(target) then
doTeleportThing(cid,monsterpos)
doTeleportThing(target,jogadorpos)
doSendMagicEffect(jogadorpos, 65)
doSendMagicEffect(monsterpos, 65)
return doCombat(cid, combat, var)
else
doPlayerSendTextMessage(cid,20,'You can only use it on creatures')
return doCombat(cid, combat, var)
end
end

 

 

brigado por tentar ajudar .

Mais isso não é um pedido ou uma duvida e sim um Script de Actions. rsrs , fofs ><

Editado por DuuhCarvalho
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...