Jump to content
Rpg²S Forum

Salta scena


raffy2010
 Share

Recommended Posts

Cutscene Skip

Descrizione

Da la possibilita di saltare dialoghi o scene di gioco con il tasto CTRL

http://i.imgur.com/90V0N.png

 

Autore

TDS

Allegati

N/A

 

Istruzioni per l'uso

Inserite lo script sotto Material.
Altre istruzioni all'interno dello script.

Qui sotto un esempio su come impostarlo

http://i.imgur.com/iH5bo.png

 

Script

#==============================================================================
# ** TDS Cutscene Skip
# Ver: 1.1
#------------------------------------------------------------------------------
# * Description:
# This script allows you to skip events that are marked as cutscenes when the
# CTRL key is pressed.
#------------------------------------------------------------------------------
# * Features:
# Skip evented cutscenes.
#------------------------------------------------------------------------------
# * Instructions:
# To make an evented sequence be a skippable cutscene you must add this to it.
#
# From a script call:
#
# start_cutscene
#
# Or using this label:
#
# CUTSCENE_START
#
# To specify where the cutscene will be skipped to you must add this label.
#
# CUTSCENE_END
#
# To check whether or not an evented cutscene was skipped you can add this to
# a conditional branch on the 4th tag in the script line.
#
# cutscene_skipped?
#
#------------------------------------------------------------------------------
# * Notes:
# Cutscenes need to be faded in after being skipped and music needs to be
# replayed after being skipped since they are faded out to allow the creator
# of the cutscene to arrange things accordingly before the player takes control.
#------------------------------------------------------------------------------
# WARNING:
#
# Do not release, distribute or change my work without my expressed written
# consent, doing so violates the terms of use of this work.
#
# If you really want to share my work please just post a link to the original
# site.
#
# * Not Knowing English or understanding these terms will not excuse you in any
# way from the consequenses.
#==============================================================================
# * Import to Global Hash *
#==============================================================================
($imported ||= {})[:TDS_Cutscene_Skip] = true
#==============================================================================
# ** Game_Interpreter
#------------------------------------------------------------------------------
# An interpreter for executing event commands. This class is used within the
# Game_Map, Game_Troop, and Game_Event classes.
#==============================================================================
class Game_Interpreter
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias tds_cutscene_skip_game_interpreter_initialize initialize
alias tds_cutscene_skip_game_interpreter_execute_command execute_command
alias tds_cutscene_skip_game_interpreter_command_118 command_118
#--------------------------------------------------------------------------
# * Object Initialization
# depth :
#--------------------------------------------------------------------------
def initialize(depth = 0)
# Run Original Method
tds_cutscene_skip_game_interpreter_initialize(depth)
# Set Cutscene Flags
@cutscene_active = @cutscene_skipped = @cutscene_skipping = false
end
#--------------------------------------------------------------------------
# * Determine if Cutscene is active
#--------------------------------------------------------------------------
def cutscene_active? ; @cutscene_active and running? end
def cutscene_skipped? ; @cutscene_skipped and running? end
#--------------------------------------------------------------------------
# * Start Cutscene
#--------------------------------------------------------------------------
def start_cutscene
# Set Cutscene Active Flag to true
@cutscene_active = true
# Set Cutscene Skipped Flag to false
@cutscene_skipped = false
end
#--------------------------------------------------------------------------
# * Skip Cutscene
#--------------------------------------------------------------------------
def skip_cutscene
# Set Cutscene Skipping and Skipped Flag to true
@cutscene_skipping = @cutscene_skipped = true
# Clear Game Messages
$game_message.clear
# Reset Map Scrolling
$game_map.finish_scrolling
# Stop All Forced Movement on map
$game_map.stop_all_forced_move_route
# Set Fiber to nil
@fiber = nil
end
#--------------------------------------------------------------------------
# * Finish Cutscene
#--------------------------------------------------------------------------
def finish_cutscene
# Set Cutscene Skipping and Cutscene Active Flag to false
@cutscene_skipping = @cutscene_active = false
end
#--------------------------------------------------------------------------
# * Label
#--------------------------------------------------------------------------
def command_118
# Run Original Method
tds_cutscene_skip_game_interpreter_command_118
# Start Cutscene if the Cutscene Start Label has been reached
start_cutscene if @params.at(0).include?("CUTSCENE_START")
# Finish Cutscene if the Cutscene End Label has been reached
finish_cutscene if @params.at(0).include?("CUTSCENE_END")
end
#--------------------------------------------------------------------------
# * Set Center Screen Display Position
#--------------------------------------------------------------------------
def set_center_display_pos(x, y)
center_x = (Graphics.height / 32 - 1) / 2.0
center_y = (Graphics.width / 32 - 1) / 2.0
$game_map.set_display_pos(x - 2 - center_x, y - center_y)
end
#--------------------------------------------------------------------------
# * Execute Command
#--------------------------------------------------------------------------
def execute_command
# If Cutscene has been skipped
if @cutscene_skipping
# Get Command and it's properties
command = @list[@index] ; @params = command.parameters ; @indent = command.indent
# Command Code Case
case command.code
when 118, 121..123, 125..129, 132..138, 201..203, 206, 211, 216, 217, 231, 233, 235, 281..285, 311..324
when 204 # Scroll Map
# Process Scrolling Method and Finish Map Scrolling
command_204 ; $game_map.finish_scrolling ; return
when 223 # Map tone Change
# Change Fade time to 0 and remove wait
@params[1] = 0 ; @params[2] = false
when 234 # Change Picture Tone
# Change Picture Tone and Remove Wait
@params[2] = 0 ; @params[3] = false
when 232 # Move Picture
# Change Move Picture Duration and Remove Wait
@params[10] = 0 ; @params[11] = false
when 335 # Script
else ; return
end
method_name = "command_#{command.code}"
send(method_name) if respond_to?(method_name)
return
end
# Run Original Command
tds_cutscene_skip_game_interpreter_execute_command
end
end

