Diskuze: Stisknutí klávesy 2x po sobě
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.


Zobrazeno 21 zpráv z 21.
K personalizaci obsahu a reklam, poskytování funkcí sociálních médií a analýze naší návštěvnosti využíváme soubory cookie. Informace o tom, jak náš web používáte, sdílíme se svými partnery pro sociální média, inzerci a analýzy. Partneři tyto údaje mohou zkombinovat s dalšími informacemi, které jste jim poskytli nebo které získali v důsledku toho, že používáte jejich služby.
Používáme nezbytné cookies pro fungování webu a s tvým souhlasem také analytické a marketingové cookies.
Zajišťují základní funkce, bezpečnost a služby, které sis vyžádal. Nelze je vypnout.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| ITnetwork | ITnetwork | Provoz webu, relace, přihlášení a uložení nastavení cookies. | PHPSESSID, auth_token, sid, itn_consent_impression, __Host-itn_consent | Relace až 1 rok |
| Google Tag Manager | Správa značek a načítání měřicích nástrojů webu. | Žádné | Neukládá se | |
| Google Fonts | Načítání typografie webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google Hosted Libraries | Načítání potřebných knihoven a stylů webu. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele | |
| Google reCAPTCHA | Ochrana formulářů a webu před zneužitím. | _GRECAPTCHA, rc::a, rc::b, rc::c, rc::f | Relace až 180 dní | |
| YouTube | Přehrávání vloženého video obsahu. | localStorage, IndexedDB; cookies after playback interaction | Relace až trvalé úložiště | |
| Vimeo | Vimeo | Přehrávání vloženého video obsahu. | __cf_bm, _cfuvid, vuid, localStorage, IndexedDB | Relace až 2 roky |
| Facebook Login | Meta | Přihlášení pomocí účtu třetí strany. | Úložiště řízené poskytovatelem | Relace až 1 rok |
| GoPay | GoPay | Zpracování uživatelem vyžádané platby. | Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
Pomáhají nám porozumět používání webu a zlepšovat ho.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Analytics 4 | Měření návštěvnosti a používání webu. | _ga, _ga_* | Až 2 roky | |
| Microsoft Clarity | Microsoft | Měření návštěvnosti a používání webu. | _clck, _clsk, _cltk | Relace až 1 rok |
Slouží k měření kampaní, personalizaci reklamy a marketingové komunikaci.
| Služba | Poskytovatel | Účel | Cookies a úložiště | Doba uložení |
|---|---|---|---|---|
| Google Ads | Měření kampaní, reklama a remarketing. | _gcl_au, _gcl_ls | Relace až 90 dní | |
| Meta Pixel | Meta | Měření kampaní, reklama a remarketing. | _fbp, _fbc, localStorage | Až 90 dní |
| Sklik | Seznam.cz | Měření kampaní, reklama a remarketing. | retargeting, sid, szn:* | Relace až trvalé úložiště |
| LinkedIn Insight | Měření kampaní, reklama a remarketing. | bcookie, li_gc, lidc, __cf_bm | Relace až 1 rok | |
| Ecomail | Ecomail.cz | Měření kampaní, reklama a remarketing. | ecmid, Úložiště řízené poskytovatelem | Dle podmínek poskytovatele |
| Atribuce kampaní ITnetwork | ITnetwork | Přiřazení návštěvy a objednávky ke kampani. | campaign_clid[*], user_session_context | Až 1 rok |
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.


Myslím, že ti to takto nepôjde.
Skús dať do step event toto:
if ((keyboard_check_pressed (vk_shift)) = true) //pokud je stisknutí klávesy shift dvakrát pravda
{
if (premenna = true)
{
objekt0.image_speed = 0.1; //objekt0 bude mít rychlost obrázku 0.1
premenna = false;
}
else
{
objekt0.image_speed = 1; //objekt0 bude mít rychlost obrázku 1
premenna = true;
}
}
A do create event daj:
premenna = true;
Ja zase nerozumiem, prečo tam máš to číslo 2. To je akoby si chcel dať, že ak sa tlačidlo stlačí 2-krát, tak sa vyhodnotí príslušný skript, ale v skutočnosti to, čo je pred dvojkou, nieje premenná, ale funkcia. Tá sa nedá násobiť. Gamemaker síce funguje inak ako iné programovacie jazyky, ale funkcie nejde počítať. Môžeš maximálne skombinovať premenné tak, že sa to bude kontrolovať súčasne a samostatne, nezávislé od seba
Tá dvojka s tým nijako nesúvisí.
Ako skript funguje?
V "create event" vznikne premenna s názvom "premenna", pretože aby premenná existovala, musí mať nejakú hodnotu ( ak by bola premenná v "step event", tak by jej hodnota bola nemenná, pretože pri každom stepe hry sa tam vykoná funkcia a s ňou sa stále zadá začiatočná hodnota premennej - v tomto prípade true a animácia by išla stále rovnako)
Create event a step event idú súčasne (nezávisle od seba) a preto musí
byť v "step ev." najprv funkcia (ak stlačíš shift) a až potom funkcia (ak
je premenná true).
Druhá podmienka ti zisťuje, či prebieha prvá funkcia (teda ide obrázok
pomaly), alebo druhá funkcia. Ak prebieha prvá funkcia, hodnota premennej sa
zmení na false (false= pomaly).
Potom, pri druhom kliknutí sa hodnota nebude zhodovať s podmienkou a tak
prebehne funkcia else.
Tam sa zase zmení na true a tak sa to opakuje.
Snažil som sa ti to vysvetliť laicky, a tak dúfam, že si ma pochopil 
Ešte niečo?
Nejjednodušší by bylo si tam zavést počítadlo stisků.
Ten první kód byl taky skoro správně, stačí trochu upravit:
if (keyboard_check_pressed (vk_shift) == true) //je-li stisknut shift
{
//přepínat mezi speed 0 a speed 0.1
if (image_speed == 0) image_speed=0.1 else image_speed=0;
}
Akorát to spouští ve Windowsech centrum usnadnění
5x shift = funkce jedním prstem
To je dobré 
Je to jednoduché a efektívne. Od teraz to budem používať 
Edit: Raz som tento spôsob použil, ale akosi som naň zabudol 
Čistá podmínka je vždy if...else. Jinak skrytou podmínku obsahují
různé
konstrukce jako while, for , do..until nebo switch.
Pokud ale myslíš seznam funkcí jazyka GML,
tak jsou všechny pohromadě snad jen v souboru Game_Maker.chm
Jinak je najdeš mírně rozházené v různých tutoriálech a podobně.
Ono je stejně lepší je studovat podle významu než podle abecedy.
Nepochopil jsem tvou definici rozdílu mezi "čistou" a "špinavou" podmínkou. Každý jazyk nabízí nějaké konstrukce pro řízení běhu programu, které v konečném důsledku přeloží na podmíněný či nepodmíněný skok na nějakou adresu.
Podle mne je spousta konstrukcí "čistých". Jen nejsou všechny doporučovány kvůli nepřehlednosti. Někdy může být lepší switch s jedním case, jindy je názornější a vhodnější mít třeba 5 elseif za sebou.
Myslel jsem tím jen tolik, že if...else nedělá už nic jiného.
O použitelnosti nebo efektivitě to být nemělo. 
Co je nejasné? Že if je podmínka? Nebo že ostatní jsou
zároveň otočka cyklu? Nebo že switch je více podmínek v jednom?
Nie, nie, nie!
Ja som len nepochopil tú tvoju vetu:
"že if...else nedělá už nic jiného."
Zobrazeno 21 zpráv z 21.