Keresés

Új hozzászólás Aktív témák

  • cog777

    senior tag

    válasz Aryes #9 üzenetére

    Fogalmam sincs a 3 szogleturol. A 6 szogletut en ugy oldottam meg hogy 1 csempet (helyszint) 1 objektum reprezental. Ebben 6 iranyt specifikaltam es ezek tulajdonkeppen linkek a szomszedokhoz. Igy egy grafot alkottam.

    Korabban eltolast hasznaltam a memoriaban :D de az kicsit bonya volt, korbejarast, keresest stb specializalnom kellett hozza es par hetig gyomlaltam a bugokat :))

    @cinemazealot:
    "Firkáld meg magad! (Van néhány elég jó pixel art "how-to" YouTube csatorna és Udemy oktató csomag.) Mire elkészülsz a motorral, találsz (vagy képes leszel kidolgozni) elég részletes és megfelelő minőségű csempéket. "
    Ha nem talalok akkor neki allok, csak idot akartam megtakaritani. Amugy szeretek rajzolgatni.

    HP ZBook Workstation A3000 - Linux Mint; Raspberry Pi4 - Raspbian

  • sztanozs

    veterán

    válasz Aryes #9 üzenetére

    legegyszerűbben fél egység eltolással lehet leképezni: minden hatszög 6 egység széles és hét magas (vagy fordítva). A páros oszlopok/sorok (csempe állástól függően) el vannak tolva 3 egységgel.

    JOGI NYILATKOZAT: A bejegyzéseim és hozzászólásaim a személyes véleményemet tükrözik; ezek nem tekinthetők a munkáltatóm hivatalos állásfoglalásának...

  • cinemazealot

    addikt

    válasz Aryes #9 üzenetére

    Háromszöget eddig nem nagyon láttam, de lehet, hogy ez az én hiányosságom. :) Hexagon stílusú mezőkre van egy ötletem, de nem tudom, ez-e a nagyok által is bevett módszer:
    1. Ha a hatszögű mezőknek van vízszintes éle (mint ahogy az cog777 pályáján is látható). akkor a függőleges irányú mozgás triviális, a vízszintes irányú mozgás esetén pedig egy előre meghatározott algoritmus szerint pl. a páros oszlopokból jobb-felső és bal-felső, páratlan oszlopokból pedig a jobb-alsó és bal-alsó szomszédba való átlépéssel történhet.
    2. Ha a hatszögű mezőknek függőleges éle van (tehát mintha a fenti pályát 90°-kal elforgatnánk), akkor a fenti módszer két koordinátájának léptetése értelemszerűen cserélődik.

    A körbejárás eszerint ugyancsak algoritmizálható, de derékszögű koordináta rendszerbe történő leképzése függ attól, hogy páros/páratlan oszlopban/sorban helyezkedik-e el a játékos (a középső üres helyen van a körüljárandó mező):
    1.
    [] [][][]
    [] [] vagy [] []
    [][][] []

    2.
    [][] [][]
    [] [] vagy [] []
    [][] [][]

    Ezzel persze az a probléma, hogy ha csak a nyíl gombokat nyomogatja a delikvens, akkor a teljes körhöz néha "átlósan" is lépnie kell, azaz egyszerre kell lenyomnia egy függőleges és vízszintes gombot. Ezt úgy lehetne feloldani, hogy egy nem triviális (tehát az 1. példánál maradva nem függőleges) irányú lépés esetén nemcsak azt vizsgáljuk, hogy a játékos páros/páratlan oszlopban áll-e, hanem azt is, hogy éppen merrefelé lép. Tehát maradva az 1. esetnél pl. ha jobbra lép, akkor páros mezőből a jobb-felső, páratlan mezőből a jobb-alsó szomszédba lép át, de ha balra lép, akkor páros mezőből a bal-alsó, páratlanból a bal-felső szomszédba lép át. Ezzel tehát meg lehet azt csinálni, hogy egy jobbra-jobbra-balra-balra "topogással" egyszerre 4 mezőt is bejárjunk, holott ez derékszögű koordináta rendszerben csak hármat érintene. Hasonlóan egy jobbra-balra-jobbra-balra-... topogással előbb utóbb a pálya aljára vagy tetejére kerülnénk attól függően, hogy páros vagy páratlan oszlopban lévő mezőben kezdtünk el topogni. A 2. példánál hasonlóan, csak a koordináták cseréjével. :)

    [ Szerkesztve ]

Új hozzászólás Aktív témák