NOVINKA - Online rekvalifikační kurz Java programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
NOVINKA – Víkendový online kurz Software tester, který tě posune dál. Zjisti, jak na to!

Diskuze: variable_global_get

V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.

Aktivity
Avatar
Neaktivní uživatel:2.4.2016 11:27

Ahoj,
existuje v GMS ekvivalent funkce

variable_global_get

nebo

variable_global_set

, která normálně funguje v GM 8.0 ? :)

Odpovědět
2.4.2016 11:27
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
TomBen:2.4.2016 15:20

Ne, úplný ekvivalent neexistuje. Na co ji potřebuješ?

Nahoru Odpovědět
2.4.2016 15:20
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Odpovídá na TomBen
Neaktivní uživatel:2.4.2016 15:58

Ve hře vyberu určitý druh vylepšení a kliknu na tlačítko "upgrade". Toto tlačítko zvýší proměnnou náležející danému druhu vylepšení o 1. Tato proměnná je uložena v jiném obejtku. Tlačítko "upgrade" pouze získá název této proměnné a pomocí variable_global_set a variable_global_get ji zvýší. Vyhýbám se tím vypisováním všech názvů proměnných s uloženými daty levelu vylepšení a jednoduše můžu přidat nový druh vylepšení bez jakékoli změny tlačítka "upgrade".

Takto vypadá kód ještě z GM 8.0 .. Je možné, že získávání lokální proměnné přes 2 objekty nebude v GMS fungovat.

nazev_promene = obj_hangar.upgrade_object.global_variable;

variable_global_set(nazev_promene,variable_global_get(nazev_promene) + 1);

Pokud by nebylo možné něco podobného použít v GMS, nenapadá tě podobné řešení, díky kterému bych se vyhnul vypisování všech proměnných? Přijde mi to nepraktické.

Nahoru Odpovědět
2.4.2016 15:58
Neaktivní uživatelský účet
Avatar
TomBen
Tvůrce
Avatar
Odpovídá na Neaktivní uživatel
TomBen:2.4.2016 20:36

Nějak jsem se v tom ztratil. Když přece chci udělat upgrade různých herních prvků, musím stejně nějak tlačítku sdělit jaký prvek má zlepšovat. Čili třeba tři různé objekty mají svůj zlepšovací proces a pak třeba výběrem myši zvolím jeden z nich. Kliknu na Upgrade tlačítko a tím se objekt, respektive jeho instance zlepší. Takhle to myslíš?

Nahoru Odpovědět
2.4.2016 20:36
Za posledních 200 miliónů let se nic zvláštního nestalo, akorát dinosauři vymřeli a opice se naučily programovat.
Avatar
Odpovídá na TomBen
Neaktivní uživatel:5.4.2016 15:35

Všechny objekty mají stejný proces zlepšování, úplně stejný. Rozdíl je jen v proměnné, která se vylepšuje a v ceně vylepšení.

On to zas takový problém není, můžu to udělat i jinými způsoby.. Jen jsem byl líný to celé překopávat, tak jsem hledal ekvivalent této funkce :)

Nahoru Odpovědět
5.4.2016 15:35
Neaktivní uživatelský účet
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.