package Ġcom . distr action . fs 2 . tile map . tile objects Ċ Ċ import Ġcom . badlogic . gdx . graphics . g 2 d . Sprite Batch Ċ import Ġcom . badlogic . gdx . math . Math Utils Ċ import Ġcom . badlogic . gdx . math . Vector 3 Ċ import Ġcom . distr action . fs 2 . Context Ċ import Ġcom . distr action . fs 2 . tile map . Tile Map Ċ import Ġcom . distr action . fs 2 . tile map . data . Game Color Ċ Ċ /** Ċ Ġ* ĠVisual Ġeffects Ġfor ĠTele ports . Ċ Ġ* ĠThis Ġis Ġgoing Ġin Ġa Ġseparate Ġclass Ġfor Ġrendering Ġpurposes . Ċ Ġ* ĠAll Ġinstances Ġof Ġthis Ġare Ġadded Ġto ĠTile Map . other Objects Ġfor Ġlast Ġrendering . Ċ Ġ*/ Ċ class ĠTele port Light ( context : ĠContext , Ġtile Map : ĠTile Map , Ġrow : ĠInt , Ġcol : ĠInt ) Ġ: ĊĠĠĠ ĠTile Object ( context , Ġtile Map ) Ġ{ ĊĠĠĠ Ġprivate Ġval Ġimage Ġ= Ġcontext . getImage (" tele port ") ĊĠĠĠ Ġprivate Ġval Ġpixel Ġ= Ġcontext . getImage (" pixel ") ĊĠĠĠ Ġprivate Ġval Ġcolor Ġ= ĠGame Color . BR IGHT _ SK Y _ BLUE ĊĠĠĠ Ġprivate Ġval Ġparticles Ġ= Ġarray ListOf < Vector 3 >() ĊĊĠĠĠ Ġprivate Ġval Ġinterval Ġ= Ġ 0 . 1 f ĊĠĠĠ Ġprivate Ġvar Ġtime Ġ= Ġinterval ĊĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ Ġset Position From Tile ( row , Ġcol ) ĊĠĠĠĠĠĠĠ Ġp . z Ġ= Ġ 8 f ĊĠĠĠĠĠĠĠ Ġheight Ġ= Ġ 3 2 f ĊĠĠĠĠĠĠĠ Ġspeed Ġ= Ġ 4 0 f ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġupdate ( dt : ĠFloat ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtime Ġ+= Ġdt ĊĠĠĠĠĠĠĠ Ġwhile Ġ( time Ġ>= Ġinterval ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtime Ġ-= Ġinterval ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġv Ġ= ĠVector 3 ( p . x , Ġp . y , Ġ 0 f ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtile Map . to I some tric ( v . x , Ġv . y , Ġv ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . x Ġ+= ĠMath Utils . round ( Math Utils . random () Ġ* Ġ( image . region Width Ġ- Ġ 1 ) Ġ- Ġimage . region Width Ġ/ Ġ 2 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . y Ġ+= ĠMath Utils . random () Ġ* Ġ 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġv . z Ġ= Ġv . y Ġ+ Ġheight ĊĠĠĠĠĠĠĠĠĠĠĠ Ġparticles . add ( v ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġparticles . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . y Ġ+= Ġspeed Ġ* Ġdt ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġparticles . removeAll Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit . y Ġ> Ġit . z ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrender ( sb : ĠSprite Batch ) Ġ{ ĊĠĠĠĠĠĠĠ Ġtile Map . to I some tric ( p . x , Ġp . y , Ġis op ) ĊĠĠĠĠĠĠĠ Ġsb . draw ( image , Ġis op . x Ġ- Ġimage . region Width Ġ/ Ġ 2 , Ġis op . y Ġ- Ġimage . region Height Ġ/ Ġ 2 Ġ+ Ġp . z ) ĊĠĠĠĠĠĠĠ Ġval Ġc Ġ= Ġsb . color ĊĠĠĠĠĠĠĠ Ġsb . color Ġ= Ġcolor ĊĠĠĠĠĠĠĠ Ġparticles . forEach Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġcolor . a Ġ= Ġ( it . z Ġ- Ġit . y ) Ġ/ Ġheight ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . color Ġ= Ġcolor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġsb . draw ( pixel , Ġit . x , Ġit . y , Ġ 2 f , Ġ 2 f ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġsb . color Ġ= Ġc ĊĠĠĠ Ġ} Ċ }