primeiro, gostaria de dizer que ambos os scripts foram feitos para este duelo:
http://forums.######/showthread.php?t=63138
Report:
Nome do script: sistema de report
Versão: acredito que de 8.1 pra cima pegue.
Autor: Eventide
Script:
function onSay(cid, words, param)
local names = {}
if isInArray(names, getPlayerName(cid)) then --// anti-flood
return FALSE --// end the script
else
local enc = {report = tostring(param), name = getPlayerName(cid)} ---// table with variables
io.open(w, "reports.txt") --// opening the report log
io.write("reports.txt", tostring(enc.report)"by".. enc.name .."/n") --// writing the report
io.close("reports.txt") --//closing the report log
table.insert(names, enc.name) --// anti-flood
addEvent(ArrayClean, 100, arr) --// 100 is the exhaust time in micro seconds.
end
end
function ArrayClean(arr)
for rox = 1,#names do
if names[rox] == name then
table.remove(names, rox) --//exhaust.
break
end
end
end
Como Instalar:
primeiro vá até a pasta data/talkactions/scripts do seu servidor copie e cole um script qualquer e renomeie para report.lua e copie e cole o script dentro dele, logo depois crie um arquivo chamado reports.txt e não escreva nada nele.
depois va até data/talkactions e abra o arquivo talkactions.xml, escreva o seguinte dentro dele:
<talkaction words="!report" script="report.lua" />
e... pronto ![]()
nome do script: sistema de enquete
versão: 8.1+
autor: Haxy
Script:
--[[
Primeiramente gostaria de dizer que o script foi dedicado ao duelo:
[URL]http://forums.######/showthread.php?p=515871[/URL]
O código esta livre para uso, estudo e/ou modificações, desde que mantido os créditos.
Créditos: Haxy
]]--
local cmds = { -- Atenção, abaixo seguem os comandos do sistema, caso deseje mudar, mude também em talkactions.xml
cmdAbrirVot = '/ligarvota', -- Ligar a votação, e em seguida, após as aspas, a mensagem
cmdFecharVot = '/fechavota', -- Encerrar votação
cmdVotar = '!votar' -- Para votar, e após as aspas, sim ou nao, caso contrario o volo não será contabilizado
}
local basicConfig = {
access = 3, -- Access minimo para abrir e fechar votações
storagePower = 27900, -- Storage value sobre se o sistema esta ligado ou desligado
strS = 27901, -- Votos Sim
strN = 27902 -- Votos Não
}
local playersVotaram = {}
function onSay(cid, words, param)
if words == cmds.cmdAbrirVot and getPlayerAccess(cid) >= basicConfig.access then -- (Z)
if getGlobalStorageValue(basicConfig.storagePower) == -1 then -- (ZA)
setGlobalStorageValue(basicConfig.storagePower,1)
print('Votacao iniciada por ' .. getPlayerName(cid) .. ', com a seguinte pergunta:\n'..param)
doPlayerSay(cid,'/B Votação iniciada:\n'..param..'\nUse: '.. cmds.cmdVotar..' "sim para votar sim\n'.. cmds.cmdVotar ..' "nao para votar nao.',1)
else -- (ZA)
doPlayerSendCancel(cid,'No momento já existe uma votação no ar, digite: ' .. cmds.cmdFecharVot .. ' para finalizar a atual e começar uma nova.')
end-- (ZA)
elseif words == cmds.cmdVotar then -- (Z)
if getGlobalStorageValue(basicConfig.storagePower) == 1 then -- (ZC)
local vot = 0
for i = 0,#playersVotaram do -- (ZD)
if getPlayerName(cid) == playersVotaram[i] then -- (ZDA)
vot = 1
break
else -- (ZDA)
vot = 0
end -- (ZDA)
end -- (ZD)
if vot == 0 then -- (ZE)
if param == 'sim' then -- (ZEA)
if getGlobalStorageValue(basicConfig.strS) == -1 then -- (ZEAA)
setGlobalStorageValue(basicConfig.strS,1)
else -- (ZEAA)
setGlobalStorageValue(basicConfig.strS,getGlobalSt orageValue(basicConfig.strS)+1)
end -- (ZEAA)
doPlayerSendTextMessage(cid,22,'Obrigado pelo seu voto.')
print(getPlayerName(cid)..' votou sim.')
table.insert(playersVotaram,getPlayerName(cid))
elseif param == 'nao' then -- (ZEA)
if getGlobalStorageValue(basicConfig.strN) == -1 then -- (ZEAB)
setGlobalStorageValue(basicConfig.strN,1)
else -- (ZEAB)
setGlobalStorageValue(basicConfig.strN,getGlobalSt orageValue(basicConfig.strN)+1)
end -- (ZEAB)
print(getPlayerName(cid)..' votou nao.')
doPlayerSendTextMessage(cid,22,'Obrigado pelo seu voto.')
table.insert(playersVotaram,getPlayerName(cid))
else -- (ZEA)
doPlayerSendCancel(cid,'Desculpe, não entendemos seu voto, use apenas as opções \'sim\' e \'nao\'.')
end -- (ZEA)
else -- (ZE)
doPlayerSendCancel(cid,'Desculpe, mas você não pode votar mais de uma vez em uma unica votação.')
end -- (ZE)
else -- (ZC)
doPlayerSendCancel(cid,'Não esta ocorrendo votações no momento.')
end -- (ZC)
elseif words == cmds.cmdFecharVot and getPlayerAccess(cid) >= basicConfig.access then -- (Z)
if getGlobalStorageValue(basicConfig.storagePower) == 1 then -- (ZB)
if getGlobalStorageValue(basicConfig.strS) == -1 then -- (ZBA)
setGlobalStorageValue(basicConfig.strS,0)
end -- (ZBA)
if getGlobalStorageValue(basicConfig.strN) == -1 then -- (ZBB)
setGlobalStorageValue(basicConfig.strN,0)
end -- (ZBB)
doPlayerSay(cid,'/B A votação terminou, Resultado:\nSIM > ' ..getGlobalStorageValue(basicConfig.strS).. ' x ' ..getGlobalStorageValue(basicConfig.strN)..' < NÃO.',1)
print('Votacao terminada em Sim '..getGlobalStorageValue(basicConfig.strS).. 'x' .. getGlobalStorageValue(basicConfig.strN) ..' Nao.')
playersVotaram = nil
setGlobalStorageValue(basicConfig.storagePower,-1)
setGlobalStorageValue(basicConfig.strS,-1)
setGlobalStorageValue(basicConfig.strN,-1)
else -- (ZB)
doPlayerSendCancel(cid,'Não existe uma votação iniciada.')
end -- (ZB)
end -- (Z)
end
--[[
MODO DE USO!
1° Digitar, /ligarvota "PERGUNTA AQUI
2° Quando quiser encerrar a votação digitar: /fechavota
3° Após o encerramento os resultados terem sido mostrados, use o comando /reload talk
Obrigado
]]--
Como instalar:
va na pasta data/talkactions/scripts do seu servidor copie e cole um arquivo qualquer renomeie para votesys.lua, e cole o script dentro dele.
logo depois va até a pasta data/talkactions e abra o arquivo talkactions.xml, copie e cole isso nele:
<talkaction words="/ligarvota" script="votesys.lua" /> <talkaction words="/fechavota" script="votesys.lua" /> <talkaction words="!votar" script="votesys.lua" />




















