CoolBasic SDK

Fade

Include "cbSpecialFX.cb"

KUVAUS
Häivyttää/palauttaa ruudun.
Näytön on oltava kokoruudun tilassa tai komento ei toimi.

KÄYTTÖ
Fade(_direction, [_speed], [_wait])
_direction - Suunta. FX_FADE_IN häivyttää ruudun mustaksi ja FX_FADE_OUT palauttaa sen normaaliksi.

_speed - Häivytyksen nopeus. Kuinka monta sekuntia häivytys/palautus kestää.
Parametri on valinnainen ja jos sitä ei anneta, suoritetaan toiminto välittömästi.

_wait - Odotus. True odottaa kunnes toiminto on suoritettu eli kaikki liike ruudulla pysähtyy.
False antaa ohjelman jatkaa suoritustaan. Tällöin häivytystä pitää päivittää ohjelmasilmukassa UpdateEffects-funktiolla (katso esimerkki).
Parametri on valinnainen.

Katso myös: FadedErikoistehosteet

ESIMERKKI
SCREEN 640, 480, 16, cbFullScreen

Include "SDK/include/cbMotion.cb"
Include "SDK/include/cbSpecialFX.cb"

img = LoadImage("SDK/media/sdklogo1.png")
img2 = MakeImage(400, 400)
waveDgr# = 0

// Ensin ruutu mustaksi
Fade(FX_FADE_IN)

// Palautus 2:ssa sekunnissa
Fade(FX_FADE_OUT, 2)
ClsColor 192, 192, 192
Repeat
    UpdateFrameTimer()
    
    // Ruutu pimeäksi ja takaisin mutta ohjelman suoritus
    // pysähtyy siksi aikaa.
    If KeyHit(cbKey1) Then
        Fade(FX_FADE_IN, 1, True)
        Fade(FX_FADE_OUT, 1, True)
    EndIf

    // Ruutu pimeäksi mutta ohjelma jatkaa suoritustaan normaalisti
    If KeyHit(cbKey2) Then
        Fade(FX_FADE_IN, 1)
    EndIf
    // Jos ruutu on jo pimeä niin asetetaan sen palautus
    If Faded(FX_FADE_IN) then Fade(FX_FADE_OUT, 1)
    
    waveDgr = waveDgr + DgrPerSec(200)
    DrawToImage img2
    Cls
    DrawWaveImage(img, ImageWidth(img2) / 2, ImageHeight(img2) / 2, 300, 20, waveDgr, 0)
    DrawToScreen
    DrawWaveImage(img2, ScreenWidth() / 2, ScreenHeight() / 2, 300, 20, waveDgr, 1)
    
    // Tehosteiden päivitys
    UpdateEffects()
    Color 0, 0, 0
    Text 0, 0,  "FPS..........: " + FPS()
    Text 0, 20, "Paina 1 tai 2"
    DrawScreen
Forever