Ir para conteúdo
  • 0

[Script] StorageValue


KarlKalvin

Pergunta

To com esse script aqui...

 

 

 


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

local chance = 10 -- chance de cortar
local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar
local premio = madeiras[math.random(1, #madeiras)]
local transformItem = 0
local texts = {"Coletando Informações..."}  -- texto que irá aparecer quando usar o item
local randoms = texts[math.random(1,#texts)]
local time = 2 -- Minutos para crescer novamente
local tempo = 1
local outfit = 38                   -- ID da Outfit Male.
local outfit2 = 31                  -- ID da Outfit Female.

if isRiderOrFlyOrSurf(cid) then
   return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
end

   local name = getItemNameById(item2.itemid)
    if not name:find("fainted") then
 doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
 return true
end
 
if getPlayerStorageValue(cid, 12015) ~= 1 then
doPlayerSendCancel(cid, "Nao pode.")
return true
end

   if getPlayerSex(cid) == 1 then
      doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.
   else
       doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.
end
doCreatureSetNoMove(cid, true)
addEvent(function()
    if not isPlayer(cid) then return true end
    doCreatureSetNoMove(cid, false)
end, 1000)


    local name = getItemNameById(item2.itemid)
    if name:find("fainted") then
                    if math.random(1,100) >= chance then
                        doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
                        item = doCreateItemEx(premio, math.random(2,5))
                        doItemSetAttribute(item, "unique", getCreatureName(cid))
                        doPlayerAddItemEx(cid, item)
                        addEvent(doCreatureSetNoMove, cid, false)
                        addEvent(doPlayerSendTextMessage, cid, 22, "Você coletou informações e ganhou pontos.")
    else
                        doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
                        addEvent(doCreatureSetNoMove, cid, false)
                        addEvent(doPlayerSendTextMessage, cid,22,"Você não conseguiu coletar.")
                end
            end
    return true
end

 

 

Está funcionando perfeitamente só que ele tá podendo escanear o mesmo corpo 1x,2x,3x várias vezes e eu quero que o player só possa escanear o corpo 1 vez.

Alguém pode me ajudar? Obrigado!

 

POSTEI NA ÁREA ERRADA, DESCULPE. MOVA POR FAVOR.

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

Posts Recomendados

  • 0
17 minutos atrás, KarlKalvin disse:

 

Me explica oque significa >= 1, <= 1, == 1, ~=1, e == null?

São sinais matemáticos:

 

<= menor/menor ou igual à

>= maior/maior ou igual à

== igualdade absoluta

~= diferente  -> no php é: !=

null - valor nulo

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

  • 0
22 minutos atrás, KarlKalvin disse:

 

Me explica oque significa >= 1, <= 1, == 1, ~=1, e == null?

São operadores relacionais. Eles fazem verificações e só retornam valores booleanos, ou seja, true ou false.

 

>= : maior ou igual.

 

ex:

 

23 >= 23 retorna true, porque 23 é maior ou igual à 23

23 >= 14 retorna true, porque 23 é maior ou igual à 14

23 >= 24 retorna false, porque 23 não é maior ou igual à 24

 

<= : mesmo caso do anterior, só que significa menor ou igual.

 

==: operador de comparação

 

ex:

 

2 == 2 retorna true, porque 2 é igual à dois

2 == 3 retorna false, porque 2 não é igual à três

 

~= ( também visto como != ): mesmo caso do anterior, só que significa diferente. 

 

ex:

 

2 ~= 2 retorna false, porque 2 não é diferente de 2

2 ~= 3, retorna true, porque 2 é diferente de 2

 

Null ou nil é mais complexo. Ele é basicamente um nada que significa algo e ocupa espaço na memória. Pode ser usado em comparações e é útil em alguns casos.

 

Uma variável qnd só declarada é igual à null.

ex. em C++:

 

int a;

std::cout << a;

Vai retornar null.

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

  • 0

Veja se meu raciocinio está correto....

 

O script tá trabalhando com um actionID 4432

 

Se eu por um if no começo do script com if getActionID(cid, 4432) ~= 1 then

return doPlayerSendCancel(cid, MSG_NAO)

end

 

Citar

 


function getActionID(itemid)
    return getItemDescriptions(itemid).actionid
end
 

 

 

Função do getactionid, to tentando dar uns desenrolos aqui... ai o script ficaria assim:

 

 



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

local chance = 10 -- chance de cortar
local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar
local premio = madeiras[math.random(1, #madeiras)]
local scanningFailCanRepeat = false --ponha true se quiser que de para escanear novamente se o escaneamento falhar. Se botar false, só vai dar pra escanear o mesmo corpse 1x, independente da falha ou sucesso
local transformItem = 0
local texts = {"Coletando Informações..."}  -- texto que irá aparecer quando usar o item
local randoms = texts[math.random(1,#texts)]
local time = 2 -- Minutos para crescer novamente
local tempo = 1
local outfit = 38                   -- ID da Outfit Male.
local outfit2 = 31                  -- ID da Outfit Female.

if isRiderOrFlyOrSurf(cid) then
   return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
end

if getActionID(cid, 4432) == 1 then
  return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
end
                            
   local name = getItemNameById(item2.itemid)
    if not name:find("fainted") then
 doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
 return true
end
 
if getPlayerStorageValue(cid, 12015) ~= 1 then
doPlayerSendCancel(cid, "Nao pode.")
return true
end

   if getPlayerSex(cid) == 1 then
      doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.
   else
       doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.
end
doCreatureSetNoMove(cid, true)
addEvent(function()
    if not isPlayer(cid) then return true end
    doCreatureSetNoMove(cid, false)
end, 1000)


    local name = getItemNameById(item2.itemid)
    tempo = 5 -- Segundos em que "paralisia" fica no player 
    if name:find("fainted") and item2.aid ~= 4432 then
        if math.random(1,100) >= chance then
            doSetItemActionId(item2.aid, 4432)
            doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
            item = doCreateItemEx(premio, math.random(2,5))
            doItemSetAttribute(item, "unique", getCreatureName(cid))
            doPlayerAddItemEx(cid, item)
            doCreatureSetNoMove(cid, false)
            doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")
        else
            doSetItemActionId(item2.aid, 4432)
            doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
            addEvent(function()
                doCreatureSetNoMove(cid, false)
                doPlayerSendTextMessag(cid,22,"Você não conseguiu coletar.")        
            end, time * 1000)
        end
    end
    return true
end

 

 

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

  • 0
3 minutos atrás, KarlKalvin disse:

Veja se meu raciocinio está correto....

 

O script tá trabalhando com um actionID 4432

 

Se eu por um if no começo do script com if getActionID(cid, 4432) ~= 1 then

return doPlayerSendCancel(cid, MSG_NAO)

end

?

Não existe a função getActionID :/

Eu fiz isso aí usando o operador lógico AND.

Ele basicamente retorna true se as duas condições forem verdadeira, senão retorna false. É bem útil pra não ter que fazer vários ifs.

 

Com if encadeado:

 

if a = true then

  if b = true then

    bloco de código

  end

end

 

Com o operador and:

 

if a = true and b = true then

bloco de código

end

 

No teu script eu usei ele, olha:

if name:find("fainted") and item2.aid ~= 4432 then

Traduzindo, ficaria:

Se achar FAINTED no nome do item que eu usei o Use With e o item que eu usei o Use With tiver action ID diferente de 4432 então

 

 

Também temos o or e o xor. O or retorna true se pelo menos uma das condições forem verdadeiras, senão retorna false. Já o xor retorna true se só uma das condições forem verdadeiras.

 

Link para o comentário
Compartilhar em outros sites

  • 0
15 minutos atrás, Gabriel Netto disse:

Não existe a função getActionID :/

Eu fiz isso aí usando o operador lógico AND.

Ele basicamente retorna true se as duas condições forem verdadeira, senão retorna false. É bem útil pra não ter que fazer vários ifs.

 

Com if encadeado:

 

if a = true then

  if b = true then

    bloco de código

  end

end

 

Com o operador and:

 

if a = true and b = true then

bloco de código

end

 

No teu script eu usei ele, olha:

if name:find("fainted") and item2.aid ~= 4432 then

Traduzindo, ficaria:

Se achar FAINTED no nome do item que eu usei o Use With e o item que eu usei o Use With tiver action ID diferente de 4432 então

 

 

Também temos o or e o xor. O or retorna true se pelo menos uma das condições forem verdadeiras, senão retorna false. Já o xor retorna true se só uma das condições forem verdadeiras.

 

Eu entendi.. tá uma bela dor de cabeça esse negocio, me adc no skype ai Gabi... kalvin.karl   ( país zimbabue para fácil achar )

Link para o comentário
Compartilhar em outros sites

  • 0

Use este código aqui:

 

function onUse(cid, item, frompos, item2, topos)
	
	local chance = 10 -- chance de cortar
	local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar
	local premio = madeiras[math.random(1, #madeiras)]
	local texts = {"Coletando Informações..."} -- texto que irá aparecer quando usar o item
	local randoms = texts[math.random(1,#texts)]
	local time = 2 -- Segundos de outfit coletando informações
	local outfit = 38 -- ID da Outfit Male.
	local outfit2 = 31 -- ID da Outfit Female.
	
	if isRiderOrFlyOrSurf(cid) then
		return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
	end
	
	local name = getItemNameById(item2.itemid)
	if not name:find("fainted") then
		doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
		return true
	end
	
	if getPlayerStorageValue(cid, 12015) ~= 1 then
		doPlayerSendCancel(cid, "Nao pode.")
		return true
	end
	
	if getPlayerSex(cid) == 1 then
		doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)
	else
		doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)
	end
	doCreatureSetNoMove(cid, true)
	addEvent(function()
		if not isPlayer(cid) then return true end
		doCreatureSetNoMove(cid, false)
	end, 1000)
	
	
	local name = getItemNameById(item2.itemid) 
	if name:find("fainted") and item2.actionid ~= 4432 then
		if math.random(1,100) >= chance then
			doItemSetAttribute(item2.uid, "aid", 4432)
			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
			item = doCreateItemEx(premio, math.random(2,5))
			doItemSetAttribute(item, "unique", getCreatureName(cid))
			doPlayerAddItemEx(cid, item)
			doCreatureSetNoMove(cid, false)
			doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")
		else
			doItemSetAttribute(item2.uid, "aid", 4432)
			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
			addEvent(function()
				doCreatureSetNoMove(cid, false)
				doPlayerSendTextMessage(cid,22,"Você não conseguiu coletar.")		
			end, time * 1000)
		end
	end
	return true
end

Creio que este dará certo.

 

@Gabriel Netto, se tu quiser posso te explicar depois como funciona +- o addEvent

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

  • 0
14 horas atrás, Gabriel Netto disse:

É isso que eu vou fazer HSUAHUSASHAU, não tinha me tocado.

Como faz pra eu verificar o action id do item? :X:

 

Pega de dentro da tabela do item.

item.actionid

7 horas atrás, KarlKalvin disse:

Veja se meu raciocinio está correto....

 

O script tá trabalhando com um actionID 4432

 

Se eu por um if no começo do script com if getActionID(cid, 4432) ~= 1 then

return doPlayerSendCancel(cid, MSG_NAO)

end

 

 

Função do getactionid, to tentando dar uns desenrolos aqui... ai o script ficaria assim:

 

  Mostrar conteúdo oculto

 

 

 

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

 

local chance = 10 -- chance de cortar

local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar

local premio = madeiras[math.random(1, #madeiras)]

local scanningFailCanRepeat = false --ponha true se quiser que de para escanear novamente se o escaneamento falhar. Se botar false, só vai dar pra escanear o mesmo corpse 1x, independente da falha ou sucesso

local transformItem = 0

local texts = {"Coletando Informações..."}  -- texto que irá aparecer quando usar o item

local randoms = texts[math.random(1,#texts)]

local time = 2 -- Minutos para crescer novamente

local tempo = 1

local outfit = 38                   -- ID da Outfit Male.

local outfit2 = 31                  -- ID da Outfit Female.

 

if isRiderOrFlyOrSurf(cid) then

   return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)

end

 

if getActionID(cid, 4432) == 1 then

  return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)

end

                            

   local name = getItemNameById(item2.itemid)

    if not name:find("fainted") then

 doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)

 return true

end

 

if getPlayerStorageValue(cid, 12015) ~= 1 then

doPlayerSendCancel(cid, "Nao pode.")

return true

end

 

   if getPlayerSex(cid) == 1 then

      doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.

   else

       doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)  --  Tempo em que a outfit estará trocada.

end

doCreatureSetNoMove(cid, true)

addEvent(function()

    if not isPlayer(cid) then return true end

    doCreatureSetNoMove(cid, false)

end, 1000)

 

 

    local name = getItemNameById(item2.itemid)

    tempo = 5 -- Segundos em que "paralisia" fica no player 

    if name:find("fainted") and item2.aid ~= 4432 then

        if math.random(1,100) >= chance then

            doSetItemActionId(item2.aid, 4432)

            doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)

            item = doCreateItemEx(premio, math.random(2,5))

            doItemSetAttribute(item, "unique", getCreatureName(cid))

            doPlayerAddItemEx(cid, item)

            doCreatureSetNoMove(cid, false)

            doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")

        else

            doSetItemActionId(item2.aid, 4432)

            doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)

            addEvent(function()

                doCreatureSetNoMove(cid, false)

                doPlayerSendTextMessag(cid,22,"Você não conseguiu coletar.")        

            end, time * 1000)

        end

    end

    return true

end

 

 

 

 

 

Companheiro; além de estar errado os parâmetros da função,  você pode pegar o actionid p item diretamento no corpo dq função onuse ()

Citar
function onUse(cid, item, frompos, item2, topos)

 

item.actionid

Link para o comentário
Compartilhar em outros sites

  • 0
9 minutos atrás, Poccnn disse:

 

Pega de dentro da tabela do item.

item.actionid

 

Companheiro; além de estar errado os parâmetros da função,  você pode pegar o actionid p item diretamento no corpo dq função onuse ()

 

item.actionid

Sim, verdade esqueci de ver se estava correto a verificação de ter actionid kk

 

Atualizei o ultimo código que eu postei.

 

Obs: Tópico movido para a área correta!

Link para o comentário
Compartilhar em outros sites

  • 0
12 horas atrás, KarlKalvin disse:

Veja se meu raciocinio está correto....

 

O script tá trabalhando com um actionID 4432

 

Se eu por um if no começo do script com if getActionID(cid, 4432) ~= 1 then

return doPlayerSendCancel(cid, MSG_NAO)

end

?

Se puder, quero sim, manda pm xD

Link para o comentário
Compartilhar em outros sites

  • 0
5 horas atrás, Drazyn disse:

Use este código aqui:

 


function onUse(cid, item, frompos, item2, topos)
	
	local chance = 10 -- chance de cortar
	local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar
	local premio = madeiras[math.random(1, #madeiras)]
	local texts = {"Coletando Informações..."} -- texto que irá aparecer quando usar o item
	local randoms = texts[math.random(1,#texts)]
	local time = 2 -- Segundos de outfit coletando informações
	local outfit = 38 -- ID da Outfit Male.
	local outfit2 = 31 -- ID da Outfit Female.
	
	if isRiderOrFlyOrSurf(cid) then
		return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
	end
	
	local name = getItemNameById(item2.itemid)
	if not name:find("fainted") then
		doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)
		return true
	end
	
	if getPlayerStorageValue(cid, 12015) ~= 1 then
		doPlayerSendCancel(cid, "Nao pode.")
		return true
	end
	
	if getPlayerSex(cid) == 1 then
		doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)
	else
		doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)
	end
	doCreatureSetNoMove(cid, true)
	addEvent(function()
		if not isPlayer(cid) then return true end
		doCreatureSetNoMove(cid, false)
	end, 1000)
	
	
	local name = getItemNameById(item2.itemid) 
	if name:find("fainted") and item2.actionid ~= 4432 then
		if math.random(1,100) >= chance then
			doItemSetAttribute(item2.uid, "aid", 4432)
			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
			item = doCreateItemEx(premio, math.random(2,5))
			doItemSetAttribute(item, "unique", getCreatureName(cid))
			doPlayerAddItemEx(cid, item)
			doCreatureSetNoMove(cid, false)
			doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")
		else
			doItemSetAttribute(item2.uid, "aid", 4432)
			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)
			addEvent(function()
				doCreatureSetNoMove(cid, false)
				doPlayerSendTextMessage(cid,22,"Você não conseguiu coletar.")		
			end, time * 1000)
		end
	end
	return true
end

Creio que este dará certo.

 

@Gabriel Netto, se tu quiser posso te explicar depois como funciona +- o addEvent

 

Eu também quero uma explicação do addevent, se puder mandar no meu pm também algum link de video aula ou qualquer coisa um texto explicando vou aceitar, obg. 

 

Vou testar o script!

 

EDIT: Script funcionando do jeito que eu queria só tem um detalhe básico quando você usa denovo a função:

 



if getPlayerSex(cid) == 1 then doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000) else doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000) end

 

Ainda está sendo carregada mas o resto não porque?

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

  • 0
7 horas atrás, KarlKalvin disse:

 

Eu também quero uma explicação do addevent, se puder mandar no meu pm também algum link de video aula ou qualquer coisa um texto explicando vou aceitar, obg. 

 

Vou testar o script!

 

EDIT: Script funcionando do jeito que eu queria só tem um detalhe básico quando você usa denovo a função:

 

 

 

 

Ainda está sendo carregada mas o resto não porque?

Ok, não entendi essa sua ultima dúvida...

 

 

Obs: Vou mandar PM para vocês com uma explicaçãozinha básica kk

Link para o comentário
Compartilhar em outros sites

  • 0
53 minutos atrás, Drazyn disse:

Ok, não entendi essa sua ultima dúvida...

 

 

Obs: Vou mandar PM para vocês com uma explicaçãozinha básica kk

 

Tipo... eu consigo "usar" o item nos SQM do meu lado porém esse "usar" é apenas a outfit mudando  já o script em si não funciona mas a outfit muda

Link para o comentário
Compartilhar em outros sites

  • 0
function onUse(cid, item, frompos, item2, topos)	print("inicio")	local chance = 10 -- chance de cortar	local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar	local premio = madeiras[math.random(1, #madeiras)]	local texts = {"Coletando Informações..."} -- texto que irá aparecer quando usar o item	local randoms = texts[math.random(1,#texts)]	local time = 2 -- Segundos de outfit coletando informações	local outfit = 38 -- ID da Outfit Male.	local outfit2 = 31 -- ID da Outfit Female.		if isRiderOrFlyOrSurf(cid) then		return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)	end		local name = getItemNameById(item2.itemid)	if not name:find("fainted") then		doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)		return true	end	print("nao esta de fly")	if getPlayerStorageValue(cid, 12015) ~= 1 then		doPlayerSendCancel(cid, "Nao pode.")		return true	end		if getPlayerSex(cid) == 1 then		doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)		print("male")	else		doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)		print("female")	end		doCreatureSetNoMove(cid, true)	addEvent(function()		if not isPlayer(cid) then return true end		doCreatureSetNoMove(cid, false)	end, 1000)			local name = getItemNameById(item2.itemid) 	if name:find("fainted") and item2.actionid ~= 4432 then		print("isCorpse and not have a actionid")		if math.random(1,100) >= chance then			print("chance >")			doItemSetAttribute(item2.uid, "aid", 4432)			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)			item = doCreateItemEx(premio, math.random(2,5))			doItemSetAttribute(item, "unique", getCreatureName(cid))			doPlayerAddItemEx(cid, item)			addEvent(function()				doCreatureSetNoMove(cid, false)				doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")				print("nao coletou")			end, time * 1000)		else			print("chance < ")			doItemSetAttribute(item2.uid, "aid", 4432)			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)			addEvent(function()				doCreatureSetNoMove(cid, false)				doPlayerSendTextMessage(cid,22,"Você não conseguiu coletar.")	              	print("nao coletou")			end, time * 1000)		end	end	return trueend

Usa esse script, executa o action e me manda print do que aparece na tela...

Link para o comentário
Compartilhar em outros sites

  • 0
6 horas atrás, Drazyn disse:
function onUse(cid, item, frompos, item2, topos)	print("inicio")	local chance = 10 -- chance de cortar	local madeiras = {17180, 17081, 17182, 17183} -- item que o player irá ganhar	local premio = madeiras[math.random(1, #madeiras)]	local texts = {"Coletando Informações..."} -- texto que irá aparecer quando usar o item	local randoms = texts[math.random(1,#texts)]	local time = 2 -- Segundos de outfit coletando informações	local outfit = 38 -- ID da Outfit Male.	local outfit2 = 31 -- ID da Outfit Female.		if isRiderOrFlyOrSurf(cid) then		return doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)	end		local name = getItemNameById(item2.itemid)	if not name:find("fainted") then		doPlayerSendCancel(cid, MSG_NAO_E_POSSIVEL)		return true	end	print("nao esta de fly")	if getPlayerStorageValue(cid, 12015) ~= 1 then		doPlayerSendCancel(cid, "Nao pode.")		return true	end		if getPlayerSex(cid) == 1 then		doSetCreatureOutfit(cid, {lookType = outfit, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)		print("male")	else		doSetCreatureOutfit(cid, {lookType = outfit2, lookHead = 0, lookAddons = 0, lookLegs = 0, lookBody = 0, lookFeet = 0}, time*1*1000)		print("female")	end		doCreatureSetNoMove(cid, true)	addEvent(function()		if not isPlayer(cid) then return true end		doCreatureSetNoMove(cid, false)	end, 1000)			local name = getItemNameById(item2.itemid) 	if name:find("fainted") and item2.actionid ~= 4432 then		print("isCorpse and not have a actionid")		if math.random(1,100) >= chance then			print("chance >")			doItemSetAttribute(item2.uid, "aid", 4432)			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)			item = doCreateItemEx(premio, math.random(2,5))			doItemSetAttribute(item, "unique", getCreatureName(cid))			doPlayerAddItemEx(cid, item)			addEvent(function()				doCreatureSetNoMove(cid, false)				doPlayerSendTextMessage(cid, 22, "Você coletou informações e ganhou pontos.")				print("nao coletou")			end, time * 1000)		else			print("chance < ")			doItemSetAttribute(item2.uid, "aid", 4432)			doSendAnimatedText(topos, ""..randoms.."", TEXTCOLOR_GREEN)			addEvent(function()				doCreatureSetNoMove(cid, false)				doPlayerSendTextMessage(cid,22,"Você não conseguiu coletar.")	              	print("nao coletou")			end, time * 1000)		end	end	return trueend

Usa esse script, executa o action e me manda print do que aparece na tela...

 

Ok. vou testar!

Link para o comentário
Compartilhar em outros sites

×
×
  • Criar Novo...