Ir para conteúdo

Featured Replies

  • 2 weeks later...
  • Respostas 6
  • Visualizações 759
  • Created
  • Última resposta

Top Posters In This Topic

Postado

acabei esquecendo desse post aqui:

function onKill(cid, target, lastHit)

local monster = "Zombie" -- nome do zombie
local storage = 78956  -- deixa o mesmo storage pra todos os zombies, daí o final do script vai ser pegar o valor desse storage de cada player
local points = 1 -- qnts pontos vai dar

if isPlayer(cid) and getCreatureName(target) == monster then
setPlayerStorageValue(cid, storage, getPlayerStorageValue(cid,storage)+points)
return true
end
end

em creaturescripts.xml

<event type="kill" name="zombie1" event="script" value="zombie1.lua"/>

coloca no arquivo xml do monstro que vai dar esse ponto assim:

<script>
<event name="zombie1"/>
</script>

e coloca no creaturescripts\login.lua

registerCreatureEvent(cid, "zombie1")

agora é só repetir isso pra todos os zombies que você for usar!



=====================

PARTE II

Pra fazer as raids você dá uma pesquisada no fórum e após criá-las vc pode colocar pra executar esse script aqui

créditos ao MaXwEllDeN porque isso daqui foi ele que fez pra ajudar um cara em outro tópico:

local storage = 78956
function getPoints(cid)
   return getPlayerStorageValue(cid, storage)
end
 
function getPlayersThatHavePoints()
   local players = {}
   for _, cid in pairs(getPlayersOnline()) do
      if(getPoints(cid) > 5) then
         table.insert(players, cid)
      end
   end
 
   return players
end
 
if #getPlayersThatHavePoints() > 1 then
local x = 6
while #players > 1 do
for _, cid in pairs(players) do
      if(getPoints(cid) < x) then
         table.remove(players, cid)
      end
   end
x = x + 1
end
elseif #players == 1 then
doBroadcastMessage("Temos um vencedor.", 18)
elseif #players == 0 then
doBroadcastMessage("Não houve nenhum vencedor.", 18)
end

Lembre-se que você vai ter que adicionar no login.lua 

local storage = 78956
if getPlayerStorageValue(cid,storage) > 0 then 
setPlayerStorageValue(cid, storage, 0)

agora preciso dormir, não testei nada e fiz tudo me baseando em suposições que podem estar erradas. Sou péssimo com tables e suas respectivas funções então se tiver algo errado aí a culpa é da minha ignorância haha;
Note que ainda falta um "..players[1].." na table pra retornar o nome do vencedor e um script que adicione um prêmio a esse vencedor.
Note ainda que não há prêmios e nem mensagens de erro caso empatem mas acho que isso daqui ja dá uma ideia forte de como fazer esse script, qualquer coisa vou tentando te ajudar com o tempo

Editado por xWhiteWolf (veja o histórico de edições)

Todos os meus trabalhos importantes estão na seção "Sobre mim" no meu perfil; Dá uma passada lá!

"Há três caminhos para o fracasso: não ensinar o que se sabe, não praticar o que se ensina, e não perguntar o que se ignora." - São Beda

I7Pm6ih.png

(obg ao @Beeny por fazer essa linda sign <3)

Participe da conversa

Você pode postar agora e se cadastrar mais tarde. Se você tem uma conta, faça o login para postar com sua conta.

Visitante
Responder

Quem Está Navegando 0

  • Nenhum usuário registrado visualizando esta página.

Estatísticas dos Fóruns

  • Tópicos 96.9k
  • Posts 520.1k

Informação Importante

Confirmação de Termo