piratadoidao 1 Postado Dezembro 9, 2012 Share Postado Dezembro 9, 2012 Bom, galera é o seguinte.. Andei pesquisando pelo SITE, até encontrei alguns tópicos relacionados,... mas não do jeito que eu gostaria... Eu gostaria de pedir um Script, para que o GOD possa dar determinada quantidade de itens à um player... Ex: /additem FULANO 2160,5 No caso, o FULANO receberia 5 Coins. Mas gostaria que esse sistema funcionasse também, para players que estivessem OFFLINE, pois estou com um projeto bem legal, e gostaria de colocar esse sistema... Se alguém puder me ajudar... ficaria muito agradecido! REP ++ também.. Muito obrigado, conto com vocês! Ps: Meu servidor utiliza TFS 4 8.60 Link para o comentário Compartilhar em outros sites More sharing options...
0 Roksas 846 Postado Dezembro 9, 2012 Share Postado Dezembro 9, 2012 Primeiramente, bom dia, irei postar o script feito pelo Diretor Won Helder, Comando: /additem Nome do Jogador, Nome do Item, Quantidade Comece indo em \data\talkactions\scripts, crie um arquivo com o nome additem.lua e coloque isso dentro: --[[ ADDITEM by Won Helder ]]-- --[[ Créditos: 20% Vodkart e DevilMoon pela lógica ]]-- --[[ XTIBIA.COM ]]-- function onSay(cid, words, param) local t = string.explode(param, ",") if not t[3] then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Invalid param specified.") return true end local player = getPlayerByName(t[1]) local quanty = t[3] local pid = getPlayerByNameWildcard(t[1]) if(not pid or (isPlayerGhost(pid) and getPlayerGhostAccess(pid) > getPlayerGhostAccess(cid))) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Player with this name doesn\'t exist or is offline.") return true end local id = tonumber(t[2]) if(not id) then id = getItemIdByName(t[2], false) if(not id) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Item wich such name does not exists.") return true end end local itemtoadd = getItemIdByName(t[2]) if getItemWeightById(itemtoadd) > getPlayerFreeCap(player) then doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "O jogador " .. t[1] .. " não tem capacidade o suficiente.") return true end doPlayerAddItem(player, itemtoadd, t[3]) doPlayerSendTextMessage(player, 22, "Você ganhou " ..quanty.. " " .. t[2] .. " ") doPlayerSendTextMessage(cid, 22, "Você deu " ..quanty.. " " .. t[2] .. " ao jogador " .. t[1] .. " ") return true end Depois vá até o talkactions.xml e adicione essa linha: <talkaction log="yes" words="/additem" access="5" event="script" value="additem.lua"/> Aqui está! Agora, quanto colocar OFFLINE, creio que seja uma coisa + avançada. Por que muitos OTS, entregam items do Shop do Site, automaticamente com o player OFFLINE. Oque pude responder foi isso! Obrigado e BENÇA ) Link para o comentário Compartilhar em outros sites More sharing options...
0 Slicer 1070 Postado Dezembro 9, 2012 Share Postado Dezembro 9, 2012 (editado) esse aki manda pro depot caso o player n esteja on.. function isValidName(name) return db.getResult("SELECT `id` FROM `players` WHERE `name` = " .. db.escapeString(name) .. ";"):getID() ~= -1 end function onSay(cid, words, param, channel) if param == "" then doPlayerSendTextMessage(cid, 27, "Params missing! [name], [item], [qnt]") return true end local t = string.explode(param, ",") local depot = false if type(t) ~= "table" then doPlayerSendTextMessage(cid, 27, "Params missing! [name], [item], [qnt]") return true end local player = getPlayerByName(tostring(t[1])) if not isPlayer(player) then player = tostring(t[1]) depot = true if not isValidName(t[1]) then doPlayerSendTextMessage(cid, 27, "Player with that name doesn't exist!") return true end end local id = tonumber(t[2]) local qnt = tonumber(t[3]) or 1 if not id then id = getItemIdByName(t[2], false) if not id then doPlayerSendTextMessage(cid, 27, "Item wich such name does not exists.") return true end end local itemtoadd = getItemIdByName(t[2]) if isPlayer(player) and getItemWeightById(itemtoadd) > getPlayerFreeCap(player) then depot = true end if isPlayer(player) then if depot then doPlayerSendMailByName(t[1], t[2], t[3]) else doPlayerAddItem(getPlayerByName(t[1]), t[2], t[3]) end doPlayerSendTextMessage(cid, 20, "Item delivered to the player: "..t[1]..".") else doPlayerSendMailByName(t[1], t[2], t[3]) doPlayerSendTextMessage(cid, 20, "Item delivered to the player: "..t[1]..".") end return true end tag eh a ms.. <talkaction log="yes" words="/additem" access="5" event="script" value="additem.lua"/> Editado Dezembro 9, 2012 por Slicer Link para o comentário Compartilhar em outros sites More sharing options...
0 piratadoidao 1 Postado Dezembro 12, 2012 Autor Share Postado Dezembro 12, 2012 Muito obrigado galera! REP++ pra vocês! Obrigado mesmo pela ajuda Link para o comentário Compartilhar em outros sites More sharing options...
0 Yan Oliveira 210 Postado Dezembro 12, 2012 Share Postado Dezembro 12, 2012 Dúvida Resolvida! Tópico Movido. Link para o comentário Compartilhar em outros sites More sharing options...
0 piratadoidao 1 Postado Dezembro 13, 2012 Autor Share Postado Dezembro 13, 2012 Na verdade deu um probleminha... Quando mando /additem ... Tudo certinho com os parametros... Ele diz que enviou... mas no distro aparece: " [error - Talkaction interface] data/talkactions/scripts/additem.lua: onSay; Description: <luaDoPlayerSendMailByName> Item not Found. " Se alguém puder ajudar... to precisando muito desse sisteminha! hehe Obrigado. Link para o comentário Compartilhar em outros sites More sharing options...
0 Yan Oliveira 210 Postado Dezembro 13, 2012 Share Postado Dezembro 13, 2012 Crie um novo tópico com sua nova dúvida, pois este ja está nos resolvidos. Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
piratadoidao 1
Bom, galera é o seguinte..
Andei pesquisando pelo SITE, até encontrei alguns tópicos relacionados,... mas não do jeito que eu gostaria...
Eu gostaria de pedir um Script, para que o GOD possa dar determinada quantidade de itens à um player...
Ex:
/additem FULANO 2160,5
No caso, o FULANO receberia 5 Coins.
Mas gostaria que esse sistema funcionasse também, para players que estivessem OFFLINE, pois estou com um
projeto bem legal, e gostaria de colocar esse sistema...
Se alguém puder me ajudar... ficaria muito agradecido!
REP ++ também..
Muito obrigado, conto com vocês!
Ps: Meu servidor utiliza TFS 4
8.60
Link para o comentário
Compartilhar em outros sites
6 respostass a esta questão
Posts Recomendados