Zobraziť príspevky

This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.


Messages - Domino_666

Pages: 1 [2] 3 4
26
1. ročník / Re: Skúška z FYZ,UPS,ZIM
« on: 24.12.2011, 05:06:36 »
hlavne sa pripravte na to, že z UPS budú (zákerné) otázky s často viacerými správnymi odpoveďami: často aj viac než 2. Samozrejme sa to potom počíta ako čiastkové body. Ja som minulý rok šiel na to opatrne a radšej neoznačoval veľa odpovedí a prešiel som len tak tak (treba min 50% z toho testu). Najviac bolo otázok zo sietí, Karla a dačo základné HTML.

27
2. ročník / Re: OOP - "spešl zadanie"
« on: 20.12.2011, 20:17:40 »
V init mám zapnuté vsync, takže max 60

// gc je GameContainer
gc.setVSync(true);

28
2. ročník / Re: OOP - "spešl zadanie"
« on: 20.12.2011, 06:14:32 »
ďakujem, odteraz považujem debugger za svätý, mal som tam nechtiac votretú "večnú pravdu", teda pri každom prejdení cyklu sa vytvoril nový Fred. Podľa debuggera sa ich vytvorilo cez 2800  ;D (a to som mal v pláne vytvoriť len singleplayer hru  ;D)
každopádne už mi to ide, dík za rady  :thumbs-up:

29
2. ročník / Re: OOP - "spešl zadanie"
« on: 19.12.2011, 04:17:02 »
@Agamemnon
Ako myslíš tie premenné? Asi sa nechápeme. Chcel som to spraviť tak, že na začiatku sa vytvorí nová inštancia triedy level, viac menej ten bude všetko riadiť ďalej takto:
-v konštruktore načítam mapu, prejdem celú mapu a keď nájde na mape nejaký item/nepriateľa/freda, pridá ho do generického zoznamu Actorov - Actor je interface, ktorý implementujú 2 abs. triedy: Character (fred, nepriateľa) a Item (hviezdy elixíry...) - viac menej takto to bolo načrtnuté v scenároch, akurát batoh mám myslím trocha inak, resp. zo scenárov som nepochopil ako to celkovo bolo myslené, ale funguje mi to v pohode :)
-v update metóde hry sa updatne len samotný level, čo v princípe znamená toľko, že prejde celým tým generickým poľom (v ktorom už má všetky predmety, postavy...) a každú z nich updatne (ak je čo updatnúť, to už riadia metódy na všetko prakticky zvlášť)
-v render metóda funguje rovnako, akurát sa ale nič neupdatuje, ale už len zobrazí

Fred ani nič ostatné už po tom, čo ho raz dostanem do toho generického zoznamu už nemusí mať informáciu o vrstve. To chcem riešiť tak, že medzi jednotlivými vykresleniami vrstiev mapy len vsuniem vykreslenie prvkov zoznamu. Potom budem pokračovať v mape a teda dosiahnem ten efekt, že niečo bude pred a niečo za. Malo by sa to takto dať, no keďže zatiaľ akosi neviem načítať veci do toho zoznamu, bez toho aby sa zahltil program, neviem to otestovať či sa to dá presne podľa mojich predstáv.

Pozrel som cez task managera a niekde sa to zahlcuje:
-ak nechám prejsť celú mapu ale nevytvorím tie inštancie predmetov (zakomentoval som tú časť) tak mi cez task manager vo wine píše okolo 100Mb pamäte
-ak nechám celý kód ako by mal byť aj s tými novými inštanciami, tak to presahuje 400mb pamäte
 ???


@Mitwoc:
-na koniec mapy, na miesto, kam už nechceš aby sa dalo ísť umiestni collision, toto ešte ja nemám implementované, ale chcem to spraviť tak, že tam dám značku collision, parametre "block" "true" a potom to nejako budem riešiť cez intersecty, ale ešte neviem presne
K vykreslovaniu v strede okna: použi na to jednu z variánt metódy render:

// render(int x, int y, int sx, int sy, int width, int height)
map.render(100,100,0,0,10,10);
// Which would render the section of the map in tiles from 0,0 to 10,10 at the screen position 100,100. This can be be very useful for performance when scroll round large tile maps.

