Diskuze: Tlačítka

Ostatní jazyky GameMaker GameMaker Tlačítka

Avatar
krotkono
Člen
Avatar
krotkono:

jak mám udělat aby každé tlačítko v menu nebo ve hře třeba pustilo ve hře něco jiného třeba start by spustil hru a nahrát by tu hru nahrálo a konec by to vyplo jak to prosím udělat.

 
Odpovědět 7.9.2012 16:26
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na krotkono
David Čápka:

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é.

Nahoru Odpovědět 7.9.2012 16:36
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Hammy350
Člen
Avatar
Hammy350:

Udělej více objektů a každému pak přikaž aby udělal to co má (např. když na něho klikneš).

 
Nahoru Odpovědět 7.9.2012 16:36
Avatar
Theodor Johnson
Redaktor
Avatar
Theodor Johnson:

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

Nahoru Odpovědět  +1 7.9.2012 17:21
Přecházím na "Cross-Platform Development"
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Theodor Johnson
David Čápka:

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.

Nahoru Odpovědět 7.9.2012 17:44
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
TomBen
Redaktor
Avatar
TomBen:

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. :O

Teprve když není ikona vyplatí se psát kód.
Jako byste zapomněli o čem GM je. :D

PS: Ikony nejsou ostuda - vymyslel je programátor.

Nahoru Odpovědět 7.9.2012 21:28
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
David Čápka
Tým ITnetwork
Avatar
Odpovídá na TomBen
David Čápka:

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.

Nahoru Odpovědět 7.9.2012 21:44
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
TomBen
Redaktor
Avatar
Odpovídá na David Čápka
TomBen:

Úč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.

Nahoru Odpovědět  +1 7.9.2012 22:11
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
samo007
Redaktor
Avatar
Odpovídá na David Čápka
samo007:

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.

 
Nahoru Odpovědět 8.9.2012 8:28
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na TomBen
David Čápka:

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.

Nahoru Odpovědět 8.9.2012 10:06
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na samo007
David Čápka:

Ne, napsal to špatně. I kdyby to GML fungovalo, nemá žádný smysl, každé tlačítko má být jako objekt.

Nahoru Odpovědět 8.9.2012 10:07
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
samo007
Redaktor
Avatar
Odpovídá na David Čápka
samo007:

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ť ;)

 
Nahoru Odpovědět 8.9.2012 11:15
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na samo007
David Čápka:

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.

Nahoru Odpovědět 8.9.2012 13:51
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
TomBen
Redaktor
Avatar
Odpovídá na David Čápka
TomBen:

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ý.

Nahoru Odpovědět 8.9.2012 14:10
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
David Čápka
Tým ITnetwork
Avatar
Odpovídá na TomBen
David Čápka:

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.

Nahoru Odpovědět 8.9.2012 14:32
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
TomBen
Redaktor
Avatar
Odpovídá na David Čápka
TomBen:

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.

Nahoru Odpovědět 8.9.2012 14:44
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
David Čápka
Tým ITnetwork
Avatar
Odpovídá na TomBen
David Čápka:

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é) :P Bohužel nikdo takový se zatím neobjevil, kdo by měl zájem s komunitou něco udělat.

Nahoru Odpovědět 8.9.2012 14:48
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
TomBen
Redaktor
Avatar
TomBen:

Já bych i chtěl, ale nemám tolik času. :(:(
Kdybych na to byl sám, hrozně by to trpělo.

Nahoru Odpovědět 8.9.2012 14:57
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
TomBen
Redaktor
Avatar
Odpovídá na David Čápka
TomBen:

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áš?

Editováno 8.9.2012 15:28
Nahoru Odpovědět 8.9.2012 15:27
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
samo007
Redaktor
Avatar
Odpovídá na TomBen
samo007:

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)

Editováno 8.9.2012 15:51
 
Nahoru Odpovědět 8.9.2012 15:51
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na samo007
David Čápka:

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.

Nahoru Odpovědět 8.9.2012 17:04
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na TomBen
David Čápka:

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 :)

Nahoru Odpovědět 8.9.2012 17:06
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
Darkmagic
Redaktor
Avatar
Odpovídá na David Čápka
Darkmagic:

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.

Nahoru Odpovědět 8.9.2012 17:09
Nejhorší je, když myslíš, že víš
Avatar
David Čápka
Tým ITnetwork
Avatar
Odpovídá na Darkmagic
David Čápka:

Na každou ikonu je max. 2 řádky kódu, takže ne, není.

Nahoru Odpovědět 8.9.2012 17:12
Miluji svou práci a zdejší komunitu, baví mě se rozvíjet, děkuji každému členovi za to, že zde působí.
Avatar
samo007
Redaktor
Avatar
Odpovídá na David Čápka
samo007:

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ť. :)

 
Nahoru Odpovědět 8.9.2012 17:34
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 25 zpráv z 25.