{"id":22793111,"url":"https://github.com/kripod/chess","last_synced_at":"2025-06-25T17:02:15.832Z","repository":{"id":81143657,"uuid":"97752979","full_name":"kripod/chess","owner":"kripod","description":"Egyszerűsített sakk játék objektum-orientált szemlélettel elkészítve.","archived":false,"fork":false,"pushed_at":"2017-07-19T19:30:06.000Z","size":19,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-02-05T19:09:45.632Z","etag":null,"topics":["chess","cli"],"latest_commit_sha":null,"homepage":null,"language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/kripod.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-07-19T19:19:57.000Z","updated_at":"2018-12-29T16:27:33.000Z","dependencies_parsed_at":null,"dependency_job_id":"d4b8c3c7-41e7-4404-9f01-374de734b6fd","html_url":"https://github.com/kripod/chess","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kripod%2Fchess","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kripod%2Fchess/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kripod%2Fchess/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kripod%2Fchess/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kripod","download_url":"https://codeload.github.com/kripod/chess/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246351375,"owners_count":20763289,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chess","cli"],"created_at":"2024-12-12T03:18:05.259Z","updated_at":"2025-03-30T17:20:36.888Z","avatar_url":"https://github.com/kripod.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Sakk\n\nA feladat egy egyszerűsített sakk játék elkészítése objektum-orientált szemlélettel. A program körönként kirajzolja a játéktáblát a hozzá tartozó sor- és vonaljelölésekkel, majd kér egy bemenetet a felhasználótól, melynek segítségével beolvasható az aktív játékos által végrehajtani kívánt lépés. A bemenet formátuma a következő:\n\n```\n([bábutípus])([kiindulás])[cél]([átalakulás])\n```\n\n- `bábutípus` _(opcionális)_: A léptetni kívánt bábu angol algebrai jelölése (egy karakterrel).\n  - __Lehetséges értékek:__\n    - `P` _(pawn, gyalog)_\n    - `N` _(knight, huszár)_\n    - `B` _(bishop, futó)_\n    - `R` _(rook, bástya)_\n    - `Q` _(queen, vezér)_\n    - `K` _(king, király)_\n  - __Alapértelmezett érték:__ `P`\n- `kiindulás` _(opcionális)_: A léptetni kívánt bábu kiindulási koordinátái angol algebrai jelöléssel. Kötelező megadni, amennyiben a `cél` nem határozza meg egyértelműen.\n  - __Lehetséges értékek:__ `a1` - `h8`\n  - __Alapértelmezett érték:__ `cél` által meghatározott, amennyiben egyértelmű\n- `cél`: A léptetni kívánt bábu cél koordinátái angol algebrai jelöléssel.\n  - __Lehetséges értékek:__ `a1` - `h8`\n- `átalakulás`: Gyalog 8. sorra érkezése esetén annak átalakítása vezérré, huszárrá, bástyává vagy futóvá.\n  - __Lehetséges értékek:__ `Q`, `N`, `R`, `B`\n\nA feladat elkészítéséhez __nem szükséges a sakk teljes szabályrendszerének implementálása__ _(lsd.: sáncolás, ütés menet közben, patthelyzetek felismerése)_, elegendő a lényegesebb szabályok beépítése a programba:\n\n- Bábuk léptetése a játéktáblán _(ütések lehetőségével)_\n- Sakk, illetve matt felismerése\n\n_A megoldás elkészítéséhez STL tárolók is felhasználhatók. Az elfogadott bemenettípusok a fent leírtaktól kis mértékben eltérhetnek._\n\n## Tesztelés\n\nA program tesztelését a mellékelt tesztvektorok segítségével végeztem el, a memóriaszivárgás-mentességet pedig [Valgrinddal](http://valgrind.org) ellenőriztem.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkripod%2Fchess","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkripod%2Fchess","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkripod%2Fchess/lists"}