Anonymní profil luko – Programujte.com
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu

Anonymní profil luko – Programujte.comAnonymní profil luko – Programujte.com

 

Příspěvky odeslané z IP adresy 85.207.251.–

PAJA
Java › Detekce kolizí
29. 11. 2016   #213834

#10 peter
Ahoj všichni, tak hlásím, že jsem to vyřešil, byla to zase taková klasická pitomá chyba, neumím psát kod moc přehledně a přehlédl jsem, to, že jsem vlastně místo aktuální pozice letící kulky vracel pokaždé pozici počátečních souřadnic kulky, což je vlastně pozice hráče. Příště musím dávat bacha, jaké proměnné dosazuji :)

PAJA
Java › Detekce kolizí
28. 11. 2016   #213807

#2 peter
Ahoj, s přístupem k poli problém nemám, problém bude někde, kde zpracovávám ArrayList.

PAJA
Java › Detekce kolizí
28. 11. 2016   #213806

#4 gna
Ahoj díky , ano, zapomněl jsem tam přidat to get(j), ale i tak to nakonec nepomohlo, kulky normálně proletí "přes" nepřátele a nic se nestane.

PAJA
Java › Detekce kolizí
28. 11. 2016   #213801

Ahoj, vytvářím hru v javě a dostal jsem se k dalšímu problému a tím je detekce kolizí, pracuji s entitou hráče, poté mám pole entit nepřátel a arraylist vystřelených nábojů.
Detekci mezi hráčem a nepřáteli řeším klasicky přes getBounds(), který mi vrací Rectangle a poté je srovnám pomocí Intersects. Toto funguje v pořádku.
Problém nastává, když mám zavolat getBounds() nad vystřelenými náboji, nejsem si jistý, jak to vytáhnout z toho arraylistu.

Přikládám kod, jak prozatím detekuji kolize. Budu rád, za každou radu.

for (int i = 0; i < poleProtihracu.length; i++) {
                    if (poleProtihracu[i] != null) {
                       Rectangle okrajeHrace = player.getOkraje();
                       Rectangle okrajeNepratel = poleProtihracu[i].getOkraje();
                       // if (poleProtihracu[i].getOkraje().intersects(bullet.getOkraje())){
                        //    poleProtihracu[i] = null;
                        //}
                    
                        if (okrajeHrace.intersects(okrajeNepratel)) {
                          poleProtihracu[i] = null;
                        }
                        
                       
                    }
                    repaint();
                }

luko
Java › Náhodné záporné číslo
23. 11. 2016   #213748

#1 luko
Odpovím si sám, už mi to docvaklo :D Stačí dát jenom třeba (random.nextInt(11) - 6)

luko
Java › Náhodné záporné číslo
23. 11. 2016   #213747

Ahoj, zrovna dělám na jednom projektu do školy a narazil jsem na takový problém, generuji náhodná kladná čísla, to je v pohodě, ale teď bych potřeboval vygenerovat náhodně něco v rozmezí třeba -5 až 5, nenapadá vás něco? Uvažuju, že ať už do math.random dosadím cokoliv, tak se nedostanu nijak k zápornému číslu a kdybych to zase například přenásobil (-1), tak se zase nedostanu ke kladným. Je možné, že už jsem jenom večer utahaný a řešení bude nějaké jednoduché, na které hned ráno příjdu :D Ale vrtá mi to hlavou. Díky moc, pokud někoho něco napadne :)

 

 

Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032024 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý