Ir para conteúdo
  • Cadastre-se

(Resolvido)Comprar item de forma diferente? (complexo?)


Ir para solução Resolvido por luangop,

Posts Recomendados

tfs 0.4

8.60

 

É possivel uma talk de !buy se o player estiver parado em determinado sqm?

 

Por exemplo, no server tem 5 sqm espalhado, permitir o uso da talk !buy apenas se tiver em cima destes sqm e  em cada sqm, vai vir um item diferente com um preço diferente, vou tentar explicar em forma de variável (KKKKKKKKK SQN, ENTENDO PORRA NENHUMA, mas vao entender)

 

!buy ham

 

local config = {
  price = 30,  -- Quantidade de items necessário para comprar.
  count = 1,  -- Quantidade que irá vender.
  item = 666, -- ID do item que vai vender.
  need = 9971,  -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente

  pos = {x=500, y=550, z=7}
}

Link para o post
Compartilhar em outros sites

Tente assim:

(Obs: Não testei.)
 

local pos1 = {x=500, y=550, z=7}
local pos2 = {x=500, y=550, z=7}
local pos3 = {x=500, y=550, z=7}
local pos4 = {x=500, y=550, z=7}
local pos5 = {x=500, y=550, z=7}

local config1 = { -- config da pos 1
	price = 30, -- Quantidade de items necessário para comprar.
	count = 1, -- Quantidade que irá vender.
	item = 666, -- ID do item que vai vender.
	need = 9971, -- ID do item necessário.
	alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
	time = 5 -- Tempo de espera para usar novamente
}
local config2 = { -- config da pos 2
	price = 30, -- Quantidade de items necessário para comprar.
	count = 1, -- Quantidade que irá vender.
	item = 666, -- ID do item que vai vender.
	need = 9971, -- ID do item necessário.
	alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
	time = 5 -- Tempo de espera para usar novamente
}
local config3 = { -- config da pos 3
	price = 30, -- Quantidade de items necessário para comprar.
	count = 1, -- Quantidade que irá vender.
	item = 666, -- ID do item que vai vender.
	need = 9971, -- ID do item necessário.
	alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
	time = 5 -- Tempo de espera para usar novamente
}
local config4 = { -- config da pos 4
	price = 30, -- Quantidade de items necessário para comprar.
	count = 1, -- Quantidade que irá vender.
	item = 666, -- ID do item que vai vender.
	need = 9971, -- ID do item necessário.
	alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
	time = 5 -- Tempo de espera para usar novamente
}
local config5 = { -- config da pos 5
	price = 30, -- Quantidade de items necessário para comprar.
	count = 1, -- Quantidade que irá vender.
	item = 666, -- ID do item que vai vender.
	need = 9971, -- ID do item necessário.
	alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
	time = 5 -- Tempo de espera para usar novamente
}

function onSay(cid, words, param, channel)
	if getCreaturePosition(cid) ~= pos1 and getCreaturePosition(cid) ~= pos2 and getCreaturePosition(cid) ~= pos3 and getCreaturePosition(cid) ~= pos4 and getCreaturePosition(cid) ~= pos5 then
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
		return true
	end
	if getCreaturePosition(cid) == pos1 then
		local config = config1
	elseif getCreaturePosition(cid) == pos2 then
		local config = config2
	elseif getCreaturePosition(cid) == pos3 then
		local config = config3
	elseif getCreaturePosition(cid) == pos4 then
		local config = config4
	elseif getCreaturePosition(cid) == pos5 then
		local config = config5
	end
	if getPlayerItemCount(cid, config.need) >= config.price then
		if getPlayerStorageValue(cid, config.alavancaStr) <= os.time() then
			doPlayerRemoveItem(cid, config.need, config.price)
			doPlayerAddItem(cid, config.item, config.count)
			setPlayerStorageValue(cid, config.alavancaStr, config.time + os.time())
			doCreatureSay(cid, "Você comprou ".. config.count .." ".. getItemNameById(config.item) ..".", TALKTYPE_MONSTER)
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, config.alavancaStr) - os.time() .." segundos para comprar novamente.")
			return true
		end
	else
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. config.price .." ".. getItemNameById(config.need) ..".")
		return true
	end
end

 

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
25 minutos atrás, luangop disse:

