Diskuze: Paths
V předchozím kvízu, Online test znalostí GameMakeru, jsme si ověřili nabyté zkušenosti z kurzu.
Člen
Zobrazeno 10 zpráv z 10.
//= 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.
Nejsem si jist, jestli jsem to pochopil, ale používání tzv. PATHS není úplně šťastné řešení. Předpokládám, že chceš změnu trasy pro různý level obtížnosti. Já jsem kdysi tuto metodu využil skrz distance objektů.
Otázka je skutečně napsána tak, aby ji pokud možno nikdo nepochopil, ale přepokládám, že jde o to, jak v kódu objektu zjistit, v které místnosti leží. K tomu slouží proměnná room.
Takže v kódu něco jako:
if room==mistnost_lehka { path_start(cesta_1,1,0,1); //rozjeď se po trase 1 }
Není žádný důvod, proč by použití paths bylo "ne úplně šťastné řešení". Zvlášť pro tower defense jsou paths jako dělané.
Já si myslím, že Path prostě není nejlepší řešení. Kdysi jsem s tím zkoušel pracovat a pokud tu funkci použiješ s kombinací funkcí distance_to_point to funguje špatně. Kdysi jsem to zkoušel u hry kde lodě tzv. hlídkovali a pokud jsi se k nim přiblížil svou lodí, tak měli opustit path a přesunout se ke tvé lodi, následně pokud se od nich vzdálíš, tak ty hlídkové lodě místo toho aby se vrátili k místu kde se odklonili od path, tak se vrátili na začátek path. Máš pravdu, že v Tower defense se to zřejmě dá použít, ale dle mého názoru jsou Path nepratické, při dalším využití
Tos je jenom špatně použil, uvidíš časem, že paths umí ušetřit spoustu práce. Zvláště pokud neumíš naprogramovat pohyb po parametrické křivce kódem. Schválně se tě zeptám, jak bys bez paths naprogramoval plynulý klikatý pohyb tak, abys ho mohl snadno upravit např. podle změny grafiky v pozadí.
Netvdím, že jsem profík.
Pokud začnu zleva do prava:
x+=1;
if stav=1{
if y<=0{
stav=2;
}
y-=1;
}
if stav=2{
if y>=room_height{
stav=2;
}
y+=1;
}
Jo, to je ukázkově špatně.
Za prvé: měl bys psát podmínky if čitelněji.
Za druhé: pro komplexnější podmínky používej else nebo switch.
Za třetí: piš stručné komentáře ( vyplatí se to )
Za čtvrté: měl jsem na mysli obecný plynulý pohyb definovaný několika
body něco jako se snažíš vyrobit v tom RTS projektu, kde s tím máš
zjevně taky problém
Já ti nebudu oponovat, každý má svůj typ psaní kódu, tohle se jednoznačně říct nedá. Já jsem ti už předtím psal, že nejsem profík, ale všechny ty věci co jsi tu napsal znám. Jinak s tím RTS problém nemám, není to první, o které jsem se poušel(jedno i částěčně fungovalo i když s rezervami, ono naprogramovat jednoduché enemy UI není žádný med), jen jsem tu hledal nějaké tipy.
Proč bys mi neoponoval? Od toho přece diskuse je.
Ale odcházíme o d tématu Paths, takže se pokusím být stručný.
Viděl jsem tvůj kód a proto to mohu jednoznačně říct. Je špatně
čitelný ve srovnání s jinými.
Profík je člověk, který bere za práci peníze. Z pohledu kódu jde o
irelevantní věc.
Programovat RTS není med ( 100% souhlas ), problém s ním máš ( já ho
viděl ) a je to opět zcela v pořádku, protože od toho tu itnetwork je.
Dokonce i v případě, že se řešení nenajde, je dobré sdílet informace,
které byly pracně získány.
Přes nesouhlasné mínusy, jsme nejspíš oba pochopili svá stanoviska. Za pár let se na své výtvory podíváš a uvidíš, to co vidím já teď. Momentálně máš pocit, že tě zbytečně kritizuji a možná máš pravdu. Já si totiž dost optimisticky myslím, že to člověku může někdy pomoct a proto to stojí za tu trochu protivnosti.
Zobrazeno 10 zpráv z 10.