#==============================================================================
# ** Game_Map
#------------------------------------------------------------------------------
# This class handles maps. It includes scrolling and passage determination
# functions. The instance of this class is referenced by $game_map.
#==============================================================================
class Game_Map
#--------------------------------------------------------------------------
# * Finish Map Scrolling
#--------------------------------------------------------------------------
def finish_scrolling
# Scroll Direction Case
case @scroll_direction
when 2 ; set_display_pos(@display_x, @display_y + @scroll_rest.abs) # Down
when 4 ; set_display_pos(@display_x - @scroll_rest.abs, @display_y) # Left
when 6 ; set_display_pos(@display_x + @scroll_rest.abs, @display_y) # Left
when 8 ; set_display_pos(@display_x, @display_y - @scroll_rest.abs) # Up
end
# Setup Scroll
setup_scroll
end
#--------------------------------------------------------------------------
# * Stop All forced movement
#--------------------------------------------------------------------------
def stop_all_forced_move_route
# Stop Events Forced Move Route
@events.each_value {|e| e.stop_move_route }
# Stop Player Move Route
$game_player.stop_move_route
end
end
#==============================================================================
# ** Game_Character
#------------------------------------------------------------------------------
# This class deals with characters. It's used as a superclass of the
# Game_Player, Game_Follower, GameVehicle and Game_Event classes.
#==============================================================================
class Game_Character < Game_CharacterBase
#--------------------------------------------------------------------------
# * Stop Move Route Processing
#--------------------------------------------------------------------------
def stop_move_route
# Return if Move route is not forced
return if !@move_route_forcing
# Move to current position (If they were already in mid movement)
moveto(@x, @y)
# Restore Move Route
restore_move_route
# Set Move Route Force Flag to false
@move_route_forcing = false
end
end

