Ir para conteúdo
Entre para seguir isso  
jedian

Bomba

Recommended Posts

jedian    0
jedian
Nome: Bomba

Autor: Jedian

Versão Testada: The Forgotten Server 0.3.6 "8.54"

 

Informações Adicionais

Script simples!, é uma bomba, de id 9020(Vampire_Lord_Token.gif,pode ser alterado), ao ser usada(clicada), se estiver fora da backpack/corpo, iniciará uma contagem regressiva de 5 segundos, e então explodirá, atacando a todos numa determinada área, inclusive aquele que a usou.

 

Olá galera!Aqui estou para mostrar-lhes mais um script :w00t:

já existem vários scripts de bomba pela internet a fora, mas nenhum que vi é como esse!

 

Vamos a instalação!:lol:

 

Em data/actions/scripts/other, copie um arquivo.lua, renomeie para bomba, apague o seu conteúdo e cole:

local err = createCombatArea({

{0, 0, 1, 1, 1, 0, 0},

{0, 1, 1, 1, 1, 1, 0},

{1, 1, 1, 1, 1, 1, 1},

{1, 1, 1, 3, 1, 1, 1},

{1, 1, 1, 1, 1, 1, 1},

{0, 1, 1, 1, 1, 1, 0},

{0, 0, 1, 1, 1, 0, 0}})

function onUse(cid, item, frompos, item2, topos) --Script "Bomba" by Jedian

if frompos.x == 65535 then

doPlayerSendCancel(cid, 'You cannot use it here.')

else

doRemoveItem(item.uid, 1)

doSendMagicEffect(frompos, 3)

local m = {[0] = 0, [1] = 5, [2] = 4, [3] = 3, [4] = 2, [5] = 1}

for i, v in ipairs(m) do

addEvent(doSendAnimatedText, (i - 1)*1000, frompos, v, 180)

end

addEvent(af, 5050, cid, item, frompos, item2, topos)

end

end

 

function af(cid, item, frompos, item2, topos)

doSendAnimatedText(frompos, 'Caboom!', 180)

doAreaCombatHealth(0, 8, frompos, err, -500, -1000, 6)

end

 

Editando o script:

Em vermelho, o efeito lançado ao dar sucesso na instalação da bomba, para alterar, mude o valor "3"(no char do GOD, digite /z n, sendo n um numero, para testar outros efeitos)

Em Verde, a função que manda as mensagens "5,4,3,2,1,Caboom!"(para editar as cores delas, edite o valor "180", veja a tabelinha abaixo, ou no char do GOD digite /y n sendo n um numero, para visualizar mais cores)

Em azul, a função que da o dano em área, caso queira que o dano não afete a pessoa que instalou a bomba, no valor "0" digite "cid",para alterar o dano mínimo e máximo, altere os valores "-500"(mínimo) e "-1000"(máximo)

 

Tabela de cores básicas para alteração da cor das mensagens(5,4,3,2,1,Caboom!)

 

Azul = 5

Azul Claro = 35

Verde = 55

Verde Claro = 30

Cinza Claro = 172

Vermelho = 180

Laranja = 198

Branco(usado na exp) = 215

Roxo = 255

 

e é claro, temos a tag!

Adicione isso em data/actions/actions.xml

<action itemid="9020" event="script" value="other/bomba.lua" />

Edite o itemid para o item que você quiser que seja a bomba!

ATENÇÃO, O ITEM SELECIONADO NÃO PODE CONTER "USE WITH"(Aquelas flechinhas de "alvo", como nas runas)

 

Uma Fotinho! :coolface:

[spoiler=Foto]zwxe.jpg

 

 

Fim! :D

Editado por jedian
Arrumando área²

Compartilhar este post


Link para o post
Lwkass    1
Lwkass

Bem, você poderia diminuir o script com o uso de um loop for no Animated Text da contagem regressiva,

 

Aprovado

Compartilhar este post


Link para o post
jedian    0
jedian

Muito Obrigado por aprovar :D

Pois é, antes eu tinha feito cada função separada com apenas o doSendAnimatedText, aí tava vendo umas spells e vi addEvent(doCombat...) e percebi que dava pra colocar esse tipo tbm e fiz assim, vo tenta aprender o For, pois o que eu vi n entendi n, vlw :D

-- Edit --

Eu não consigo entender o FOR, caramba ;S

while e repeat foi facil, mas for me ferra!!

não consegui fazer nada com ele!

--edit²--

Como foi meu primeiro script com o FOR, foi via pog :mindfuck:

Editado por jedian

Compartilhar este post


Link para o post
Brad Pitt    0
Brad Pitt

Quando a bomba é utilizada muitas vezes no mesmo local buga,

Quando vc tenta subir na rachadura vc fica invisible.

@_@

Compartilhar este post


Link para o post
VittinhoO    0
VittinhoO

hmm não é muito util mais mesmo assim parabens!

Compartilhar este post


Link para o post
jedian    0
jedian

@Brad Pitt

Poxa, que vergonha, meu primo queria ver se eu sabia fazer aparecer rachaduras no local da bomba, e, eu fiz, mas não tinha editado pra o script ficar menor!

nem percebi que tava pra criar rachaduras ali, to ciente desse erro e ja arrumei,Obrigado :D

tipo, não ciente de pq faz isso mas, vo tira as rachaduras!

:D

@VittinhoO Obrigado :P

Compartilhar este post


Link para o post
Kuma Bear    33
Kuma Bear

Nem funfo aqui!

Não manda magic effect ÒÓ

 

[31/01/2011 20:18:26] [Error - Action Interface]

[31/01/2011 20:18:26] In a timer event called from:

[31/01/2011 20:18:26] data/actions/scripts/other/bomba.lua:onUse