30
2. ročník / Re: OOP - "spešl zadanie"
« on: 19.12.2011, 02:12:39 »
Ako dostávate veci z mapy do hry?
V konštruktore levelu som spravil niečo takéto (napíšem to skrátene + nejaké komentáre):
(snažil som sa ísť aspoň čiastočne podľa scenárov - nejaké to základné "myslenie" som zobral odtiaľ (zhruba vzťahy medzi triedami, rozhraniami atď)


... // this.map je typu TiledMap - to je samotná načítaná mapa
int layerIndex = this.map.getLayerIndex("actors"); // zistí index vrstvy s názvom "actors"
int w,h; // šírka, výška
// cyklicky prejdem celú mapu
for(h=0; h<this.map.getHeight(); h++){
     for(w=0; w<this.map.getWidth(); w++){
           int tileID = this.map.getTileId(w,h,layerIndex); // zistí jedinečné ID tilu (blbo sa to skloňuje  ;D) podľa jej umiestnenia - výška, šírka, vrstva
           boolean foundPlayer = "true".equals(this.map.getTileProperty(tileID, "player", "true")); // zistí parametre tej taily a ak je player true, tak našlo hráča
           if(foundPlayer){ // ak našlo hráča, vytvorí jeho inštanciu a nastaví pozíciu
               Fred fred = new Fred(w,h);
               this.add(fred); // metoda add(Actor) pridava do generického zoznamu actorov freda (hráča)
           }
      }
}

Problém je, že neviem prečo mi to (asi) kontroluje všetky vrstvy a dokonca neviem či aj nie opakovane (v hernej logike je to celé v časti init, takže to by nemalo...) a program prakticky prestane pracovať, resp. fps klesne na 1 akoby sa zahltil, aj to až po dlhšom čase, kým sa aspoň niečo načíta. Skúšal som vrstvu napísať ručne (jej číslo v kóde) a čo som bol prekvapený, furt mi "playera" našlo, aj keď malo hľadať v inej vrstve, kde určite nebol, to som si skontroloval aj v Tile Editore.

V tomto konkrétnom prípade som skúsil spraviť pomocnú premennú boolean, do ktorej som uložil informáciu o tom, či už našlo hráča a ak bolo true, tak z metódy vyskočil. Toto už šlo krásne plynulo, bez poklesu fps či iných vedľajších efektov. Problémom ale je, že rovnako chcem postupovať aj s ostatnými predmetmi (hviezdy, kľúče, elixíry...) a vtedy už mi pomocné premenné budú na nič, resp. tak či by som ich musel manuálne písať do kódu a teda keď tak ich už radšej nepridávať z mapy ale vytvoriť ich inštancie v kóde. Ale tomu sa chcem vyhnúť.

31
2. ročník / Re: OOP - "spešl zadanie"
« on: 17.12.2011, 20:13:31 »
dík, nebol vytvorený ten objekt, resp. mal som tam chybu

to gc je gamecontainer

32
2. ročník / Re: OOP - "spešl zadanie"
« on: 17.12.2011, 06:09:58 »
dík za rady, ide to, použil som na to metódu gc.getTime(); :)


Ako je to s tými generyckými kolekciami?

Chápem správne, že:

ArrayList<Item> backpack = new ArrayList<Item>();

vytvorí generické pole (resp. zoznam) prvkov, ktoré majú typ Item a celé sa to volá backpack? Takto sa to snažím zatiaľ spraviť, ale problém je, že keď tam chcem cez .add(); vložiť predmet, spadne program a píše nejaké null pointer exception alebo niečo také na tom riadku, kde sa to snažím vložiť. Predpokladám, že mi nejako nesedia typy, mám to zatiaľ zhruba takto:

abstraktná trieda Item, v nej mám pár metód spoločných pre všetky predmety (gettery, settery...) a následne všetky predmety túto triedu rozširujú. Takže napr. mám

public class Key extends Item(){ ... }

V konštruktore BackpackImpl som si vytvoril ten zoznam (viď vyššie) a metódu

public void addItem(Item predmet) {
 this.backpack.add(predmet);
}

v update to volám takto:

backpack.addItem((Item)key);

takže predtým ten typ Key pretypujem na Item, ktorý by tam mal byť, ale nejako mi to nechce zobrať  am


33
2. ročník / Re: OOP - "spešl zadanie"
« on: 16.12.2011, 07:10:20 »
Ozaj, je nejaká možnosť spustiť na pozadí niečo ako časovač? Že by sa niečo dialo buď náhodne, alebo na základe nejakého intervalu? Nikde som nenašiel nejaké metódy na prácu s časom (okrem dĺky framu pri animácii, ale to nieje to čo myslím)

