Ir para conteúdo
  • Cadastre-se

(Resolvido)[AJUDA] adicionar nova moeda na loterry


Ir para solução Resolvido por Vodkart,

Posts Recomendados

Queria adicionar nova linha para uma outra moeda alem da Crystal coins, tentei aqui mas estava enviado para todos online.

 

Script abaixo está normal tirei oque mexi.. só quero adicionar Special Coin ID 12672 uma unidade.

local config = {
        lottery_hour = "2 hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)
        rewards_id = {2494, 2472, 2514, 2160}, -- ID dos Itens Sorteados na Loteria
        crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160).
        website = "yes", -- Only if you have php scripts and table `lottery` in your database!
        days = {
                "Monday-08:00",
                "Monday-13:00",
                "Monday-19:30",

                "Tuesday-08:00",
                "Tuesday-13:00",
                "Tuesday-19:30",

                "Wednesday-08:00",
                "Wednesday-13:00",
                "Wednesday-19:30",

                "Thursday-08:00",
                "Thursday-13:00",
                "Thursday-19:30",

                "Friday-01:22",
                "Friday-13:00",
                "Friday-19:30",

                "Saturday-21:27",
                "Saturday-21:28",
                "Saturday-21:29",

                "Sunday-08:00",
                "Sunday-13:00",
                "Sunday-19:30"
                }
        }
local function getPlayerWorldId(cid)
    if not(isPlayer(cid)) then
        return false
    end
    local pid = getPlayerGUID(cid)
    local worldPlayer = 0
    local result_plr = db.getResult("SELECT * FROM `players` WHERE `id` = "..pid..";")
    if(result_plr:getID() ~= -1) then
        worldPlayer = tonumber(result_plr:getDataInt("world_id"))
        result_plr:free()
        return worldPlayer
    end
    return false
end

local function getOnlineParticipants()
    local players = {}
    for _, pid in pairs(getPlayersOnline()) do
        if getPlayerAccess(pid) <= 2 and getPlayerStorageValue(pid, 281821) <= os.time() then
            table.insert(players, pid)
        end
    end
    if #players > 0 then
        return players
    end
    return false
end
     
