XP 스크립트

타이틀이 뜨기 전에 이미지를 띄우는 스크립트입니다.(버튼을 눌러서 뛰어넘으면 그 다음에는 'press start'류의 타이틀 화면이.....) 로고기능을 사용하려면 640*64 크기의 이미지를 타이틀 폴더에 넣어야 합니다. 가령:



#==============================================================================
# ** Introduction & Splash System
#==============================================================================
# SephirothSpawn
# Version 2.1
# 2006-03-04
#------------------------------------------------------------------------------
# * Instructions
#
# ~ Customizing Introduction
# $scene = Scene_Introduction.new( intro_pics , splash_file)
#
# intro_pics : [ 'Pic File 1' , 'Pic File 2' , ...]
# splash_file : 'Splash Pic File' / nil for no splash
#------------------------------------------------------------------------------
# * Customization
#
# @index, @speed, @o_speed, @phase = 0, 5, 5, 0
#
# ~ Fade In Speed
# (Change the Second 5 to the Opacity Change Every Frame. Higher = Faster)
#
# ~ Text Fade in Speed
# (Change the Third 5 to the Opacity Change Every Frame. Higher = Faster)
#==============================================================================

#------------------------------------------------------------------------------
# * SDK Log Script-x
#------------------------------------------------------------------------------
SDK.log('Introduction & Splash System', 'SephirothSpawn', 2.1, '2006-03-04')

#------------------------------------------------------------------------------
# * Begin SDK Enable Test
#------------------------------------------------------------------------------
if SDK.state('Introduction & Splash System') == true

#==============================================================================
# ** Scene_Introduction
#==============================================================================

class Scene_Introduction
#--------------------------------------------------------------------------
# * Object Initialization
#--------------------------------------------------------------------------
def initialize(pics, splash = nil)
@pics, @splash = pics, splash
end
#--------------------------------------------------------------------------
# * Main Processing
#--------------------------------------------------------------------------
def main
# Instance Variables
@index, @speed, @o_speed, @phase = 0, 5, 5, 0
# Background Images
@sprite = Sprite.new
@sprite.bitmap = RPG::Cache.title(@pics[@index])
@sprite.opacity = 5
# Start Logo
@start = Sprite.new
@start.bitmap = RPG::Cache.title("Start")
@start.y, @start.z, @start.opacity = 416, 10, 0
# Loads Data System and Game System to Play BGM
data_system = load_data("Data/System.rxdata")
game_system = Game_System.new
game_system.bgm_play(data_system.title_bgm)
# Execute transition
Graphics.transition
# Main loop
loop do
# Update game screen
Graphics.update
# Update input information
Input.update
# Frame update
update
# Abort loop if screen is changed
if $scene != self
break
end
end
# Prepare for transition
Graphics.freeze
# Dispose Sprites
@sprite.dispose
@start.dispose
# Make Scene Nil
$scene = nil
end
#--------------------------------------------------------------------------
# * Frame Update
#--------------------------------------------------------------------------
def update
case @phase
when 0 # Introduction Procreesing
update_intro
when 1 # Splash Procreesing
update_splash
when 2 # Splash Transition
to_splash_transition
when 3 # Title Transition
to_title_transition
when 4 # Change to Title
$scene = nil
end
end
#--------------------------------------------------------------------------
# * Frame Update : Intro Images
#--------------------------------------------------------------------------
def update_intro
# If C is pressed
if Input.trigger?(Input::C)
@phase = @splash.nil? ? 3 : 2
end
# Updates Sprite Opacity
@sprite.opacity += @speed
# Changes Direction
@speed *= -1 if @sprite.opacity >= 255
# Change Sprite
if @sprite.opacity <= 0
@index += 1 ; @speed *= -1
@index == @pics.size ? @phase = @splash.nil? ? 3 : 2 :
@sprite.bitmap = RPG::Cache.title(@pics[@index])
end
end
#--------------------------------------------------------------------------
# * Frame Update : Splash Image
#--------------------------------------------------------------------------
def update_splash
# If C is pressed
if Input.trigger?(Input::C)
@phase = 3
end
# Loads Sprite Splash Bitmap
@sprite.bitmap = RPG::Cache.title(@splash)
# Updates Start Logo Opacity
@start.opacity += @o_speed
# Changes Direction
@o_speed *= -1 if @start.opacity >= 255 || @start.opacity <= 0
# Updates Splash
@sprite.opacity += @speed if @sprite.opacity < 255
end
#--------------------------------------------------------------------------
# * Frame Update : Intro To Splash Transistion
#--------------------------------------------------------------------------
def to_splash_transition
@sprite.opacity > 0 ? @sprite.opacity -= @speed : @phase = 1
end
#--------------------------------------------------------------------------
# * Frame Update : Splash To Title Transistion
#--------------------------------------------------------------------------
def to_title_transition
# Decrease Splash Opacity
@sprite.opacity -= @speed if @sprite.opacity > 0
# Decresh Start Logo Opacity
@start.opacity -= @speed if @start.opacity > 0
# Proceed to Title Screen
@phase = 4 if @sprite.opacity <= 0 && @start.opacity <= 0
end
end