34
2. ročník / Re: OOP - "spešl zadanie"
« on: 16.12.2011, 01:11:20 »
Taký začiatočnícky javovský dotaz, pravdepodobne ide o somarinu, ale nejako ma nenapadlo ako to spraviť.
Ide o to, že keď robím pole obrázkov pre animáciu, tak tam dávam napr.

Image[] star = {
   new Image("cesta"),
   // dalsich x obrazkov
}

ale nechcem, resp. je neefektívne všetky tie obrázky tam ručne vypisovať, tak som to chcel spraviť nejako v cykle. No neviem ako to zostaviť, nech to skúšam ako skúšam, nejako mám furt zlé typy, alebo keď to zhltne netbeans, tak mi spadne hra pre nejaké null exception alebo niečo také.

Nejako som zatiaľ nevyguuglil nič, všade čo som našiel, sa s typom Image pracovalo ako s jedným obrázkom, nie ako s poľom. V podstate by mi stačilo, pridať k jednému ďalší a tak ďalej.

Alebo urobiť jednoduchú animáciu napr. z jedného obrázku a k nej potom pridávať cez metódu addFrame(frame, duration) ďalšie?

35
2. ročník / Re: OOP - "spešl zadanie"
« on: 14.12.2011, 01:26:31 »
tak myslím že stačí až potom, aspoň tak som pochopil mireka
inak to rovno prenášam  ;D

36
2. ročník / Re: Matematická Logika
« on: 29.11.2011, 02:25:59 »
Tak dnes som dačo počul, vraj už sú ľudia čo to majú v MAISe a majú Draženskú. Je to pravda? Som nervózny čakať do piatku  ;D

37
2. ročník / Re: Matika I. Opakujuci
« on: 14.11.2011, 18:21:57 »
Čaute, nemá niekto ofotené tohtoročné zadania zápočtoviek, prípadne aj s riešeniami? Alebo aj minuloročné. Proste Bušove príklady. Tento zápich som zase na kktine posral a už nemôžem zaváhať, tak nech môžem počítať príklady aké môžu na zápočte byť...

38
2. ročník / Re: Matika I. Opakujuci
« on: 11.11.2011, 13:44:19 »
Dík, toto pri 4x4 ani neviem, že sa dá aj tak ;D
Stačí vyrobiť nuly v stĺpci a teda vznikne matica 3x3 by ma nenapadlo :D Dobrý nápad

39
2. ročník / Re: Matika I. Opakujuci
« on: 11.11.2011, 05:39:00 »
Mám dotaz, nechcem prísť o body na hlúposti tak sa spýtam:

Ak dostanem vypočítať inverznú maticu cez Cramera, tak budem robiť to, čo ukazoval Buša: teda vynechávať riadky a stĺpce a počítať subdeterminanty a mám z toho inverznú.

Ak ale budem cez Cramera počítať sústavu, teda riešenie, tak sa naskytajú 2 možnosti:
a) spravím tak ako v prvom prípade inverznú a vynásobim pravou stranou a dostanem riešenie
b) subdeterminanty nebudem počítať vynechávaním riadkov a stĺpcov (teda matice 2x2), ale rovno 3x3 pomocou Sarrusa. Potom subdeterminant delené determinant "hlavnej" (matica z ľavej strany) = výsledok (premenná).

Ide o to, že Buša hovoril, že Sarussa nemáme používať. Ale čiastočne si sám odporuje, pretože aj na Wiki sa hovorí o tom, že v Cramerovi sa majú vymieňať stĺpce zľava za pravú stranu. A to budem robiť práve pri tej možnosti b) čo popisujem. Akurát sa ten výpočet si pomôžem aj Sarrusom. Takže ako to je, môžem tak počítať, alebo nie. Pretože mne je možnosť b) omnoho ľahšia a menej náchylná na chybu...

40
2. ročník / Re: Etika
« on: 08.11.2011, 00:19:39 »
dnes etika nebola, ja som tam vôbec nebol: na tom maile písal že dnes nebude...

41
2. ročník / Re: UŠaA
« on: 08.11.2011, 00:18:27 »
hej, to je presne toto, ja som to spravil úplne bez použitia smerníkov, ktoré nejako používať neviem  ;D
je to v podstate zoznam, nič iné, ja som k tomu dokopy nič nevedel predtým, ale z toho kódu čo tam je sa to dá pochopiť za pár minút, stačí sa aspoň trocha vyznať v Cčku že čo je čo.