Tente assim:

(Obs: Não testei.)

 

 

Jhow, acho que faltou esses fechamento, so não sei onde poe, segue o anexo

 

local pos1 = {x=932], y=1039, z=7}
local pos2 = {x=933, y=1041, z=7}
local pos3 = {x=935, y=1043, z=7}
local pos4 = {x=935, y=1045, z=7}
local pos5 = {x=933, y=1047, z=7}

local config1 = { -- config da pos 1
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2153, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config2 = { -- config da pos 2
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2154, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config3 = { -- config da pos 3
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2155, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config4 = { -- config da pos 4
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2156, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config5 = { -- config da pos 5
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2158, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}

function onSay(cid, words, param, channel)
  if getCreaturePosition(cid) ~= pos1 and getCreaturePosition(cid) ~= pos2 and getCreaturePosition(cid) ~= pos3 and getCreaturePosition(cid) ~= pos4 and getCreaturePosition(cid) ~= pos5 then
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
    return true
  end
  if getCreaturePosition(cid) == pos1 then
    local config = config1
  elseif getCreaturePosition(cid) == pos2 then
    local config = config2
  elseif getCreaturePosition(cid) == pos3 then
    local config = config3
  elseif getCreaturePosition(cid) == pos4 then
    local config = config4
  elseif getCreaturePosition(cid) == pos5 then
    local config = config5
  end
  if getPlayerItemCount(cid, config.need) >= config.price then
    if getPlayerStorageValue(cid, config.alavancaStr) <= os.time() then
      doPlayerRemoveItem(cid, config.need, config.price)
      doPlayerAddItem(cid, config.item, config.count)
      setPlayerStorageValue(cid, config.alavancaStr, config.time + os.time())
      doCreatureSay(cid, "Você comprou ".. config.count .." ".. getItemNameById(config.item) ..".", TALKTYPE_MONSTER)
    else
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, config.alavancaStr) - os.time() .." segundos para comprar novamente.")
      return true
    end
  else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. config.price .." ".. getItemNameById(config.need) ..".")
    return true
  end
end

 

tag.png

Link para o post
Compartilhar em outros sites
11 minutos atrás, JcA disse:

 

Jhow, acho que faltou esses fechamento, so não sei onde poe, segue o anexo

 


local pos1 = {x=932], y=1039, z=7}
local pos2 = {x=933, y=1041, z=7}
local pos3 = {x=935, y=1043, z=7}
local pos4 = {x=935, y=1045, z=7}
local pos5 = {x=933, y=1047, z=7}

local config1 = { -- config da pos 1
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2153, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config2 = { -- config da pos 2
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2154, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config3 = { -- config da pos 3
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2155, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config4 = { -- config da pos 4
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2156, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config5 = { -- config da pos 5
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2158, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}

function onSay(cid, words, param, channel)
  if getCreaturePosition(cid) ~= pos1 and getCreaturePosition(cid) ~= pos2 and getCreaturePosition(cid) ~= pos3 and getCreaturePosition(cid) ~= pos4 and getCreaturePosition(cid) ~= pos5 then
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
    return true
  end
  if getCreaturePosition(cid) == pos1 then
    local config = config1
  elseif getCreaturePosition(cid) == pos2 then
    local config = config2
  elseif getCreaturePosition(cid) == pos3 then
    local config = config3
  elseif getCreaturePosition(cid) == pos4 then
    local config = config4
  elseif getCreaturePosition(cid) == pos5 then
    local config = config5
  end
  if getPlayerItemCount(cid, config.need) >= config.price then
    if getPlayerStorageValue(cid, config.alavancaStr) <= os.time() then
      doPlayerRemoveItem(cid, config.need, config.price)
      doPlayerAddItem(cid, config.item, config.count)
      setPlayerStorageValue(cid, config.alavancaStr, config.time + os.time())
      doCreatureSay(cid, "Você comprou ".. config.count .." ".. getItemNameById(config.item) ..".", TALKTYPE_MONSTER)
    else
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, config.alavancaStr) - os.time() .." segundos para comprar novamente.")
      return true
    end
  else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. config.price .." ".. getItemNameById(config.need) ..".")
    return true
  end
end

 

tag.png

Tem certeza que botou o script corretamente, sem deixar nada que já estava no arquivo? Pois o erro não fez sentido algum.

local pos1 = {x=932], y=1039, z=7}

