Postado Maio 20, 2016 9 anos Olá, estou com um pequeno problema com uma talkaction do meu servidor. Ela adiciona o clan de nivel 5 a qualquer player. Na primeira vez ela faz gratuitamente, e se a pessoa for trocar de clan novamente terá que pagar 10 diamantes. Gostaria de programa-la de uma maneira que sempre seja cobrado os 10 diamantes, sem essa "primeira vez gratuita". Alguem pode me ajudar? Segue abaixo o script que uso. clan.lua Mostrar conteúdo oculto function onSay(cid, words, param, channel) if param == "" then return sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]") end local t = string.explode(param, ",") local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'} if not isInArray(clans, t[1]) then return sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!") elseif not tonumber(t[2]) then return sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].") end local rank = tonumber(t[2]) local clan = t[1] if getPlayerStorageValue(cid, 92823) > 100 then -- 7575 -- 92823 doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_RED, "Essa é sua primeira vez mudando de clan. Nas próximas, terá o custo de 10 diamonds.") doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."") setPlayerClan(cid, clan) setPlayerClanRank(cid, rank) else if getPlayerItemCount(cid, 2145) < 10 then return doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.") else return doPlayerSendCancel(cid, "Sorry, not possible.") end if(getPlayerLevel(cid) < 80) then return doPlayerSendCancel(cid, "Você precisa estar no level 80.") else return doPlayerSendCancel(cid, "Sorry, not possible.") end doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."") doPlayerRemoveItem(cid, 2145, 10) setPlayerClan(cid, clan) setPlayerClanRank(cid, rank) end return true end No signature.
Postado Maio 20, 2016 9 anos function onSay(cid, words, param, channel) if param == "" then return sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]") end local t = string.explode(param, ",") local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'} if not isInArray(clans, t[1]) then return sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!") elseif not tonumber(t[2]) then return sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].") end local rank = tonumber(t[2]) local clan = t[1] if getPlayerItemCount(cid, 2145) < 10 then return doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.") else return doPlayerSendCancel(cid, "Sorry, not possible.") end if(getPlayerLevel(cid) < 80) then return doPlayerSendCancel(cid, "Você precisa estar no level 80.") else return doPlayerSendCancel(cid, "Sorry, not possible.") end doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."") doPlayerRemoveItem(cid, 2145, 10) setPlayerClan(cid, clan) setPlayerClanRank(cid, rank) return true end
Postado Maio 20, 2016 9 anos Autor Não deu certo, quando uso o comando agora /clan orebound,5 n aconteçe nada, apenas aparece em branco no roda pé da tela: Sorry, not possible. No signature.
Postado Maio 20, 2016 9 anos Solução function onSay(cid, words, param, channel) local t = string.explode(param:lower(), ",") local clans = {'Volcanic', 'Seavell', 'Orebound', 'Wingeon', 'Malefic', 'Gardestrike', 'Psycraft', 'Naturia', 'Raibolt'} if param == "" then sendMsgToPlayer(cid, 20, "Estao faltam os parametros! [clan name], [rank]") return true elseif not isInArray(clans, t[1], false) then sendMsgToPlayer(cid, 20, t[1].." nao é uma clan valido!") return true elseif not tonumber(t[2]) then sendMsgToPlayer(cid, 20, "Parametros errados! [clan name], [rank].") return true end local clan, rank = t[1], tonumber(t[2]) if getPlayerItemCount(cid, 2145) < 10 then doPlayerSendCancel(cid, "Você precisa de 10 diamonds para entrar em um clan.") return true elseif getPlayerLevel(cid) < 80 then doPlayerSendCancel(cid, "Você precisa estar no level 80.") return true end doPlayerSendTextMessage(cid, 27, "Agora você pertence ao clan "..clan..", rank: "..rank.."") doPlayerRemoveItem(cid, 2145, 10) setPlayerClan(cid, clan) setPlayerClanRank(cid, rank) return true end [*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*] DISCORD: vodkart#6090
Participe da conversa
Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.