Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Bom, boa noite primeiramente.

 

Estou voltando aos otservers porém agora com o intuito de aprender, principalmente programação porém as vezes preciso de uma ajuda ( mais pra tirar dúvidas pois não manjo muito). Então se tiver alguem que manje bastante, como garou por exemplo, ou seila outros membros. Me mandem o face...

 

Um exemplo de ajuda de script que preciso é esse, que estava fazendo mas não ta funcionando:

 

Na verdade este é meu "primeiro" script em anos. Sempre li tutoriais mais nunca tinha uma ideia, e agora surgiu e quis por em praticas mas estou enfrentando problemas.

function onAttack(cid, target) -- Ao Atacar.

local atacante = isPlayer(cid)
local atacado = isPlayer(target)
local skulls = {1, 2, 3, 4, 5}


if atacante and atacado then
  if getPlayerStorageValue(target, 2000) == 1 and getPlayerStorageValue(cid, 3000) == 1 then
	if getPlayerStorageValue(cid, 3000) == 1 and getCreatureSkullType(cid) == skulls then
	doCreatureSetSkullType(cid, 0)
	doRemoveCondition(cid, CONDITION_INFIGHT)
	end
   end
end

return true
end 

Os scripts criados, postarei aqui para ajudar a comunidade.

Editado por Seagull (veja o histórico de edições)
Link para o post
Compartilhar em outros sites

uma dica pra quem tá começando é: se seu script não funcionar e não der erro no console coloque um monte de else's pra mandar mensagem pro player indicando aonde é o erro.. no seu caso ficaria assim:
 

function onAttack(cid, target) -- Ao Atacar.


local atacante = isPlayer(cid)
local atacado = isPlayer(target)
local skulls = {1, 2, 3, 4, 5}




if atacante and atacado then
  if getPlayerStorageValue(target, 2000) == 1 and getPlayerStorageValue(cid, 3000) == 1 then
if getCreatureSkullType(cid) == skulls then
doCreatureSetSkullType(cid, 0)
doRemoveCondition(cid, CONDITION_INFIGHT)
else 
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "There's no skull to remove.")
end
else
doPlayerSendTextMessage(cid,MESSAGE_INFO_DESCR, "You or "..getCreatureName(target).." don't have the required storages.")
   end
end


return true
end 

Fora que isso é um creaturescript, você tem que declarar ele no creaturescripts.xml e registrar o evento no creaturescripts\scripts\login.lua

creaturescripts.xml:

<event type="attack" name="attackpk" script="attackpk.lua"/>

e em login.lua adiciona essa linha:

registerCreatureEvent(cid, "attackpk")

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)

Link para o post
Compartilhar em outros sites

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

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emojis são permitidos.

×   Seu link foi automaticamente incorporado.   Mostrar como link

×   Seu conteúdo anterior foi restaurado.   Limpar o editor

×   Não é possível colar imagens diretamente. Carregar ou inserir imagens do URL.

  • Quem Está Navegando   0 membros estão online

    Nenhum usuário registrado visualizando esta página.

×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo