O que são screens
Possiveis usos de Screens
Xpos, Ypos, Xalign e Yaling
Call ou Show screen
Documentação do renpy traduzida (inicio)
👉 Mesmo tutorial em vídeo: Como fazer screen no renpy básico
Screens and Screen Language
As coisas que o player ver quando olhando para um jogo de Ren’py podem ser divididas em imagens, e interface do usuário (gui/ui). Imagens são exibidas para o player usando os comandos scene, show, e hide, e geralmente são partes da história que está sendo contada. Tudo mais que o player ver é parte da interface, a qual é personalizada usando screens.
Screens podem ser exibidas de quatro modos:
Implícita, quando se executa um comando de script. Por exemplo, o comando say, irá culminar na screen say sendo exibida.
Automática, por exemplo, o Ren’py irá mostrar a screen main_menu quando iniciar. Ou quando o player retornar a tela inicial
Como uma ação, associado a um botão, um botão do mouse, ou um tecla do teclado. Por padrão a screen de salve é exibida quando o player pressiona ESC ou clica no botão direito do mouse. Também é possível definir um botão que mostra a screen de salve.
Explicita, usando comandos que culminam na screen sendo exibida.
Mais que uma screen pode ser exibida por vez.
Screens tem duas funções principais. A primeira é exibir informação para o usuário. A informação pode ser exibida usando texto, barras, e imagens. Algumas informações exibidas desse modo são vitais para a jogabilidade. A say screen, por exemplo, é usada para exibir o diálogo para o player, incluindo o nome do personagem o que está sendo dito.
A outra coisa que uma screen pode fazer é permitir ao player interagir com o jogo. Botões e barras permitem o usuário fazer ações e ajustar valores. Ren’py incluí uma boa quantidade de ações pré definidas, permitindo o player avançar o jogo, controlar as configurações, carregar e salvar o jogo, e fazer muitas outras ações. Um desenvolvedor de jogos podem também usar Python para escrever novas ações.
Screen
atualizam no inicio de cada interação, e cada vez que uma interação
é iniciada. Note que o comando with None
não faz uma interação acontecer, e também não irá atualizar a
screen.
Uma screen tem um conjunto(scope) de ações associadas, dando valores e algumas variáveis. Quando uma variável é acessada por uma screen, primeiro a screen irá olhar o scope, e então irá olhar uma variável global.
Screen não devem causar efeitos colaterais que são visíveis fora da screen. Ren’py irá executar uma screen várias vezes como achar necessário. Ele executa uma screen como parte do processo de pré-carregamento da imagem, antes que a screen seja exibida. Como resultado, se executar uma screen tem efeitos indesejados, esses efeitos poderão acontecer de modo imprevisível.
Usando
geradores
de Python
em
screen podem culminar em resultados inesperados.
Isso tem um problema com como o Python interpreta e compila o código
fonte de Python que será usando em uma screen. Geradores podem ser
usados em funções de Python chamadas por uma screen, mas não na
screen.
[https://www.renpy.org/doc/html/screens.html]
Hoje vamos ver screen no renpy porém a parte necessária para um projeto simples.
Conceito resumido de screen
- No renpy screen são equivalentes a telas que você cria para certas funcionalidades.
Por exemplo se quiser fazer um jogo, um minigame, seria melhor por numa screen. Se quiser fazer uma tela que mostra a afeição, faça uma screen, se quiser fazer um menu ou um botão durante todo o game use uma screen. Assim toda vez que quiser mostrar a tela ou mesmo chamar o minigame irá usar um dos comandos:
👉 show screen nomedascreen – show é um comando que irá fazer sua screen aparecer, porém ao sair dessa tela, o jogo volta para última label. Também ao usar show, seu jogo continua acessível em baixo dessa tela.
👉 call screen nomedascreen – Já usando call tudo abaixo dessa screen fica parado, ou seja não pode acessar nada até que o player aperte o botão que saia dessa tela.
👉 Tag menu – essa tag faz com que quando chamar a screen as outras fechem, deixando apenas uma aberta.
👉 hbox – uma comando de caixa horizontal. Significa que irá colocar seus itens um ao lado do outro na mesma linha.
👉 vbox – um comando de caixa vertical. Significa que irá colocar itens um abaixo do outro.
👉 xpos - um comando onde irá inserir o local exato onde quer que algo fique na screen. Lembrando que X sempre se refere a posição horizontal, de um lado até outro.
👉 ypos - um comando onde irá inserir o local exato onde quer que algo fique na screen. Porém Y sempre se trata de altura, vertical, ou baixo e cima.
👉 xalign - um comando que controla onde o item irá aparecer, assim como xpos é referente a horizontal na tela. Porém não usamos o local exato da resolução na tela e sim números com pontos, como 0.456, ou 0.5 (que exatamente no meio da tela).
👉 yalign - um comando que controla onde um item irá aparecer, assim como ypos é referente a altura, ou verticalidade. Porém não usamos o local exato da resolução na tela e sim números com pontos, como 0.456, ou 0.5 (que exatamente no meio da tela).
Geralmente onde se pode usar xpos, também pode se usar xalign.
Tentem não ter muitas screen no projeto pois podem o deixar pesado e quanto mais pesado menos aparelhos irão ser capaz de rodar seu jogo.
screen suportam if, assim pode fazer um screen de mapa e utilizar ela no game inteiro, apenas desligando locais com if se a pessoa estiver na sala pode ocultar o botão que a levaria para o banheiro.
Abaixo está um menu de preferências que fiz para meu jogo Cosmic Kiss. Em uma única screen coloquei as barras do menu de opções, as configurações de tela cheia, fonte e outras coisas.
Aqui está o menu dentro do jogo feito com essa programação acima.
Ainda não mudei cores das letras. |
Para ver essas configurações melhor recomendo assistir o link do vídeo acima e alguns outros do canal Otomera no youtube. Embora esse artigo sirva de complementação para o Vídeo.
0 Comentários:
Postar um comentário
Seu comentário me deixa muito feliz, mas se não der para comentar tudo bem! obrigada pela visita!
(。♥‿♥。) (*≧m≦*) ヾ(^∇^) m(_ _)m (◎_◎;) (T_T) (*_*) (~~~)\(^o^)/
(^_−)☆ (*・∀・)/\(・∀・*) (>д<)\(*T▽T*)/ (^_^) ❤
Sintam-se livres pra comentar e dividir seus link aqui, adorarei visitar