#==============================================================================
# ** Pre-Main
#------------------------------------------------------------------------------
# After defining each class, actual processing begins here.
#==============================================================================

unless $DEBUG
begin
# Prepare for transition
Graphics.freeze
# Proceed to Introduction & Splash Scene
$scene = Scene_Introduction.new(['001-Title01', '001-Title01'], '001-Title01')
# Call main method as long as $scene is effective
while $scene != nil
$scene.main
end
end
end

#--------------------------------------------------------------------------
# * End SDK Enable Test
#--------------------------------------------------------------------------
end

Who's 백호

?

이상혁입니다.

http://elab.kr


List of Articles
번호 분류 제목 글쓴이 날짜 조회 수
공지 스크립트 자료 게시물 작성시 주의사항 습작 2012.12.24 6312
581 전투 중복일지도 모르는 ATB 전투 11 file 백호 2009.02.22 4059
580 기타 몬스터도감 - 개량형 ? 7 file 백호 2009.02.22 2887
579 장비 SIBruno's Advanced Equip Screen v2 file 백호 2009.02.22 1248
578 메뉴 1-Scene CMS 1.16 by LegACy (SDK호환) 3 file 백호 2009.02.22 1564
577 저장 SG_Broken Save File Fix by sandgolem (SDK호환) 1 백호 2009.02.22 1069
576 기타 SG_Transfer Player Music Fix v2 by sandgolem (SDK호환) 1 백호 2009.02.22 824
» 기타 Introduction & optional Splash 2.1 by SephirothSpawn (SDK호환) 1 백호 2009.02.22 860
574 기타 Quick Animations by SephirothSpawn (SDK호환) 백호 2009.02.22 852
573 메뉴 CogWheel Plug'n'Play Menu Bar by DerVVulfman@rmxp.org 2 백호 2009.02.22 1222
572 전투 랜덤 전투음악 by Fomar0153@rmxp.org 1 백호 2009.02.22 1008
571 기타 NPC Details Window by SephirothSpawn (SDK호환) 1 file 백호 2009.02.22 1210
570 아이템 Easy Item & Gold Gain by SephirothSpawn (SDK호환) 백호 2009.02.22 881
569 아이템 Additional Item Drop by SephirothSpawn (SDK호환) 1 백호 2009.02.22 891
568 기타 Advanced Gold display by Dubealex 1 백호 2009.02.22 761
567 기타 [신기술 체험] 추가, 수정 심플액션 4 file 백호 2009.02.22 1791
566 기타 [신기술 체험] 윈도우 은행시스템 12 file 백호 2009.02.22 2091
565 기타 [신기술 체험] RM포트리스 4 file 백호 2009.02.22 1430
564 기타 [신기술 체험] 마우스 사용 심플액션 7 file 백호 2009.02.22 2468
563 기타 [신기술 체험] 레이싱 스크립트 8 file 백호 2009.02.22 2186
562 기타 [신기술 체험] 빠른 애니매이션 1 file 백호 2009.02.22 1202
Board Pagination Prev 1 ... 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 ... 52 Next
/ 52