• Nenhum resultado encontrado

Controlar um sprite significa controlar suas propriedades, que são várias, como algumas mencionadas abaixo:

N/A
N/A
Protected

Academic year: 2021

Share "Controlar um sprite significa controlar suas propriedades, que são várias, como algumas mencionadas abaixo:"

Copied!
6
0
0

Texto

(1)

"Lingo no controle d

Marcelo Prioste

Atualmente existem três formas de redigir scripts em Lingo, uma delas é semelhante a linguagem Ja-vascript e passou a ser utilizada a partir da versão MX 2004. A outra é conhecida por "dot sintax" e utiliza o ponto "." para ordenar as sentenças. A terceira, adotada neste curso, é a mais antiga e a de mais fácil compreensão, pois a construção das frases é muito semelhante ao idioma inglês simplifica-do, em que frases como "set the loch of sprite 12 to 150" será interpretada pelo software como "modifique a localização horizontal do sprite 12 para a posição de 150 pixels".

E, como já foi mencionado, é através da linguagem lingo que torna-se possível controlar uma séries de aspectos que apenas pelo uso do animação não seria possível. Interfaces mais interativas e controles mais precisos são viabilizados com a linguagem Lingo.

Dentre estas possibilidades, uma das mais interessantes é o controle de sprites, ou melhor, a capaci-dade da programação interferir em tudo que está visível, ou audível no Stage.

Controlar um sprite significa controlar suas propriedades, que são várias, como algumas mencionadas abaixo:

● the loch (a localização horizontal do sprite no Stage); ● the locv (a localização vertical do sprite no Stage); ● the visible (a visibilidade do sprite);

● the rotation (a rotação do sprite); ● the blend (a opacidade do sprite); ● the forecolor (a cor frontal do sprite);

● the backcolor (a cor de fundo do sprite) e etc...

Por exemplo: se através do Lingo queremos fazer com que o desenho de um ponteiro de relógio gire alguns graus cada vez que o cursor passe sobre ele, o behavior deve ser escrito diretamente na janela script assim:

on mouseenter

set the rotation of sprite 3 to the rotation of sprite 3+20 end

(2)

Isto significa:

ao passar o mouse sobre mim

altere a rotação do sprite 3 para a rotação dele mais 20 graus encerre a rotina

Se quisermos que ele vá no sentido contrário, basta utlizar o "-20" no lugar do "20". Lembrando que, no exemplo, o número 3 quer dizer que o ponteiro no caso é o sprite 3, ou seja, no Score ele foi colo-cado no canal 3 (figura 17) . Se houver alguma alteração no Score, e o sprite do ponteiro for arrastado para outro canal, a programação deixará de funcionar e deverá ser corrigida.

Para evitar este tipo de transtorno, pode-se utilizar a propriedade "the currentspritenum" no lugar do número do sprite. Esta propriedade faz com que o Director verifique o número do sprite automatica-mente e o utilize na rotina. Assim, o programador pode reorganizar os sprites nos canais do Score que a programação continuará funcionando. O significado para ""the currentspritenum" é sprite corrente, ou seja, aquele em que aquele behavior está. Então, a rotina ficaria assim:

on mouseenter

set the rotation of sprite the currentspritenum to the rotation of sprite the currentspritenum +20 end

(3)

Observe que este behavior é acionado a partir do evento "on mouseenter". Isto significa que a rotação só será iniciada quando o cursor "entrar" no sprite. Mas se quisermos que o ponteiro continue girando enquanto o cursor estiver sobre o sprite, devemos apenas mudar o evento para "on mousewithin" on mousewithin

set the rotation of sprite the currentspritenum to the rotation of sprite the currentspritenum +20 end

O número 20, que corresponde a 20 graus, foi uma escolha arbitrária. Se o número for menor, menor será o movimento, e o limite estará então em 360 graus, uma volta completa do ponteiro.

Como já foi colocado, um behavior pode ter várias rotinas. Neste exemplo do ponteiro podemos fazer também com que ao encostar o cursor, o ponteiro avance 20 graus e, ao sair o cursor, o ponteiro recue 10 graus. Neste caso são duas rotinas com eventos diferentes, uma permanece igual e, logo abaixo, coloca-se outra com o evento "on mouseLeave" e o valor de "-10" graus:

on mouseenter

set the rotation of sprite the currentspritenum to the rotation of sprite the currentspritenum +20 end

on mouseLeave

set the rotation of sprite the currentspritenum to the rotation of sprite the currentspritenum -10 end

Criar um cursor em Lingo

No menu INSERT há o item MEDIA ELEMENT que abre um sub-menu com algumas opções de inserção de elementos. Um deles é o CURSOR, que permite criar um cursor animado com algumas limitações: no máximo 64x64 pixels e 256 cores. Para um cursor estes valores são suficientes mas, com a lingua-gem Lingo, podemos utilizar qualquer imalingua-gem, inclusive um arquivo Flash (swf) no papel de cursor. Além destas 2 maneiras, há também uma forma de chamar alguns formatos de cursores do próprio sis-tema operacional. É bem simples: basta ter um evento, como tudo script Lingo, digitar "cursor" e o có-digo correspondente que pode ser obtido no HELP, em seguida, finalizar com "end".

