Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master'
Browse files Browse the repository at this point in the history
  • Loading branch information
cromo committed Oct 4, 2021
2 parents 933dbbd + 04e7001 commit d989b86
Show file tree
Hide file tree
Showing 20 changed files with 212 additions and 26 deletions.
Binary file added res/player-ascending.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/player-crouch1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/player-crouch2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/player-descending.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/player-jump1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added res/sfx/swoosh.wav
Binary file not shown.
1 change: 1 addition & 0 deletions src/audio.ts
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@ export function initAudio(): void {
};
availableSfx["warning"] = { source: audio.newSource("res/sfx/warning.wav", "static") };
availableSfx["gainpip"] = { source: audio.newSource("res/sfx/pip_get.wav", "static"), volume: 0.5 };
availableSfx["swoosh"] = { source: audio.newSource("res/sfx/swoosh.wav", "static"), volume: 1.0 };

availableBgm["level"] = {
sources: {
Expand Down
23 changes: 16 additions & 7 deletions src/levels/bigCentralGlitch.ts
Original file line number Diff line number Diff line change
@@ -1,5 +1,9 @@
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { glitchy, teach } from "./terminalTalk";
import { angry, glitchy, onTagHit, step, teach, tease } from "./terminalTalk";

enum Tags {
Face = "face",
}

export const bigCentralGlitch: LevelDefinition = {
layout: [
Expand All @@ -19,21 +23,26 @@ export const bigCentralGlitch: LevelDefinition = {
"|#KK . . . . . . . . .~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ . . . .|# . . . . .|#",
"|#-#-#-#-#-#-#-#-#-#|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~KKKKKKKKKKKKKKKKKKKK|#",
"|# . . . . . . . . .|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-#-#-#-#-#-#-#-#-#-#|#",
"|# . . . . . . . . .|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~ T . . . . . . . . . . . . .|#",
"|# . . . . . . . . .|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~ . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . .|#|#|# . . . .111111 . . . . . . . . . . . . . .|#",
"|# . . . . . . . . .|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~ T f f f f . . . . . . . . .|#",
"|# . . . . . . . . .|#~~~~~~~~~~~~~~~~~~~~~~~~~~~~ f f f f f . . . . . . . . .|#",
"|# . . . . . . . . . . . . . .|#|#|# . . . .111111 f f f f f . . . . . . . . .|#",
"|# . . . . . . . . . . . . . .|#|#|# . . . .111111 . . . . . . . . . . . . . .|#",
"|#SS . . . . . . . . . . . . .|#|#|# . . . .111111 . . . . . . . . . . . . . .|#",
"*#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#*#",
],
annotations: [
{
symbol: "f",
customTags: [Tags.Face],
},
{
symbol: "T",
flags: [LevelAnnotationFlag.terminal],
terminal: {
trackTags: [],
onOverloadDeath: [teach("Too unstable."), glitchy("Too much of a good thing?")],
conversations: [],
trackTags: [Tags.Face],
onTelesplatDeath: [tease("Telesplat 2000(TM)")],
onKillPlaneDeath: [teach("Be prepared!")],
conversations: [{ name: "face", steps: [step(onTagHit(Tags.Face), angry("Hey, hey, watch the face!"))] }],
},
},
],
Expand Down
18 changes: 15 additions & 3 deletions src/levels/columns1Level.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
import { LevelDefinition } from "../models";
import { LevelAnnotationFlag, LevelDefinition } from "../models";

export const columns1Level: LevelDefinition = {
layout: [
"*#-#-#-#-#-#-#-#-#-#-#*#-#-#-#-#-#*#?K?K?K?K*#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#*#",
"|# . . . . . . . . . . . . . . . .|#?K?K?K?K|# . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . T . . .|#?K?K?K?K|# . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . .|#?K?K?K?K|# . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . .|#?K?K?K?K|# . . . . . . . . . . . . . . . .|#",
"*#-#-#-# ! ! ! !-#-#-#*#|#-#1111-#|#?K?K?K?K|#-#1111-#|#*#-#-#-#~~~~~~~~-#-#-#*#",
Expand All @@ -25,5 +25,17 @@ export const columns1Level: LevelDefinition = {
"|#*# ! ! ! ! ! ! ! !*#|#|# ! ! ! ! ! ! ! ! ! ! ! ! ! !|#|# . . . . . . . . . .|#",
"*#-#-#-#-#-#-#-#-#-#-#*#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#*#KKKKKKKKKKKKKKKKKKKK*#",
],
annotations: [],
annotations: [
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [],
},
},
],
};
52 changes: 52 additions & 0 deletions src/levels/credits.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { glitchy, serious, teach } from "./terminalTalk";

export const creditsLevel: LevelDefinition = {
layout: [
"*#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#*#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .*# . . . . .*# . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .~~ . . . . .~~ . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .~~ . . . . .~~ . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .~~ . . . . .~~ . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .~~~~~~~~~~~~~~ . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . .*# . . . . . .~~ . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . .*# . . . . . .~~ . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . .-#-#-#-#-#-#-#-#-#-#-#-#-#-#~~~~~~-#-#-#-#-#-#*# . . . . ! ! ! ! ! ! !|#",
"|# . . . . . . . . . . . . T . . . . . . . . . . . . .|# . . . . ! ! ! ! ! ! !|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . .|# . . . . ! ! ! ! ! ! !|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . .*#*#*#*# . ! ! ! ! ! ! !|#",
"|# _ _ _ _ _ _ _ _ _ _ _ . . . . . . . . . . . . . . .|# . . . . ! ! ! ! ! ! !|#",
"|# _ _ _ _ _ _ _ _ _ _ _ . . . . . . . . . . . . . . .|# . . . . ! ! ! ! ! ! !|#",
"|# _ _ _ _ _ _ _ _ _ _*# . . . . . . . . . . . . . . .*#*#*#*#*# ! ! ! ! ! ! !|#",
"|# _ _ _ _ _ _ _~~~~ _ _ . . . . . . . . . . . . . . . . . . . . ! ! ! ! ! ! !|#",
"|# _ _ _ _ _~~~~ _ _ _ _ .SS . . . . . . . . . . . . . . . . . . ! ! ! ! ! ! !|#",
"|# _ _ _~~~~ _ _ _ _ _ _*#*#*# . . .*#*#*# . . . . .*#*#*#^^^^^^*#*#*# ! ! ! !|#",
"|# _~~~~ _ _ _ _ _~~ _ _*#*#KK . . . .11 . . . . . .~~ . . . . . ! ! ! ! ! ! !|#",
"|# _ _ _ _ _ _ _ _ _ _ _*#*#KK . . . .11 . . . . . .~~ . . . . . ! ! ! ! ! ! !|#",
"*#-#-#-#-#-#-#-#-#-#KKKK-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#-#*#",
],
annotations: [
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
generalMessages: [
//
teach("Congratulations!"),
teach("Thanks for playing Heat Death"),
serious("Created by:"),
glitchy("cromo - engine & graphics lead"),
glitchy("zach - terminal & level lead"),
glitchy("zeta0134 - engine & audio lead"),
serious("For Ludum Dare 49 Game Jam"),
teach("The End"),
],
},
},
],
};
18 changes: 17 additions & 1 deletion src/levels/deadPitFull2Level.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { glitchy, serious, teach } from "./terminalTalk";

export const deadPitFull2Level: LevelDefinition = {
layout: [
Expand All @@ -7,7 +8,7 @@ export const deadPitFull2Level: LevelDefinition = {
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . T . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
Expand All @@ -29,5 +30,20 @@ export const deadPitFull2Level: LevelDefinition = {
// { symbol: ".", zoneMode: "hot" },
{ symbol: "S", flags: [LevelAnnotationFlag.spawn_player], zoneMode: "hot" },
// { symbol: "^", physicalMode: "semisolid", zoneMode: "hot" },

{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [
//
teach("Think you can make it across?"),
],
},
},
],
};
14 changes: 13 additions & 1 deletion src/levels/hotPitFull1Level.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { serious } from "./terminalTalk";

export const hotPitFull1Level: LevelDefinition = {
layout: [
Expand All @@ -16,7 +17,7 @@ export const hotPitFull1Level: LevelDefinition = {
"|# . . . ! . . . . .|#|#|# . . . . . . !|# ! . . . . .KK . . . . . . . . . . .|#",
"|# . . .SS . . . . . .|# . . . . . . . !|#|# . . . . .KK . . . . . . . . . . .|#",
"|# . . .|# . . . . . . . . . . . . . .|#|#|# . . . . . . . . . . . . . . . . .|#",
"|# . . .|# . . . . . . . . . . . . . .~~~~~~ . . . . . . . . . . . . . . . . .|#",
"|# . . .|# T . . . . . . . . . . . . .~~~~~~ . . . . . . . . . . . . . . . . .|#",
"|# . . .|# . . . . . . . . . . . . . .~~~~~~ . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . .|#|# . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . .|# . . . . _ _ _ . . . . . . . . . . .|#",
Expand All @@ -29,5 +30,16 @@ export const hotPitFull1Level: LevelDefinition = {
// { symbol: ".", zoneMode: "hot" },
{ symbol: "S", flags: [LevelAnnotationFlag.spawn_player], zoneMode: "hot" },
// { symbol: "^", physicalMode: "semisolid", zoneMode: "hot" },
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [serious("It's getting hot in here...")],
},
},
],
};
14 changes: 13 additions & 1 deletion src/levels/hotPitFull3Level.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { teach } from "./terminalTalk";

export const hotPitFull3Level: LevelDefinition = {
layout: [
Expand All @@ -13,7 +14,7 @@ export const hotPitFull3Level: LevelDefinition = {
"|#-#-#|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#-#-#|#",
"|# . . . . . . . _ _ _ _ . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . .-#-#-#-#KK . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . T . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . _ _ _ _ . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . .KK-#-#-#-# . . . . .|#",
"|# . . . . . . . . . . . . _ _ _ _ _ _ _ _ _ _ _ . . . . . . . . . . . . . . .|#",
Expand All @@ -31,5 +32,16 @@ export const hotPitFull3Level: LevelDefinition = {
flags: [LevelAnnotationFlag.spawn_player],
zoneMode: "dead",
},
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [teach("Up and over")],
},
},
],
};
19 changes: 16 additions & 3 deletions src/levels/invertedTower1Level.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { LevelDefinition } from "../models";
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { serious, teach } from "./terminalTalk";

export const invertedTower1Level: LevelDefinition = {
layout: [
Expand All @@ -13,7 +14,7 @@ export const invertedTower1Level: LevelDefinition = {
"|# . . . . . . . . . . . . . . . . . . .|# . . . . . ! ! ! ! . . . . . . . . .|#",
"*# . . . . . . . . . .-#-#-#-#-#-#-#-#-#|#-#-#-#-#-#-#-#-#-# . . . . . . . . .*#",
"|# . . . . . . . . . . . . ! ! ! ! ! ! !|# ! ! ! ! ! ! ! . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . ! ! ! ! ! ! !|# ! ! ! ! ! ! ! . . . . . . . . . . .|#",
"|# . T . . . . . . . . . . ! ! ! ! ! ! !|# ! ! ! ! ! ! ! . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . ! ! ! ! ! ! !|# ! ! ! ! ! ! ! . . . . . . . . . . .|#",
"*# . . . . . . . . . . . . ! ! !-#-#-#-#-#-#-#-#-# ! ! ! . . . . . . . . . . .*#",
"|# . . . . . . . . . . . . ! ! ! ! ! ! ! ! ! ! ! ! ! ! ! . . . . . . . . . . .|#",
Expand All @@ -25,5 +26,17 @@ export const invertedTower1Level: LevelDefinition = {
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|#?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K|#",
],
annotations: [],
annotations: [
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [serious("Think you can make it?"), teach("You can do it!")],
},
},
],
};
18 changes: 15 additions & 3 deletions src/levels/invertedTower2Level.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { LevelDefinition } from "../models";
import { LevelAnnotationFlag, LevelDefinition } from "../models";

export const invertedTower2Level: LevelDefinition = {
layout: [
Expand All @@ -15,7 +15,7 @@ export const invertedTower2Level: LevelDefinition = {
"|# . . . . . . . . . . . . . . . . .~~~~~~~~~~ ! ! . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . .|#~~~~~~|# ! ! . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . .|#~~~~~~|# ! ! . . . . . . . . . . . . . .|#",
"*# . . . . . . . . . . . . . . . . . .~~~~~~*#-#-# . . . . . . . . . . . . . .*#",
"*# . T . . . . . . . . . . . . . . . .~~~~~~*#-#-# . . . . . . . . . . . . . .*#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
Expand All @@ -25,5 +25,17 @@ export const invertedTower2Level: LevelDefinition = {
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|#?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K?K|#",
],
annotations: [],
annotations: [
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [],
},
},
],
};
19 changes: 16 additions & 3 deletions src/levels/outerGlitchMazeLevel.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import { LevelDefinition } from "../models";
import { LevelAnnotationFlag, LevelDefinition } from "../models";
import { serious } from "./terminalTalk";

export const outerGlitchMazeLevel: LevelDefinition = {
layout: [
Expand All @@ -18,12 +19,24 @@ export const outerGlitchMazeLevel: LevelDefinition = {
"|# . . .*#*#*#~~~~~~*#*#*#*#*#*#*#*#*#-#-#*#*#*#*#*#*#*#*#*#111111*#*#*# . . .|#",
"|# . . .*#*#*#~~~~~~*#*#*#*#*#*#*#*#*#~~~~*#*#*#*#*#*#*#*#*#~~~~~~*#*#*# . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . T . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . ! ! . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|#-#-#*#*#-#-#-#-#-# . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|# . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .|#",
"|#KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK|#",
],
annotations: [],
annotations: [
{
symbol: "T", // terminal top left
physicalMode: "empty",
glitchMode: "empty",
flags: [LevelAnnotationFlag.terminal],
terminal: {
conversations: [],
trackTags: [],
onSpawn: [serious("What to do here?")],
},
},
],
};
3 changes: 3 additions & 0 deletions src/main.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import { getCurrentLevel } from "./levels";
import { bigCentralGlitch } from "./levels/bigCentralGlitch";
import { blankCorridorLevel } from "./levels/blankCorridorLevel";
import { columns1Level } from "./levels/columns1Level";
import { creditsLevel } from "./levels/credits";
import { deadPitFull2Level } from "./levels/deadPitFull2Level";
import { debugLevel } from "./levels/debugLevel";
import { diagonalDash } from "./levels/diagonalDash";
Expand Down Expand Up @@ -44,6 +45,7 @@ if (os.getenv("LOCAL_LUA_DEBUGGER_VSCODE") === "1") {
// Dev level sequence
// Feel free to alter this list for testing/debugging
const LEVEL_SEQUENCE = [
creditsLevel,
bigCentralGlitch,
// hotPitFull3Level,
suddenlyFallingLevel,
Expand Down Expand Up @@ -108,6 +110,7 @@ const LEVEL_SEQUENCE = [
hotPitFull1Level,
level3,
suddenlyFallingLevel,
creditsLevel,
];
//*/

Expand Down
1 change: 1 addition & 0 deletions src/models.ts
Original file line number Diff line number Diff line change
Expand Up @@ -201,6 +201,7 @@ export interface DoubleJumpPrep {

export interface Ascending {
type: "ASCENDING";
ticksSpentAscending: number;
}

export interface Descending {
Expand Down
Loading

0 comments on commit d989b86

Please sign in to comment.