From 7efae1cb79a301abbd0daaf35f47cbce1bcffd40 Mon Sep 17 00:00:00 2001 From: grzi Date: Tue, 8 Dec 2020 13:10:22 +0100 Subject: [PATCH] N16: GameOff - Add Starlight 1961 --- content/posts/newsletter-016/index.md | 15 +++++++++++++++ content/posts/newsletter-016/starlight-1961.png | Bin 0 -> 27063 bytes 2 files changed, 15 insertions(+) create mode 100644 content/posts/newsletter-016/starlight-1961.png diff --git a/content/posts/newsletter-016/index.md b/content/posts/newsletter-016/index.md index e1699acb1..834a57e80 100644 --- a/content/posts/newsletter-016/index.md +++ b/content/posts/newsletter-016/index.md @@ -327,6 +327,21 @@ Here are some of the games made with Rust: [lyon]: https://github.com/nical/lyon [bevy]: https://bevyengine.org +- ["Starlight 1961"][go-starlight1961] by [@grzi] + ([source code][go-starlight-src]). + + > A die and retry landing game where you control a spaceship, its fuel and health + > inside 10 different levels. Each level is made up of ennemies (cannons, + > plasma doors, saw blades, etc.), bonuses (fuel, health) and coins. + > It was made with [amethyst] + + ![gameplay](starlight-1961.png) + +[go-starlight1961]: https://itch.io/jam/game-off-2020/rate/837014 +[go-starlight-src]: https://github.com/grzi/starlight-1961 +[@grzi]: https://twitter.com/JeremyThulliez +[amethyst]: https://amethyst.rs + ## Learning Material Updates ### [Hands-on Rust][hands-on-rust] diff --git a/content/posts/newsletter-016/starlight-1961.png b/content/posts/newsletter-016/starlight-1961.png new file mode 100644 index 0000000000000000000000000000000000000000..0f24eb2a7b202941157f96d6ab191fde9255097e GIT binary patch literal 27063 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