O TEMA DO FÓRUM ESTÁ EM MANUTENÇÃO. FEEDBACKS AQUI: ACESSAR

FP Modo Demonstração

Iniciado por Fábio Pichler, 05/05/2014 às 22:02

05/05/2014 às 22:02 Última edição: 05/05/2014 às 22:31 por Fábio Pichler
FP Modo Demonstração
Este script permite a utilização de demonstrações do jogo, igual aos jogos de Vídeo Games. Esta demonstração, é nada mais que um jogo automático, onde o usuário não pode interferir nos acontecimentos, deve ter duração de segundos ou de alguns minutos e mostrar alguma(s) parte(s) de seu Jogo (projeto).

Pras demonstrações iniciarem, basta aguardar um tempo no Menu Inicial, deixando-o inativo.

As demonstrações não causam nenhum tipo de interferência no jogo, basta usar mapas independentes.

Características

* Versão atual: 1.0
* Engine: RPG Maker VX Ace
* Compatibilidade: Boa
* Dificuldade: Fácil
* Lag: Nulo
* Bug: Nenhum conhecido

Script
#===============================================================================
# * * FP Modo Demonstração * *
#===============================================================================
# * Criado por: Fábio Pichler  http://fabiopichler.tk
# * Versão: 1.0
# * Compatível com: RPG Maker VX Ace
# * Lançamento: 05/05/2014
# * Página Web: http://fabiopichler.tk/rpg-maker/rgss3/fp-modo-demonstracao
#
#===============================================================================
# * * Introdução * *
#-------------------------------------------------------------------------------
# * Este script permite a utilização de demonstrações do jogo, igual
# aos jogos de Vídeo Games. Esta demonstração, é nada mais que um jogo
# automático, onde o usuário não pode interferir nos acontecimentos,
# deve ter duração de segundos ou de alguns minutos e
# mostrar alguma(s) parte(s) de seu Jogo (projeto).
#
# * Para ver a demonstração, basta esperar X segundos, na tela do Menu Principal.
#
# * O script iniciará um mapa, após isso, o personagem e o ambiente
# deverão interagir automaticamente. Pra isso, use sistemas por Eventos
# com "Início Automático".
#
# * No final do Evento Geral que comanda o Personagem e algo a mais do ambiente,
# use o comando "Chamar Script" e adicione o seguinte código:
#      SceneManager.goto(Scene_Title)
# Este comando chama a tela de título, novamente.
#
# * Pode-se usar quantas demonstrações quiser, pode-se usá-las em sequência
# pré-definida ou aleatoriamente.
#
# * O tempo de espera só será válido, apartir da inatividade do usuário,
# ou seja, os X segundos só farão efeito, caso não aperte nenhum botão.
#
# * A cada vez que precionar alguma tecla (cima, direita, baixo, esquerda),
# o tempo será reiniciado.
#
# * Adicione um "Evento em Processo Paralelo" para tirar da demonstração
# e levar o usuário de volta ao Menu Inicial. Uma condição de pressionar
# tecla e o comando de Chamar Script, com o seguinte código:
#      SceneManager.goto(Scene_Title)
#
# * Para mais informações e exclarecimentos, dê uma olhada na Demo do Script.
#
#===============================================================================
# * * Características * *
#-------------------------------------------------------------------------------
# * Compatibilidade: Boa
# * Dificuldade: Fácil
# * Lag: Nulo
# * Bug: Nenhum conhecido
#
#===============================================================================
# * * Modo de uso * *
#-------------------------------------------------------------------------------
# * Utilize o Módulo de Configurações, logo abaixo.
#
# * Para escoher os mapas a serem usados, deverá informar:
#  - ID do Mapa: Número de identificação do mapa;
#  - Coordenada X: Posição Horizontal de início;
#  - Coordenada Y: Posição Vertical de início.
#
# * Exemplo para um Mapa com ID 003 e coordenada de início (6 x 9) 
#      MapID = [3]
#      X =     [6]
#      Y =     [9]
#
# * Para usar vários Mapas, basta seguir a seguinte lógica:
#      MapID = [ID_Mapa_1,  ID_Mapa_2,  ID_Mapa_3,  ID_Mapa_4]
#      X =     [ X_Mapa_1,   X_Mapa_2,   X_Mapa_3,   X_Mapa_4]
#      Y =     [ Y_Mapa_1,   Y_Mapa_2,   Y_Mapa_3,   Y_Mapa_4]
#
# * Exemplo:
#  - Primeiro Mapa: ID = 004, X = 8 e Y = 2.
#  - Segundo Mapa: ID = 009, X = 3 e Y = 7.
#      MapID = [4, 9]
#      X =     [8, 3]
#      Y =     [2, 7]
#
# * Outro exemplo:
#      MapID = [18, 7, 14, 23]
#      X = [30, 12, 6, 48]
#      Y = [24, 34, 3, 2]
#
#===============================================================================
# * * Termos de Uso * *
#-------------------------------------------------------------------------------
# * Você poderá usar este script livremente em seu projeto/jogo, seja
# comercial ou não-comercial, basta dar-me os devidos créditos.
#
# * Caso queira, poderá postar este script em outro fórum/site, desde que,
# não altere nenhuma parte deste script, não tire meus créditos, não dê
# créditos a sí mesmo pelo script.
#
# * Não adicione códigos e nem personalize o script, se for postar
# em algum forum/site [2].
#
# * Você poderá alterar o que quiser no script, desde que,
# fique restrito somente ao(s) seu(s) projeto(s)/jogo(s).
#
module FPMD
#===============================================================================
# * * Configuração * * [Alterações após o sinal de = (igualdade)]
#-------------------------------------------------------------------------------
  # * Tempo de espera
  # Escolha o tempo de espera para iniciar a demonstração (em Segundos)
  # Recomendado: 20 ou mais
  Timeout = 10 #Segundos
  # * Aleatório
  # Para exibir aleatoriamente, escreva: true
  # Para seguir uma sequência pré definida: false
  Random = false
  # * ID dos Mapas usados
  # Escolha os IDs dos mapas. Exemplo: [8,3,18,35]
  MapID = [2,3]
  # * Coordenada X de início
  # Escolha as posições X de início em cada mapa. Exemplo: [3,14,16,8]
  X = [0,8]
  # * Coordenada Y de início
  # Escolha as posições Y de início em cada mapa. Exemplo: [6,6,0,12]
  Y = [6,12]
  