#==============================================================================
# ** Scene_Map
#------------------------------------------------------------------------------
# This class performs the map screen processing.
#==============================================================================
class Scene_Map < Scene_Base
#--------------------------------------------------------------------------
# * Alias Listings
#--------------------------------------------------------------------------
alias tds_silver_heart_scene_map_update update
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
# Update Cutscene Skip Input if in a Cutscene
update_cutscene_skip_input if $game_map.interpreter.cutscene_active?
# Run Original Method
tds_silver_heart_scene_map_update
end
#--------------------------------------------------------------------------
# * Update Cutscene Skip Input
#--------------------------------------------------------------------------
def update_cutscene_skip_input
# If Input Trigger CTRL
if Input.trigger?(:CTRL)
# Play Ok Sound
Sound.play_ok
# Make Cutscene Cover Sprite
@cutscene_cover = Sprite.new
@cutscene_cover.bitmap = Graphics.snap_to_bitmap
@cutscene_cover.bitmap.blur
@cutscene_cover.opacity = 0
@cutscene_cover.tone.set(-30, -30, -30)
@cutscene_cover.z = 5000
# Make Cutscene Skip Window
@cutscene_skip_window = Window_Cutscene_Skip_Prompt.new
@cutscene_skip_window.x = (Graphics.width - @cutscene_skip_window.width) / 2
@cutscene_skip_window.y = (Graphics.height - @cutscene_skip_window.height) / 2
@cutscene_skip_window.z = 5100
@cutscene_skip_window.index = 1
@cutscene_skip_window.openness = 0
@cutscene_skip_window.open

15.times do
# Update Graphics
Graphics.update
# Increase Cutscene Cover Opacity
@cutscene_cover.opacity += 17
end
10.times do
# Update Graphics
Graphics.update
# Update Cutscene Skip Window
@cutscene_skip_window.update
end

loop do
# Update Graphics and Input
Graphics.update ; Input.update
# Update Cutscene Skip Window
@cutscene_skip_window.update
# If Input Trigger C (Confirm)
if Input.trigger?(:C)
# Play Ok Sound
Sound.play_ok
case @cutscene_skip_window.index
when 0 # Yes
# Deactivate Skip Cutscene window
@cutscene_skip_window.deactivate
# Close Cutscene Skip Window
@cutscene_skip_window.close
10.times do
# Update Graphics
Graphics.update
# Update Cutscene Skip Window
@cutscene_skip_window.update
end
# Save BGM
$game_system.save_bgm
# Fadeout
$game_map.screen.start_fadeout(30)
# Fade Time
time = 500
# Fadeout all Sound
RPG::BGM.fade(time) ; RPG::BGS.fade(time) ; RPG::ME.fade(time)
# Fading Out Wait
35.times do
# Update Graphics
Graphics.update
$game_map.screen.update_fadeout
@spriteset.update_viewports
@cutscene_cover.color.set(0, 0, 0, 255 - $game_map.screen.brightness)
end
# Stop All Sound
RPG::BGM.stop ; RPG::BGS.stop ; RPG::ME.stop
# Dispose of Cutscene Cover
@cutscene_cover.bitmap.dispose ; @cutscene_cover.dispose ; @cutscene_cover = nil
# Dispose of Cutscene Skip Window
@cutscene_skip_window.dispose ; @cutscene_skip_window = nil
# Update Input
Input.update
# Process Cutscene Skipping
$game_map.interpreter.skip_cutscene
# Dispose of Message Window
@message_window.dispose ; @message_window = nil
# Create Message Window
create_message_window
break
when 1 # No
# Deactivate Skip Cutscene window
@cutscene_skip_window.deactivate
# Close Cutscene Skip Window
@cutscene_skip_window.close
10.times do
# Update Graphics
Graphics.update
# Decrease Cutscene Cover Opacity
@cutscene_cover.opacity -= 17
# Update Cutscene Skip Window
@cutscene_skip_window.update
end
# Dispose of Cutscene Cover
@cutscene_cover.bitmap.dispose ; @cutscene_cover.dispose ; @cutscene_cover = nil
# Dispose of Cutscene Skip Window
@cutscene_skip_window.dispose ; @cutscene_skip_window = nil
# Update Input
Input.update
end
break
end
# If Input Trigger B (Cancel)
if Input.trigger?(:B)
# Play Cancel Sound
Sound.play_cancel
# Deactivate Skip Cutscene window
@cutscene_skip_window.deactivate
# Close Cutscene Skip Window
@cutscene_skip_window.close
10.times do
# Update Graphics
Graphics.update
# Decrease Cutscene Cover Opacity
@cutscene_cover.opacity -= 17
# Update Cutscene Skip Window
@cutscene_skip_window.update
end
# Dispose of Cutscene Cover
@cutscene_cover.bitmap.dispose ; @cutscene_cover.dispose ; @cutscene_cover = nil
# Dispose of Cutscene Skip Window
@cutscene_skip_window.dispose ; @cutscene_skip_window = nil
# Update Input
Input.update
break
end
end
end
end
end

#==============================================================================
# ** Window_Save_File_Prompt
#------------------------------------------------------------------------------
# This window handles save file overwrite prompt
#==============================================================================
class Window_Cutscene_Skip_Prompt < Window_Command
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize
super(466, 170)
end
#--------------------------------------------------------------------------
# * Window Width and Height
#--------------------------------------------------------------------------
def window_width ; 190 end
def window_height ; 77 end
#--------------------------------------------------------------------------
# * Window Standard Padding
#--------------------------------------------------------------------------
def standard_padding ; 0 end
#--------------------------------------------------------------------------
# * Item Rect
#--------------------------------------------------------------------------
def item_rect(index)
rect = Rect.new
rect.width = item_width
rect.height = item_height
rect.x = 12 + index % col_max * item_width + 5
rect.y = 37 + index / col_max
rect
end
#--------------------------------------------------------------------------
# * Ok Enabled Handling
#--------------------------------------------------------------------------
def ok_enabled? ; false end
#--------------------------------------------------------------------------
# * Max Columns
#--------------------------------------------------------------------------
def col_max ; 2 end
#--------------------------------------------------------------------------
# * Command Text Alignment
#--------------------------------------------------------------------------
def alignment ; 1 end
#--------------------------------------------------------------------------
# * Make Commands List
#--------------------------------------------------------------------------
def make_command_list
add_command("Yes", :yes, true) ; add_command("No", :no, true)
end
#--------------------------------------------------------------------------
# * Refresh
#--------------------------------------------------------------------------
def refresh
super
contents.font.color = knockout_color
draw_text(12, 12, 166, 24, "Skip Cutscene?", 1)
end
end

 

Bugs e Conflitti Noti

N/A

 

Altri dettagli

N/A

 

 

http://wwwdonnemanagernapoli.files.wordpress.com/2013/03/napoli-calcio.jpg

 

Link to comment
Share on other sites

Questo script non è male. :sisi:

Soprattutto per i giochi che vogliono mantenere alto il ritmo.

 

Tuttavia credo che il maker "medio" non vorrebbe che il giocatore salti la propria, sudatissima cutscene... xD

 

E comunque anche i giocatori "medi" di jrpg tendono a non saltare le cutscene. Anzi, sono spesso i punti che più attendono con ansia. ^.^

 

In ogni caso è uno script che potrà trovare alcune utilità specifiche... e non solo per le cutscene, a giudicare dall'impostazione dell'Evento di esempio.

Bel lavoro.

Aurora Dreaming


The Dreamer (v. 1.1) - standalone


72 MB - Il prequel ad Aurora Dreaming



segui il dev-diary ufficiale di Aurora Dreaming!



Bacheca Premi


http://www.rpg2s.net/forum/uploads/monthly_01_2014/post-6-0-39588100-1390575633.png

Link to comment
Share on other sites

A me non dispiace poter saltare le scene rigiocando più volte, utile pur eal betatestaggio :sisi: ^ ^

Più che altro tremo all'ide adi premere ctrl per caso D:

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Oh... vero... e ieri lo avevo pure notato e non avevo detto quella cosa proprio per averlo notato, ecco perché, mi pareva! XDXD

^ ^

