-
Total de itens
19 -
Registro em
-
Última visita
Histórico de Reputação
-
ivanhardjr deu reputação a Poccnn em Npc set focus on player
Hail Xtibianos!
Desenvolvi esse sistema pois achei legal o npc fazer isso.
O que o sistema faz?
Ele seta o focus do npc em um player quando o player se aproxima dele e espera por 5 segundos.
Se o player não "falar" com o npc, o npc ignora ele (não foca mais o player).
Mas o player pode "falar" com o npc quando quiser (não interfere em nada nesse sistema).
Em npchandler.lua:
Procure:
Adicione dentro da tabela:
Procure:
Antes da função:
Adicione:
Procure:
Dentro do escopo de:
Adicione:
Pronto. Adicionado.
-
ivanhardjr deu reputação a Poccnn em [aula 1] lógica de programação
A forma com que ele fez está correta e sim, é necessário saber se o item foi retirado.
A lógica dele evita bugs no sistema.
-
ivanhardjr deu reputação a Luga03 em [aula 1] lógica de programação
Cara, a ideia não está errada, mas tá faltando um fim e você colocou uma checagem desnecessária, Vou refazer pra vc ai vc dá uma olhada blz?
Se existe o item1, então: Entregue o item2 Pegue o item1 Senão: diga "Você não tem o item1" Fim
É bem mais simples e mais fácil!
-
ivanhardjr deu reputação a Poccnn em Preciso Orientaçao
Vou explicar passo a passo pra você algumas questões do script.
--- script
function onSay(cid, words, param)
if(words == "!buyvip") then
doPlayerRemoveItem(cid,6527,30) -- sugiro antes de remover um item, saber se o player tem o item ou a quantidade de itens necessário. if not (getPlayerItem (cid, itemid, quantidade)) then return true, doPlayerSendCancel (cid, "você não tem o item.") end
local days = 30
local daysvalue = days * 24 * 60 * 60
local storageplayer = getPlayerStorageValue(cid, 13540)
local timenow = os.time()
if getPlayerStorageValue(cid, 13540) - os.time() <= 0 then --você já declarou na variável acima "storageplayer", não é necessário repetir aqui.
time = timenow + daysvalue
else
time = storageplayer + daysvalue
end
if string.find(tostring(getCreatureName(cid)),"[Vip]") then
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.")
setPlayerStorageValue(cid, 13540, time)
local quantity = math.floor((getPlayerStorageValue(cid, 13540) - timenow)/(24 * 60 * 60))
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você tem ".. quantity .." dias de VIP restantes.")
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Foram adicionados ".. days .." dias de VIP no seu character.")
setPlayerStorageValue(cid, 13540, time)
local name = getCreatureName(cid)
db.executeQuery("UPDATE `players` SET `name` = '[Vip] "..name.."' WHERE `id` = "..getPlayerGUID(cid)..";")--essa query tem ser executada depois do player ser removido.
doRemoveCreature(cid)
end
else
doPlayerSendTextMessage(cid, MESSAGE_INFO_DESCR, "Você precisa de 30 Multi Coins para colocar vip.")
end
-
ivanhardjr deu reputação a Deadpool em Preciso Orientaçao
Então da uma olhada no link que mandei acima, quanto a seu sistema. É vip ou premium account? qual sistema vip ta usando? e qual a base do seu servidor/versão?
-
ivanhardjr deu reputação a Deadpool em Preciso Orientaçao
Estrutura de controle IF
@@você quer uma versão desse sistema ai, que funcione? ou só quer aprender sobre as funções?
-
ivanhardjr deu reputação a Deadpool em [Tutorial] Mudar miniwidow
Boa tarde galera, eu mostrei no meu showoff a tela do meu cliente, que pretendo liberar para a galera, porem, recebi mensagens de como fazer aquilo, e como eu vou postar o cliente com o module, resolvi fazer esse tutorial e liberar o module..
Esse module é para mudar a Game Window, para que não conhece, veja um print:
Então, vou liberar o entergame já feito, e também vou ensinar como modificar. *Download no fim do topico*, vamos ao tutorial:
Tenha em mente a imagem, e então, veja o tamanho dela, feito isso, va no entergame.lua e procure a linha que seta o IP do seu servidor, va está assim:
EnterGame.setUniqueServer("127.0.0.1", 7877, 854, 361, 356) Vou explicar a linha toda para que entendam:
127.0.0.1 = IP do server
7877 = port do servidor, no meu caso ta 7877, porque é a porta Linnux.
854 = Versão do cliente/servidor.
361 = Tamanho da game window
356 = largura da game window
em outras palavras, 361 e 356 é onde vamos modificar.. Você pega as dimensões da imagem, e coloca no lugar dos mesmos(361 e 356)..
Feito isso, salve o entergame.lua e feche. Agora vamos editar a OTUI.. Abra o Entergame.otui e na primeira linha temos isso:
EnterGameWindow < MainWindow !text: tr('Enter Game') size: 236 274 Bom, vamos modificar.. Retire essa linha:
!text: tr('Enter Game') Nessa função modifique esse tamanho "236 274" para as dimensões da imagem *no caso seria (361 e 356):
Antes:
size: 236 274 Agora:
size: 361 356 Adicione isto em baixo dessa função acima:
image-source: enter.png *enter.png é a imagem que estamos usando para colocar no game window, a mesma que a gente pegou as dimensões e modificamos no entergame.lua*, *ela tem que está dentro da pasta onde se localiza o entergame.lua*.
pronto, seu cliente já vai ler sua nova window com imagem.
*Terá que mudar os lugares de onde coloca senha e conta* É bem simples, basta ir na OTUI e mudar os margin-top*
DOWNLOAD ENTERGAME COM NOVA WINDOW:
Download
OBS: Deixei uns 3 Entergame dentro, se vocês quiserem usar como base, não me importo..
POR FAVOR, NÃO POSTE ESSE TUTORIAL EM OUTRO FÓRUM SEM OS DEVIDOS CRÉDITOS.
FUNCIONA EM QUALQUER VERSÃO DO OTCLIENT.
OBS: se vocês não souberem editar o entergame, irá bugar. É melhor baixar o que estou disponizilizando, e então mudar somente as dimensões..
-
ivanhardjr deu reputação a Josegvb em Erro Movements
esse erro acontece quando voce sendo adm vai pelo /goto pro alguem quem esteja no Trade Center, e assim voce tenta voltar pra sua cidade entrando no PvP, entendeu?
tipo quando vc entra no pvp você pega uma storage q é da cidade q voce entrou, sendo assim quando volta, ira retornar pra sua cidade, mas se foi la pelo goto voce nao tem esse storage entao da erro no sistema pq voce foi la de /goto.
o erro tb acontece as veces quando um player entra la e nao é desloga, e nao é salvado correctamente ai ele perde a storage e fica igual como se tiver entrado de /goto... não sei como arrumar mas no meu ot eu tenho o comando !tp para eles voltar pro o cp
-
Quem Está Navegando 0 membros estão online
- Nenhum usuário registrado visualizando esta página.