Ir para conteúdo
  • 0

Ao atacar mudar outfit


Allangod

Pergunta

Gostaria de pedir um system que ao atacar usando arma melee (De perto) o player mudaria de outfit por um segundo (Copiando a cor do outfit normal, pq normalmente ele fica cinza).

Que nem esse video aqui

Eu sei que ja tem um Attack System aki no xtibia mas nao funfo aqui (Nenhum player consegue pegar target de ngm,ou seja, nao ataca).

Podem olhar se quiserem http://www.xtibia.co...-attack-system/

Uso forgotten server 8.54.

Vlws e REP+ para quem conseguir.

Editado por Allangod
Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

local outfits = {
       [136] = 137,
       [128] = 129,
}

function onAttack(cid, target)
       local tmp = getCreatureOutfit(cid)
       if outfits[tmp.lookType] then
               tmp.lookType = outfits[tmp.lookType]
               doSetCreatureOutfit(cid, tmp, 900)
       end
       return true
end

 

registerCreatureEvent(cid, "AttackAnimation")

 

<event type="attack" name="AttackAnimation" event="script" value="attackanimation.lua"/>

 

Testado e funcional.

 

Coloquei como exemplo, se o jogador está com a outfit Citizen, muda para Hunter por 900 milissegundos, ficaria bem mais realista se mudasse conforme o attackspeed do jogador, mas não existe uma função que retorne o attackspeed.

 

Abraços.

Link para o comentário
Compartilhar em outros sites

  • 0

pra soh mudar quando ta perto coloca..

if getDistanceBetween(getPlayerPosition(cid), getPlayerPosition(target)) > 1 then
return true
end

 

tony

da sim pra usar tabelas pra isso...

Link para o comentário
Compartilhar em outros sites

  • 0

hã.. nao! kk +/- assim..

 

local outfits = {
[123] = {
		  [0] = {lookType = 124},
		  [1] = {lookType = 125},
		  [2] = {lookType = 126},
		  [3] = {lookType = 127},
		},
[150] = {
		  [0] = {lookType = 151},
		  [1] = {lookType = 152},
		  [2] = {lookType = 153},
		  [3] = {lookType = 154},
		},
}
local get = getCreatureOutfit(cid)
local dir = getCreatureLookDir(cid)

if outfits[get.lookType] then
doSetCreatureOutfit(cid, outfits[get.lookType][dir], 900)
end

 

 

edit: odeio esse CODE --' bem q podiam da um jeito nele kk

Editado por Slicer
Link para o comentário
Compartilhar em outros sites

  • 0

Pra finalizar tem como vc fazer igualzinho esse só q só troca a outfit se for de perto?

Igual a esse \/ só q só usar se tiver de perto

 

 

 

local outfits = {

[136] = 137,

[128] = 129,

}

 

function onAttack(cid, target)

local tmp = getCreatureOutfit(cid)

if outfits[tmp.lookType] then

tmp.lookType = outfits[tmp.lookType]

doSetCreatureOutfit(cid, tmp, 900)

end

return true

end

Editado por Allangod
Link para o comentário
Compartilhar em outros sites

  • 0

Assim?

local outfits = {

[136] = 137,

[128] = 129,

}

 

function onAttack(cid, target)

if getDistanceBetween(getPlayerPosition(cid), getPlayerPosition(target)) > 1 then

return true

end

local tmp = getCreatureOutfit(cid)

if outfits[tmp.lookType] then

tmp.lookType = outfits[tmp.lookType]

doSetCreatureOutfit(cid, tmp, 900)

end

return true

end

Editado por Allangod
Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...