{"id":15107676,"url":"https://github.com/psvensson/isosprite","last_synced_at":"2026-01-18T10:28:25.914Z","repository":{"id":145003158,"uuid":"340066795","full_name":"psvensson/isosprite","owner":"psvensson","description":"A Smalltalk project for managing and displaying isometric sprites","archived":false,"fork":false,"pushed_at":"2021-03-09T06:35:25.000Z","size":28208,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-05T14:42:17.336Z","etag":null,"topics":["isometric","pharo-smalltalk","smalltalk","sprites"],"latest_commit_sha":null,"homepage":"","language":"HTML","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/psvensson.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":"2021-02-18T13:58:20.000Z","updated_at":"2021-03-16T10:52:38.000Z","dependencies_parsed_at":null,"dependency_job_id":"d601d97b-e0b5-44f4-8713-0aa66b868b40","html_url":"https://github.com/psvensson/isosprite","commit_stats":{"total_commits":36,"total_committers":1,"mean_commits":36.0,"dds":0.0,"last_synced_commit":"a21c8015d16411296c84cd0f313199a53a0b5672"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/psvensson/isosprite","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psvensson%2Fisosprite","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psvensson%2Fisosprite/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psvensson%2Fisosprite/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psvensson%2Fisosprite/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/psvensson","download_url":"https://codeload.github.com/psvensson/isosprite/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/psvensson%2Fisosprite/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28534397,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-18T10:13:46.436Z","status":"ssl_error","status_checked_at":"2026-01-18T10:13:11.045Z","response_time":98,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["isometric","pharo-smalltalk","smalltalk","sprites"],"created_at":"2024-09-25T21:40:58.047Z","updated_at":"2026-01-18T10:28:25.891Z","avatar_url":"https://github.com/psvensson.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# isosprite\nA Smalltalk project for managing and displaying isometric sprites\n\nWritten in Pharo but uses Morphic and should hopefully work in other smalltalk, let me know if not.\nGraphics and sprites is mostly (c) but CC by Clint Bellanger and from OpenGameart; https://opengameart.org/content/cave-tileset\n\nCurrently supports:\n* Parsing and picking out individual sprites from a spritesheet png\n* Can read Flare's sprite definition format and use it to create animated sprites\n* Can create aggregeate sprites (mutliples of above) which are animated together (so that sword, head and body animate together)\n* Support multiple version of an aggreagated sprite layer, so 'body' can have 'clothes', 'leather_armour' and 'steel_armour' and switch between them at runtime.\n* Support play_once, back_forth and loop animations (also from Flare sprite definitions)\n\nRun the IsoSpriteBoardTest which acts as just an example and opens an IsoSpriteBoard in world.\n![image](https://github.com/psvensson/isosprite/blob/main/Screenshot%20from%202021-03-05%2015-22-58.png)\n\n\n## Running \n```\nsprite := TestAnimatedSprite generate: 'default'.\nsprite openInHand.   \"place sprite somwhere on screen\"\nsprite play: 'critdie'.    \"or 'stance', 'cast', 'block', 'hit', 'spawn', et.c. \"\n\"Animation names can be found in the TestAnimatedSprite class method #definition \"\nsprite owner removeMorph: sprite    \"to remove from screen\"\n```\n\nThe TestBoardController class is a sample of how one could use the IsoSpriteBoard to add different sprites as tiles and as players or enemies.\n\nIt also implement some basic keyboard input, for the hero;\n* e - equip different hero armours\n* w - wield different hero weapons\n* q - attack with weapon\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsvensson%2Fisosprite","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpsvensson%2Fisosprite","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpsvensson%2Fisosprite/lists"}