function onThink(cid, interval)
    if table.find(config.days, os.date("%A-%H:%M")) then
        if(getWorldCreatures(o) <= 0)then
            return true
        end

        local query = db.query or db.executeQuery
        local random_item = config.rewards_id[math.random(1, #config.rewards_id)]
        local item_name = getItemNameById(random_item)  
        local data = os.date("%d/%m/%Y - %H:%M:%S")
        local online = getOnlineParticipants()
       
        if online then
            local winner = online[math.random(1, #online)]
            local world = tonumber(getPlayerWorldId(winner))
           
            if(random_item == 2160) then
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doPlayerAddItem(winner, random_item, config.crystal_counts)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .." " .. getItemNameById(random_item) .. "s! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
            else
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
                doPlayerAddItem(winner, random_item, 1)
            end
            if(config.website == "yes") then
                query("INSERT INTO `lottery` (`name`, `item`, `world_id`, `item_name`, `date`) VALUES ('".. getCreatureName(winner).."', '".. random_item .."', '".. world .."', '".. item_name .."', '".. data .."');")
            end
        else
            print("Ninguem OnLine pra ganhar na loteria")
        end
    end
    return true
end

 

Você tem alguma imagem que possa auxiliar no problema? Se sim, coloque-a aqui. 

 

Link para o post
Compartilhar em outros sites

w local config = {
        lottery_hour = "2 hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)
        rewards_id = {2494, 2472, 2514, 2160, 12672}, -- ID dos Itens Sorteados na Loteria
        crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160).
        moeda_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 12672).
        website = "yes", -- Only if you have php scripts and table `lottery` in your database!
        days = {
                "Monday-08:00",
                "Monday-13:00",
                "Monday-19:30",

                "Tuesday-08:00",
                "Tuesday-13:00",
                "Tuesday-19:30",

                "Wednesday-08:00",
                "Wednesday-13:00",
                "Wednesday-19:30",

                "Thursday-08:00",
                "Thursday-13:00",
                "Thursday-19:30",

                "Friday-01:22",
                "Friday-13:00",
                "Friday-19:30",

                "Saturday-21:27",
                "Saturday-21:28",
                "Saturday-21:29",

                "Sunday-08:00",
                "Sunday-13:00",
                "Sunday-19:30"
                }
        }
local function getPlayerWorldId(cid)
    if not(isPlayer(cid)) then
        return false
    end
    local pid = getPlayerGUID(cid)
    local worldPlayer = 0
    local result_plr = db.getResult("SELECT * FROM `players` WHERE `id` = "..pid..";")
    if(result_plr:getID() ~= -1) then
        worldPlayer = tonumber(result_plr:getDataInt("world_id"))
        result_plr:free()
        return worldPlayer
    end
    return false
end

local function getOnlineParticipants()
    local players = {}
    for _, pid in pairs(getPlayersOnline()) do
        if getPlayerAccess(pid) <= 2 and getPlayerStorageValue(pid, 281821) <= os.time() then
            table.insert(players, pid)
        end
    end
    if #players > 0 then
        return players
    end
    return false
end
     
function onThink(cid, interval)
    if table.find(config.days, os.date("%A-%H:%M")) then
        if(getWorldCreatures(o) <= 0)then
            return true
        end

        local query = db.query or db.executeQuery
        local random_item = config.rewards_id[math.random(1, #config.rewards_id)]
        local item_name = getItemNameById(random_item)  
        local data = os.date("%d/%m/%Y - %H:%M:%S")
        local online = getOnlineParticipants()
       
        if online then
            local winner = online[math.random(1, #online)]
            local world = tonumber(getPlayerWorldId(winner))
           
            if(random_item == 2160) then
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doPlayerAddItem(winner, random_item, config.crystal_counts)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .." " .. getItemNameById(random_item) .. "s! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
            else
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
                doPlayerAddItem(winner, random_item, 1)
            end
            if(random_item == 12672) then
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doPlayerAddItem(winner, random_item, config.crystal_counts)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.moeda_counts .." " .. getItemNameById(random_item) .. "s! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
            else
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
                doPlayerAddItem(winner, random_item, 1)
            end
            if(config.website == "yes") then
                query("INSERT INTO `lottery` (`name`, `item`, `world_id`, `item_name`, `date`) VALUES ('".. getCreatureName(winner).."', '".. random_item .."', '".. world .."', '".. item_name .."', '".. data .."');")
            end
        else
            print("Ninguem OnLine pra ganhar na loteria")
        end
    end
    return true
end

Editado por ikaroangelo21 (veja o histórico de edições)
Link para o post
Compartilhar em outros sites
32 minutos atrás, ikaroangelo21 disse:

w local config = {
        lottery_hour = "2 hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)
        rewards_id = {2494, 2472, 2514, 2160, 12672}, -- ID dos Itens Sorteados na Loteria
        crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160).
        moeda_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 12672).
        website = "yes", -- Only if you have php scripts and table `lottery` in your database!
        days = {
                "Monday-08:00",
                "Monday-13:00",
                "Monday-19:30",

                "Tuesday-08:00",
                "Tuesday-13:00",
                "Tuesday-19:30",

                "Wednesday-08:00",
                "Wednesday-13:00",
                "Wednesday-19:30",

                "Thursday-08:00",
                "Thursday-13:00",
                "Thursday-19:30",

                "Friday-01:22",
                "Friday-13:00",
                "Friday-19:30",

                "Saturday-21:27",
                "Saturday-21:28",
                "Saturday-21:29",

                "Sunday-08:00",
                "Sunday-13:00",
                "Sunday-19:30"
                }
        }
local function getPlayerWorldId(cid)
    if not(isPlayer(cid)) then
        return false
    end
    local pid = getPlayerGUID(cid)
    local worldPlayer = 0
    local result_plr = db.getResult("SELECT * FROM `players` WHERE `id` = "..pid..";")
    if(result_plr:getID() ~= -1) then
        worldPlayer = tonumber(result_plr:getDataInt("world_id"))
        result_plr:free()
        return worldPlayer
    end
    return false
end

local function getOnlineParticipants()
    local players = {}
    for _, pid in pairs(getPlayersOnline()) do
        if getPlayerAccess(pid) <= 2 and getPlayerStorageValue(pid, 281821) <= os.time() then
            table.insert(players, pid)
        end
    end
    if #players > 0 then
        return players
    end
    return false
end
     
function onThink(cid, interval)
    if table.find(config.days, os.date("%A-%H:%M")) then
        if(getWorldCreatures(o) <= 0)then
            return true
        end

        local query = db.query or db.executeQuery
        local random_item = config.rewards_id[math.random(1, #config.rewards_id)]
        local item_name = getItemNameById(random_item)  
        local data = os.date("%d/%m/%Y - %H:%M:%S")
        local online = getOnlineParticipants()
       
        if online then
            local winner = online[math.random(1, #online)]
            local world = tonumber(getPlayerWorldId(winner))
           
            if(random_item == 2160) then
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doPlayerAddItem(winner, random_item, config.crystal_counts)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.crystal_counts .." " .. getItemNameById(random_item) .. "s! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
            else
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
                doPlayerAddItem(winner, random_item, 1)
            end
            if(random_item == 12672) then
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doPlayerAddItem(winner, random_item, config.crystal_counts)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " .. config.moeda_counts .." " .. getItemNameById(random_item) .. "s! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
            else
                doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
                doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: " ..getItemNameById(random_item) .. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
                doPlayerAddItem(winner, random_item, 1)
            end
            if(config.website == "yes") then
                query("INSERT INTO `lottery` (`name`, `item`, `world_id`, `item_name`, `date`) VALUES ('".. getCreatureName(winner).."', '".. random_item .."', '".. world .."', '".. item_name .."', '".. data .."');")
            end
        else
            print("Ninguem OnLine pra ganhar na loteria")
        end
    end
    return true
end



Está bugado desse jeito ai todos ganham quem está online.

Link para o post
Compartilhar em outros sites
  • Solução
local config = {
	lottery_hour = "2 hours", -- Tempo ate a proxima loteria (Esse tempo vai aparecer somente como broadcast message)
	rewards = {
		{itemid = 2494, amount = 1},
		{itemid = 2472, amount = 1},
		{itemid = 2514, amount = 1},
		{itemid = 2160, amount = 10},
		{itemid = 12672, amount = 1}	
	},
	crystal_counts = 10, -- Usado somente se a rewards_id for crystal coin (ID: 2160).
	website = "yes", -- Only if you have php scripts and table `lottery` in your database!
	days = {
		"Monday-08:00",
		"Monday-13:00",
		"Monday-19:30",
		
		"Tuesday-08:00",
		"Tuesday-13:00",
		"Tuesday-19:30",
		
		"Wednesday-08:00",
		"Wednesday-13:00",
		"Wednesday-19:30",
		
		"Thursday-08:00",
		"Thursday-13:00",
		"Thursday-19:30",
		
		"Friday-01:22",
		"Friday-13:00",
		"Friday-19:30",
		
		"Saturday-21:27",
		"Saturday-21:28",
		"Saturday-21:29",
		
		"Sunday-08:00",
		"Sunday-13:00",
		"Sunday-19:30"
	}
}
local function getPlayerWorldId(cid)
	if not(isPlayer(cid)) then
		return false
	end
	local pid = getPlayerGUID(cid)
	local worldPlayer = 0
	local result_plr = db.getResult("SELECT * FROM `players` WHERE `id` = "..pid..";")
	if(result_plr:getID() ~= -1) then
		worldPlayer = tonumber(result_plr:getDataInt("world_id"))
		result_plr:free()
		return worldPlayer
	end
	return false
end
local function getOnlineParticipants()
	local players = {}
	for _, pid in pairs(getPlayersOnline()) do
		if getPlayerAccess(pid) <= 2 and getPlayerStorageValue(pid, 281821) <= os.time() then
			table.insert(players, pid)
		end
	end
	if #players > 0 then
		return players
	end
	return false
end
function onThink(cid, interval)
	if table.find(config.days, os.date("%A-%H:%M")) then
		if(getWorldCreatures(o) <= 0)then
			return true
		end
		local query = db.query or db.executeQuery
		local data = os.date("%d/%m/%Y - %H:%M:%S")
		local online = getOnlineParticipants()
		if online then
			local x = config.rewards[math.random(1, #config.rewards)]
			local winner = online[math.random(1, #online)]
			local world = tonumber(getPlayerWorldId(winner))
			doPlayerSetStorageValue(winner, 281821, os.time() + 3600 * 24)
			if isItemStackable(x.itemid) or x.amount == 1 then
				doPlayerAddItem(winner, x.itemid, x.amount)
			else
				for i = 1, x.amount do
					doPlayerAddItem(winner, x.itemid, 1)
				end
			end
			doBroadcastMessage("[LOTTERY SYSTEM] Winner: " .. getCreatureName(winner) .. ", Reward: "..x.amount.."x " ..getItemNameById(x.itemid).. "! Congratulations! (Next lottery in " .. config.lottery_hour .. ")")
			if(config.website == "yes") then
				query("INSERT INTO `lottery` (`name`, `item`, `world_id`, `item_name`, `date`) VALUES ('".. getCreatureName(winner).."', '".. x.itemid .."', '".. world .."', '".. getItemNameById(x.itemid) .."', '".. data .."');")
			end
		else
			print("Ninguem OnLine pra ganhar na loteria")
		end
	end
	return true
end

 

vodkart_logo.png

[*Ninguém será digno do sucesso se não usar suas derrotas para conquistá-lo.*]

 

DISCORDvodkart#6090

 

Link para o post
Compartilhar em outros sites

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.

Visitante
Responder

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo