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

Člen

Zobrazeno 25 zpráv z 25.
//= Settings::TRACKING_CODE_B ?> //= Settings::TRACKING_CODE ?>
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
Jednoduše si uděláš objekt pro každé tlačítko v události Mouse Click (nebo jak se jmenuje) si nadefinuješ akce, které má provést. Akce jsou zde popsané.
Na co dělat pro každej objekt? stačí aby sprite tlačítka byl prázdnej a draw funkce by obsahovala něco jako
if (mouse_check_pressed(mb_left) && x = /*x prvního tlačítka*/ && y = /*y prvního tlačitka*/)
{
//funkce tlačítka na souřadnicích x a y
}
pak už jen stačí doplnit text k vykreslování na tlačítku a uřit x a y tlačítek
Každé tlačítko potřebuji 1. umístít a 2. naprogramovat. Protože je každé tlačítko úplně jiné, udělám si více objektů. Pokud chci ušetřit kód, tak podědím.
Tvůj kód nechápu, x= je přiřazení, i kdyby jsi myslel x==, stejně kontroluješ bod, nejsem si jist, jestli to takhle funguje, měl bys kontrolovat obdélník. GM má dobrý systém kolizí, nevím, proč ho nepoužít. Z objektového hlediska je to také hloupost.
Vzhledem k charakteru dotazu bych psaní kódu nedoporučoval vůbec.
Loapmail tam má navíc chyby.
I dědičnost bude matoucí pro někoho, kdo se ptá, jak udělat
tlačítko.
( navíc u zcela různých tlačítek nebude skoro co dědit )
Myslím, že bude stačit:
a/ vytvořím sprite ( obrázek tlačítka )
b/ vytvořím objekt, přiřadím sprite, založím event Mouse-Left
released
c/ do Actions vložím příslušnou ikonu ( End Game, Restart, Save ... )
d/ opakuji kolikrát chci ( případně duplikovat a upravit )
a hotovo.
Teprve když není ikona vyplatí se psát kód.
Jako byste zapomněli o čem GM je.
PS: Ikony nejsou ostuda - vymyslel je programátor.
Ikony nejsou ostuda jen pokud jsi dítě, vymyslel je programátor pro děti. Navíc jsou jen pro základní funkce. U pokročilejších projektů musíš použít GML a míchat GML a ikony je řekněme slušně nehezké a nepřehledné. Dědit mohu chování, tedy např. změnu spritu po najetí myši, po kliknutí a podobně. Jinak bych to musel psát stále znovu. Ale záměrně jsem to dotyčnému nepsal, evidentně je to začátečník.
Účel světí prostředky. Programátorský purismus do GM nepatří.
Pomíchal jsem ikony a GML mnohokrát a svět se nezbořil. Výsledek
fungoval.
Z každého GM uživatele rozhodně programátor nebude a že se budoucí
génius zkazí bych se nebál.
TomBen má pravdu. Hry väčšinou vytvárajú ľudia, ktorý nevedia programovať. A ikonky používam aj ja, pretože niekedy ani inú možnosť nemám.
Dôvod?
Vo free verzii (ktorú využíva drtivá väčšina z nás) sú niektoré gml
kódy obmedzené treba použiť ikonky (+ umožňujú ďalšie možnosti)
Loapmail to napísal úplne správne. Gml funguje úplne inak ako napr. php.
Ale patří. Je to programovací jazyk, ač mizerný, ale je. Platí zde naprosto ty samé principy, vyvstávají ty samé problémy s údržbou kódu. Ale já se s tebou hádat nebudu, míchej si co chceš a místo dědění vše klikej 50x, ono ti to možná dojde, když to potom budeš chtít změnit a bude to na 50ti místech.
Ne, napsal to špatně. I kdyby to GML fungovalo, nemá žádný smysl, každé tlačítko má být jako objekt.
Samozrejme, že ja nepoužívam ikony (okrem funkcie vymazať objekt, pretože vo free verzii to v gml nefunguje). Ale je to dobre pre začiatočníkov, ktorý ešte nikdy nevideli žiaden kód. Ale samozrejme, že je lepšie použiť gml, lenže aj ikonkami sa dá niečo dosiahnuť. To som tým myslel, aj keď gml umožňuje väčšie možnosti.
Teraz som si uvedomil, že to by asi nefungovalo (podľa leapmail), pretože ak, tak tam treba umožniť akciu na kliknutie pre osi s hodnotami "od" "do", inak by bol aktívny iba jeden pixel. Ospravedlňujem sa.
Je lepšie použiť kolíziu, ale netreba hneď z toho človeka odsudzovať
U GameMakeru je problém, že spousta lidí neví nic o objektovém návrhu a
bastlí ty hry jak se jim zlíbí. Sám Mark (autor GameMakeru) vybízí v
tutoriálech k dědičnosti a dalším principům. Lidé to ale bohužel
ignorují a myslí si, že když to funguje, tak je to dobře. A potom píší
na fórum, že jim něco nejde nebo nemohou najít chybu v tom zbastleném kódu
a řešit to máme my Píšu
jak se to má dělat správně, pokud to někdo napíše špatně, opravím ho,
aby se to lidé neučili. Neodsuzuji lidi, odsuzuji špatný kód a přístup,
začátečníci se to potom učí a jde to pořád dokola.
Když to podáš takhle, je to fajn. Jenže si vem, jak to zní, když
vybafneš na každého, kdo zrovna nainstaloval GM a o programování neví nic,
že GM je špatný, pro dětičky a ať zkusí něco jiného => nedáváš
prostor pro svobodnou vůli. Vím, jak to všechno myslíš a snad máš i kus
pravdy. Jenže když je tu web se sekcí GM, tak by se v ní asi nemělo
objevovat striktní odsouzení samotného GM.
Je to hrozně deprimující. Mám GM rád ( ani vlastně nevím proč ) už po
několik verzí a nechci studovat "velké" programování, abych mohl po dvou
letech být páté kolo u vozu při návrhu nějakého obrovského a zároveň k
ničemu dobrého placeného systému na přesouvání bezduchých dat odněkud
nikam, jen proto, že si to někdo objednal. Nehledě na to, že zaměstnání
mám v jiném oboru, v kterém své znalosti přirozeně rozvíjím a tvorbu v
GM beru jako hodně okrajovou záležitost. Když musím programovat, tak
programuju, když nemusím, nedělám to. Jde mi o zábavu, tvorbu, grafiku a
spoustu různých věcí. Programování je někde na konci. Tvoje názory zní
jinak hodně rozumně, jen v téhle jedné věci jsi příliš přísný.
Možná jsem příliš přísný, ale to je dáno tím, že jsme na devbooku. Tady se předně programuje. Jsou další fóra, třeba ten chytrák, kde se bastlí a hodnotí se jen jak hra vypadá zvenku. Cílem naší sítě je učit lidi programovat.
S tím velkým systémem to není tak horké, hodně lidí dělá třeba weby, ty chce každý a je to hezká práce i s designem.
VCH nemám rád a bohužel další alternativa není. Devbook sice taky není
to,
co by Game Maker v českých končinách potřeboval, ale je to pořád
nejlepší varianta. Líbilo by se mi, kdyby se mezi všemi těmi klikajícími
dalo najít lidi s talentem a citem pro tvorbu. Tím myslím rozené grafiky,
zvukaře atd. Hru by neměl udělat jen čistokrevný programátor. Je to pak na
tom vidět.
Jo, to máš pravdu.
Možná by se tu na devbooku dalo něco změnit, rád bych sekci GM
přenechal někomu, kdo by se tomu věnoval a třeba bych mu do toho i nekecal
(pokud by neučil opravdu nějaké extra šílenosti jako globální proměnné)
Bohužel nikdo takový se
zatím neobjevil, kdo by měl zájem s komunitou něco udělat.
Jak to vůbec stíháš ty? Vidím tvoje příspěvky po celém devbooku a do
tolika témat.
Kolik času u toho necháš?
Konečne sme našli spoločnú reč
Sdraco: Chápem ťa, ale ako vraví TomBen, trebalo by ísť na to pomalšie. S
takým prístupom na verejnosti mnoho ľudí odoženieš. A trochu porozumenia
by mohlo zase viesť k tomu, že sa ľudia budú viac zaujímať o to, čo
preferuješ. Pretože opačný prístup majú tzv. Fanatici. (Bez urážky)
Nechcem nikomu ublížiť, ani sa hádať a ak netreba, tak ani nekritizovať (v zlom), ale pocopiť toho druhého a ponúknuť mu svoje možnosti.
A také reči ako "...já se s tebou hádat nebudu, míchej si co chceš a místo dědění vše klikej 50x, ono ti to možná dojde...", to by si si mohol odpustiť. Nepriamo to totiž vedie k hádke. Je mi nepríjemné poučovať Admina, pretože adminov na tejto stránke obdivujem, ale vždy je čo zlepšiť. (Ak by niečo, tak ja to vôbec nemyslím zle)
To si myslíš teď Když
se s tebou bude stále někdo hádat o úplných základech programování, tak
také za chvíli budeš psát, že se hádat nebudeš. Mě to už prostě
nebaví, vysvětloval jsem to zde 100x a pořád se tu řeší to samé, proto
jdu rovnou k problému a případně debatu ukončím.
Já u devbooku vždy něco dělám a odepisování mě moc nezatěžuje, mám
již něco odprogramováno, většinou vím jak něco řešit, takže je to
spíše takový relax
Sám bys nebyl, kdybych viděl snahu, tak bych ti pomohl a třeba by se i
změnil přístup
Hehe já nevim co furt všichni máte, zkusil jsem GM, zkusil jsem Visual, ikonky šetří čas,podle mě je lepší hodit 1 blbou ikonku než se hodinu srát s kódem.
Možností je veľmi veľa, je sporávne presadzovať tú správnu, ale
všetko zlé je na niečo dobré
Ako vidím, už si ma asi konečne pochopil. Viac už nemám čo dodať.
Zobrazeno 25 zpráv z 25.