Ir para conteúdo

Featured Replies

Postado
  • Este é um post popular.

Eae galera, tirei uma meia horinha aqui pra fazer um script temático para o ano novo, sei que muita gente não vai estar jogando durante o ano novo mas para os que vão estar vai ser bem inesquecível haha.

Como o título já sugere, trata-se de uma chuva de fogos pra receber calorosamente o ano de 2015!.

a instalação é bem tranquila, o script só precisa da função isWalkable (é a primeira da new lib), se vc tiver problemas com a newlib apenas copie a primeira função e cole antes de todas as outras nesse script aqui que vai funcionar sem problema (ou se preferir remova todo lugar que tiver "if isWalkable..... then" e o "end").
Eis o script: 

local function finale(uid, msg)
	if isCreature(uid) then
	pos = getCreaturePosition(uid)
	effectIni = 28
		for i = -3, 3 do
		for j = -3, 3 do
		rangex, rangey = math.abs(i), math.abs(j)
		kdist = rangex+rangey
		position = {x = pos.x + i, y = pos.y + j, z = pos.z}
		l = effectIni - 1 + kdist
			if l > (effectIni + 2) then
				l = 255
			end
			if isWalkable(position, false, true, true) then
				doSendMagicEffect(position, l)
			end
		end
		end
	doPlayerSendTextMessage(uid, MESSAGE_INFO_DESCR, msg)
	end
return true
end

local function newYear(uid, delay, time, min, max)
if isCreature(uid) then
n = time or 2
pos = getCreaturePosition(uid)
local fogos = math.random(min, max)
for i = 1, fogos do
	position = {x = pos.x + math.random(-7,7), y = pos.y + math.random(-5,5), z = pos.z}
	if isWalkable(position, false, true, true) then
		doSendMagicEffect(position, math.random(28,30))
	end
end
	if n > 1 then
		addEvent(newYear, delay, uid, delay, (n-1), min, max)
		else
	
	end
end
return true
end

local config = {
delay = 300, -- tempo entre uma wave de fogos e outra
vezes = 45, -- numero de waves
msgDur = "Uma chuva de fogos começou...", --- msg ao começar os fogos
msgAfter = "FELIZ 2015!", -- msg ao terminar os fogos
minfogos = 5, -- minimo de fogos por wave
maxfogos = 7 -- maximo de fogos por wave.
}

function onSay(cid, words, param, channel)

for _, k in ipairs (getPlayersOnline()) do
	newYear(k, config.delay, config.vezes, config.minfogos, config.maxfogos)
	doPlayerSendTextMessage(k, MESSAGE_EVENT_DEFAULT, config.msgDur)
	addEvent(finale, config.delay * config.vezes, k, config.msgAfter)
end

return true
end

<talkaction log="yes" words="!fogos" acess="5" event="script" value="fogos.lua"/>

PS: é uma talkaction.

O script tem uma lógica matemática bem bonita, ele pode parecer simples mas não é, então, se vc não sabe oque tá fazendo, não mexa em nada (só a parte de config com os comentários haha). Agora vc deve estar pensando: mas pqp, isso é uma talkaction, eu não vou poder estar on no server pra ativar ela qnd der meia noite.. bem, então é só trocar duas linhas do script (o callback function onSay(cid, words, param, channel) e a tag no xml e transformar num global events com horário definido). Façam oque quiserem aí, abraços do lobo
 
Vídeo :

ViitinG seu lindo, obrigado por postar o vídeo para mim!

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)

  • Respostas 12
  • Visualizações 2k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • Script simples mas não deixa a desejar, ótimo sisteminha pra quem quer colocar algo a mais no servidor para este ano novo. Sempre trazendo novidades mesmo com pouco tempo livre, obrigado pelo elogio

  • <globalevent name="fogos" time="00:00" event="script" value="fogos.lua"/>  

Postado

Script simples mas não deixa a desejar, ótimo sisteminha pra quem quer colocar algo a mais no servidor para este ano novo.

Sempre trazendo novidades mesmo com pouco tempo livre, obrigado pelo elogio também!

Postado

Surpreendente como sempre, um ótimo trabalho novamente.
Apesar de ser algo simples, tem uma complexidade nos códigos. E que foram muito bem calculados.
Parabéns, bro.

The corrupt fear us.

The honest support us.

The heroic join us.

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 519.7k

Informação Importante

Confirmação de Termo