Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: adding Galaga channel #30

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

edmondsoun
Copy link

Description

Adds a new break channel that simulates Galaga gameplay.

The resting state of the channel is the Galaga "infinite scroll". Periodically, decorative enemy ships fly by on the margins to add some action between donations.

When a donation comes in, an enemy ship is spawned in the play area and travels down towards its resting position. Once the enemy ship crosses a certain threshold, it is targeted by the player ship, shot at, and destroyed. Once destroyed, an explosion animation plays and is replaced by the donation total.

Enemies spawn in random columns within the play area. If an enemy reaches a certain lower threshold, it will spin around and "park" until it is targeted/destroyed. If two enemies spawn in the same column, they stack one over another.

Bigger donations result in higher level ship spawns: bee, butterfly, then boss.

There is no fail state: enemy ships have no offensive capabilities and the player ship cannot be damaged or destroyed in any circumstance.

Galaga-GQD_1.mp4

On a personal note: this is very new territory for me (first time using Pixi.JS or doing any animation at all, really!) so I am very open to any aesthetic/code quality changes and grateful for any feedback. I'd also like to thank the author(s) of the Megaman channel, since the bones of this were built by pattern-matching their work.

Checklist:

  • My channel contains no first-party Nintendo assets.
  • I understand that GamesDoneQuick may reject, make changes to, or choose not to show this channel on broadcast, and that discussion or merging does not guarantee the work will be used.

previous squashed commits below
---
feat: adds minimal animation and donation displays

picking back up after long break. this commit captures the current state of the project and adds notes for a revised approach

initial changes to naming and switch case structure. introduces new global constants to be used for collision checking

add logic for enemy ship stacking and clean up player ship motion area

fixes sprDestroy setup/teardown and allows indefinite enemy spawns

adds decorative ships at border and cleans up/notates existing code

committing remaining changes from last night: minor code tidying

adds features: different ship spawns, rotating animation to park
- adjusts sprites to center X and narrows window for ship to fire on enemy
- finishes deco sprite area

swap background for colored pixel scroll

cleanup and minor tweaks
quote> - take out non-crucial notes
quote> - reduce FPS on bg scroll for visual effect
quote> - pull some values out into variables to de-clutter code
quote> - remove unused imports and types

PR prep: fix linger TS errors

PR prep: remove debugging logs

fix bug in setTimeout by adding return

PR prep: move channel back to bottom of list
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant