Ir para conteúdo
  • 0

Ao pissar no tile CADA vocaçao GANHA UM ITEM


Wiihtop

Pergunta

galera estou fazendo um ot mt loco, como eu nao sei colocar para cada org começar com tal item, eu pretendo pelo movements faser um script que cada vocação que passar nele ganha "tal item"

agradeço s2

Link para o comentário
Compartilhar em outros sites

9 respostass a esta questão

Posts Recomendados

  • 0

srry ,

esqueci de setar a storage .

 

function onStepIn(cid, item, pos)


 local items = {
  [1] = {voc = 1, itemId = 2160, count = 100},
  [2] = {voc = 2, itemId = 2160, count = 70},
  [3] = {voc = 3, itemId = 2160, count = 50},
  [4] = {voc = 4, itemId = 2160, count = 20}
}


if getPlayerStorageValue(cid, 10937) <= 0 then


 for i = 1, #items do
   
   if getPlayerVocation(cid) == items[i].voc then
     doPlayerAddItem(cid, items[i].itemId, items[i].count)
     doPlayerSendCancel(cid, "Você ganhou um item.")
     setPlayerStorageValue(cid, 10937, 1)
   end
  
 end 


end


 return true
end
Link para o comentário
Compartilhar em outros sites

  • 0
function onStepIn(cid, item, pos)

 local items = {
  [1] = {voc = 1, itemId = 2160, count = 100},
  [2] = {voc = 2, itemId = 2160, count = 70},
  [3] = {voc = 3, itemId = 2160, count = 50},
  [4] = {voc = 4, itemId = 2160, count = 20}
}

if getPlayerStorageValue(cid, 10937) <= 0 then

 for i = 1, #items do
   
   if getPlayerVocation(cid) == items[i].voc then
     doPlayerAddItem(cid, items[i].itemId, items[i].count)
     doPlayerSendCancel(cid, "Você ganhou um item.")
   end
  
 end 

end

 return true
end

 

 

 

 

 

 

 

 

obs: quando deixar online , ou colocar pra download , não esquece de colocar 50% de creditos do Xtibia. rssrs zueira

 

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

  • 0

duu to com um erro ? tu me ajuda ?

quando eu to fora do protection zone e uso em alguem que esta em pz mesmo assim ele é teleportado :/ me ajuda ?

 

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


local position = {x = 1045, y = 1048, z = 4} -- pos pra onde sera levado o cara
local mana = 10000
local lv = 200



local temp = {
exhausted = 600, --delay
storage = 301 -- storage
}




if getPlayerLevel(cid) >= lv then
else
return doPlayerSendCancel(cid, "Voce precissa ter level 200.")
end
if (not doCreatureAddMana(cid, -mana)) then
return doPlayerSendCancel(cid, "Você não tem mana.")
end
if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")
end
if getPlayerStorageValue(cid, 301) > os.time() then
doPlayerSendTextMessage(cid, 22, "Voce está exausto, espere " .. getPlayerStorageValue(cid, temp.storage) - os.time() .. ' segundo' .. ((getPlayerStorageValue(cid, temp.storage) - os.time()) == 1 and "" or "s"))
return true
end
if isPlayer(itemEx.uid) then

doSendMagicEffect(getCreaturePosition(cid), 196)
doTeleportThing(itemEx.uid, position)

doPlayerSay(cid, 'KAMUI', TALKTYPE_ORANGE_1)
doSendMagicEffect(getCreaturePosition(cid), 196)
setPlayerStorageValue(cid, temp.storage, os.time() + temp.exhausted)


else
return doPlayerSendCancel(cid, "Você só pode usar esse item em players.")


end
return true
end

Link para o comentário
Compartilhar em outros sites

  • 0


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

 

 

 

 

local position = {x = 1045, y = 1048, z = 4} -- pos pra onde sera levado o cara

local mana = 10000

local lv = 200

 

 

 

 

 

 

local temp = {

exhausted = 600, --delay

storage = 301 -- storage

}

 

 

 

 

 

 

 

 

if getPlayerLevel(cid) >= lv then

else

