Aqui é o Dimitri do Suporte da Lumikit.
Recentemente recebemos uma dúvida sobre se daria para fazer uma coisa no Lumikit SHOW.
É possível chamar cenas por um fader da Janela Personalizada?
A resposta é sim! É mais complexo de fazer, pois é necessário fazer um script para isso, mas é possível sim.
Nesta publicação eu vou mostrar pra vocês como chamar/trocar cenas por fader em uma Janela Personalizada no Lumikit SHOW.
Para começar, nós vamos precisar ter algumas cenas, uma Janela Personalizada, e um fader nesta Janela Personalizada.
Vou usar o arquivo template3.show que já vem ao instalar o programa.
Como este show não tem uma Janela Personalizada criada, vou criar a minha, clicando no botão Janelas > Configuração das janelas personalizadas ....
E então habilitando a primeira, e dando um nome pra ela.
Então vou ativar o Modo Edição desta Janela Personalizada clicando no botão Edit para adicionar o nosso fader.
Com o botão direito do mouse, adicionamos o fader.
Então clicamos com o botão direto no fader, e selecionamos a opção Editar...
Na janela da função do botão que vai abrir, dê um nome descritivo para o fader (por exemplo "Fader Cena") e selecione a função Script.
Então entre na aba Código do script e clique no botão Novo.... Dê um nome que descreva o que este script faz. Aqui vou dar o nome de "FaderTrocaCena".
Copie o código abaixo, e cole ali na caixa de texto do script (ele também está disponível em arquivo .lumiscript, confira nos anexos da publicação):
Código: Selecionar todos
// Author: Lumikit
// Date: 08/01/2025
// Script: Fader chama cenas
const
UI_PAGE_1 = 1;
UI_SCENE_1 = 2;
UI_PAGE_2 = 3;
UI_SCENE_2 = 4;
UI_PAGE_3 = 5;
UI_SCENE_3 = 6;
UI_PAGE_4 = 7;
UI_SCENE_4 = 8;
var
LastValue: integer;
CenaAtual: integer;
procedure OnRegister;
begin
// cria a caixa de texto para informar qual pagina/cena sera chamada,
// quando o valor do fader estiver entre 0% e 25%
RegisterUIValue(UI_PAGE_1, '0-25 Pagina', 1, 1, 100);
RegisterUIValue(UI_SCENE_1, '0-25 Cena', 1, 1, 16);
// ... quando o valor do fader estiver entre 26% e 50%
RegisterUIValue(UI_PAGE_2, '26-50 Pagina', 1, 1, 100);
RegisterUIValue(UI_SCENE_2, '26-50 Cena', 1, 1, 16);
// ... quando o valor do fader estiver entre 51% e 75%
RegisterUIValue(UI_PAGE_3, '51-75 Pagina', 1, 1, 100);
RegisterUIValue(UI_SCENE_3, '51-75 Cena', 1, 1, 16);
// ... quando o valor do fader estiver entre 76% e 100%
RegisterUIValue(UI_PAGE_4, '76-100 Pagina', 1, 1, 100);
RegisterUIValue(UI_SCENE_4, '76-100 Cena', 1, 1, 16);
end;
procedure OnStart;
begin
CenaAtual := 0;
end;
procedure OnExecute;
var
Dimmer100: integer;
begin
// pegamos o valor do fader, e convertemos de 0-255 para 0-100
Dimmer100 := Trunc(GetDimmer / 2.55);
// se o valor mudou, vamos fazer alguma coisa
if (LastValue <> Dimmer100) then
begin
LastValue := Dimmer100;
// se o fader estiver entre 0 e 25 (e se a cena que queremos, nao esta selecionada)
if ((LastValue >= 0) and (LastValue <= 25) and (CenaAtual <> 1)) then
begin
CenaAtual := 1;
DoSceneChange(GetUIValue(UI_PAGE_1) - 1, GetUIValue(UI_SCENE_1) - 1);
end
else
begin
// se o fader estiver entre 26 e 50 ...
if ((LastValue >= 26) and (LastValue <= 50) and (CenaAtual <> 2)) then
begin
CenaAtual := 2;
DoSceneChange(GetUIValue(UI_PAGE_1) - 1, GetUIValue(UI_SCENE_2) - 1);
end
else
begin
// se o fader estiver entre 51 e 75 ...
if ((LastValue >= 51) and (LastValue <= 75) and (CenaAtual <> 3)) then
begin
CenaAtual := 3;
DoSceneChange(GetUIValue(UI_PAGE_1) - 1, GetUIValue(UI_SCENE_3) - 1);
end
else
begin
// se o fader estiver entre 76 e 100 ...
if ((LastValue >= 76) and (LastValue <= 100) and (CenaAtual <> 4)) then
begin
CenaAtual := 4;
DoSceneChange(GetUIValue(UI_PAGE_1) - 1, GetUIValue(UI_SCENE_4) - 1);
end
end
end
end
end;
end;
procedure OnTerminate;
begin
DoTerminate;
end;
Se você copiou errado, aparecerão mensagens de erro. Se este for o caso, confira o passo a passo novamente e refaça o processo corretamente.
Seguindo, entre na aba Parâmetros do script.
Na janela, aparecerão 8 campos.
O script que fizemos permite que o fader chame até 4 cenas.
Os dois primeiros campos (os "0-25") indicam qual seria a primeira cena a ser chamada; para isso precisamos informar qual a página e qual a cena. Isso se repete para as outras 3 cenas.
No meu caso aqui, informei que quando o fader estiver entre os valores 0 até 25, chame a cena 1 da página 7; quando estiver entre 26 até 50 chame a cena 2 da página 7; quando estiver entre 51 até 75 chame a cena 3 da página 7; e quando estiver entre 75 até 100 chame a cena 4 da página 7.
E é isso! A programação/configuração está pronta.
Ao testarmos, veremos que ao mudar o valor do fader, as cenas vão sendo chamadas conforme nós informamos ali nos parâmetros do script.
tags: Lumikit SHOW, Janela Personalizada, script
