🤔 Para Refletir :
"Quer ser o melhor? Então comece sendo o pior!"
- Kairo

Script VXA - Reprodutor de video alternativo (altera o comando play_movie)

DevWithCoffee

Cidadão
Membro
Membro
Juntou-se
02 de Abril de 2019
Postagens
151
Bravecoins
225
Este SCRIPT sobrepõe o comando de evento "Play Movie...", mas para acessar mais parâmetro você deverá usar o comando de evento "Script..."
Para funcionar o jogador precisará ter o FFMPEG ou VLC instalado. O SCRIPT sempre priorizará o FFMPEG por ser mais rápido para gerar os frames.

DOWNLOAD: Mediafire
(Inclui uma DEMO com testes praticos de todas as possibilidades e funções)

Embora funcione com filmes em outros formatos, isso impediria a garantia de reprodução de áudio, portanto, o ideal é usar apenas OGV (OGG)

Formatos aceitos:
OGG/OGV: Video+Audio
FLV: Video
WMV/ASF: Video
WEBM: Video
AVI/TS: Video
MOV: Video only
MP4: Video (Este não funciona com VLC)

Defina as configurações iniciais no modulo MoviePlayer_Config no começo do SCRIPT:
Ruby:
module MoviePlayer_Config
    # The developer can modify the initial settings here:
    MODE=1
    NATIVE=false
    MUTE=false
    VOLUME=100
    SKIP=true
    CLEAR=false
    DELAY=360
    Z=0
end

MODE:
1 : O vídeo é esticado ou comprimido até a largura e altura da tela jogo, mesmo que essa seja modificada
2 : O vídeo se ajusta largura do jogo de modo responsivo
3 : O vídeo se ajusta altura do jogo de modo responsivo
4 : O vídeo não é reproduzido imediatamente, apenas gera os frames para usar qualquer momento depois sem causar atraso ao iniciar a reprodução

Modo 1: Ajustado ao tamanho da janela do jogo:
Play_Movie-Strech.png


Modo 2: Se o video tiver a largura maior que a altura:
Play_Movie-Landscape-to-Width.png


Modo 2: Se o video tiver a largura maior que a altura:
Play_Movie-Landscape-to-Height.png


Modo 3: Se o video for no modo retrato ajustado pela largura:
Play_Movie-Portrait-to-Width.png


Modo 3: Se o video for no modo retrato ajustado pela altura:
Play_Movie-Portrait-to-Height.png



NATIVE:
Está configuração serve apenas para o caso do desenvolvedor precisar que funcione no modo padrão do VXAce

MUTE:
Este configuração é para que o video use a BGM que estiver tocando no momento

VOLUME:
Altere o volume padrão para todos os videos iniciados pelo comando de evento, sendo de 1 à 100

SKIP:
Desative isso se não quiser que o jogador possa pular o video apertando a tecla de cancelar (X, Esc, Insert, InsNumpad)

CLEAR:
Este funciona apenas no modo teste de jogo, para que o desenvolvedor possa limpar frames antigos se editar o video ou tiver usado algum tempo de DELAY que afetou a criação dos frames

DELAY:
Defina um valor em frames de tempo para garantir que o FFMPEG ou VLC consigam criar frames o suficiente pro reprodutor iniciar, o FFMPEG usará 25% desse tempo pois é muito mais rápido. Lembrando que no RMVXAce 60 frames equivalem à 1 segundo, então eu recomendo no mínimo 240 (4 segundos) por conta de computadores mais antigos ou com Disco rígido mais lento.

Z:
Está configuração permite colocar o vídeo atrás da ultima caixa de texto ou de Pictures de eventos na tela:
0 : Acima dos textos e Pictures
1 : Abaixo dos textos
2 : Abaixa dos textos e Pictures (Não use Fadeout Screen nesse caso, pois o video ficará atrás da tela escura)



Agora vamos ao uso durante o jogo, para não ficar mudando as configurações mais comuns antes de reproduzir eu inclui isso diretamente na função que é chamada pelo comando de evento Play Movie... :
Graphics.play_movie(File path, Mode, Volume)

File path é o caminho a partir da pasta do jogo, ou seja, nem todo video precisará estar na pasta Movies, mas não se deve usar o extensão de arquivo neste caso, para não afetar a escolha de prioridade do SCRIPT. Exemplo se você tiver um vídeo chamado Intro.ogg (use aspas e barra para à direita):
Movies/Intro

Mode equivale aos modos já mostrados nas configurações iniciais, use 0 para selecionar automaticamente a configuração atual, exemplo:
Graphics.play_movie('Movies/Intro',2)

Volume este é um ajuste exatamente com em BGM, você regula por porcentagem, o som do video realmente será executado pelo reprodutor de BGM nativo desde que o video sejá OGG/OGV, então se você tiver um SCRIPT de regulagem global de som no menu ele será compativel, desde que ele faça isso diretamente na função, exemplo:
Graphics.play_movie('Movies/Intro',1,50)



Modificar a configuração do comando de evento Play Movie... :
(Se algum argumento for digitado fora do que a função espera, como tipo ou limite da faixa o SCRIPT não quebrará, apenas retornará a informação no Console)

Alterar resolução/proporção:
$game_system.movie_setup('mode',1) ou $game_system.movie_setup(1,1)

Ativa player nativo do VXA:
$game_system.movie_setup('vxa',true) ou $game_system.movie_setup(2,true)

Muta/Desliga o som para que seja a musica do BGM:
$game_system.movie_setup('mute',true) ou $game_system.movie_setup(3,true)

Altera o volume em porcentagem:
$game_system.movie_setup('volume',50) ou $game_system.movie_setup(4,50)

Habilita/Desabilita a tecla pra pular o vídeo:
$game_system.movie_setup('skip',true) ou $game_system.movie_setup(5,true)

Habilita/Desabilita a limpeza de frames da pasta temporaria (apenas para o modo de teste):
$game_system.movie_setup('clear',true) ou $game_system.movie_setup(6,true)

Inclui um atraso ao usar executar a linha de comando do FFMPEG ou VLC, lembrando que no FFMPEG esse tempo será 25% desse valor:
$game_system.movie_setup('delay',90) ou $game_system.movie_setup(7,90)

Altera a camada aonde os frames do video serão desenhados:
$game_system.movie_setup('z',1) ou $game_system.movie_cfg(8,1)

Recebe no Console as configurações atuais:
$game_system.movie_setup

Restaura as configurações para as mesmas que estão no módulo MoviePlayer_Config:
$game_system.movie_initial
 

Anexos

  • VXA-Play_Movie.png
    VXA-Play_Movie.png
    4,4 KB · Visualizações: 18
  • 01.png
    01.png
    78,2 KB · Visualizações: 9
  • 02.png
    02.png
    97,8 KB · Visualizações: 5
Última edição:
Voltar
Topo Inferior