[Encerrado] [Dúvida]

Seagull
em Tópicos Sem Resposta

Seagull

Groow???
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 20/09/12Posts: 114

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 skulls = {1, 2, 3, 4, 5}

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

return true
end  

Os scripts criados, postarei aqui para ajudar a comunidade.

RicardoIanelli

ANBU Leader
avatar
Campones
Campones

INFOS

Grupo: CamponesRegistrado: 18/12/09Posts: 15

1º - Ali você checa a variavel "inimigo" que não foi declarada.

2º - Ali onde você ta usando getPlayerStorageValue(atacado, 2000) e todos os outros lugares que você tá usando "atacado" e "atacante" sem ser no primeiro if tem de ser trocados pra cid e target respectivamente, porque a função "isPlayer" é do tipo booleana, retorna true ou false só, e essas "getStorage", etc pedem uma integer, o id da criatura.

 

3º - Você tá botando 'getPlayerStorageValue(atacado, 2000) == true', mas essa getPlayerStorageValue retorna uma STRING xD Você pode salvar ela tipo:

setPlayerStorageValue(cid, 2000, 1) ou setPlayerStorageValue(cid, 2000, 'true') e depois só comparar: (
getPlayerStorageValue(atacado, 2000) == 'true') por exemplo.

Faço sistemas, magias, e todo tipo de code.

Mandar mensagem caso queira negociar.

 

Seagull

Groow???
avatar
Artesão
Artesão

INFOS

Grupo: ArtesãoRegistrado: 20/09/12Posts: 114

Tudo que você falou eu fiz, mesmo assim não funciona. Parece que não está funcionando pra nada.

 

A storage já está setada em dois personagens.

(cid, 3000, 1)

(cid, 2000, 1)

Lordfire

TFS Maintainer
avatar
Lenda
Lenda

INFOS

Grupo: LendaRegistrado: 04/10/06Posts: 2605Gênero: MasculinoChar no Tibia: Knight Orion

No seu segundo if, as palavras estão na ordem errada. O and deve ficar no meio dos valores a serem comparados. x and y, e não and x y.

 

Do mais, o que o script deveria fazer? Se eu não sei o que você quer, impossivel ajudar.

Stigal

don't ever stop...
avatar
Herói
Herói

INFOS

Grupo: HeróiRegistrado: 28/11/10Posts: 3402Gênero: Masculino
A questão neste tópico de suporte foi encerrada por falta de respostas. Este tópico está fechado e foi movido para Suporte - Tópicos Sem Resposta.

+ Caso a dúvida não tenha sido resolvida você poderá criar outro tópico solicitando ajuda.
* Lembre-se que é permitido dar UP no tópico a cada 24 horas para assim o destacar e manter movimentado.

VI6MDIG.png

 

"O fracasso é a oportunidade de se começar de novo inteligentemente"

Minhas Redes Sociais: Youtube | Página & Grupo | Steam  | Discord Xtibia | Skype: @mrooger

 

OTpanel