Drujdova insomnie aneb háštak nosleep háštak gejmejkr

Jedna japonská legenda praví, že když nemůžete usnout, jste právě v něčím snu. A protože jsem se po mrtě moc letech zase rozhodl něco málo napsat na blog, a protože jsem si po ještě více létech založil novou rubričku na blogísku, budu psát právě o ní. Rubrička se jmenuje Insomnie.

No, a jak by napsala každá třináctiletá blogerka jako jsem já : „A co v rubrice najdete?“

No, prostě věci co jsem udělal když jsem nespal. Někdy půjde o obrázek, písničku, text a někdy kousek kódu. (Což je tenhle případ.)

Takže… Co že jsem to udělal?

TOHLE (otevře se to v novém okně, tak se nebojte, neopustíte tento skvělý blog) Kolečkem krysy nastavujete intenzitu lijavce.

Tak… A teď k tomu jak jsem to udělal… Musím se totiž pochlubit tím, že je to řešeno nejdebilnějším možným způsobem na jaký jsem spolu s internetem přišel.

Používám tři objekty:

1. obj_rain_generator

2. obj_rain

3. obj_splash

Někteří z vás již jistě tuší proč je to tak strašně blbě. Ale pro ty, kterým je to jedno, sepíšu tutorial.

První – obj_rain generator.

Tam mám ve step eventu toto :

///rain generate
edge = 10;

repeat(intensity) {
instance_create(view_xview-edge+random(view_wview+edge*2),
                view_yview-edge+random(view_hview+edge*2),
                obj_rain) }

edge určuje jak daleko za view se má déšť vytvářet a místo intensity si dejte jakékoliv číslo. (silně doporučuji 20 a méně 😀 )

Další je obj_rain.

Ten je…. Složitější.

Create event

///set_height
height=20

Step event

height-=1
if height<=0{
instance_change(obj_splash,false)
}

A … draw event

//nastavení barviček a ták
draw_set_color(choose(c_ltgray,c_dkgray,c_white));
draw_set_alpha(0.5);

var length; //length of drop
var vectorx, vectory; //distance from middle of screen

//kalkuluj vektory
vectorx = (x-(view_xview+view_wview/2))/(view_wview/2);
vectory = (y-(view_yview+view_hview/2))/(view_hview/2);

length = 1;//length of rain drop

//nakresli chcanek
draw_line_width(x+vectorx*sqr(height) ,y+vectory*sqr(height),
        x+vectorx*sqr(height+length),y+vectory*sqr(height+length),2);
        
//resetuj nastavení kreslení
draw_set_alpha(1);
draw_set_color(c_white);

A jako poslední… obj_splash

Ten má jako jediný sprite. spr_splash_strip3

 

A v sobě event animation end a v něm ikonku destroy self.

Pokud čekáte vysvětlení kódu, čekáte marně, je to kopírka z netu a tomu vykreslování deště prostě nerozumím. Takže si to zkopírujte a užijte :D.

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *