Tópico postado na área errada.
Área certa: Dúvidas sobre Scripts
info
Grupo: Conde
Registrado: 17/07/11
Posts: 705
Reputação: +108

Tópico postado na área errada.
Área certa: Dúvidas sobre Scripts
info
Grupo: Herói
Registrado: 20/05/10
Posts: 3.4k
Reputação: +1.5k
Gênero: Masculino

deixa eu ver se entendi...
todos dos ot ganharão o item?
e além de ganhar o item vai aparecer um efeito em cima dele?
info
Grupo: Campones
Registrado: 04/07/10
Posts: 53
Reputação: +2
Char no Tibia: druid

Pronto!
function onSay(cid, words, param, channel, item, fromPosition, itemEx, toPosition) -- Script por Avazquez e modificado por SmoOkeR
local t = string.explode(param, ",")
if t[1] ~= nil and t[2] ~= nil then
local list = {}
for i, tid in ipairs(getPlayersOnline()) do -- Script por Avazquez e modificado por SmoOkeR
list[i] = tid
end
for i = 1, #list do
doPlayerAddItem(list[i],t[1],t[2])
end -- Script por Avazquez e modificado por SmoOkeR - xtibia.com/forum
doBroadcastMessage(getPlayerName(cid) .. " enviou um presente: " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!")
doSendMagicEffect(getThingPos(pid), 36)
end
return true
end -- Script por Avazquez e modificado por SmoOkeR - xtibia.com/forum
ajudei ? Rep+ ai amigo ![]()
Editado Fevereiro 9 por godleandro
deixa eu ver se entendi...
todos dos ot ganharão o item?
e além de ganhar o item vai aparecer um efeito em cima dele?
Isso, o script manda um presente para todos os players online, bom para eventos de fim de ano ou datas especiais para o servidor, ai queria que quando enviase o presente, aparecer um efeito em cima do player, pode ser um fire (em cima de todos)
Pronto!
function onSay(cid, words, param, channel, item, fromPosition, itemEx, toPosition) -- Script por Avazquez e modificado por SmoOkeR local t = string.explode(param, ",") if t[1] ~= nil and t[2] ~= nil then local list = {} for i, tid in ipairs(getPlayersOnline()) do -- Script por Avazquez e modificado por SmoOkeR list[i] = tid end for i = 1, #list do doPlayerAddItem(list[i],t[1],t[2]) end -- Script por Avazquez e modificado por SmoOkeR - xtibia.com/forum doBroadcastMessage(getPlayerName(cid) .. " enviou um presente: " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!") doSendMagicEffect(getThingPos(pid), 36) end return true end -- Script por Avazquez e modificado por SmoOkeR - xtibia.com/forumajudei ? Rep+ ai amigo
Bom nao funcionou, eu ja tinha testado assim, o script funciona, mais o efeito nao sai e aparece esta mensagem de erro no console:
[10/02/2012 02:57:24] [Error - TalkAction Interface] [10/02/2012 02:57:24] data/talkactions/scripts/additem.lua:onSay [10/02/2012 02:57:24] Description: [10/02/2012 02:57:24] (luaGetThingPosition) Thing not found
aguardo.
Editado Fevereiro 10 por gahgah
info
Grupo: Visconde
Registrado: 23/02/08
Posts: 273
Reputação: +101
Char no Tibia: Foxx Rookslayer

function onSay(cid, words, param, channel) local t = string.explode(param, ",") if not t[2] then doPlayerSendCancel(cid, "Command params required.") return true end for _,pid in pairs(getPlayersOnline()) do if pid ~= cid then doPlayerAddItem(pid,t[1],t[2]) doSendMagicEffect(getThingPos(pid), 36) end end doBroadcastMessage(getPlayerName(cid) .. " enviou " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!") return true end
Editado Fevereiro 10 por Byerne
function onSay(cid, words, param, channel) local t = string.explode(param, ",") if not t[2] then doPlayerSendCancel(cid, "Command params required.") return true end for _,pid in pairs(getPlayersOnline()) if pid ~= cid then doPlayerAddItem(pid,t[1],t[2]) doSendMagicEffect(getThingPos(pid), 36) end end doBroadcastMessage(getPlayerName(cid) .. " enviou " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!") return true end
[10/02/2012 03:35:38] [Error - LuaScriptInterface::loadFile] data/talkactions/scripts/additem.lua:5: 'do' expected near 'if' [10/02/2012 03:35:38] [Warning - Event::loadScript] Cannot load script (data/talkactions/scripts/additem.lua) [10/02/2012 03:35:38] data/talkactions/scripts/additem.lua:5: 'do' expected near 'if'
aguardo.
info
Grupo: Visconde
Registrado: 23/02/08
Posts: 273
Reputação: +101
Char no Tibia: Foxx Rookslayer

Quando fui remover o comentário o do foi junto .. XD
function onSay(cid, words, param, channel) local t = string.explode(param, ",") if not t[2] then doPlayerSendCancel(cid, "Command params required.") return true end for _,pid in pairs(getPlayersOnline()) do if pid ~= cid then doPlayerAddItem(pid,t[1],t[2]) doSendMagicEffect(getThingPos(pid), 36) end end doBroadcastMessage(getPlayerName(cid) .. " enviou " .. t[2] .." ".. getItemNameById(t[1]) .. " para todos os players online!") return true end
agora esta perfeito, como sempre me ajudou muito, obrigado. +rep
info
Grupo: Campones
Registrado: 22/07/08
Posts: 56
Reputação: +5
RESOLVIDO
Editado Fevereiro 10 por gahgah