0% found this document useful (0 votes)
39 views2 pages

Custom Splash Screen Function Code

The document outlines a function for managing a splash screen in a game, detailing the phases of initialization, fade-in, main display, and fade-out. It includes arrays for sprite frames and their corresponding display durations, as well as event handlers for object behavior during the splash sequence. Additionally, it specifies the loading of sprite sheets and music tracks for the splash screen display.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
39 views2 pages

Custom Splash Screen Function Code

The document outlines a function for managing a splash screen in a game, detailing the phases of initialization, fade-in, main display, and fade-out. It includes arrays for sprite frames and their corresponding display durations, as well as event handlers for object behavior during the splash sequence. Additionally, it specifies the loading of sprite sheets and music tracks for the splash screen display.
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 2

// If you have a custom title screen, this function is all that needs to be changed

// This function is called after the splash is over to decide what to do next, by
default it'll proceed with

function Splash_NextPhase
ResetObjectEntity(object.entityPos, TypeName[Sonic Team], 0, object.xpos,
object.ypos)
end function

// Everything hereon is the splash code, you shouldn't need to change this

// Array of every frame and what sprite to use


private table Splash_SpriteTable
2, 1, 0, 1, 2, 1, 0, 2, 0, 1, 2, 0, 2, 1, 0, 1, 0, 1, 2, 1, 0, 2, 0, 2, 1, 0,
2, 0, 1, 2, 0, 2, 0, 2, 1, 0, 1, 0, 2, 0, 1, 2, 0, 2, 1, 0, 1, 2, 1, 2, 1, 0, 2, 0,
1, 2
end table

// Array of how long every frame lasts for


private table Splash_frameDelay
64, 1, 1, 1, 1, 1, 2, 1, 2, 1, 3, 1, 4, 3, 1, 2, 3, 2, 4, 3, 3, 4, 64, 4, 2,
3, 2, 3, 2, 2, 3, 2, 3, 2, 2, 3, 2, 64, 2, 3, 2, 2, 3, 2, 2, 3, 2, 2, 2, 2, 2, 3,
2, 3, 2, 360
end table

event ObjectMain
if inputPress.start == 1
if object.state < 5
object.state = 3
//object.value0 = 0
end if
end if

switch object.state
case 0
// Initialization phase
object.value0 = 320
SetScreenFade(0, 0, 0, object.value0)
object.state++
break
case 1
// Fade-in phase
if object.value0 > 0
object.value0 -= 8
else
object.state++
end if
SetScreenFade(0, 0, 0, object.value0)
break
case 2
// Main phase

// Move to next frame in accordance with the table


GetTableValue(temp0, object.frame, Splash_frameDelay)
object.value1++
if object.value1 == temp0
object.frame += 1
object.value1 = 0
end if
// Play the jingle when the logo starts to flash
if object.frame == 1
if object.value0 == 0
PlayMusic(10)
end if
end if

// Fade out when on the last frame


if object.frame == 55
object.value0 = 0
object.state++
end if
break
case 3
// Fade-out phase
if object.value0 < 256
object.value0 += 8
SetScreenFade(0, 0, 0, object.value0)
else
Callfunction(Splash_NextPhase)
SetScreenFade(0, 0, 0, 255)
end if
break
end switch
end event

event ObjectDraw
GetTableValue(temp0, object.frame, Splash_SpriteTable)
DrawSpriteScreenXY(temp0, screen.xcenter, screen.ycenter)
end event

event ObjectStartup
LoadSpriteSheet("Title/Splash.gif")
SpriteFrame(-160, -112, 320, 224, 0, 0)
SpriteFrame(-160, -112, 320, 224, 0, 224)
SpriteFrame(-160, -112, 320, 224, 0, 448)
LoadPalette("Splash.act", 0, 50, 50, 61)
SetMusicTrack("Splash.ogg", 10, 0)
end event

event RSDKDraw
DrawSprite(0)
end event

event RSDKLoad
LoadSpriteSheet("Global/Display.gif")
SpriteFrame(-16, -16, 32, 32, 1, 143)
end event

You might also like