Ir para conteúdo
  • Cadastre-se

Posts Recomendados

Em 04/02/2018 em 02:20, tataboy67 disse:

Opa galera beleza? Eu estava aqui olhando outros fóruns e percebi que postaram esse sistema, porém os links estavam todos off :/ 
Resolvi desenvolver o sistema pra vocês ^^ 

TFS usado: 1.2 (Não testado em versões anteriores)

* Bom o sistema funciona basicamente assim:

  1. Ao clicar na alavanca, abrirá um Modal com todas as opções de compra na tela do jogador !
  2. O jogador poderá selecionar entre a compra de 1x / 50x / 100x itens !
  3. Adicionado venda só para player que possuírem ''Cap'' na bag.
     

* Foto:
unknown.png.912bca2f388ccfeb30c9188dee037954.png

Simples não? Então vamos ao que interessa !

Em data/actions/scripts Crie um arquivo com o nome de compra_modal.lua e coloque isso dentro :

  Mostrar conteúdo oculto


function onUse(cid, item, fromPosition, target, toPosition, isHotkey)
    cid:registerEvent("potions_lever")

    local title = "Potions"
    local message = "choose your potion you want to buy."

    local window = ModalWindow(1000, title, message)

    window:addButton(101, "Buy 50")
    window:addButton(102, "Buy 100")
    window:addButton(103, "Buy 1")
    window:addButton(104, "Cancel")

    window:addChoice(1, "Mana Potion") -- nome do item que deseja vender
    window:addChoice(2, "Health Potion")
    window:addChoice(3, "Strong Mana Potion")
    window:addChoice(4, "Strong Health Potion")
    window:addChoice(5, "Great Mana Potion")
    window:addChoice(6, "Great Health Potion")
    window:addChoice(7, "Great Spirit Potion")
    window:addChoice(8, "Ultimate Mana Potion")
    window:addChoice(9, "Ultimate Health Potion")
    window:addChoice(10, "Ultimate Spirit Potion")
    window:addChoice(11, "Supreme Health Potion")

    window:setDefaultEscapeButton(104)

    window:sendToPlayer(cid)
    return true
end


Em data/actions adicione a linha:

  Mostrar conteúdo oculto


<action actionid="22100" script="compra_modal.lua"/>

 

Em data/creaturescripts/scripts Crie um arquivo com o nome de potions.lua e coloque isso dentro :

  Mostrar conteúdo oculto


--[[
TABELA DE PREÇOS DAS POTIONS

NOME----------------------/ID----------/PRICE-------/CAP-------

mana potion;              ID: 7620;   Price: 50;     Cap: 2.70; 
health potion;            ID: 7618;   Price: 45;     Cap: 2.70; 
strong mana potion;       ID: 7589;   Price: 80;     Cap: 2.90; 
strong health potion;     ID: 7588;   Price: 100;    Cap: 2.90;  
great mana potion;        ID: 7590;   Price: 120;    Cap: 3.10;   
great health potion;      ID: 7591;   Price: 190;    Cap: 3.10;     
great spirit potion;      ID: 8472;   Price: 190;    Cap: 3.10;     
ultimate mana potion;     ID: 26029;  Price: 350;    Cap: 3.10;     
ultimate health potion;   ID: 8473;   Price: 310;    Cap: 3.10;      
ultimate spirit potion;   ID: 26030;  Price: 350;    Cap: 3.10;     
supreme health potion;    ID: 26031;  Price: 500;    Cap: 3.50;      

Creditos ao script: tataboy67 (TIBIAKING)
]]--

function onModalWindow(cid, modalWindowId, buttonId, choiceId)
	cid:unregisterEvent("potions_lever")

	local id_Potions = {7620, 7618, 7589, 7588, 7590, 7591, 8472, 26029, 8473, 26030, 26031} -- id das potions
	local price = {50, 45, 80, 100, 120, 190, 190, 350, 310, 350, 500} -- price 1x
	local cap = {2.70, 2.70, 2.90, 2.90, 3.10, 3.10, 3.10, 3.10, 3.10, 3.10, 3.50} -- capacity

	if modalWindowId == 1000 then
		if buttonId == 103 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId] then
				if cid:getFreeCapacity() >= cap[choiceId] then
				cid:removeMoney(price[choiceId])
				cid:addItem(id_Potions[choiceId],1)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought a potion.")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end

		if buttonId == 101 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId]*50 then
				if cid:getFreeCapacity() >= cap[choiceId]*50 then
				cid:removeMoney(price[choiceId]*50)
				cid:addItem(id_Potions[choiceId],1*50)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought 50x potions")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end

		if buttonId == 102 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId]*100 then
				if cid:getFreeCapacity() >= cap[choiceId]*100 then
				cid:removeMoney(price[choiceId]*100)
				cid:addItem(id_Potions[choiceId],1*100)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought 100x potions")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end
	end
