Ulquiorra Colaborador
Mensagens : 13 Reputação : 3 Data de inscrição : 09/09/2011 Idade : 26
| Assunto: Cross Pause System Sex Set 09, 2011 7:36 pm | |
| .:CROSS PAUSE SYSTEM:. .:INTRODUÇÃO:.Resolvi dar uma implementada no Simple Pause System XP, adicionando a customização por pictures. .:CARACTERISTICAS:.Permite pausar todo o jogo, inclusive o relógio. Bastante customizável. Script: - Spoiler:
#================================================================= # Cross Pause System # Versão Runica. (Para ambos os makers) # Por Alex Crosslight # Baseado no Simple Pause system XP #================================================================== # O script permite adaptar uma tecla para pausar o jogo, incluindo # o relógio do jogo, você irá precisar de imagens na pasta “pause”, # que deverá estar na pasta Graphics. # #================================================================== #================================================================== # Recomendo não alterar nada aqui. #================================================================== if FileTest.exist?(“Game.rxproj”)
module RPG::Cache def self.pause(filename) load_bitmap(“Graphics/Pause/”, filename) end end end
if FileTest.exist?(“Game.rvproj”)
module Cache def self.pause(filename) load_bitmap(“Graphics/Pause/”, filename) end end
class Game_System
attr_accessor :playing_bgm attr_accessor :playing_bgs attr_accessor :bgm_restore attr_accessor :bgs_restore attr_accessor :bgm_memorize attr_accessor :bgs_memorize
#————————————————————————– # BGM sendo Reproduzido #————————————————————————–
def playing_bgm return @playing_bgm end
#————————————————————————– # BGS sendo Reproduzido #————————————————————————–
def playing_bgs return @playing_bgs end
#————————————————————————– # Memorizar BGM #————————————————————————–
def bgm_memorize @memorized_bgm = @playing_bgm end
#————————————————————————– # Reproduzir BGM Memorizado #————————————————————————–
def bgm_restore bgm_play(@memorized_bgm) end
#————————————————————————– # Memorizar BGS #————————————————————————–
def bgs_memorize @memorized_bgs = @playing_bgs end
#————————————————————————– # Reproduzir BGS Memorizado #————————————————————————–
def bgs_restore bgs_play(@memorized_bgs) end end end
#================================================================== # Configurações #================================================================== module Kurosuraito
#Botão de pause ( O que deve por = Botão do teclado # X = A # B = B # L = Q # R = W # Z = D # D = Y # A = Z # B = X # C = C
PAUSE_CROSS = ‘X’
#Usar uma picture como texto de pausa? (Se definir true, nomeie #abaixo a picture que vai ter que estar na pasta pause.
BITPA_CROSS = false
#Nome da imagem pro texto de pausa
PBITM_CROSS = ‘pause_text’
#Caso tenha definido BITPA_CROSS como false, aparecerá um texto
#Texto exibido
TEXTB_CROSS = “Pause”
#Tamanho da fonte do texto
FONT_SIZE_CROSS = 32
#Nome da fonte
FONT_CROSS = ‘Georgia’
#Fonte do texto
FONT_HUE_CROSS = [255, 255, 255, 255]
#================================================================ # Configurações das imagens #================================================================
# Imagem de fundo
BACK_IMAGE = “Pause_Back”
# Opacidade da Imagem de fundo
BACK_OPACITY = 100
# Imagem em segundo plano
SECOND_IMAGE = “pause_second”
# Opacidade da Imagem de segundo plano
SECOND_OPACITY = 255
#================================================================ # Configurações de mapa #================================================================
#ID da switch que ativa/desativa a pausa, caso ela estiver ligada, #o pause será bloqueado
SWITCH_CONTROL = 1
#Parar tempo quando estiver pausado?
FREEZE_TIME = true
#Som de Inicio de pausa
START_PAUSE = “001-System01″
#Som de fim de pausa
STOP_PAUSE = “001-System01″
#Taxa de diminuição do volume ao pausar
RATE_VOL = 50
#================================================================== # Fim da configuração #================================================================== def stopping Audio.se_play(“Audio/SE/” + START_PAUSE) if !START_PAUSE.empty? if $game_system.playing_bgm != nil and !$game_system.playing_bgm.name.empty? dummy_vol = $game_system.playing_bgm.volume new_vol = (dummy_vol * RATE_VOL / 100).to_i Audio.bgm_play(“Audio/BGM/” + $game_system.playing_bgm.name, new_vol) end viewport1 = Viewport.new(0, 0, 640, 480) viewport1.z = 10000 #========================================================= sprite1 = Plane.new sprite1.bitmap = RPG::Cache.pause (BACK_IMAGE) if FileTest.exist?(“Game.rxproj”) sprite1.bitmap = Cache.pause (BACK_IMAGE) if FileTest.exist?(“Game.rvproj”) sprite1.opacity = BACK_OPACITY sprite2 = Plane.new if BITPA_CROSS sprite2 = Plane.new sprite2.bitmap = RPG::Cache.pause (PBITM_CROSS) if FileTest.exist?(“Game.rxproj”) sprite2.bitmap = Cache.pause (PBITM_CROSS) if FileTest.exist?(“Game.rvproj”) sprite2.opacity = 255 else sprite2.bitmap = Bitmap.new(640, 480) sprite2.bitmap.font = Font.new sprite2.bitmap.font.name = FONT_CROSS sprite2.bitmap.font.size = FONT_SIZE_CROSS sprite2.bitmap.font.color = Color.new(*FONT_HUE_CROSS) sprite2.bitmap.draw_text(0, 240 – (FONT_SIZE_CROSS/2) , 640, FONT_SIZE_CROSS, TEXTB_CROSS, 1) sprite2.z = 10000 end sprite3 = Plane.new sprite3.bitmap = RPG::Cache.pause (SECOND_IMAGE) if FileTest.exist?(“Game.rxproj”) sprite3.bitmap = Cache.pause (SECOND_IMAGE) if FileTest.exist?(“Game.rvproj”) sprite3.opacity = 255 sprite3.z = 1000 loop do Graphics.update Input.update if Input.trigger?(eval(“Input::#{PAUSE_CROSS}”)) Audio.se_play(“Audio/SE/” + START_PAUSE) if !START_PAUSE.empty? if $game_system.playing_bgm != nil and !$game_system.playing_bgm.name.empty? Audio.bgm_play(“Audio/BGM/” + $game_system.playing_bgm.name, dummy_vol) end break end end sprite1.dispose sprite2.dispose sprite3.dispose sprite1 = nil sprite2 = nil sprite3 = nil end #————————————————————————– def can_stop? return !$game_switches[SWITCH_CONTROL] end end #============================================================================== # Scene_Map #============================================================================== class Scene_Map include Kurosuraito alias cross_update update def update if Input.trigger?(eval(“Input::#{PAUSE_CROSS}”)) and can_stop? tmp = Graphics.frame_count stopping Graphics.frame_count = tmp if FREEZE_TIME end cross_update end end
#============================================================================== # Scene_Battle #============================================================================== class Scene_Battle include Kurosuraito alias cross_update update def update if Input.trigger?(eval(“Input::#{PAUSE_CROSS}”)) and can_stop? tmp = Graphics.frame_count stopping Graphics.frame_count = tmp if FREEZE_TIME end cross_update end end .:SCREENSHOT:. .:INSTRUÇÕES:.Cole acima do main, todas as instruções contidas no script. É necessária uma pasta chamada Pause dentro da pasta graphics, lá você irá por as imagens pro sistema de pause. .:DEMO:.[Tens de ter uma conta e sessão iniciada para poderes visualizar este link]By:Ulquiorra | |
|