Skip to content

Commit

Permalink
: geometry-dash-lite-2024-04-01
Browse files Browse the repository at this point in the history
  • Loading branch information
octospacc committed Apr 2, 2024
1 parent e2adffb commit b98327b
Show file tree
Hide file tree
Showing 5 changed files with 77 additions and 20 deletions.
4 changes: 2 additions & 2 deletions _config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ show_hero: true
menu:
- title: "Home"
url: "/"
- title: "Configuration"
url: "/configuration/"
- title: "About"
url: "/about/"
- title: "Configuration"
url: "/configuration/"
- title: "Contact"
url: "https://github.com/GamingShitposting/SalaMuseoGames/issues/new/choose"
type: "external"
Expand Down
38 changes: 38 additions & 0 deletions _posts/2024-04-01-geometry-dash-lite.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
---
layout: "post"
title: "Geometry Dash Lite"
subtitle: "Navigate through geometric obstacles in this rhythm-based platformer."
description: "Geometry Dash Lite is a rhythm-based platformer game developed by Robert Topala, where players control a square-shaped character and navigate through various levels filled with geometric obstacles. The game features simple one-touch controls, challenging gameplay, and a dynamic soundtrack synced with the level design. Players must jump, fly, and flip their way through each level, timing their movements to the beat of the music to avoid obstacles and reach the end goal. With its addictive gameplay and level editor allowing players to create and share their own levels, Geometry Dash Lite has garnered a dedicated fanbase and remains a popular choice for gamers seeking fast-paced challenges and creative expression."
image: "https://gamingshitposting.github.io/ext-bin-1/geometrylite.io/game/geometry-dash-full-version/loading.png"
category: "games"
tags:
- "free"
- "rhythm"
- "platformer"
- "runner"
- "music"
- "precision"
- "levels"
- "reflexes"
author: "octobot"
software_data:
platform : "web"
frame_url : "https://gamingshitposting.github.io/ext-bin-1/geometrylite.io/game/geometry-dash-full-version/index.html"
---

## About the game

Geometry Dash Lite is a captivating rhythm-based platformer developed by Robert Topala, initially released in 2013. Set in a minimalist geometric world, the game offers an addictive blend of precision-based gameplay, vibrant visuals, and an electrifying soundtrack.

At its core, Geometry Dash Lite is deceptively simple: players control a square-shaped character, affectionately known as the "cube," and navigate through a series of levels filled with geometric obstacles, spikes, and traps. The objective? Reach the end of each level unscathed. However, accomplishing this task is anything but easy, as players must contend with intricate level designs that require split-second timing, precise jumps, and quick reflexes.

One of the defining features of Geometry Dash Lite is its rhythmic gameplay. Each level is meticulously crafted to synchronize with an energetic electronic soundtrack, turning the gameplay experience into a mesmerizing dance of geometry and music. Players must time their movements to the beat, jumping, flying, and flipping through obstacles in perfect harmony with the music. This synchronization adds an extra layer of challenge and immersion, transforming Geometry Dash Lite from a traditional platformer into a rhythmic extravaganza.

The game's difficulty curve is steep, offering a wide range of levels catering to players of all skill levels. From relatively straightforward introductory levels to brutally challenging gauntlets designed to test even the most seasoned players, Geometry Dash Lite offers a wealth of content to explore and conquer. Each level presents its own unique set of obstacles and hazards, keeping gameplay fresh and engaging throughout.

Since its initial release, Geometry Dash Lite has amassed a dedicated fanbase and garnered widespread acclaim for its addictive gameplay, striking visuals, and pulsating soundtrack. The game's blend of fast-paced action, rhythmic precision, and creative expression has solidified its status as a cult classic in the world of indie gaming. Whether you're a seasoned platforming veteran or a newcomer looking for a thrilling challenge, Geometry Dash Lite offers an electrifying experience that will keep you coming back for more.

## Resources

* Official page of the game: <https://play.google.com/store/apps/details?id=com.robtopx.geometryjumplite>

18 changes: 12 additions & 6 deletions assets/js/preferences.js
Original file line number Diff line number Diff line change
Expand Up @@ -18,11 +18,11 @@ function SavePrefs () {
localStorage.setItem(prefsIndex, items);
}