end


Em data/creaturescripts/creaturescripts.xml adicione a linha:

  Mostrar conteúdo oculto


<event type="modalwindow" name="potions_lever" script="potions.lua"/>


Créditos: 
EU (100% pelo script)
Strutz (Pela ideia do sistema)

Rep+ para me motivar ;D

Obs: Testem o Script antes da aprovação pois estou sem PC agora e a verificação de cap foi feita sem teste !

 

Obrigado por disponibilizar, deu tudo certo.

Link para o post
Compartilhar em outros sites
  • Cat mudou o título para Modal Compra por alavanca 1.2
  • 2 months later...
Em 04/02/2018 em 02:20, tataboy67 disse:

Opa galera beleza? Eu estava aqui olhando outros fóruns e percebi que postaram esse sistema, porém os links estavam todos off :/ 
Resolvi desenvolver o sistema pra vocês ^^ 

TFS usado: 1.2 (Não testado em versões anteriores)

* Bom o sistema funciona basicamente assim:

  1. Ao clicar na alavanca, abrirá um Modal com todas as opções de compra na tela do jogador !
  2. O jogador poderá selecionar entre a compra de 1x / 50x / 100x itens !
  3. Adicionado venda só para player que possuírem ''Cap'' na bag.
     

* Foto:
unknown.png.912bca2f388ccfeb30c9188dee037954.png

Simples não? Então vamos ao que interessa !

Em data/actions/scripts Crie um arquivo com o nome de compra_modal.lua e coloque isso dentro :

  Ocultar conteúdo


function onUse(cid, item, fromPosition, target, toPosition, isHotkey)
    cid:registerEvent("potions_lever")

    local title = "Potions"
    local message = "choose your potion you want to buy."

    local window = ModalWindow(1000, title, message)

    window:addButton(101, "Buy 50")
    window:addButton(102, "Buy 100")
    window:addButton(103, "Buy 1")
    window:addButton(104, "Cancel")

    window:addChoice(1, "Mana Potion") -- nome do item que deseja vender
    window:addChoice(2, "Health Potion")
    window:addChoice(3, "Strong Mana Potion")
    window:addChoice(4, "Strong Health Potion")
    window:addChoice(5, "Great Mana Potion")
    window:addChoice(6, "Great Health Potion")
    window:addChoice(7, "Great Spirit Potion")
    window:addChoice(8, "Ultimate Mana Potion")
    window:addChoice(9, "Ultimate Health Potion")
    window:addChoice(10, "Ultimate Spirit Potion")
    window:addChoice(11, "Supreme Health Potion")

    window:setDefaultEscapeButton(104)

    window:sendToPlayer(cid)
    return true
end


Em data/actions adicione a linha:

  Mostrar conteúdo oculto


<action actionid="22100" script="compra_modal.lua"/>

 

Em data/creaturescripts/scripts Crie um arquivo com o nome de potions.lua e coloque isso dentro :

  Ocultar conteúdo


--[[
TABELA DE PREÇOS DAS POTIONS

NOME----------------------/ID----------/PRICE-------/CAP-------

mana potion;              ID: 7620;   Price: 50;     Cap: 2.70; 
health potion;            ID: 7618;   Price: 45;     Cap: 2.70; 
strong mana potion;       ID: 7589;   Price: 80;     Cap: 2.90; 
strong health potion;     ID: 7588;   Price: 100;    Cap: 2.90;  
great mana potion;        ID: 7590;   Price: 120;    Cap: 3.10;   
great health potion;      ID: 7591;   Price: 190;    Cap: 3.10;     
great spirit potion;      ID: 8472;   Price: 190;    Cap: 3.10;     
ultimate mana potion;     ID: 26029;  Price: 350;    Cap: 3.10;     
ultimate health potion;   ID: 8473;   Price: 310;    Cap: 3.10;      
ultimate spirit potion;   ID: 26030;  Price: 350;    Cap: 3.10;     
supreme health potion;    ID: 26031;  Price: 500;    Cap: 3.50;      

Creditos ao script: tataboy67 (TIBIAKING)
]]--

function onModalWindow(cid, modalWindowId, buttonId, choiceId)
	cid:unregisterEvent("potions_lever")

	local id_Potions = {7620, 7618, 7589, 7588, 7590, 7591, 8472, 26029, 8473, 26030, 26031} -- id das potions
	local price = {50, 45, 80, 100, 120, 190, 190, 350, 310, 350, 500} -- price 1x
	local cap = {2.70, 2.70, 2.90, 2.90, 3.10, 3.10, 3.10, 3.10, 3.10, 3.10, 3.50} -- capacity

	if modalWindowId == 1000 then
		if buttonId == 103 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId] then
				if cid:getFreeCapacity() >= cap[choiceId] then
				cid:removeMoney(price[choiceId])
				cid:addItem(id_Potions[choiceId],1)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought a potion.")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end

		if buttonId == 101 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId]*50 then
				if cid:getFreeCapacity() >= cap[choiceId]*50 then
				cid:removeMoney(price[choiceId]*50)
				cid:addItem(id_Potions[choiceId],1*50)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought 50x potions")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end

		if buttonId == 102 then -- botão de compra de 1 item (potion)
			if cid:getMoney() >= price[choiceId]*100 then
				if cid:getFreeCapacity() >= cap[choiceId]*100 then
				cid:removeMoney(price[choiceId]*100)
				cid:addItem(id_Potions[choiceId],1*100)
				cid:getPosition():sendMagicEffect(15)
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "You bought 100x potions")
				else
				cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough capacity.")
				cid:getPosition():sendMagicEffect(10)
				end
			else
			cid:sendTextMessage(MESSAGE_STATUS_CONSOLE_BLUE, "you do not have enough money.")
			end
		end
	end
end


Em data/creaturescripts/creaturescripts.xml adicione a linha:

  Ocultar conteúdo


<event type="modalwindow" name="potions_lever" script="potions.lua"/>


Créditos: 
EU (100% pelo script)
Strutz (Pela ideia do sistema)

Rep+ para me motivar ;D

Obs: Testem o Script antes da aprovação pois estou sem PC agora e a verificação de cap foi feita sem teste !

mano como eu faço pra trocar o money por uma moeda propria? pelo id dela "32255"

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.

  • Conteúdo Similar

    • Por otpokesalense
      🧿Base Tibia Solebran totalmente otimizada!  
       
       ✔️ OTClient (Version Old);
      ✔️ Update 2.2;
      ✔️ Site Póprio;
      ✔️ Map Global
      ✔️ Bugs, Minimo (2x) talvez;
      ✔️ PVP 💯 Funcional.
       
       
      Get Servidor: https://files.fm/f/7qumr8943e 💸 Buy! otimo projeto para vc utilizá-lo.
      Lembrando:: ao comprar o download será disponibilizado automaticamente.
       
      🧑‍💻System Operacional: Windows (VPS)
      👨‍💻Programador (27) 998931903 - - - O Valor já inclui o serviço de programação! 🤗
       

       
       

       
       
    • Por Arkanjo39
      CUIDA, CUIDA E VEM CONHECER NOSSO SERVER. KING BAIAK ACABOU DE SER LANÇADO!!! VEM SER O TOP 1 Site com Otclient: https://kingbaiak.com/ PARA NOVOS JOGARES ADM TA DANDO AQUELA FORCINHA! SERVIDOR 8.60 COM RESETS, MONTARIAS E GOLDEN OUTFIT! INFORMAÇÕES BÁSICAS DO SERVIDOR: [+] MAPA BAIAK [+] HIGH EXP [+] RESETS COM + DAMAGE [+] AUTOLOOT AUTOMÁTICO [+] CITY DONATE [+] ROSHAMUUL, ORAMOND E NETHER [+] MONTARIAS E GOLDEN OUTFIT [+] INVASÃO DE MONSTROS AUTOMÁTICAS [+] DAILY MONSTER QUE APARECE AO LOGAR [+] MONTARIAS COM COMANDO !MOUNT [+] SISTEMA DE ROLETA ATUAL [+] CAST WATCH [+] FAST ATTACK [+] CAST ARROWS [+] PUSH CRUZADO [+] REWARD CHEST [+] WARSQUARE [+] COMBO EXP DE POTIONS [+] MINERAÇÃO COM LOJA [+] SISTEMA DE BOSS [+] CRITICAL/DODGE [500/500] [+] LIFE E MANA EM PORCENTAGEM* [+] VARIAS QUESTS [+] EVENTO DTT (AUTOMÁTICO) [+] EVENTO BATLEFIELD (AUTOMÁTICO) [+] EVENTO SNOWBALLWAR (AUTOMÁTICO) [+] EVENTO DESERT WAR (AUTOMÁTICO) [+] EVENTO ZOMBIE (AUTOMÁTICO) [+] EVENTO CAMPO MINADO (AUTOMÁTICO) [+] EVENTO TEAM BATLE (AUTOMÁTICO) [+] EVENTO CAPTURE THE FLAG (AUTOMÁTICO)
    • Por BTitan
      Baiak Titan: Uma Experiência Incomparável no Universo Baiak
       
      O Baiak Titan combina a nostalgia dos antigos tempos de OTServ com a inovação e modernidade atuais. Oferecemos um mapa vasto, com mais de 100 áreas de caça para explorar, além de vocações equilibradas para um PvP justo e emocionante. Diversos eventos automáticos ocorrem diariamente, garantindo diversão constante para os jogadores. O servidor conta com vários sistemas, como por exemplo, montarias para quem utiliza o cliente exclusivo, monstros do Tibia 9.6+, sistema de mineração, entre outros!
       
      Por Que Escolher o Baiak Titan?
       
      PvP de Alta Qualidade: Embora seja um servidor Baiak, nosso mapa é cuidadosamente projetado para proporcionar ganho de experiência sem perder a seriedade do jogo, oferecendo desafios instigantes e um equilíbrio perfeito para combates épicos.
      Jogabilidade Customizada: O mapa Baiak foi exclusivamente adaptado para promover intensas batalhas de PvP, com recursos inovadores que mantêm a jogabilidade sempre fresca e emocionante.

      Detalhes do Servidor:
       
      IP: baiaktitan.com Website: https://baiaktitan.com Account Manager: 1/1
        Principais Características:
       
      Uptime 24/7, Sem Lag: Jogue a qualquer hora com a estabilidade de servidores dedicados e de alta performance. Velocidade de Ataque Equilibrada: Ajustada perfeitamente para garantir combates dinâmicos e justos. Sistema de Cast: Transmita suas jogadas ao vivo e assista aos seus amigos em ação. Cliente Exclusivo: Software personalizado com novos outfits, montarias e criaturas, enriquecendo ainda mais sua experiência no jogo. Runas, Poções e Flechas Não Infinitas: Valorizamos uma jogabilidade mais estratégica e desafiadora, onde os recursos precisam ser geridos com sabedoria.
      Eventos Automáticos:
       
      Zombie Team Battle Monster Hunter Castle (War of Emperium) Capture The Flag DOTA Corrida Arena War (O último sobrevivente ganha) Fire Storm
        Taxas do Servidor:
       
      EXP: 200x (com stages)
      Skill: 100x
      Magic: 30x
      Loot: 3x
       
      Junte-se à nossa comunidade e viva essa aventura única. O Baiak Titan espera por você!
    • Por campospkks
      Servidor muito bem otimizado, com amplo map para uma diversão imperdível. 
       
      *  Quest System
      * bugs corrigidos 90,0%
      * Client Específico (V8)
      * Mobile Adaptavel e Otimizado
      * database.sql já com (Modulo Pix) 
      * site 95,9% atualizado (Troque, pois a marca já possuí proprietário)
      * Franquia Tibia Custom baseado em armas.
       
      Site Original: soulgun.com.br
      discord.gg/cCWcaMwjuB
      Relançamento Servidor 20-09-2024
      Horario 17:00
      whatsap Grupo
      https://chat.whatsapp.com/JsAyLAmwJQyGEWgHTI4096
      Video Do Game
      https://youtu.be/N8asxdnzmGw


    • Por Heyron
      Elysia OT (Global Full 8.60)   IP: elysiaot-global.servegame.com   ✔︎ Login pelo Account Manager 1/1, não temos site. ✔︎ Login zerado é Cast System.   XP (Rates): Stages = Sim Experience = 50.0 Skill = 15.0 Magic = 5.0 Loot = 1.0 Spawn = 1.0 Protection Level: 30   ✔︎ Sem itens VIP. ✔︎ Premiação ao upar nível 20, 50 e 80. ✔︎ Itens iniciais por vocação. ✔︎ Free Bless até o level 50. ✔︎ Danos de spells balanceados. ✔︎ Sem fast attack ou ataque rápido (padrão 2seg). ✔︎ Sem itens infinitos, exceto munição de Paladin.           Jogue agora!   IP: elysiaot-global.servegame.com Versão: 8.60      
×
×
  • Criar Novo...

Informação Importante

Confirmação de Termo