Para que um arquivo Flash (swf) seja um cursor no Director é só seguir com cuidado as orientações a-baixo:

1- No Flash crie, com bom senso, uma pequena animação que possa ser utilizada como um cursor; 2- Exporte-a com o nome "cursor.swf" e importe-a para o Director;

3- No Director, determine o frame em o cursor Flash substituirá o cursor convencional;

4- Arraste o cast member "cursor.swf" para o frame selecionado, no canal 3, mas mantenha-o fora do Stage, não visível;

(4)

5- No canal de script deste mesmo frame dê um clique para abrir a janela de script (figura 18) ; 6- Neste janela digite:

on exitframe

cursor 200

set the loc of sprite 3 to the mouseloc updatestage

go to the frame end

As linhas acima serão interpretadas como: Ao sair do frame

Esconda o cursor original

Coloque o sprite 3 na mesma posição do cursor original Atualize o Stage

Leia este mesmo frame Encerre a rotina

7- É só dar play e verificar o novo cursor.

Se quisermos que o cursor original seja recuperado num outro frame, é só usarmos o seguinte script:

on exitframe

cursor -1 end

O que se pode notar é que o comando "cursor 200" deixa o cursor invisível mas as suas posições ainda podem ser verifi-cadas e passadas para a alterar a localização do sprite 3. Observações:

● Se algo não deu certo, verifique o número do sprite "cursor.swf" no Score, neste exemplo ele está no número 3. ● Cuidado com arquivos muito pesados para um cursor que podem prejudicar a sua movimentação pela tela.

(5)

Neste estágio é pertinente falar sobre os erros de sintaxe que são comuns na atividade de qualquer programador. Em primeiro lugar é importante ter ciência de que o programador ou desenvolvedor é alguém apto a resolver problemas e, portanto, todos os indícios de que algo está errado devem ser considerados nestes momentos. Quando um script acabou e ser redigido e, após o play, surge uma mensagem de erro (figura 19), é o momento de analisarmos o que esta mensagem tem a dizer, sem revoltas ou desesperos. Na grande maioria das vezes são pequenas falhas de digitação que impedem o script de funcionar corretamente. E, apesar do Lingo ser uma das linguagens de programação mais fle-xíveis e, conseqüentemente, mais "permissíveis", ainda é um código a ser interpretado pelo aplicativo que exige um grande rigor na sua construção.

Na janela script há um botão com um desenho semelhante a um "pequeno raio" (figura 20) que pode ser acionado com as teclas SHIFT+F8 e serve para verificar erros de sintaxe antes de rodar o arquivo. Então a dica é: nos casos em que a programação ocupar várias linhas, é importante ir verificando no decorrer da digitação se a sintaxe está correta para não acumular muitas informações e perder a locali-zação do erro.

Outros botões nesta mesma janela script podem ajudar. São os que disponibilizam todos os comandos, funções e propriedades do Lingo.

Enfim, todos os elementos da linguagem podem ser chamados diretamente na tela para ajudar na com-posição das frases que, na linguagem da informática, são conhecidas como sentenças.

(6)

Conecte!

MX developer's journal. Site em inglês com Lingo avançado e outros recursos:

http://sys-con.com/story/?storyid=45623&de=1

Site com tutoriais e exemplos:

www.via.multimidia.nom.br

Bibliografia

Referências

Documentos relacionados

Este búrguer é um mix fantástico de todos os sabores mexicanos, feito de feijão preto, não muito picante, mas estás à vontade para pedir a versão extra picante, irás ganhar

Visando a reutilização do fresado estudado em outras camadas na pavimentação, analisou- se a possibilidade de aplicação deste, baseado em seu arranjo granulométrico, como agregado

Equipamentos de emergência imediatamente acessíveis, com instruções de utilização. Assegurar-se que os lava- olhos e os chuveiros de segurança estejam próximos ao local de

Tal será possível através do fornecimento de evidências de que a relação entre educação inclusiva e inclusão social é pertinente para a qualidade dos recursos de

A espectrofotometria é uma técnica quantitativa e qualitativa, a qual se A espectrofotometria é uma técnica quantitativa e qualitativa, a qual se baseia no fato de que uma

Figura 8 – Isocurvas com valores da Iluminância média para o período da manhã na fachada sudoeste, a primeira para a simulação com brise horizontal e a segunda sem brise

Quanto às variáveis relacionadas à satisfação nas duas últimas duas semanas, somente para dinheiro não houve diferença antes e depois da cirurgia, para as demais:

 Para os agentes físicos: ruído, calor, radiações ionizantes, condições hiperbáricas, não ionizantes, vibração, frio, e umidade, sendo os mesmos avaliados