diff --git a/.eleventy.js b/.eleventy.js
index bd53224..673656e 100644
--- a/.eleventy.js
+++ b/.eleventy.js
@@ -57,6 +57,56 @@ export default async function (eleventyConfig) {
return `${text}`;
});
+ eleventyConfig.addPairedShortcode("brand", function (content, attrClass = 'brand', direction = 'first') {
+ const logo = `
+
+
+`;
+ let output = '';
+ switch (direction) {
+ case 'first':
+ output = logo + `${content}`;
+ break;
+ case 'last':
+ output = `${content}` + logo;
+ break;
+ }
+
+ return `
` + output + `
`;
+ });
+
eleventyConfig.addPassthroughCopy({'source/art/images': 'art'});
eleventyConfig.addPassthroughCopy({'source/art/favicons/**/*.+(ico|png|svg)': '.'});
diff --git a/source/code/hippie/app.js b/source/code/hippie/app.js
index d5f077f..f0028a5 100644
--- a/source/code/hippie/app.js
+++ b/source/code/hippie/app.js
@@ -539,6 +539,11 @@ function mapRange(value, inMin, inMax, outMin, outMax, reverse = false, clamp =
return mapped;
}
+// Source - https://stackoverflow.com/a/47480429
+// Posted by Etienne Martin, modified by community. See post 'Timeline' for change history
+// Retrieved 2026-03-08, License - CC BY-SA 4.0
+const delay = ms => new Promise(res => setTimeout(res, ms));
+
// CONCEPTS
// NOTE: Benutzt private Zuweisungen
diff --git a/source/code/intro.js b/source/code/intro.js
index bff5a87..68dcda0 100644
--- a/source/code/intro.js
+++ b/source/code/intro.js
@@ -25,7 +25,7 @@ class UI {
msgNo: 'No agreement today.'
}
};
- this.intro = document.getElementById('intro');
+ this.intro = document.getElementById('init');
this.agreement = this.steps.agreement.element;
this.hint = {
element: document.getElementById('hint'),
@@ -61,7 +61,7 @@ class UI {
} else {
reject('No intro available.');
}
- })
+ });
}
showHint() {
@@ -100,7 +100,7 @@ class UI {
} else {
reject();
}
- })
+ });
}
init() {
@@ -119,7 +119,7 @@ function init() {
// Set all steps to not receive pointer events
document.querySelectorAll('.step').forEach(element => {
console.log(element);
-
+
element.style.pointerEvents = 'none';
});
@@ -158,7 +158,7 @@ function showIntro() {
reject('No intro available.');
}
- })
+ });
}
function showAgreement() {
@@ -197,7 +197,7 @@ function showAgreement() {
resolve(steps.agreement.msgOut);
});
}
- })
+ });
}
function showIdle() {
@@ -212,16 +212,24 @@ function showIdle() {
el.classList.replace('op_hide', 'op_show');
el.style.pointerEvents = '';
- el.addEventListener('click', idleStart, false);
-
- resolve('Idle.');
+ el.addEventListener('contextmenu', (event) => {
+ event.preventDefault();
+ });
+ el.addEventListener('click', (event) => {
+ if (checkButtonAndTarget(event, event.target)) {
+ console.log('OK go', event.target);
+ resolve('Idle fin.');
+ } else {
+ event.preventDefault();
+ }
+ }, false);
} else {
document.removeEventListener('mouseleave', idleStart);
document.removeEventListener('mouseenter', idleStop);
reject();
}
- })
+ });
}
function loadCore() {
@@ -289,9 +297,9 @@ function idleStop() {
/**
* Blendet einen Schritt aus.
- *
- * @param {*} e
- * @returns
+ *
+ * @param {*} e
+ * @returns
*/
function stepHandler(e) {
const el = e.target;
@@ -303,8 +311,8 @@ function stepHandler(e) {
console.info(msg);
el.removeEventListener('transitionend', endListener);
-
+
resolve(msg);
});
- })
+ });
}
\ No newline at end of file
diff --git a/source/screens/demo/components.liquid b/source/screens/demo/components.liquid
index 4f4dd2b..7070190 100644
--- a/source/screens/demo/components.liquid
+++ b/source/screens/demo/components.liquid
@@ -151,8 +151,8 @@ tags:
Mehr Abstand und
mit Unterstrichen.
- ul.list_link>(li>a)*2
- ul.link>(li>a)*2
+
-
Mit
diff --git a/source/screens/demo/examples/game.liquid b/source/screens/demo/examples/game.liquid
deleted file mode 100644
index 734a5a6..0000000
--- a/source/screens/demo/examples/game.liquid
+++ /dev/null
@@ -1,25 +0,0 @@
----
-title: Game - TFW
-tags:
-- demoExample
-- gameExample
----
-{% assign bodyClass = 'body_game' -%}
-{% layout 'hippie/simple.liquid' %}
-
-{% block body %}
-
-
-
-{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/examples/game/index.liquid b/source/screens/demo/examples/game/index.liquid
new file mode 100644
index 0000000..d939850
--- /dev/null
+++ b/source/screens/demo/examples/game/index.liquid
@@ -0,0 +1,24 @@
+---
+title: Game
+tags:
+- demoExample
+- index
+---
+{% layout 'hippie/simple.liquid' %}
+
+{% block title %}{{ title }}{% endblock %}
+
+{% block body %}
+
+{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/examples/game/intro.liquid b/source/screens/demo/examples/game/intro.liquid
new file mode 100644
index 0000000..3c4710c
--- /dev/null
+++ b/source/screens/demo/examples/game/intro.liquid
@@ -0,0 +1,138 @@
+---
+title: Intro
+tags:
+- game
+---
+
+{% assign bodyClass = 'body_intro' -%}
+{% layout 'hippie/app.liquid' %}
+
+{% block body %}
+
+
+
+
Hold
+ space
+ to skip.
+
+ {% brand 'brand' %}
+
Marke
+ {% endbrand %}
+
Powered by
+
+ - Vendor
+ - IDE
+ - Engine
+
+
+
+
Agreement
+
This needs to be seen and acknowledged.
So an interaction must be made to continue.
+
+
+
+
Hello World!
+
Only left mouse click or any key
+
+{% endblock %}
+
+{%- block script %}
+{{ block.super -}}
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/examples/game/menu.liquid b/source/screens/demo/examples/game/menu.liquid
new file mode 100644
index 0000000..7852bdb
--- /dev/null
+++ b/source/screens/demo/examples/game/menu.liquid
@@ -0,0 +1,29 @@
+---
+title: Menu
+tags:
+- game
+---
+{% assign bodyClass = 'body_game' -%}
+{% layout 'hippie/simple.liquid' %}
+
+{% block body %}
+
+
+
+
+{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/pages/hello.md b/source/screens/demo/examples/hello.md
similarity index 76%
rename from source/screens/demo/pages/hello.md
rename to source/screens/demo/examples/hello.md
index 09a9406..9bd4c71 100644
--- a/source/screens/demo/pages/hello.md
+++ b/source/screens/demo/examples/hello.md
@@ -1,6 +1,8 @@
---
title: "Hello World"
layout: hippie/world.liquid
+tags:
+- demoExample
---
# {{ title }}
diff --git a/source/screens/demo/examples/intro.njk b/source/screens/demo/examples/intro.njk
deleted file mode 100644
index 548cc3f..0000000
--- a/source/screens/demo/examples/intro.njk
+++ /dev/null
@@ -1,138 +0,0 @@
----
-title: Intro
-tags:
- - demoExample
----
-
-{% set pageId = "init" %}
-{% set bodyClass = "body_intro" %}
-
-{% extends "hippie/_app_frame.njk" %}
-{% import "hippie/macros/_placeholder.njk" as ph %}
-
-{% block body %}
-
-
-
-
Hold
- space
- to skip.
-
- {{ ph.brand('brand') }}
-
Powered by
-
- - Vendor
- - IDE
- - Engine
-
-
-
-
Agreement
-
This needs to be seen and acknowledged.
So an interaction must be made to continue.
-
-
-
-
Hello World!
-
Only left mouse click or any key
-
-{% endblock %}
-
-{%- block script %}
- {{ super() }}
-
-
-{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/examples/ui/index.liquid b/source/screens/demo/examples/ui/index.liquid
index 5952f16..0e6dcc8 100644
--- a/source/screens/demo/examples/ui/index.liquid
+++ b/source/screens/demo/examples/ui/index.liquid
@@ -12,7 +12,7 @@ tags:
- Page
-
- {% assign pagesByTitle = collections.demoPage | sort: 'data.title' %}
+
+
+ Page
+
+ {% assign pagesByTitle = collections.demoPage | sort: 'data.title' %}
- {% for link in pagesByTitle %}
- -
- {{ link.data.title }}
-
- {% endfor %}
-
- Example
-
+ {% for link in pagesByTitle %}
+ -
+ {{ link.data.title }}
+
+ {% endfor %}
+
+
+
+
{% endblock %}
\ No newline at end of file
diff --git a/source/screens/demo/layouts.liquid b/source/screens/demo/layouts.liquid
index 500e902..6a41fe5 100644
--- a/source/screens/demo/layouts.liquid
+++ b/source/screens/demo/layouts.liquid
@@ -231,9 +231,9 @@ tags:
hr.dotted.space_even_fourth
ul
- nav>ul.list_link>(li>a)+li>a>img+span
+ nav>ul.link>(li>a)+li>a>img+span