var storedPrefs = JSON.parse(localStorage.getItem(prefsIndex) || {});
var storedPrefs = JSON.parse(localStorage.getItem(prefsIndex)) || {};
Object.keys(Prefs).forEach(function(key){
var storedValue = storedPrefs[key];
Prefs[key].value = (storedValue !== undefined ? storedValue : Prefs[key].default);
}):
});

var PrefsSections = {
developer: { name: "Developer", visible: Prefs.developerMode.value },
Expand All @@ -31,15 +31,21 @@ var PrefsSections = {
if (ConfigurationCustomizerElem) {
var rootElem = ConfigurationCustomizerElem;
rootElem.innerHTML = null;
Object.keys(Object.assign({ default: null }, PrefsSections)).forEach(function(key){
var sectionElem = document.createElement('ul');
sectionElem.dataset.section = key;
sectionElem.style.display = (PrefsSections[key] && !PrefsSections[key].visible ? 'none' : '');
rootElem.appendChild(sectionElem);
});
Object.keys(Prefs).forEach(function(key){
// TODO: finish HTML
// TODO: finish HTML
var pref = Prefs[key];
var prefElem = document.createElement('p');
prefElem.innerHTML += `<label><input type="checkbox" ${pref.value && 'checked'} disabled/> ${pref.name}</label><br/><small>${pref.summary}</small>`;
rootElem.appendChild(prefElem);
prefElem.innerHTML += `<label><input type="checkbox" ${pref.value && 'checked'} disabled/> ${pref.name}</label><br/><small>${pref.summary || ''}</small>`;
rootElem.querySelector(`[data-section="${pref.section || 'default'}"]`).appendChild(prefElem);
});
}

window.SalaMuseoGames.Prefs = Prefs;

})();
})();
10 changes: 6 additions & 4 deletions assets/js/pwa.js
Original file line number Diff line number Diff line change
@@ -1,18 +1,20 @@
(function(){

return // TODO finish

var Prefs = SalaMuseoGames.Prefs;

if (Prefs.pwaManifests.value) {
var manifestData;
// TODO add site manifest on global pages
if (Prefs.softwarePwaManifests.value /* && onGamePage */) {
if (Prefs.softwarePwaManifests.value && SalaMuseoGames.page.software_data) {
// TODO add individual manifests on games pages
} else {
// TODO add site manifest on global pages
}
var manifestElem = document.createElement('link');
manifestElem.rel = 'manifest';
manifestElem.href = '' + encodeURIComponent(JSON.stringify(manifestData));
manifestElem.href = 'data:application/manifest+json;utf8,' + encodeURIComponent(JSON.stringify(manifestData));
document.head.appendChild(manifestElem);
}

})();
})();
27 changes: 19 additions & 8 deletions assets/js/software-embed.js
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,25 @@
var core = data.core;
var backend = data.backend;
var romUrl = (data.rom_url || 'https://gamingshitposting.github.io/ext-bin-1/roms/'+data.rom_index+'.7z');

function diyEmbedHtml (frameUrl) { return `
<button onclick="(function(ctx){
ctx.parentElement.scrollIntoView();
ctx.parentElement.querySelector('iframe#software-embed-frame').focus();
})(this)">Focus</button>
<button onclick="(function(ctx){
ctx.parentElement.querySelector('iframe#software-embed-frame').requestFullscreen();
})(this)">Fullscreen</button>
<iframe id="software-embed-frame" src="${frameUrl}"></iframe>
` }

// set any overrides if specified ...
// TODO set any overrides if specified ...

if (platform === 'web') {
thisElement.outerHTML = diyEmbedHtml(data.frame_url);
}

else
switch (backend)
{
default:
Expand All @@ -34,12 +50,7 @@
else if (platform === 'dos') {
frameUrl = `https://gamingshitposting.github.io/ext-bin-1/dos.zone/${data.rom_index}/index.html`;
}
thisElement.outerHTML = `
<button onclick="(function(ctx){
ctx.parentElement.scrollIntoView();
ctx.parentElement.querySelector('iframe#software-embed-frame').focus();
})(this)">Focus</button>
<iframe id="software-embed-frame" src="${frameUrl}"></iframe>`;
thisElement.outerHTML = diyEmbedHtml(frameUrl);
break;
}
})();
})();

0 comments on commit b98327b

Please sign in to comment.