Pq você botou esse ']'? kkk tira isso

local pos1 = {x=932, y=1039, z=7}

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
32 minutos atrás, luangop disse:

Tem certeza que botou o script corretamente, sem deixar nada que já estava no arquivo? Pois o erro não fez sentido algum.

local pos1 = {x=932], y=1039, z=7}

Pq você botou esse ']'? kkk tira isso

local pos1 = {x=932, y=1039, z=7}

 

Me desculpe, erro meu memso na hora de por as posições.

Mas e esse?

 

 

Sem título.png

Link para o post
Compartilhar em outros sites
14 minutos atrás, JcA disse:

 

Me desculpe, erro meu memso na hora de por as posições.

Mas e esse?

 

 

Sem título.png

Poste o script como está ai no seu servidor.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
9 horas atrás, luangop disse:

Poste o script como está ai no seu servidor.

local pos1 = {x=932}, y=1039, z=7}
local pos2 = {x=933, y=1041, z=7}
local pos3 = {x=935, y=1043, z=7}
local pos4 = {x=935, y=1045, z=7}
local pos5 = {x=933, y=1047, z=7}

local config1 = { -- config da pos 1
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2153, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config2 = { -- config da pos 2
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2154, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config3 = { -- config da pos 3
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2155, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config4 = { -- config da pos 4
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2156, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config5 = { -- config da pos 5
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2158, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}

function onSay(cid, words, param, channel)
  if getCreaturePosition(cid) ~= pos1 and getCreaturePosition(cid) ~= pos2 and getCreaturePosition(cid) ~= pos3 and getCreaturePosition(cid) ~= pos4 and getCreaturePosition(cid) ~= pos5 then
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
    return true
  end
  if getCreaturePosition(cid) == pos1 then
    local config = config1
  elseif getCreaturePosition(cid) == pos2 then
    local config = config2
  elseif getCreaturePosition(cid) == pos3 then
    local config = config3
  elseif getCreaturePosition(cid) == pos4 then
    local config = config4
  elseif getCreaturePosition(cid) == pos5 then
    local config = config5
  end
  if getPlayerItemCount(cid, config.need) >= config.price then
    if getPlayerStorageValue(cid, config.alavancaStr) <= os.time() then
      doPlayerRemoveItem(cid, config.need, config.price)
      doPlayerAddItem(cid, config.item, config.count)
      setPlayerStorageValue(cid, config.alavancaStr, config.time + os.time())
      doCreatureSay(cid, "Você comprou ".. config.count .." ".. getItemNameById(config.item) ..".", TALKTYPE_MONSTER)
    else
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, config.alavancaStr) - os.time() .." segundos para comprar novamente.")
      return true
    end
  else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. config.price .." ".. getItemNameById(config.need) ..".")
    return true
  end
end

 

<talkaction words="!buy" event="script" value="buy.lua" />

 

Link para o post
Compartilhar em outros sites
5 horas atrás, JcA disse:

local pos1 = {x=932}, y=1039, z=7}
local pos2 = {x=933, y=1041, z=7}
local pos3 = {x=935, y=1043, z=7}
local pos4 = {x=935, y=1045, z=7}
local pos5 = {x=933, y=1047, z=7}

local config1 = { -- config da pos 1
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2153, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config2 = { -- config da pos 2
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2154, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config3 = { -- config da pos 3
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2155, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config4 = { -- config da pos 4
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2156, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}
local config5 = { -- config da pos 5
  price = 30, -- Quantidade de items necessário para comprar.
  count = 1, -- Quantidade que irá vender.
  item = 2158, -- ID do item que vai vender.
  need = 9971, -- ID do item necessário.
  alavancaStr = 3332, -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
  time = 5 -- Tempo de espera para usar novamente
}

function onSay(cid, words, param, channel)
  if getCreaturePosition(cid) ~= pos1 and getCreaturePosition(cid) ~= pos2 and getCreaturePosition(cid) ~= pos3 and getCreaturePosition(cid) ~= pos4 and getCreaturePosition(cid) ~= pos5 then
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
    return true
  end
  if getCreaturePosition(cid) == pos1 then
    local config = config1
  elseif getCreaturePosition(cid) == pos2 then
    local config = config2
  elseif getCreaturePosition(cid) == pos3 then
    local config = config3
  elseif getCreaturePosition(cid) == pos4 then
    local config = config4
  elseif getCreaturePosition(cid) == pos5 then
    local config = config5
  end
  if getPlayerItemCount(cid, config.need) >= config.price then
    if getPlayerStorageValue(cid, config.alavancaStr) <= os.time() then
      doPlayerRemoveItem(cid, config.need, config.price)
      doPlayerAddItem(cid, config.item, config.count)
      setPlayerStorageValue(cid, config.alavancaStr, config.time + os.time())
      doCreatureSay(cid, "Você comprou ".. config.count .." ".. getItemNameById(config.item) ..".", TALKTYPE_MONSTER)
    else
      doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, config.alavancaStr) - os.time() .." segundos para comprar novamente.")
      return true
    end
  else
    doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. config.price .." ".. getItemNameById(config.need) ..".")
    return true
  end
