Ir para conteúdo

Featured Replies

  • Respostas 14
  • Visualizações 1.3k
  • Created
  • Última resposta

Top Posters In This Topic

Most Popular Posts

  • @r0bert0lol  local lvl_min = 400 -- Leve mínimo para usar o script. local storage = 344240 -- Para não usar o script novamente. local skills_t = { {skill = SKILL_CLUB, count_lvl = 10}, {skill =

  • @r0bert0lol  local cfg = { level = 400, effect = 30, addLevel = { [1] = {ID_LEVEL = SKILL_AXE, quant = 1}, [2] = {ID_LEVEL = SKILL_SWORD, quant = 1}, [3] = {ID_LEVEL = SKILL_LEVEL, quant

  • local cfg = { level = 400, effect = 30, addLevel = { [1] = {id = SKILL_AXE, quant = 1}, [2] = {id = SKILL_SWORD, quant = 1}, [3] = {id = SKILL_LEVEL, quant = 1}, [4] = {id = SKILL_CLUB, qua

Postado

@FlavioHulk Pior que eu havia utilizado o for numérico primeiro kk
mas ele falou que deu erro ali e eu n tinha visto que era na linha 18 e pensei que era no for, dai mudei para pairs:
 

  Em 01/09/2018 em 15:49, tataboy67 disse:

@r0bert0lol 


local cfg = {
	level = 400,
	effect = 30,
	addLevel = {
		[1] = {ID_LEVEL = SKILL_AXE, quant = 1},
		[2] = {ID_LEVEL = SKILL_SWORD, quant = 1},
		[3] = {ID_LEVEL = SKILL_LEVEL, quant = 1},
		[4] = {ID_LEVEL = SKILL_CLUB, quant = 1}
	},

	storage = 344240,
}

function onUse(cid, item, fromPosition, itemEx, toPosition)
	
	local posPlayer = getPlayerPosition(cid)
	
	if not getPlayerStorageValue(cid, cfg.storage) < 1 then
		doPlayerSendTextMessage(cid, 23, "Voce ja usou o item.")
		doSendMagicEffect(posPlayer, cfg.effect)
		return false
	end

	if not getPlayerLevel(cid) >= cfg.level then
		doPlayerSendTextMessage(cid, 23, "Voce nao possui nivel.")
		doSendMagicEffect(posPlayer, cfg.effect)
		return false
	end

	for i = 1, #cfg.addLevel do
		doPlayerAddSkill(cid, cfg.addLevel[i].ID_LEVEL, cfg.addLevel[i].quant)
	end
	setPlayerStorageValue(cid, cfg.storage, 1)
	return true
end

 

A parte do getPlayerLevel n esta errado eu acho... na verdade o erro estava causando na linha 18:
if not getPlayerStorageValue(cid, cfg.storage) < 1 then

Postado
  Em 02/09/2018 em 02:23, tataboy67 disse:

@FlavioHulk Pior que eu havia utilizado o for numérico primeiro kk
mas ele falou que deu erro ali e eu n tinha visto que era na linha 18 e pensei que era no for, dai mudei para pairs:
 

A parte do getPlayerLevel n esta errado eu acho... na verdade o erro estava causando na linha 18:
if not getPlayerStorageValue(cid, cfg.storage) < 1 then

Então, justamente nessa linha... Ele tá vendo como erro utilizar not em uma função que puxa número... Ao certo deveria ser assimilado junto com operadores aritméticos, saca? Nesse caso só remover o not e ajustar o operador "<"

Postado
  Em 02/09/2018 em 03:00, FlavioHulk disse:

Então, justamente nessa linha... Ele tá vendo como erro utilizar not em uma função que puxa número... Ao certo deveria ser assimilado junto com operadores aritméticos, saca? Nesse caso só remover o not e ajustar o operador "<"

Obrigado pela dica ^^ . Não usarei mais not em casos do tipo.

Postado
  • Autor

Ambos os códigos estão funcionando, mas o estranho é que não sei o motivo mas em meu servidor não adiciona os leveis exatos, do Level 10 ao 13 ao usar independentemente da quantidade de Leveis que coloco para ser adicionado o player recebe apenas 1 level, e apartir do 13 buga e não recebe mais nada, não sei oque está levando a acontecer isso mas acho que é algo em meu servidor e não no script. (estou investigando)

 

Os codigos que testei e "funcionaram" são esses;

Script do Kotz

Mostrar conteúdo oculto

Script do Tataboy corrigido pelo Flaviohulk

Mostrar conteúdo oculto

 

Agradeço a todos que dedicaram tempo montando o script xD

Editado por r0bert0lol (veja o histórico de edições)

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