Interessante Roksas Sempre sé superando em Abraços Amigo!
Rep +
info
Grupo: Visconde
Registrado: 24/11/12
Posts: 474
Reputação: +98
Gênero: Masculino

Interessante Roksas Sempre sé superando em Abraços Amigo!
Rep +
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino

Obrigado, quem me ajudou nas ideias foi o Mozark, e creio que será bem útil!
Seria legal se vendessem um item no OT, que só pode usar o comando com ele, depois é removido ![]()
Editado Abril 22 por Roksas
info
Grupo: Marquês
Registrado: 29/10/11
Posts: 1.2k
Reputação: +134
Gênero: Masculino

Já vai pro meu projeto Roksas,hehehe.
info
Grupo: Marquês
Registrado: 18/05/11
Posts: 1.1k
Reputação: +150
Gênero: Masculino

Ta evoluindo demais cara, parabéns!
Gostei!
info
Grupo: Visconde
Registrado: 12/06/10
Posts: 408
Reputação: +39
Char no Tibia: Nakamura

Muito bom cara, curti demais ![]()
Rep +
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino

Obrigado galerinha, façam bom uso!
Mas olha, com esse comando o cara pode criar 50 demon e lurar pra onde tem player :s acho que isso causaria um grande problema.. também pessoas invocando no meio da cidade e tal..
Editado Abril 22 por xS0NYx
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino

Cara, leia de novo por favor, o máximo para summonar é 9, e se tiver player perto, não sumona!
info
Grupo: Marquês
Registrado: 22/07/12
Posts: 1.1k
Reputação: +400
Gênero: Masculino
Char no Tibia: Luck Oake

Cara, seu script é interessante, mas pfv, melhora essa identação. Isso ai acaba com a beleza de todo um sistema e faz você parecer scripter que acabou de se iniciar na linguagem lua .-.
Dica, n precisava criar uma lib própria só pra esse sistema, era melhor colocar a função direto no script.
OBS: De onde você tira essas ideias? Tô precisando de algumas ![]()
Editado Abril 22 por LuckOake
info
Grupo: Marquês
Registrado: 02/08/12
Posts: 1k
Reputação: +234
Char no Tibia: Maurolkit

Se o monstro não existir vai dar erro.
Poderia ter usado isso.
if (#getSpectators({x = pos.x, y = pos.y, z = pos.z}, 9, 9)) then
Já há essa função nos otservs .;d.
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino

@SkyMagnum, obrigado por lembrar, mas essa função retorna se há spectators e não QUANTOS tem, estou certo?
@LuckOake, é a minha forma de identar rsrs, não conheço outras, futuramente irei procurar alguns tutos sobre ![]()
Obrigado pelas dicas, e essas ideias eu pergunto pra alguns amigos, eu tenho umas e eles outras, junto tudo e forma essas geringonças eahhueaheau
~~
Obrigado galera ![]()
info
Grupo: Marquês
Registrado: 02/08/12
Posts: 1k
Reputação: +234
Char no Tibia: Maurolkit

Ela retorna uma tabela só não sei com oque uheuheuhe, mas da pra checar com ela(eu acho).
Alias erro tosco.
if (#getSpectators({x = pos.x, y = pos.y, z = pos.z}, 9, 9) > 1) then
EUEUHEHUE.
Editado Abril 22 por Skymagnum
info
Grupo: Príncipe
Registrado: 19/08/10
Posts: 4k
Reputação: +1.1k
Gênero: Masculino

acredito q uma tabela com os uids ;p -acredito-
info
Grupo: Marquês
Registrado: 02/08/12
Posts: 1k
Reputação: +234
Char no Tibia: Maurolkit

Tipo deve ser isso porque da para usar.
for _, tid in ipairs(getSpectators(inferno, math.huge, math.huge)) then
if isCapiroto(tid) then
return capetaTaOn
else
return capetaTaOff
end
end
é tipo um getPlayersOnline(), só que pega só os que tão na área hueuhehu.
info
Grupo: Herói
Registrado: 14/12/10
Posts: 3.6k
Reputação: +846
Gênero: Masculino
Own Your Spawn!
Como anda galerinha? Hoje tive uma ideia bem legal e vim trazer para vocês, é um sistema que inventei chamado Own your Spawn, mas como funciona?
Você paga uma certa quantia e com um comando você cria X monstros para você upar, mas não pode ter players por perto (Anti-PowersAbuse), tudo bem configurável, vamos instalar?
Vá em data/lib, copie algum arquivo desta mesma pasta e cole, renomeio-o para own_spawnlib.lua, abra-o com o bloco de notas e adicione dentro:
function getPlayersInArea(area) local players = {} for x = area.fromx,area.tox do for y = area.fromy,area.toy do for z = area.fromz,area.toz do local m = getTopCreature({x=x, y=y, z=z}).uid if m ~= 0 and isPlayer(m) then table.insert(players, m) end end end end return players endMuito bem, agora siga para a pasta data/talkactions/scripts, copie algum arquivo desta mesma pasta e cole, renomeie para own_spawn.lua e adicione dentro:
function onSay(cid, words, param) local t = string.explode(param, ",") local pos = getCreaturePosition(cid) local cfg = { max_summon = 9, price = 100000, } if #getPlayersInArea({fromx = pos.x+4, fromy = pos.y+4, fromz = pos.z, tox = pos.x-4, toy = pos.y-4, toz = pos.z}) > 1 then doPlayerSendTextMessage(cid, 20, "Do this in a place where no other players.") return true end if not t[1] or not t[2] or not tonumber(t[2]) then doPlayerSendTextMessage(cid, 20, "The command does not recognize these parameters.") return true end if tonumber(t[2]) > cfg.max_summon then doPlayerSendTextMessage(cid, 20, "Maximum monsters in your spawn is "..cfg.max_summon..", rushed.") return true end if not doPlayerRemoveMoney(cid, cfg.price) then doPlayerSendTextMessage(cid, 20, "You do not have enough money to buy their own spawn!") return true end for i = 1, t[2] do doCreateMonster(t[1], {x = pos.x+3, y = pos.y+3, z = pos.z}) end doPlayerSendTextMessage(cid, 20, "His spawn was summoned, good level up for you!") return true endNa pasta data/talkactions, abra com um editor de texto o arquivo talkactions.xml e adicione essa tag:
Configuração
Nesta parte do código:
local cfg = { max_summon = 9, price = 100000, }Em "max_summon", você coloca a quantia máxima de monstros que podem dar spawn. E em "price" você coloca o preço para dar o spawn, no caso coloquei 100k
Utilização
Editado Maio 12 por Roksas