end

 


<talkaction words="!buy" event="script" value="buy.lua" />

 

Cara não estou entendendo o que se passa na sua cabeça, pra vc botar isso:
local pos1 = {x=932}, y=1039, z=7}

Não se fecha dentro do array, deixa assim:
local pos1 = {x=932, y=1039, z=7}

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites

@luangop

 

Foi mal, é a drogas, que maluquice!

Bom, agora sim, é um problema real, quando estou em cima do sqm certo, e uso o comando, da essa mensagem, e não acontece nada, nem erros no distro:

 

15:18 Lugar inadequado para usar o comando.

Link para o post
Compartilhar em outros sites
2 horas atrás, JcA disse:

@luangop

 

Foi mal, é a drogas, que maluquice!

Bom, agora sim, é um problema real, quando estou em cima do sqm certo, e uso o comando, da essa mensagem, e não acontece nada, nem erros no distro:

 

15:18 Lugar inadequado para usar o comando.

E a coordenada ta batendo certinho do lugar que vc esta com o script?

Daqui algumas horas eu testo aqui.

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

Link para o post
Compartilhar em outros sites
12 horas atrás, luangop disse:

E a coordenada ta batendo certinho do lugar que vc esta com o script?

Daqui algumas horas eu testo aqui.

 

Esta sim bro

Link para o post
Compartilhar em outros sites
  • Solução

Nossa, sofri agora kkk

Depois de várias tentativas frustradas, consegui da seguinte maneira:
 

Spoiler