[31/01/2011 20:18:26] Description:

[31/01/2011 20:18:26] (luaDoCombatAreaHealth) Area not found

Compartilhar este post


Link para o post
jedian    0
jedian

@bolotabunito: ba cara, que otserv vc usa?, essa função sempre me dá raiva, pois, ela precisa da área em números como 1,2,3. e não da certo usar AREA_CROSS1X1, aí talves no seu server da certo com esse AREA_xasdasc, então, ali onde diz

doAreaCombatHealth(0, 8, frompos, 50, -500, -1000, 6)

coloca

doAreaCombatHealth(0, 8, frompos, AREA_CIRCLE3X3, -500, -1000, 6)

não sei se da certo tenta ae

Compartilhar este post


Link para o post
vyctor17    35
vyctor17

jedian pq tu nao faiz um sistema pra desarmar tipo vc cata um item use with da use na bonba ativada dai aparece tipo o time 5.4.3.etc e se der certo a bonba nao esplode

Compartilhar este post


Link para o post
Ribas1574    1
Ribas1574

mt good mano :D

Agree s2

 

--edit--

@bolotabunito: ba cara, que otserv vc usa?, essa função sempre me dá raiva, pois, ela precisa da área em números como 1,2,3. e não da certo usar AREA_CROSS1X1, aí talves no seu server da certo com esse AREA_xasdasc, então, ali onde diz

coloca

não sei se da certo tenta ae

 

eu tenho 2 ots aqui em casa, então em um funcionou perfeitamente já no outro um stiller yourots, não funcionou com nenhum dos dois cdg.. o primeiro não da em nada, o segundo so da em 1 sqm '-'

Editado por Ribas1574
;x

Compartilhar este post


Link para o post
jedian    0
jedian

@Ribas1574

Oi, desculpa, meu amigo teve o mesmo erro, agora lá, troca por isso:

doAreaCombatHealth(0, 8, frompos, 1, -500, -1000, 6)

Funcionou nele. Obrigado por gostar!

Compartilhar este post


Link para o post
hicke98    0
hicke98

Incrivelll isso sim eh um kboom =d

Compartilhar este post


Link para o post
sequeled    0
sequeled

muito bom parabens !

Compartilhar este post


Link para o post
jedian    0
jedian

@hicke98 e @sequeled

Muito obrigado :)

@Topic

Galera, posta ae, fico muuito feliz com seus posts, de verdade :D

Compartilhar este post


Link para o post
Kuma Bear    33
Kuma Bear

Como eu Faço para dar 2 Efeitos Conssecutivamentes (é assim que escreve?)

 

D:

 

Tpw, 3 Arr..

 

Com delay de 2 segundos kada efeito, Da? D:

Compartilhar este post


Link para o post
jedian    0
jedian

@bolotabunito

Você quer tipo, que exploda 3 vezes? uma vez a cada tantos sec? tipo aquelas magias?

Se for isso...

Sim, é possível, aqui tá um exemplo, é só configurar o que está em verde:

 

local err = createCombatArea({
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 3, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}})[color="green"] -- troca as áreas para as desejadas[/color]

local err2 = createCombatArea({
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 3, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}}) [color="green"]-- troca as áreas para as desejadas[/color]

local err3 = createCombatArea({
{0, 0, 1, 1, 1, 0, 0},
{0, 1, 1, 1, 1, 1, 0},
{1, 1, 1, 1, 1, 1, 1},
{1, 1, 1, 3, 1, 1, 1},
{1, 1, 1, 1, 1, 1, 1},
{0, 1, 1, 1, 1, 1, 0},
{0, 0, 1, 1, 1, 0, 0}}) [color="green"]-- troca as áreas para as desejadas[/color]
function onUse(cid, item, frompos, item2, topos) --Script "Bomba" by Jedian
if frompos.x == 65535 then
doPlayerSendCancel(cid, 'You cannot use it here.')
else
doRemoveItem(item.uid, 1)
doSendMagicEffect(frompos, 3) 
local m = {[0] = 0, [1] = 5, [2] = 4, [3] = 3, [4] = 2, [5] = 1}
for i, v in ipairs(m) do
addEvent(doSendAnimatedText, (i - 1)*1000, frompos, v, 180)
end
addEvent(af, 5050, cid, item, frompos, item2, topos)
end
end

function af(cid, item, frompos, item2, topos)
doSendAnimatedText(frompos, 'Caboom!', 180)
doAreaCombatHealth(0, 8, frompos, err, -500, -1000, 6)
addEvent(doAreaCombatHealth, 100, 0, 8, frompos, err2, -500, -1000, 6) [color="green"]-- Configurando: (100 = tempo depois da primeira explosão(em milisegundos), 0 = dexa assim, 8 = tipo de dano[fogo,gelo,etc], frompos = posição, err2 = nome da area, -500 = dano minimo, -1000 = dano maximo, 6 = efeito que manda na arr)[/color]
addEvent(doAreaCombatHealth, 100, 0, 8, frompos, err3, -500, -1000, 6) [color="green"]-- configure igualmente ao de cima[/color]
end

 

Valeu por comentar! :alegre:

Compartilhar este post


Link para o post
Sincker    0
Sincker

muito bom o script fiz ateh um npc pra vender cara eu consegui consertar algumas coisas e tals

mais mt bom msm vlw aew man por compartilhar esse script

Compartilhar este post


Link para o post
Kekezito_LHP    1
Kekezito_LHP

Eu Acho que você deveria coloca para pega skulls, porque se um cara começa usa nos lvls low o pessoal sai.

Mais parabens script muito bom

Compartilhar este post


Link para o post
Volcan    0
Volcan

Funciono Perfeitamente!

Compartilhar este post


Link para o post
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  
  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×