(\_/)
(^ ^) <----coniglietto rosso, me!
(> <)


Il mio Tumblr dove seguire i miei progetti, i progetti della Reverie : : Project ^ ^

http://i.imgur.com/KdUDtQt.png disponibile su Google Play, qui i dettagli! ^ ^

http://i.imgur.com/FwnGMI3.png completo! Giocabile online, qui i dettagli! ^ ^

REVERIE : : RENDEZVOUS (In allenamento per apprendere le buone arti prima di cominciarlo per bene ^ ^) Trovate i dettagli qui insieme alla mia intervista (non utilizzerò più rpgmaker) ^ ^

 

SUWOnzB.jpg 🖤
http://www.rpg2s.net/dax_games/r2s_regali2s.png E:3 http://www.rpg2s.net/dax_games/xmas/gifnatale123.gif
http://i.imgur.com/FfvHCGG.png by Testament (notare dettaglio in basso a destra)! E:3
http://i.imgur.com/MpaUphY.jpg by Idriu E:3

Membro Onorario, Ambasciatore dei Coniglietti (Membro n.44)

http://i.imgur.com/PgUqHPm.png
Ufficiale
"Ad opera della sua onestà e del suo completo appoggio alla causa dei Panda, Guardian Of Irael viene ufficialmente considerato un Membro portante del Partito, e Ambasciatore del suo Popolo presso di noi"


http://i.imgur.com/TbRr4iS.png<- Grazie Testament E:3
Ricorda...se rivolgi il tuo sguardo ^ ^ a Guardian anche Guardian volge il suo sguardo ^ ^ a te ^ ^
http://i.imgur.com/u8UJ4Vm.gifby Flame ^ ^
http://i.imgur.com/VbggEKS.gifhttp://i.imgur.com/2tJmjFJ.gifhttp://projectste.altervista.org/Our_Hero_adotta/ado2.png
Grazie Testament XD Fan n°1 ufficiale di PQ! :D

Viva
il Rhaxen! <- Folletto te lo avevo detto (fa pure rima) che non
avevo programmi di grafica per fare un banner su questo pc XD (ora ho di
nuovo il mio PC veramente :D)

Rosso Guardiano della
http://i.imgur.com/Os5rvhx.png

Rpg2s RPG BY FORUM:

Nome: Darth Reveal

 

PV totali 2
PA totali 16

Descrizione: ragazzo dai lunghi capelli rossi ed occhi dello stesso colore. Indossa una elegante giacca rossa sopra ad una maglietta nera. Porta pantaloni rossi larghi, una cintura nera e degli stivali dello stesso colore. E' solito trasportare lo spadone dietro la schiena in un fodero apposito. Ha un pendente al collo e tiene ben legato un pezzo di stoffa (che gli sta particolarmente a cuore) intorno al braccio sinistro sotto la giacca, copre una cicatrice.
Bozze vesti non definitive qui.

Equipaggiamento:
Indossa:
60$ e 59$ divisi in due tasche interne
Levaitan

Spada a due mani elsa lunga

Guanti del Defender (2PA)
Anello del linguaggio animale (diventato del Richiamo)

Scrinieri da lanciere (2 PA)

Elmo del Leone (5 PA)

Corazza del Leone in Ferro Corrazzato (7 PA)

ZAINO (20) contenente:
Portamonete in pelle di cinghiale contenente: 100$
Scatola Sanitaria Sigillata (può contenere e tenere al sicuro fino a 4 oggetti curativi) (contiene Benda di pronto soccorso x3, Pozione di cura)
Corda
Bottiglia di idromele
Forma di formaggio
Torcia (serve ad illuminare, dura tre settori)

Fiasca di ceramica con Giglio Amaro (Dona +1PN e Velocità all'utilizzatore)
Ampolla Bianca

Semi di Balissa

 

CAVALLO NORMALE + SELLA (30 +2 armi) contentente:
66$
Benda di pronto soccorso x3
Spada a due mani

Fagotto per Adara (fazzoletto ricamato)


 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...