IG
pedido

Tile que so passa quem tem Guild

Por igorsilveeira, 10 de ago. de 2013 em Scripts

resolvido
script
8
1.3k
10 de agosto de 2013 às 00:06

Preciso de um script (movement creio eu) que faça:

 

Passar por cima do tile somente se a guild tiver mais de 5 membros.

Valendo 2 REP+

 

 

Se não conseguir o script acima, acho que da pro gasto só passar em cima do tile se tiver guild

Valendo 1 REP+

VodkartV
10 de agosto de 2013 às 09:09
guildtile.lua


function CountGuildMembers(GuildId) -- function by vodkart
local count = 0
local lista = db.getResult("SELECT `name`, `rank_id` FROM `players` WHERE `rank_id` IN (SELECT `id` FROM `guild_ranks` WHERE `guild_id` = " .. GuildId .. ");")
if(lista:getID() ~= -1) then
repeat count = count + 1 until not lista:next() lista:free() return count end
end
function onStepIn(cid, item, position, fromPosition)
if item.actionid == 16725 and getPlayerGuildId(cid) <= 0 or tonumber(CountGuildMembers(getPlayerGuildId(cid))) < 5 then
doTeleportThing(cid, fromPosition, true)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"você não possui uma guild ou não possui 5 membros ou mais na sua guild.")
doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE)
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"bem vindo.")
return true
end


tag


<movevent type="StepIn" actionid="16725" event="script" value="guildtile.lua"/>

MaenilseM
10 de agosto de 2013 às 09:39

mas será que tem essa funçao na distro dele? sei nao viu u.u

 

function CountGuildMembers(GuildId) parece nao ter na distro dele

VodkartV
10 de agosto de 2013 às 10:05

mas será que tem essa funçao na distro dele? sei nao viu u.u

 

function CountGuildMembers(GuildId) parece nao ter na distro dele

 

mas se você viu ali na parte superior do código eu coloquei essa função, rs.

10 de agosto de 2013 às 14:43

Perfeito Vodkart, meus parabéns, otimo script !

REP+

 

Mais uma coisinha, daria muito trabalho para você, colocar só se tiver 5 membros da guild online?

 

Mesmo assim, ja ta bom, parabéns cara!

VodkartV
10 de agosto de 2013 às 14:56

 

function getGuildMembersOnline(GuildId)
local players = {}
        for _, pid in pairs(getPlayersOnline()) do
                if getPlayerGuildId(pid) == tonumber(GuildId) then
                        table.insert(players, pid)
                end
        end
        return #players > 0 and players or false
end
function onStepIn(cid, item, position, fromPosition)
if item.actionid == 16725 and getPlayerGuildId(cid) <= 0 or #getGuildMembersOnline(getPlayerGuildId(cid)) < 5 then
doTeleportThing(cid, fromPosition, true)
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"você não possui uma guild ou não possui 5 membros ou mais na sua guild.")
doSendMagicEffect(getThingPos(cid), CONST_ME_MAGIC_BLUE)
return true
end
doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE,"bem vindo.")
return true
end
10 de agosto de 2013 às 15:21

Meu deus Vodkart, tu é mto foda cara, parabéns

REP++


Vodkart, to com esse script aqui a meses querendo terminar, só q ninguem consegue, se puder dar uma olhadinha ai

http://www.xtibia.com/forum/topic/219159-castle-event-radbr-ajuda-terminar-script-90-completo/

RoksasR
17 de agosto de 2013 às 11:40

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