#-------------------------------------------------------------------------------
# * * Fim da configuração * *
#===============================================================================

#===============================================================================
# * * Script * * Não altere, se não souber :)
#-------------------------------------------------------------------------------
  Wait = Timeout * 60
end
module DataManager
  def self.setup_game_demo
    if (FPMD::Random == true)
      @fp_count = rand(FPMD::MapID.length)
    else
      fpmd_count = FPMD::MapID.length - 1
      @fp_count == nil || @fp_count >= fpmd_count ? @fp_count = 0 : @fp_count += 1
    end
    create_game_objects
    $game_party.setup_starting_members
    $game_map.setup(FPMD::MapID[@fp_count])
    $game_player.moveto(FPMD::X[@fp_count],FPMD::Y[@fp_count])
    $game_player.refresh
    Graphics.frame_count = 0
  end
end
class Scene_Title < Scene_Base
  @@fp_wait = 0
  def update
    super
    Input.trigger?(:UP) || Input.trigger?(:RIGHT) || Input.trigger?(:DOWN) || Input.trigger?(:LEFT) ? @@fp_wait = 0 : @@fp_wait += 1
    if (@@fp_wait == FPMD::Wait)
      DataManager.setup_game_demo
      close_command_window
      fadeout_all
      $game_map.autoplay
      SceneManager.goto(Scene_Map)
    end
  end
  alias fpmd_close_c_w close_command_window
  def close_command_window
    fpmd_close_c_w
    @@fp_wait = 0
  end
end
#-------------------------------------------------------------------------------
# * * Fim do Script * *
#===============================================================================


Demo

Créditos
Eu, Fábio Pichler

Opa se eu estiver certo, o script permite que ao ficar inativo na tela, ele vá sozinho para uma tela de demo isso? e clicando ou terminando sei lá, volta para a title?

Bom criativo e interessante, bom trabalho e algo que eu ainda não havia visto x).

Nossa, criatividade passou e ficou ai ein, que boa cartada!  :XD: bom trabalho  :XD:

Valeu, pessoal :ok:

Citação de: Raizen online 07/05/2014 às 16:13
Opa se eu estiver certo, o script permite que ao ficar inativo na tela, ele vá sozinho para uma tela de demo isso? e clicando ou terminando sei lá, volta para a title?

Bom criativo e interessante, bom trabalho e algo que eu ainda não havia visto x).

Isso mesmo, se ficar inativo por 10 segundo (padrão da demo) na tela de Menu Principal, vai para uma demonstração (a cada vez aparece uma nova, ao final, repete).
Ao chegar no final da demonstração ou apertar uma tecla, volta ao Menu principal.




Este tipo de demonstração é muito comum em jogos de Super NES, PS1, PS2 e etc. Só não sei em PC, e também não sei se é todo mundo que conhece.

Eu já havia tido esta ideia, há alguns meses atrás, quando estava jogando um jogo (acho que de PS1), mas somente agora, resolvi a fazer o script.