Ir para conteúdo
  • 0

Loteria apenas para Cast ON


je19921992

Pergunta

Salve galera... Precisando de um suporte de programação...

Meu loteria system:

-- Lottery Systemlocal config = {    lottery_hour = "1 Hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)    rewards_id = {2160, 9810, 9822, 9819, 2173, 9693}, -- ID dos Itens Sorteados na Loteria    crystal_counts = 100, -- Usado somente se a rewards_id for crystal coin (ID: 2160).    website = "no" -- Only if you have php scripts and table `lottery` in your database!    }function onThink(interval, lastExecution)        if(getWorldCreatures(0) == 0)then                return true        end    local list = {}    for i, tid in ipairs(getPlayersOnline()) do                list[i] = tid        end        local winner = list[math.random(1, #list)]        local random_item = config.rewards_id[math.random(1, #config.rewards_id)]        if(random_item == 2160) then                doPlayerAddItem(winner, random_item, config.crystal_counts)                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .. " " .. getItemNameById(random_item) .. "s! Congratulations! (Proxima Loteria em " .. config.lottery_hour .. ")")        else                doBroadcastMessage("[LOTTERY SYSTEM] Ganhador: " .. getCreatureName(winner) .. ", Item: " .. getItemNameById(random_item) .. "! Parabens! (Proxima Loteria em " .. config.lottery_hour .. ") Premios que podem cair: 1kk, Rusty Armor, Rusty Helmet, Rusty Boots ou Addon Doll. Fique online! Quem sabe vc pode ser o proximo ganhador?")                doPlayerAddItem(winner, random_item, 1)        end        if(config.website == "yes") then                db.executeQuery("INSERT INTO `lottery` (`name`, `item`) VALUES ('".. getCreatureName(winner) .."', '".. getItemNameById(random_item) .."');")        end        return trueend

Queria que ele entregasse apenas para quem estiver com cast on... Tentei colocar uma verificação tipo if getBroadcasting >0 then

Mas nao deu certo.... Alguem pode me ajudar??

Link para o comentário
Compartilhar em outros sites

2 respostass a esta questão

Posts Recomendados

  • 0
-- Lottery Systemlocal config = {    lottery_hour = "1 Hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)    rewards_id = {2160, 9810, 9822, 9819, 2173, 9693}, -- ID dos Itens Sorteados na Loteria    crystal_counts = 100, -- Usado somente se a rewards_id for crystal coin (ID: 2160).    website = "no", -- Only if you have php scripts and table `lottery` in your database!    }function onThink(interval, lastExecution)	if(getWorldCreatures(0) == 0)then		return true	end    local list = {}	for i, tid in ipairs(getPlayersOnline()) do			local casters = db.getResult("SELECT `broadcasting` FROM `players` WHERE `id` = " .. getPlayerGUID(tid) .. ";")				if casters:getDataInt("broadcasting") == 1 then					list[i] = tid		end					end	local winner = list[math.random(1, #list)]		if winner == nil then		return true	end	local random_item = config.rewards_id[math.random(1, #config.rewards_id)]	if(random_item == 2160) then		doPlayerAddItem(winner, random_item, config.crystal_counts)		doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .. " " .. getItemNameById(random_item) .. "s! Congratulations! (Proxima Loteria em " .. config.lottery_hour .. ")")	else		doBroadcastMessage("[LOTTERY SYSTEM] Ganhador: " .. getCreatureName(winner) .. ", Item: " .. getItemNameById(random_item) .. "! Parabens! (Proxima Loteria em " .. config.lottery_hour .. ") Premios que podem cair: 1kk, Rusty Armor, Rusty Helmet, Rusty Boots ou Addon Doll. Fique online! Quem sabe vc pode ser o proximo ganhador?")		doPlayerAddItem(winner, random_item, 1)	end	if(config.website == "yes") then		db.executeQuery("INSERT INTO `lottery` (`name`, `item`) VALUES ('".. getCreatureName(winner) .."', '".. getItemNameById(random_item) .."');")	end	return trueend

Creio que seu cast seja o padrão, para alterar o id do broadcasting basta ir nessa parte:

if casters:getDataInt("broadcasting") == 1 then

E troque o valor para o que deseja ou adicione outro valor.

 

Dei uma testada na parte do código que fiz, até onde fui com os testes esta tudo certo.

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

×
×
  • Criar Novo...