Presiso Q Ao Tomar Ban O Player Perca 25% Dos Lvls

wandersonnc
em Scripts

wandersonnc

Tipo faz tudo...
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/09/12Posts: 11Char no Tibia: TrinYdade

Olá galera conheço um pouco de scripting porem presiso de ajuda neste.

 

Presiso que ao tomar ban o player perca 25% de seus leveis isto seria possivel ?

alguem pode fazer pra mim

 

abaixo esta meu script de ban

 

 

 

 

function onSay(cid, words, param, channel)

 

local t = param:explode(",")

local name, days = t[1], tonumber(t[2])

local player = getPlayerByName(t[1])

if name then

if days then

local acc = getAccountIdByName(name)

if acc ~= 0 then

local tempo = days * 24 * 3600

doAddAccountBanishment(acc, target, os.time() + tempo, 5, 2, 'Banido por bular regras', 0)

doRemoveCreature(player)

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este player não existe.")

end

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode adicionar essa

quantidade de dia(s) de dias de banimento.")

end

else

doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "esse player nao existe.")

end

return TRUE

end

 

 

 

 

dou RES+ pra quem puder me ajudar abraços...

Ass,
Trinydade VI
Mapper e Scripts

Skymagnum

Hamburguer
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 02/08/12Posts: 1025Char no Tibia: Maurolkit

Tenta essa função que acabei de fazer

 

usasse assim doPlayerRemoveLevelInPorcent(getPlayerGUID(cid), 25)

 

 

 

 

function doPlayerRemoveLevelInPorcent(id, porcent)
new_lvl = math.floor(getPlayerLevel(cid)*percent/100)
return db.executeQuery("UPDATE `players` SET `level` = " .. new_lvl .. " WHERE `id` = " .. id)
end

jeoz.png

wandersonnc

Tipo faz tudo...
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/09/12Posts: 11Char no Tibia: TrinYdade

Tenta essa função que acabei de fazer

 

usasse assim doPlayerRemoveLevelInPorcent(getPlayerGUID(cid), 25)

 

 

 

 

function doPlayerRemoveLevelInPorcent(id, porcent)
new_lvl = math.floor(getPlayerLevel(cid)*percent/100)
return db.executeQuery("UPDATE `players` SET `level` = " .. new_lvl .. " WHERE `id` = " .. id)
end

 

Nossa cara vlw muito , Porem poderia me explicar melhor esta função que vc fez, ele perde quantos porcentos ? ou eu tenho q editar pra determinado porcento? (se possivel deixe ela ja perdendo os 25%).

 

vo testa hj anoite ja vo te da res pela ajuda caso esteja corretim do res amanha braços mt obrigado...

Ass,
Trinydade VI
Mapper e Scripts

caotic

Afinal de contas,sou um mordomo e tanto
avatar
Infante
Infante

INFOS

Grupo: InfanteRegistrado: 04/03/11Posts: 1599Char no Tibia: No Have

Ele ja fez o exemplo que funciona normalmente com 25%.

A função usa a famosa formula (mount*porc/100).

 

No script ficaria tal:

 

 

function onSay(cid, words, param, channel)
function doPlayerRemoveLevelInPorcent(id, porcent)
new_lvl = math.floor(getPlayerLevel(cid)*percent/100)
return db.executeQuery("UPDATE `players` SET `level` = " .. new_lvl .. " WHERE `id` = " .. id)
end


local t = param:explode(",")
local name, days = t[1], tonumber(t[2])
local player = getPlayerByName(t[1])
if name then
if days then
local acc = getAccountIdByName(name)
if acc ~= 0 then
local tempo = days * 24 * 3600
doPlayerRemoveLevelInPorcent(getPlayerGUID(cid), 25)
doAddAccountBanishment(acc, target, os.time() + tempo, 5, 2, 'Banido por bular regras', 0)
doRemoveCreature(player)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este player não existe.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode adicionar essa
quantidade de dia(s) de dias de banimento.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "esse player nao existe.")
end
return TRUE
end

wandersonnc

Tipo faz tudo...
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 19/09/12Posts: 11Char no Tibia: TrinYdade

Ele ja fez o exemplo que funciona normalmente com 25%.

A função usa a famosa formula (mount*porc/100).

 

No script ficaria tal:

 

 

function onSay(cid, words, param, channel)
function doPlayerRemoveLevelInPorcent(id, porcent)
new_lvl = math.floor(getPlayerLevel(cid)*percent/100)
return db.executeQuery("UPDATE `players` SET `level` = " .. new_lvl .. " WHERE `id` = " .. id)
end


local t = param:explode(",")
local name, days = t[1], tonumber(t[2])
local player = getPlayerByName(t[1])
if name then
if days then
local acc = getAccountIdByName(name)
if acc ~= 0 then
local tempo = days * 24 * 3600
doPlayerRemoveLevelInPorcent(getPlayerGUID(cid), 25)
doAddAccountBanishment(acc, target, os.time() + tempo, 5, 2, 'Banido por bular regras', 0)
doRemoveCreature(player)
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Este player não existe.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não pode adicionar essa
quantidade de dia(s) de dias de banimento.")
end
else
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "esse player nao existe.")
end
return TRUE
end

 

Sz mt obrigado estarei dando os devidos RES+ amanha abraços...

Ass,
Trinydade VI
Mapper e Scripts

SkyLigh

User X
avatar
Lorde
Lorde

INFOS

Grupo: LordeRegistrado: 23/07/12Posts: 2183Char no Tibia: Kissy

Duvida sanada

reportado

 

Para Um Superior

Att,
Kissy

dwhfms

Eterno Coordenador - ou não :(
avatar
Marquês
Marquês

INFOS

Grupo: MarquêsRegistrado: 08/05/08Posts: 1342

Tópico movido para a seção de dúvidas e pedidos resolvidos.

Entrada como Estagiário: 10/05/09

Entrada na Equipe de Imprensa: 23/06/09

Coordenador de Imprensa: 11/09/09

Coordenador de Redação: 20/03/11

Coordenador de Imprensa: 11/07/11

Diretor de Publicidade: 19/10/12

Contato: wonhelder@xtibia.com

 

"Não podemos prever o futuro, mas podemos criá-lo." Paul Pilzer

"Todo homem morre, mas são poucos os que realmente vivem." William Wallace

 



 

Conheça o Facebook do XTibia.com, lá você vê o melhor conteúdo do XTibia e ainda pode concorrer a prêmios incríveis!

 

facebooklogoq.jpg