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 6202
461 기타 디버그 윈도우 강화! 3 file 백호 2009.02.21 1550
460 스킬 랜덤 스킬 스크립트 2 file 백호 2009.02.21 979
459 전투 랜덤 전투음악 by Fomar0153@rmxp.org 1 백호 2009.02.22 1008
458 기타 랜덤 지하 감옥 작성 스크립트 1 file 백호 2009.02.21 1338
457 전투 랜덤으로 적을 출현시키는 스크립트 백호 2009.02.21 1216
456 레벨 9999 스크립트 23 WMN 2008.03.17 2218
455 전투 레벨 상승 화면 개조 스크립트 4 file 백호 2009.02.21 1884
454 기타 레벨, 능력치 무한 스크립트 3 백호 2009.02.22 1712
453 기타 레벨,능력치 9999 3 백호 2009.02.22 1596
452 기타 레벨9999만들기스크립 23 해파리 2009.04.10 3344
451 기타 레벨9999스크립트 4 백호 2009.02.21 1151
450 전투 레벨업 시스템 제거 스크립트 file 백호 2009.02.21 1117
449 기타 레벨업스크립트(xp) 2 게임을만들자! 2014.08.05 1695
448 전투 레벨업시 능력치 표시 2 백호 2009.02.22 1621
447 기타 레벨업시 전회복 by ccoa 8 백호 2009.02.22 2514
446 기타 레벨업포인트 3 백호 2009.02.22 1693
445 기타 레벨을 표시해주는 스크립트 5 백호 2009.02.22 2405
444 저장 렉없는 자동세이브 스크립트 2 백호 2009.02.22 1591
443 저장 렉없는 자동세이브(중복임??) 4 캉쿤 2011.09.12 1991
442 저장 렉없은 자동 세이브 15 알피지GM 2010.03.07 2328
Board Pagination Prev 1 ... 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 ... 52 Next
/ 52