function onSay(cid, words, param, channel)
	local ppos = getCreaturePosition(cid)
	if (ppos.x == 154) and (ppos.y == 57) and (ppos.z == 7) then ----------------------------------------------------------------- POS 1
		local price = 30 -- Quantidade de items necessário para comprar.
		local count = 1 -- Quantidade que irá vender.
		local item = 2153 -- ID do item que vai vender.
		local need = 9971 -- ID do item necessário.
		local alavancaStr = 3332 -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
		local time = 5 -- Tempo de espera para usar novamente
		if getPlayerItemCount(cid, need) >= price then
			if getPlayerStorageValue(cid, alavancaStr) <= os.time() then
				doPlayerRemoveItem(cid, need, price)
				doPlayerAddItem(cid, item, count)
				setPlayerStorageValue(cid, alavancaStr, time + os.time())
				doCreatureSay(cid, "Você comprou ".. count .." ".. getItemNameById(item) ..".", TALKTYPE_MONSTER)
				return true
			else
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, alavancaStr) - os.time() .." segundos para comprar novamente.")
				return true
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. price .." ".. getItemNameById(need) ..".")
			return true
		end
	elseif (ppos.x == 155) and (ppos.y == 57) and (ppos.z == 7) then ----------------------------------------------------------------- POS 2
		local price = 30 -- Quantidade de items necessário para comprar.
		local count = 1 -- Quantidade que irá vender.
		local item = 2155 -- ID do item que vai vender.
		local need = 9971 -- ID do item necessário.
		local alavancaStr = 3332 -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
		local time = 5 -- Tempo de espera para usar novamente
		if getPlayerItemCount(cid, need) >= price then
			if getPlayerStorageValue(cid, alavancaStr) <= os.time() then
				doPlayerRemoveItem(cid, need, price)
				doPlayerAddItem(cid, item, count)
				setPlayerStorageValue(cid, alavancaStr, time + os.time())
				doCreatureSay(cid, "Você comprou ".. count .." ".. getItemNameById(item) ..".", TALKTYPE_MONSTER)
				return true
			else
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, alavancaStr) - os.time() .." segundos para comprar novamente.")
				return true
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. price .." ".. getItemNameById(need) ..".")
			return true
		end
	elseif (ppos.x == 155) and (ppos.y == 57) and (ppos.z == 7) then ----------------------------------------------------------------- POS 3
		local price = 30 -- Quantidade de items necessário para comprar.
		local count = 1 -- Quantidade que irá vender.
		local item = 2155 -- ID do item que vai vender.
		local need = 9971 -- ID do item necessário.
		local alavancaStr = 3332 -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
		local time = 5 -- Tempo de espera para usar novamente
		if getPlayerItemCount(cid, need) >= price then
			if getPlayerStorageValue(cid, alavancaStr) <= os.time() then
				doPlayerRemoveItem(cid, need, price)
				doPlayerAddItem(cid, item, count)
				setPlayerStorageValue(cid, alavancaStr, time + os.time())
				doCreatureSay(cid, "Você comprou ".. count .." ".. getItemNameById(item) ..".", TALKTYPE_MONSTER)
				return true
			else
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, alavancaStr) - os.time() .." segundos para comprar novamente.")
				return true
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. price .." ".. getItemNameById(need) ..".")
			return true
		end
	elseif (ppos.x == 155) and (ppos.y == 57) and (ppos.z == 7) then ----------------------------------------------------------------- POS 4
		local price = 30 -- Quantidade de items necessário para comprar.
		local count = 1 -- Quantidade que irá vender.
		local item = 2155 -- ID do item que vai vender.
		local need = 9971 -- ID do item necessário.
		local alavancaStr = 3332 -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
		local time = 5 -- Tempo de espera para usar novamente
		if getPlayerItemCount(cid, need) >= price then
			if getPlayerStorageValue(cid, alavancaStr) <= os.time() then
				doPlayerRemoveItem(cid, need, price)
				doPlayerAddItem(cid, item, count)
				setPlayerStorageValue(cid, alavancaStr, time + os.time())
				doCreatureSay(cid, "Você comprou ".. count .." ".. getItemNameById(item) ..".", TALKTYPE_MONSTER)
				return true
			else
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, alavancaStr) - os.time() .." segundos para comprar novamente.")
				return true
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. price .." ".. getItemNameById(need) ..".")
			return true
		end
	elseif (ppos.x == 155) and (ppos.y == 57) and (ppos.z == 7) then ----------------------------------------------------------------- POS 5
		local price = 30 -- Quantidade de items necessário para comprar.
		local count = 1 -- Quantidade que irá vender.
		local item = 2155 -- ID do item que vai vender.
		local need = 9971 -- ID do item necessário.
		local alavancaStr = 3332 -- Storage para salvar e checar o tempo (tempo para o usar o comando de novo)
		local time = 5 -- Tempo de espera para usar novamente
		if getPlayerItemCount(cid, need) >= price then
			if getPlayerStorageValue(cid, alavancaStr) <= os.time() then
				doPlayerRemoveItem(cid, need, price)
				doPlayerAddItem(cid, item, count)
				setPlayerStorageValue(cid, alavancaStr, time + os.time())
				doCreatureSay(cid, "Você comprou ".. count .." ".. getItemNameById(item) ..".", TALKTYPE_MONSTER)
				return true
			else
				doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Espere ".. getPlayerStorageValue(cid, alavancaStr) - os.time() .." segundos para comprar novamente.")
				return true
			end
		else
			doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Você não tem ".. price .." ".. getItemNameById(need) ..".")
			return true
		end
	else
		doPlayerSendTextMessage(cid, MESSAGE_STATUS_CONSOLE_BLUE, "Lugar inadequado para usar o comando.")
		return true
	end
end

 

 

Editado por luangop
erro de digitação. (O corretor ortográfico do fórum não está 100%) (veja o histórico de edições)

Te ajudei? Clique em  Gostei ! 

²²²d¬¬b²²²

 

 

"She's got a smile that it seems to me...."  ♪♪

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