return doPlayerSendCancel(cid, "Voce precissa ter level 200.")

end

if (not doCreatureAddMana(cid, -mana)) then

return doPlayerSendCancel(cid, "Você não tem mana.")

end

if getTilePzInfo(getCreaturePosition(cid)) or getTilePzInfo(getCreaturePosition(itemEx.uid)) then

return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")

end

if getPlayerStorageValue(cid, 301) > os.time() then

doPlayerSendTextMessage(cid, 22, "Voce está exausto, espere " .. getPlayerStorageValue(cid, temp.storage) - os.time() .. ' segundo' .. ((getPlayerStorageValue(cid, temp.storage) - os.time()) == 1 and "" or "s"))

return true

end

if isPlayer(itemEx.uid) then

 

 

doSendMagicEffect(getCreaturePosition(cid), 196)

doTeleportThing(itemEx.uid, position)

 

 

doPlayerSay(cid, 'KAMUI', TALKTYPE_ORANGE_1)

doSendMagicEffect(getCreaturePosition(cid), 196)

setPlayerStorageValue(cid, temp.storage, os.time() + temp.exhausted)

 

 

 

 

else

return doPlayerSendCancel(cid, "Você só pode usar esse item em players.")

 

 

 

 

end

return true

end

Link para o comentário
Compartilhar em outros sites

  • 0

desculpa ser chato mais ainda está teleportando Exemplo

quando estou fora do dp, e alguem esta no dp se eu der use nele ele vai ser teleportado mesmo estando no dp :/

 

meu kawarimi estava assim porem arrumaram nao sei qual Comando adicionaram entao vou postar aqui \/

 

function isWalkable(pos)-- by Nord / editado por Omega
if getTileThingByPos({x = pos.x, y = pos.y, z = pos.z, stackpos = 0}).itemid == 0
then return false
elseif getTopCreature(pos).uid > 0 then
return false
elseif isCreature(getTopCreature(pos).uid) then
return false
elseif getTileInfo(pos).protection then
return false
elseif hasProperty(getThingFromPos(pos).uid, 3) or hasProperty(getThingFromPos(pos).uid, 7) then
return false
end
return true
end
function onUse(cid, item, frompos, item2, topos, item3)

local pos = getThingPos(item2.uid)
local effect = 3 ------Coloque aki o efeito que saira quando usar o item--------
local time = 60 -- tempo em segundos.
local itemId = 2554 -- id do item --[[ o mesmo da tag ]]--
local pos1 = getCreaturePosition(cid)

if getTilePzInfo(getCreaturePosition(cid)) then
return doPlayerSendCancel(cid, "O item nao tem poder em Protection Zones.")
elseif not isWalkable(topos) then
return doPlayerSendCancel(cid, "Sorry, not possible.")
elseif not isSightClear(getThingPos(cid), topos, false) then
return doPlayerSendCancel(cid, "Sorry, not possible.")
end

if getDistanceBetween(pos1, pos) <= 6 then
if getPlayerSlotItem(cid, 9).itemid == itemId or getPlayerSlotItem(cid, 10).itemid == itemId then
if getPlayerStorageValue(cid, 1239870) - os.time() <= 0 then
doTeleportThing(cid, pos, false)
doSendMagicEffect(pos, effect)
setPlayerStorageValue(cid, 1239870, os.time()+time)
else
doPlayerSendCancel(cid, "Você só pode usar esse item a cada "..time.." segundos!")
end
else
doPlayerSendCancel(cid, "Você só pode usar o item "..getItemNameById(itemId).." estiver equipado na mão.")
end
else
doPlayerSendCancel(cid, "Você só pode usar esse item a 3 sqm longe de você")
end
return true
end

Link para o comentário
Compartilhar em outros sites

  • 0

A duvida principal do tópico já foi sanada.
Amigo pare de ficar pedindo ajuda em todo lugar, você pede ajuda aqui, e depois cria um tópico.
Se já pediu a ajuda aqui espere que alguém irá responder , não fique criando um tópico atras do outro.

 

Tópico movido para Pedidos e dúvidas resolvidos.

 

Abraços.

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...