42
2. ročník / Re: UŠaA
« on: 07.11.2011, 22:09:22 »
V RAM stroji neviem, v Cčku sme mali zásobník a k nemu nájsť jeho max. prvok a podobné veci. Myslím že to je 3 alebo 4 cviko. To si stiahneš a doprogramuješ.

43
2. ročník / Re: FJAP
« on: 03.11.2011, 04:29:58 »
dík moc  :)

44
2. ročník / Re: FJAP
« on: 03.11.2011, 04:21:22 »
Mám taký trochu off topic problém: keď svoj program dám skompilovať a spustiť, všetko síce ide, ale nespustí sa v klasickom príkazovom riadku (robím na windowse), ale len v tom okne dolu v netbeans. Ako nieje to až tak problém, funguje to tam (asi :D) ale horšie sa s tým pracuje: keď niečo chcem zadať, tak to niekedy píše do kódu nie tam, musím sa furt jak blbý preklikávať :D kde sa toto nastavuje, aby sa to spustilo normálne v cmd a nie v netbeanse? Vopred dík.

45
2. ročník / Re: Matika I. Opakujuci
« on: 29.10.2011, 19:05:51 »
Prezenčka bola?

46
2. ročník / Re: OOP
« on: 24.10.2011, 16:07:14 »
ja som o nejakej textovej adventure pocil az teraz,.. my sme este mlady, sme vyrastali uz na Soldier of Fortune, aspon ja tie textovky este asi na abakuse bezali  xDDD  ;D ;D ;D

tak jediná adventúra ktorú som ozaj že hral bol vyššie spomínaný Neverhood :D
Inak ja som vyrástol na Baldur's Gate 2 a podobných starých skvelých RPG

47
2. ročník / OOP - "spešl zadanie"
« on: 24.10.2011, 16:04:53 »
Asi by bolo vhodné spraviť samostatný topic pre tých, čo máme to špeciálne zadanie. Nech sa to veľmi nepletie s tou textovkou...  :) Dávajte aj tu prípadne nejaké materiály k tomu, napr. to čo vygooglite a nebude na moodli a tak...

48
2. ročník / Re: OOP
« on: 24.10.2011, 06:13:36 »
Tak mne to vyšlo na 71 krokov v minime, mám tam spestrenia ako NPC, v jednej časti aj časovanie krokov.
Predmety: zobrať a použiť "z inventára" mám 7, ďalších asi 5 mám statických - nedá sa s nimi hýbať, len sa použijú na mieste (a dačo sa stane - umožní postup ďalej). Takto to stačí, či tých 10 sa musí dať zobrať?
Do 1 miestnosti (mám ich 30) sa nedá dostať, resp. by to znamenalo koniec hry, hráč ju bude musieť "vyčistiť od záporňákov" iným spôsobom :D
Stačí to, alebo treba ešte niečo? Základné príkazy GET, PUT, EXAMINE, USE všetky mám aspoň raz nutné použiť.

49
2. ročník / Re: FJAP
« on: 21.10.2011, 00:05:32 »
prava asociatinost je ze 1+2+3+4 = (1+(2+(3+4))) tzn. najprv vypocita 3+4 potom k tomu +2 a nakoniec +1
lava asociatinost je ze 1+2+3+4 = (((1+2)+3)+4)

priorita - tak ako si napisal.. cize ak mas v zadani ze * ma vyssiu prioritu ako / tak potom vyraz
2*3/6=((2*3)/6)
ak by / malo vyssiu prioritu ako * tak potom
2*3/6=(2*(3/6)

Ďakujem mockrát, presne takto som to potreboval  :)

50
2. ročník / Re: FJAP
« on: 19.10.2011, 04:02:25 »
Mohol by mi niekto v krátkosti jednoducho vysvetliť, ako funguje pravá asociatívnosť? Najlepšie na nejakom príklade. Napr. ako sa bude (postupne) vyhodnocovať výraz:
1+2+3+4+5 (viem že zadanie je iné, ale pre pochopenie niečo jednoduchšie). Vyššia priorita znamená, že najprv v programe urobím to, čo má vyššiu a až potom zvyšné operácie však? Vopred dík moc.

Pages: 1 [2] 3 4