Stay tuned for more

Just thinking ahead a bit is allz
The FSM is like minimum viable product but also the white FSM is still tempting as hell.
Yeah for sure ruby’s gonna go all out, ruby’s gonna make it
In Swish! all players can only make an attempt on the best times league table for completion of any level 20 times per week
Swish! is a spiritual successor to Tumblepop, but not the Snow Bros. or Bubble Bobble.
Swish! is for fans of pre-reboot Archie as well as consumers and enjoyers and appreciators of the Netflix show, as well as for avid Cole Sprouse fans who enjoy the franchise for him.
In Swish! practicing levels to gain familiarity and skill for a proper time trial ( see above ) takes up virtual ‘quarters’, like in the arcades. You only get 100 quarters per week.
Swish! is not a fun game, but it is an enjoyable game.
Swish! is a game you want your big brother to help you out with tips for.
The title of the video game Swish! is always punctuated as: ‘Swish!’
Swish! is the first game from Freedom Fortress Productions.
Swish! is for people who have never heard the term ’ shmup’.
In Swish! completing all levels allows you to submit your own level design.
Swish! is for people who understand that Sonic the Hedgehog, diegetically, enjoys standing stationary and contemplating the sheer potential of his own speed.
Swish! is designed to be best enjoyed ( see above ) with an arcade stick controller.
Swish! is suitable for play either both before or after ever having seen either Space Jam movie.
Swish! offers the following concessions to modern video game players’ tastes: free run mode, and quest mode.
Swish! is difficult but not frustrating.
Swish! instigates, but does not ‘evoke’ happiness as a real emotional experience.
In Swish!, the number of times you have previously practiced a level that you are submitting a best time for is taken into account by a scoring procedure* (*not algorithm)
Swish! is
I am drinking caffeine again (help!) and just SB-posting some ideas of how I would ruby-code 2D collisions in quartz-logic
A floor collision with any given platform might have happened if the player’s feet have just passed below the floor level of that platform.
How do you know if a floor collision has in fact actually happened?
If either of these things have happened, then a collision has not happened:
And then just De-Morgan your way to success
My college (uni!) edjacation tellin’ me now:
A and B should be their own functions
Also :
design a nice sort of Event class
and when collisions occur -
DO NOT CHANGE STATE
But
Create an event object and put it in EventsToBeOccured pool
Eg:
PlatformCollisionEvent implements Event{
Platform platformCollidedWith;
Side sideCollidedWith;
}
EnemyCollision implements Event{
Enemy enemyCollidedWith;
}
BulletCollision implements Event{
Bullet bulletCollidedWith;
}
interface Event{
function occur;
boolean hasOccurredYet = false;
}
look I;m just gonna code in here
look away if you don’t know the relevant Matrix codes or Akira pill antidotes or whatever
function isPlayerTooFarLeft boolean(Platform platformToCHeckIfPlayerIsTooFarLeftOf){
return( Global_playerObject.getCorner(TopRight).horizontalCoordinate
< platformToCheckIfPlayerIsTooFarLeftOf.getCorner(TopLeft).horizontalCoordinate) ;
}
This game is happening
The maths tuition kids are designing levels
I’ll release a link here in a month
An amazing and selfless warrior shares his armoury with worthy allies and in the sharing they become more worthy
seeing the red ranger with the chest plate evokes memories of interchanging action figure accessories
like giving like a ninja turtles’ nunchucks in like a bike mice from mars’ hands (paws?) or something ?
maybe not as creative as that; just literally using the white tiger ranger’s chest plate on other power ranger toys lol.
Ok so
class Animation{
constructor(spritesCode){
this.currentFrame = 0;
this.frames = Global.SpriteSets[spritesCode];
}
nextFrame() {
this.currentFrame = (this.currentFrame + 1) % this.frames.length;
}
drawSprite( coordinatesToDrawAt ){
Global_Canvas.drawImage( this.frames[currentFrame], coordinatesToDrawAt.horizontal, coordinatesToDrawAt.vertical);
}
}
function accelerateCharacterFromKeypress( direction){
if(direction == "right"){
this.dynamics.horizontalComponentOfAcceleration = this.walkingAcceleration;
constrainVelocity(thanks);
this.visibleSprite = this.spriteLibrary["walkingRight"];
this.slidingToAStopHorizontally = false;
}
if(direction == "left"){
this.dynamics.verticalComponentIfAcceleration = -this.walkingAcceleration;
constrainVelocity;
this.visibleSprite = this.spriteLibrary["walkingLeft"];
this.slidingToAStopHorizontally = false;
}
class Character{
constructor(animations, size){
this.animations = animations;
this.size = size;
this.dynamics = new Dynamics();
}
}
class Dynamics{
constructor(){
this.position.HorizontalComponent = 0;
this.position.VerticalComponent = 0 ;
this.velocity.HorizontalComponent = 0;
this.velocity.VerticalComponent = 0;
this.acceleration.HorizontalComponent = 0;
this.acceleration.VerticalComponent = 0;
}
}
getSpriteSetFromFolder(spritesetname, numSprites){
var imageElementContainingNextSpriteInSet;
var indexOfSpriteCurrentlyCreatingImageElementOf = 0;
while( indexOfSpriteCurrentlyCreatingImageElementOf < numSprites ){
imageElementContainingNextSpriteInSet = document.createElement("img");
imageElementContainingNextSpriteInSet.src = spritesetname + "_" + indexOfSpriteCurrentlyCreatingImageElementOf + ".png";
this.spriteSet.push(imageElementContainingNextSpriteInSet);
indexOfSpriteCurrentlyCreatingImageElementOf = indexOfSpriteCurrentlyCreatingImageElementOf + 1;
}
return spriteSet;
}
var Global = {};
loadGlobal_spriteSets();
function loadGlobal_spriteSets(){
Global.SpriteSets = [];
var spriteSet = getSpriteSetFromFolder("test",3);
Global.SpriteSets.push(spriteSet);
}
I am thinking of changing the name to Rebound!
Imma be real I find ++ kinda vulgar
firebase notes:
Js malarkey