Bom pessoal, mais um script para vocês.
- Qual o motivo desse nome?
Não sei, estou meio sem ideias.
- Oque tem nesse sistema?
Bom, ele da o direito dos players do seu OTServer, serem ladrôes ou policiais,
Tambem tem uma cadeia, para aonde os criminosos vão para.
- Nossa, para oque ele serve?
Para seu servidor ficar com mais diversão,
Creio que ele seja meio inutil.
Vamos começar. !
Crie um arquivo .lua chamado Policial em \data\actions\scripts
function onUse(cid, item, fromPosition, itemEx, toPosition)
local config = {
minreward = 500, -- Minimo que o policial ira ganhar.
maxreward = 2000, -- Maximo que o policial ira ganhar
storage = 5569, -- Uma storage qualquer
color = math.random(1, 255),
prisonPos = {x=1014, y=1034, z=7}, -- Para aonde sera teleportado o ladrão.
storagePreso = 5570, -- Uma storage qualquer
time = 60, -- Tempo que o ladrão vai ficar preso
}
local player = getSpectators(getCreaturePosition(cid), 7, 5)
local money = math.random(config.minreward, config.maxreward)
if player and #player > 0 then
for t, pid in pairs(player) do
if isPlayer(pid) and pid ~= cid then
if getPlayerStorageValue(pid, config.storage) == 1 then
setPlayerStorageValue(pid, storagePreso, os.time()+config.time)
doTeleportThing(pid, config.prisonPos)
doPlayerAddMoney(cid, money)
doPlayerSendTextMessage(pid, MESSAGE_EVENT_ADVANCE, "Você acaba de ser preso, por cometer delitos.")
doSendAnimatedText(getCreaturePosition(cid), "+"..money.."", config.color)
else
doPlayerSendCancel(cid, "Esse player nao cometeu delitos.")
end
end
end
end
return TRUE
end
Crie um arquivo .lua chamado Ladrao em \data\actions\scripts
function onUse(cid, item, itemEx)
local config = {
minMoneyRemove = 30, -- Minimo que o ladrão ira ganhar
maxMoneyRemove = 1400, -- Maximo que o ladrão ira ganhar
storage = 5569, -- Uma storage qualquer
color = math.random(1, 255),
}
local player = getSpectators(getCreaturePosition(cid), 7, 5)
local money = math.random(config.minMoneyRemove, config.maxMoneyRemove)
if player and #player > 0 then
for t, pid in pairs(player) do
if isPlayer(pid) and pid ~= cid then
if doPlayerRemoveMoney(pid, money) then
setPlayerStorageValue(cid, config.storage, 1)
doPlayerAddMoney(cid, money)
doPlayerSendTextMessage(pid, MESSAGE_EVENT_ADVANCE, "Você acaba de ser roubado e perdeu "..money.." gps.")
doSendAnimatedText(getCreaturePosition(cid), "+"..money.."", config.color)
else
doPlayerSendCancel(cid, "O player nao possui "..money.." gps.")
end
end
end
end
return TRUE
end
Crie um arquivo .lua chamado Cadeia em \data\actions\scripts
function onUse(cid,item)
local config = {
storagePreso = 5570, -- Uma storage qualquer
toPos = {x=1016, y=1022, z=7}, -- Para aonde o player irá quando o tempo acabar
}
timePreso = getPlayerStorageValue(cid, config.storage) - os.time()
if getPlayerStorageValue(cid, config.storagePreso) == -1 then
doPlayerSendCancel(cid, "Você nao está preso.")
else
if timePreso <= 0 then
setPlayerStorageValue(cid, config.storagePreso, -1)
doTeleportThing(cid, config.toPos)
doPlayerSendTextMessage(cid, MESSAGE_EVENT_ADVANCE, "Espero que você pense bem agora, antes de cometer algum delito")
else
doPlayerSendCancel(cid, "Você ainda tem que esperar "..timePreso.." segundos, para ser solto.")
end
return TRUE
end
end
Agora adicione os seguinte codigos em \data\actions\actions.xml
<action actionid="1256" event="script" value="Cadeia.lua"/>
<action itemid="2556" event="script" value="Policial.lua"/>
<action itemid="10153" event="script" value="Ladrao.lua"/>
Adicione a ACTION ID na porta da cadeia, Depois edite os nomes dos items.
Para editar basta ir em \data\items\items.xml use a imaginação.
Até mais.