diff --git a/.gitignore b/.gitignore deleted file mode 100644 index 715c8dc..0000000 --- a/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -.sass-cache -terminal/.git -terminal/.sass-cache -terminal/.gitignore diff --git a/.nojekyll b/.nojekyll deleted file mode 100644 index e69de29..0000000 diff --git a/CNAME b/CNAME deleted file mode 100644 index 663bef7..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -teasca.de \ No newline at end of file diff --git a/README.md b/README.md deleted file mode 100644 index 923b2ec..0000000 --- a/README.md +++ /dev/null @@ -1,31 +0,0 @@ - -[Teasca.de](https://teasca.de/) -=============================== - -My website, shown on [teasca.de](https://teasca.de/), is a piece of open souce. -It is a piece of art, which consists of markdown files (found in [src](/src)) -which are then built into static webpages using python 3. - -Building? ---------- -Yes, you need to build this website in order for it to be up to date to the markdowns. -For that you need a few dependencies: -- Python 3.x -- Markdown (available via python PIP) - -Now if you have them installed, simply run `python build.py` and it should build itself. -AFter this you can preview the page via `index.html` - -Copying? --------- -As far as I'm concerned you can use this for educational purposes all you want -(and you can, if you want to, even take my whole build and just make your own website using my buildscript, -but do change the CSS and the actual content. - -So shortly, I know this will sound harsh, but my website is licensed under.. - -Creative Commons License
- -**but** worry not! Like I said, you can use my buildscript (build.py) as you like so it's instead licensed under - -Creative Commons License
diff --git a/blog/index.html b/blog/index.html deleted file mode 100644 index 92d918b..0000000 --- a/blog/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | blog - - -
-
- -
- -
- -
-

Teascade

-

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

-
    -
  • Game dev
  • -
  • Artist
  • -
  • Philosopher
  • -
-

And a few things I am not;

-
    -
  • A normal person
  • -
-

Assuming I've totally caught your interest (for now at least), how about you check out my games, -my blog, and if you want to get really invested, you should check out some of the -following things:

- -

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

-

(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)

-
-
-

Games

-

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical).
-Once I release them I'll make sure to post them here and on my itch.io!

-

Saltosion

-

I have this organization though (See GitHub!), which I -sometimes use when collaborating games with other people.
-The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

-

-
-
-

Blog

-

Welcome to my weird and messy blog!
-Also remember to check out my Twitter @Teascade

- -
-
-

Saltosion

-

Saltosion is an organization founded by me, Teascade -which I sometimes use, when collaborating with other devs and making -some art (and games sometimes)

-

Saltosion also has a -Selfhosted Git, GitHub and an Itch.io so check them out!

-

Here's also all the games made by Saltosion!

-

-

By Teascade and Excitedneon

-
-
- -
-
-
- - diff --git a/blogposts/021116_2346_first.html b/blogposts/021116_2346_first.html deleted file mode 100644 index f2c4431..0000000 --- a/blogposts/021116_2346_first.html +++ /dev/null @@ -1,2 +0,0 @@ -

First blogpost!

-

Test! This is just a test blogpost!

\ No newline at end of file diff --git a/blogposts/060813_0000_creation.html b/blogposts/060813_0000_creation.html deleted file mode 100644 index 0ac0b72..0000000 --- a/blogposts/060813_0000_creation.html +++ /dev/null @@ -1,4 +0,0 @@ -

The Creation

-

The Blog was created, but not yet quite ready, the blog still needs some ‘editing’ before given to publicity, but soon you will see it!

-

Today Allexit’s Magical Modpack was released to publicity ( click here ) and is built up from LOTS and LOTS of mods! -it will soon be updated too quite a lot of times for reasons such as it does not support custom launcher nor ‘easy installation’ yet..

\ No newline at end of file diff --git a/blogposts/230114_0000_january.html b/blogposts/230114_0000_january.html deleted file mode 100644 index df471a5..0000000 --- a/blogposts/230114_0000_january.html +++ /dev/null @@ -1,6 +0,0 @@ -

January update

-

so, I kinda forgot about the thing where I was supposed to post a post every week, but once every month is good too.. right …? Yeah I admit I screwed up, but I’ll make it up to you, I started to learn jMonkeyEngine in the side of doing Solid Kingdom (still thinking another name for it), wishing I could once make a 3D game (lol).

-

I have this one idea I’m going to make with jME, but I’ll keep it a secret, I’ll tell you guys if it catches on, but it’s supposed to be release ready about 1.4.14 (see already why?), but it can strech up to August, since that’s when the Summer Assembly starts. I’ll be sending the game to the game dev comp this year, hoping for some attention and just for fun.

-
-

Later lookback on the post;

-

This post is one of the draft posts I started to make in this time, but somehow got lost, I finally found one. This wa ssupposed to be posted 12.1.2014, but anyways this project I’m talking about here has been like priority #2 for quite a long time now, I haven’t forgotten it but I rather work on Solid Kingdom than this.

\ No newline at end of file diff --git a/blogposts/281016_0000_grand.html b/blogposts/281016_0000_grand.html deleted file mode 100644 index d9c2cda..0000000 --- a/blogposts/281016_0000_grand.html +++ /dev/null @@ -1,5 +0,0 @@ -

Renovated grand opening

-

Hello, so as many of you probably know, I haven’t posted in a remarkably long time. I can not answer your fervent question, weather it’s about to change or not, but I’ve decided to take a complete new angle on this blog.

-

Now this blog is not just for my projects and programming stuff, but it’s for pretty much anything that I think of. Imagine twitter, but longer.

-

I’ll now start posting again some updates about a few projects I might have etc. but along with that I’ll be posting some rantings that might be philosophical, of public opinion, or some random criticism.

-

Till’ we meet again, have a jolly gay day.

\ No newline at end of file diff --git a/blogposts/blogposts.json b/blogposts/blogposts.json deleted file mode 100644 index 21f7889..0000000 --- a/blogposts/blogposts.json +++ /dev/null @@ -1 +0,0 @@ -window.blogpostDataStr = '[ { "title": "First blogpost!", "source": "021116_2346_first.html", "time": 1478123391045 }, { "title": "How the “best years of my life” are quickly becoming the worst", "source": "060416_0000_bestyears.html", "time": 1459904400000 }, { "title": "The matrix is (uncertainly) real!", "source": "311015_0000_matrix.html", "time": 1440896400000 }, { "title": "Renovated grand opening", "source": "281016_0000_grand.html", "time": 1440723600000 }, { "title": "January update", "source": "230114_0000_january.html", "time": 1390442400001 }, { "title": "Updates updates..", "source": "230114_0000_updates.html", "time": 1390442400000 }, { "title": "It’s been a long time, isn’t it?", "source": "161213_0000_longtime.html", "time": 1387159200000 }, { "title": "‘Much’ going on", "source": "220913_0000_much.html", "time": 1379811600000 }, { "title": "My absence", "source": "160813_0000_absence.html", "time": 1376614800000 }, { "title": "My first meaningful post", "source": "060813_0000_meaningful.html", "time": 1375750800001 }, { "title": "The Creation", "source": "060813_0000_creation.html", "time": 1375750800000 }]'; \ No newline at end of file diff --git a/blogtext/index.html b/blogtext/index.html deleted file mode 100644 index 5f7506e..0000000 --- a/blogtext/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | blogtext - - -
-
- -
- -
- -
-

Teascade

-

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

-
    -
  • Game dev
  • -
  • Artist
  • -
  • Philosopher
  • -
-

And a few things I am not;

-
    -
  • A normal person
  • -
-

Assuming I've totally caught your interest (for now at least), how about you check out my games, -my blog, and if you want to get really invested, you should check out some of the -following things:

- -

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

-

(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)

-
-
-

Games

-

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical).
-Once I release them I'll make sure to post them here and on my itch.io!

-

Saltosion

-

I have this organization though (See GitHub!), which I -sometimes use when collaborating games with other people.
-The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

-

-
-
-

Blog

-

Welcome to my weird and messy blog!
-Also remember to check out my Twitter @Teascade

- -
-
-

Saltosion

-

Saltosion is an organization founded by me, Teascade -which I sometimes use, when collaborating with other devs and making -some art (and games sometimes)

-

Saltosion also has a -Selfhosted Git, GitHub and an Itch.io so check them out!

-

Here's also all the games made by Saltosion!

-

-

By Teascade and Excitedneon

-
-
- -
-
-
- - diff --git a/build.py b/build.py deleted file mode 100644 index d972061..0000000 --- a/build.py +++ /dev/null @@ -1,125 +0,0 @@ -# -*- coding: utf-8 -*- - -import markdown -import glob -import re - -def generate_template(): - - content_file = open('src/template.html', 'r', encoding="utf-8") - content = content_file.read() - content_file.close() - - md_list = glob.glob("src/*.md") - - for md in md_list: - f = open(md, 'r', encoding="utf-8") - file_content = f.read() - f.close() - - name = md[4:][:len(md)-7] - content = content.replace("$" + name + "_content$", markdown.markdown(file_content, output_format="html5")) - - return content - -def generate_page(template, page): - content = template.replace("$page$", page); - - rel = { - "about": "/", - "games": "/games", - "blog": "/blog", - "saltosion": "/saltosion", - "blogtext": "/" - } - - md_list = glob.glob("src/*.md") - md_list.append("blogtext") - - for md in md_list: - md = md.replace("\\", "/") - name = md.split("src/")[-1].split(".md")[0] - if page != name: - content = content.replace("$relative_" + name + "$", rel[name]) - content = content.replace("$" + name + "_class$", 'class="hiddenarea"') - content = content.replace("$" + name + "_btn_class$", '') - else: - content = content.replace("$relative_" + name + "$", "#") - content = content.replace("$" + name + "_class$", "") - content = content.replace("$" + name + "_btn_class$", 'class="active"') - - return content; - -def build_blogposts(): - blogposts = glob.glob("src/blogposts/*.md") - for path in blogposts: - with open(path, "r", encoding="utf-8") as f: - with open(path.replace("src/blogposts", "blogposts").replace(".md", ".html"), "w+", encoding="utf-8") as f2: - f2.write(markdown.markdown(f.read(), output_format="html5")) - - with open("src/blogposts/blogposts.json", "r", encoding="utf-8") as f: - with open("blogposts/blogposts.json", "w+", encoding="utf-8") as f2: - f2.write("window.blogpostDataStr = '" + f.read().replace("\n", "") + "';") - -def apply_custom_markdown(markdown): - itch_embed_template = '' - - regex = re.compile(r"\[itch\$[0-9]*\]") - - while regex.search(markdown) is not None: - search = regex.search(markdown) - split = [markdown[:search.start()], markdown[search.end():]] - - curr_id = int(markdown[(search.start() + 6):][:(search.end() - search.start() - 7)]) - - markdown = split[0] + itch_embed_template.replace("$id$", str(curr_id)) + split[1] - - link_template = '$text$' - - regex = re.compile(r"\[[ -ö]*\]\$\([A-z0-9,./]*\)") - - while regex.search(markdown, re.IGNORECASE) is not None: - search = regex.search(markdown) - split = [markdown[:search.start()], markdown[search.end():]] - - parts = markdown[(search.start() + 1):][:(search.end() - search.start() - 2)].split("]$(") - - markdown = split[0] + link_template.replace("$text$", parts[0]).replace("$link$", parts[1]) + split[1] - - return markdown - -def generate(): - print("Building blogposts..") - build_blogposts() - print("Done!\n") - - print("Generating template..") - template = generate_template() - print("Done!\n") - - print("Applying custom markdown..") - - template = apply_custom_markdown(template) - - print("Done!\n") - - print("Generating pages..") - with open('index.html', 'w+', encoding="utf-8") as f: - f.write(generate_page(template, "about")) - print(" About (index.html) done!") - with open('games/index.html', 'w+', encoding="utf-8") as f: - f.write(generate_page(template, "games")) - print(" Games done!") - with open('blog/index.html', 'w+', encoding="utf-8") as f: - f.write(generate_page(template, "blog")) - print(" Blog done!") - with open('blogtext/index.html', 'w+', encoding="utf-8") as f: - f.write(generate_page(template, "blogtext")) - print(" Blogtext done!") - with open('saltosion/index.html', 'w+', encoding="utf-8") as f: - f.write(generate_page(template, "saltosion")) - print(" Saltosion done!") - - print("Done!\n") - -generate() diff --git a/config.toml b/config.toml new file mode 100644 index 0000000..d493d39 --- /dev/null +++ b/config.toml @@ -0,0 +1,49 @@ +[website] +website_name = "Teascade" +built_pages = ["src/about.toml", "src/games.toml", "src/saltosion.toml", "src/blog.toml" +, "src/blogposts/beenalongtime.toml", "src/blogposts/bestworstyears.toml", "src/blogposts/creation.toml" +, "src/blogposts/firstblogpost.toml", "src/blogposts/firstmeaningful.toml", "src/blogposts/januaryupdate.toml" +, "src/blogposts/matrixisreal.toml", "src/blogposts/muchgoingon.toml", "src/blogposts/myabsence.toml" +, "src/blogposts/renovatedgrandopening.toml", "src/blogposts/updatesupdates.toml"] +use_default_css = true +use_default_js = true +javascript = ["/js/loadbar.js"] +css = ["/css/loadbar.css", "/css/custom.css", "/css/blogposts.css"] +favicon = "/img/favicon.png" +before_navbar_url = "src/injections/before_navbar.html" +#before_content_url = "test_page/resources/before_content.html" +after_content_url = "src/injections/after_content.html" + +#charset = "utf-8" +#mobile_viewport = true +#meta_description = true +#meta_og = true + +#output = "public" + +[google] +google_robots = "all" +google_site_verification = "xMTesqfhCjQW48l2C5bOqYK6HsOXJORfF4gW_tkjBMo" + +[twitter] +twitter_site = "@teascade" +twitter_creator = "@teascade" + +[navbar] +items = ["about", "games", "blog"] + + [navbar.item.about] + title = "About" + link = "/" + + [navbar.item.games] + title = "Games" + link = "/games" + + [navbar.item.blog] + title = "Blog" + link = "/blog" + +[resource.test] +source = "src/resources" +destination = "" \ No newline at end of file diff --git a/css/main.css b/css/main.css deleted file mode 100644 index fd64100..0000000 --- a/css/main.css +++ /dev/null @@ -1,142 +0,0 @@ -body, html { - background-color: #1f1f1f; - font-family: helvetica, sans-serif; - width: 100%; - height: 100%; - margin: 0; - padding: 0; } - -@media (max-width: 800px) { - .cont { - display: block !important; - width: 100%; } - .cont .teacup { - height: auto !important; } - .cont .teacup img { - margin-right: 20%; - width: 40% !important; - height: auto !important; - padding-top: 1em; - padding-bottom: 1em; } - .cont .stuffarea { - margin-left: 10%; - padding-right: 0 !important; - width: 80% !important; - height: auto !important; } - .cont .stuffarea ul.navbar { - padding: 0 !important; - padding-left: 0.5em !important; } } -.cont { - display: inline-flex; - flex-direction: row; - width: 100%; - height: 100%; } - .cont .teacup { - flex: auto; - height: 100%; - text-align: center; - display: flex; - justify-content: center; - align-items: center; - background-color: #1b1b1b; } - .cont .teacup img { - width: 75%; - max-height: 100%; - height: auto; } - .cont .stuffarea { - width: 45%; - height: 100%; - padding-left: 5%; - padding-right: 5%; - margin-bottom: 10%; - overflow-y: auto; } - .cont .stuffarea .hiddenarea { - visibility: hidden; - height: 0; - width: 0; - overflow: hidden; - margin: 0; - padding: 0; } - .cont .stuffarea div { - margin: 0; - padding: 0; - padding-bottom: 15%; } - .cont .stuffarea h1 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h2 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h3 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h4 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h5 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h6 { - margin: 0; - color: #ff0091; } - .cont .stuffarea h2.blogtitle { - padding: 0.5em; - color: #ff0091; - transition: 0.2s; - margin: 0; } - .cont .stuffarea h2.blogtitle:hover { - cursor: pointer; - background-color: #191919; - transition: 0.2s; } - .cont .stuffarea a { - color: #ff0091; } - .cont .stuffarea .timestamp { - color: #636363; - vertical-align: middle; - font-size: 15px; } - .cont .stuffarea p { - color: #fff; } - .cont .stuffarea li { - color: #fff; } - .cont .stuffarea ul.navbar { - padding-left: 1em; - list-style: none; - white-space: nowrap; - padding-bottom: 1em; } - .cont .stuffarea ul.navbar a:focus { - outline: none; - font-style: none; - border: none; } - .cont .stuffarea ul.navbar li { - display: inline-block; - padding: 0.5em; - background-color: #1f1f1f; - margin: -3px; - transition: 0.2s; - color: #dddddd; - border-right: 2px solid #303030; - transform: skewX(-20deg); } - .cont .stuffarea ul.navbar li .button { - transform: skewX(20deg); } - .cont .stuffarea ul.navbar li:first-of-type { - border-left: 2px solid #303030; } - .cont .stuffarea ul.navbar li:hover { - background-color: #303030; - transition: 0.2s; - cursor: pointer; } - .cont .stuffarea ul.navbar li.active { - background-color: #252525; } - .cont .stuffarea ul.navbar li.active:hover { - background-color: #363636; } - .cont .stuffarea iframe.itch-embedded { - width: 100%; - max-width: 700px; } - .cont .stuffarea .js-link { - text-decoration: underline; } - .cont .stuffarea .js-link:hover { - cursor: pointer; } - -noscript { - color: #fff; } - -/*# sourceMappingURL=main.css.map */ diff --git a/css/main.css.map b/css/main.css.map deleted file mode 100644 index 2225d48..0000000 --- a/css/main.css.map +++ /dev/null @@ -1,7 +0,0 @@ -{ -"version": 3, -"mappings": "AAIA,UAAW;EACR,gBAAgB,EAHZ,OAAO;EAIX,WAAW,EAAE,qBAAqB;EAClC,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EACZ,MAAM,EAAE,CAAC;EACT,OAAO,EAAE,CAAC;;AAGb,yBAA0B;EACvB,KAAM;IACH,OAAO,EAAE,gBAAgB;IACzB,KAAK,EAAE,IAAI;IAEX,aAAQ;MACL,MAAM,EAAE,eAAe;MAEvB,iBAAI;QACD,YAAY,EAAE,GAAG;QACjB,KAAK,EAAE,cAAc;QACrB,MAAM,EAAE,eAAe;QACvB,WAAW,EAAE,GAAG;QAChB,cAAc,EAAE,GAAG;IAIzB,gBAAW;MACR,WAAW,EAAE,GAAG;MAChB,aAAa,EAAE,YAAY;MAC3B,KAAK,EAAE,cAAc;MACrB,MAAM,EAAE,eAAe;MAEvB,0BAAU;QACP,OAAO,EAAE,YAAY;QACrB,YAAY,EAAE,gBAAgB;AAM1C,KAAM;EACH,OAAO,EAAE,WAAW;EACpB,cAAc,EAAE,GAAG;EACnB,KAAK,EAAE,IAAI;EACX,MAAM,EAAE,IAAI;EAEZ,aAAQ;IACL,IAAI,EAAE,IAAI;IACV,MAAM,EAAE,IAAI;IACZ,UAAU,EAAE,MAAM;IAClB,OAAO,EAAC,IAAI;IACZ,eAAe,EAAC,MAAM;IACtB,WAAW,EAAC,MAAM;IAClB,gBAAgB,EAAE,OAAe;IAEjC,iBAAI;MACD,KAAK,EAAE,GAAG;MACV,UAAU,EAAE,IAAI;MAChB,MAAM,EAAE,IAAI;EAKlB,gBAAW;IACR,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,IAAI;IACZ,YAAY,EAAE,EAAE;IAChB,aAAa,EAAE,EAAE;IACjB,aAAa,EAAE,GAAG;IAClB,UAAU,EAAE,IAAI;IAEhB,4BAAY;MACT,UAAU,EAAE,MAAM;MAClB,MAAM,EAAE,CAAC;MACT,KAAK,EAAE,CAAC;MACR,QAAQ,EAAE,MAAM;MAChB,MAAM,EAAE,CAAC;MACT,OAAO,EAAE,CAAC;IAGb,oBAAI;MACD,MAAM,EAAE,CAAC;MACT,OAAO,EAAE,CAAC;MACV,cAAc,EAAE,GAAG;IAKnB,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IA4FL,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IA4FL,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IA4FL,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IA4FL,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IA4FL,mBAAO;MACJ,MAAM,EAAE,CAAC;MACT,KAAK,EA9FV,OAAO;IAkGR,6BAAa;MACV,OAAO,EAAE,KAAK;MACd,KAAK,EApGP,OAAO;MAqGL,UAAU,EAAE,IAAI;MAChB,MAAM,EAAE,CAAC;IAGZ,mCAAmB;MAChB,MAAM,EAAE,OAAO;MACf,gBAAgB,EAAE,OAAe;MACjC,UAAU,EAAE,IAAI;IAGnB,kBAAE;MACC,KAAK,EAhHP,OAAO;IAmHR,2BAAW;MACR,KAAK,EAAE,OAAY;MACnB,cAAc,EAAE,MAAM;MACtB,SAAS,EAAE,IAAI;IAGlB,kBAAE;MACC,KAAK,EAzHJ,IAAI;IA4HR,mBAAG;MACA,KAAK,EA7HJ,IAAI;IAgIR,0BAAU;MAEP,YAAY,EAAE,GAAG;MACjB,UAAU,EAAE,IAAI;MAChB,WAAW,EAAE,MAAM;MACnB,cAAc,EAAE,GAAG;MAEnB,kCAAQ;QACL,OAAO,EAAE,IAAI;QACb,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,IAAI;MAGf,6BAAG;QACA,OAAO,EAAE,YAAY;QACrB,OAAO,EAAE,KAAK;QACd,gBAAgB,EA/IrB,OAAO;QAgJF,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,IAAI;QAChB,KAAK,EAAE,OAAe;QACtB,YAAY,EAAE,iBAAsB;QACpC,SAAS,EAAE,aAAa;QAExB,qCAAQ;UACL,SAAS,EAAE,YAAY;MAG7B,2CAAiB;QACd,WAAW,EAAE,iBAAsB;MAEtC,mCAAS;QACN,gBAAgB,EAAE,OAAY;QAC9B,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,OAAO;MAGlB,oCAAU;QACP,gBAAgB,EAAE,OAAe;MAGpC,0CAAgB;QACb,gBAAgB,EAAE,OAAsB;IAI9C,qCAAqB;MAClB,KAAK,EAAE,IAAI;MACX,SAAS,EAAE,KAAK;IAGnB,yBAAS;MACN,eAAe,EAAE,SAAS;IAG7B,+BAAe;MACZ,MAAM,EAAE,OAAO;;AAKxB,QAAS;EACN,KAAK,EA7LE,IAAI", -"sources": ["../src/scss/main.scss"], -"names": [], -"file": "main.css" -} \ No newline at end of file diff --git a/favicon.png b/favicon.png deleted file mode 100644 index b0a4031..0000000 Binary files a/favicon.png and /dev/null differ diff --git a/games/index.html b/games/index.html deleted file mode 100644 index 848445b..0000000 --- a/games/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | games - - -
-
- -
- -
- -
-

Teascade

-

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

-
    -
  • Game dev
  • -
  • Artist
  • -
  • Philosopher
  • -
-

And a few things I am not;

-
    -
  • A normal person
  • -
-

Assuming I've totally caught your interest (for now at least), how about you check out my games, -my blog, and if you want to get really invested, you should check out some of the -following things:

- -

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

-

(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)

-
-
-

Games

-

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical).
-Once I release them I'll make sure to post them here and on my itch.io!

-

Saltosion

-

I have this organization though (See GitHub!), which I -sometimes use when collaborating games with other people.
-The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

-

-
-
-

Blog

-

Welcome to my weird and messy blog!
-Also remember to check out my Twitter @Teascade

- -
-
-

Saltosion

-

Saltosion is an organization founded by me, Teascade -which I sometimes use, when collaborating with other devs and making -some art (and games sometimes)

-

Saltosion also has a -Selfhosted Git, GitHub and an Itch.io so check them out!

-

Here's also all the games made by Saltosion!

-

-

By Teascade and Excitedneon

-
-
- -
-
-
- - diff --git a/generator b/generator new file mode 100755 index 0000000..7ac668c Binary files /dev/null and b/generator differ diff --git a/index.html b/index.html deleted file mode 100644 index 7a89237..0000000 --- a/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | about - - -
-
- -
- -
- -
-

Teascade

-

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

-
    -
  • Game dev
  • -
  • Artist
  • -
  • Philosopher
  • -
-

And a few things I am not;

-
    -
  • A normal person
  • -
-

Assuming I've totally caught your interest (for now at least), how about you check out my games, -my blog, and if you want to get really invested, you should check out some of the -following things:

- -

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

-

(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)

-
-
-

Games

-

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical).
-Once I release them I'll make sure to post them here and on my itch.io!

-

Saltosion

-

I have this organization though (See GitHub!), which I -sometimes use when collaborating games with other people.
-The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

-

-
-
-

Blog

-

Welcome to my weird and messy blog!
-Also remember to check out my Twitter @Teascade

- -
-
-

Saltosion

-

Saltosion is an organization founded by me, Teascade -which I sometimes use, when collaborating with other devs and making -some art (and games sometimes)

-

Saltosion also has a -Selfhosted Git, GitHub and an Itch.io so check them out!

-

Here's also all the games made by Saltosion!

-

-

By Teascade and Excitedneon

-
-
- -
-
-
- - diff --git a/js/main.js b/js/main.js deleted file mode 100644 index b20f528..0000000 --- a/js/main.js +++ /dev/null @@ -1,132 +0,0 @@ -function main(page) { - window.currPage = page; - window.currOpacity = 1; - document.getElementById("about-link").removeAttribute("href"); - document.getElementById("games-link").removeAttribute("href"); - document.getElementById("blog-link").removeAttribute("href"); - document.getElementById("about-link").onclick = function () { return openPage("about"); }; - document.getElementById("games-link").onclick = function () { return openPage("games"); }; - document.getElementById("blog-link").onclick = function () { return openPage("blog"); }; - var links = document.getElementsByClassName("js-link"); - var _loop_1 = function(i) { - var link = links[i]; - var href = link.getAttribute("href").split("/").filter(function (f) { return f != ""; })[0]; - link.removeAttribute("href"); - link.onclick = function () { - openPage(href); - }; - }; - for (var i = 0; i < links.length; i++) { - _loop_1(i); - } - addBlogposts(); - var search = window.location.search; - if (search != "") { - setBlogTextOnSearch(search); - } - window.onpopstate = function () { - var page = window.location.pathname.split("/").filter(function (f) { return f != ""; })[0]; - var search = window.location.search.slice(0, -1); - if (page == "blogtext") { - setBlogTextOnSearch(search); - } - openPage(page || "about", page, false); - }; -} -function openPage(page, new_url, renew_history) { - if (new_url === void 0) { new_url = null; } - if (renew_history === void 0) { renew_history = true; } - if (page == window.currPage) { - return; - } - slideOpacity(function () { - var link = document.getElementById(window.currPage + "-link"); - var new_link = document.getElementById(page + "-link"); - console.log(new_link); - if (link) { - link.children[0].className = ""; - } - if (new_link) { - new_link.children[0].className = "active"; - } - document.getElementById(window.currPage).className = "hiddenarea"; - window.currPage = page; - document.getElementById(page).style.opacity = "0"; - document.getElementById(page).className = ""; - var target = new_url || page; - var targetPg = "/" + target; - if (target == "about") { - target = ""; - targetPg = ""; - } - ; - if (renew_history) { - window.history.pushState(target, target, targetPg + "/"); - } - document.title = "Teascade | " + page; - document.getElementsByClassName("stuffarea")[0].scrollTop = 0; - slideOpacity(function () { - }, 1.5); - }, -1.5); -} -function slideOpacity(callback, step) { - var currElem = document.getElementById(window.currPage); - var id = setInterval(function () { - window.currOpacity += 0.02 * step; - currElem.style.opacity = "" + window.currOpacity; - if ((window.currOpacity <= 0 && step < 0) || (window.currOpacity >= 1 && step > 0)) { - clearInterval(id); - callback(); - } - }, 2); -} -function addBlogposts() { - window.blogpostData = JSON.parse(window.blogpostDataStr); - var div = document.getElementById("blog"); - var blogpostData = window.blogpostData.sort(function (a, b) { return b.time - a.time; }); - blogpostData.forEach(function (val) { - var title = document.createElement("h2"); - title.className = "blogtitle"; - title.innerHTML = val.title; - var timestamp = document.createElement("p"); - timestamp.className += "timestamp"; - timestamp.innerHTML = new Date(val.time).toUTCString(); - title.appendChild(timestamp); - div.appendChild(title); - title.onclick = function () { - openPage("blogtext", "blogtext?id=" + val.source.slice(0, -5)); - setBlogText(val.source, new Date(val.time).toUTCString()); - }; - }); -} -function setBlogTextOnSearch(search) { - search = search.slice(1, -1); - var parts = search.split("="); - if (parts[0] == "id") { - var timestamp = void 0; - for (var i in window.blogpostData) { - console.log(window.blogpostData[i].source); - console.log(search + ".html"); - if (window.blogpostData[i].source == parts[1] + ".html") { - timestamp = new Date(window.blogpostData[i].time).toUTCString(); - } - } - setBlogText(parts[1] + ".html", timestamp); - } -} -function setBlogText(source, time) { - var xmlhttp = new XMLHttpRequest(); - xmlhttp.onreadystatechange = function () { - if (xmlhttp.readyState == XMLHttpRequest.DONE) { - if (xmlhttp.status == 200) { - document.getElementById("blogtext").innerHTML = xmlhttp.responseText; - var timestamp = document.createElement("p"); - timestamp.className += "timestamp"; - timestamp.innerHTML = time; - document.getElementById("blogtext").appendChild(timestamp); - } - } - }; - xmlhttp.open("GET", "/blogposts/" + source, true); - xmlhttp.send(); -} diff --git a/keybase.txt b/keybase.txt deleted file mode 100644 index 9c921fa..0000000 --- a/keybase.txt +++ /dev/null @@ -1,68 +0,0 @@ -================================================================== -https://keybase.io/teascade --------------------------------------------------------------------- - -I hereby claim: - - * I am an admin of http://teasca.de - * I am teascade (https://keybase.io/teascade) on keybase. - * I have a public key with fingerprint 1688 BA8D 8F2E 2E5B F11C 7E2B 64A5 AE50 2065 6E2E - -To do so, I am signing this object: - -{ - "body": { - "key": { - "eldest_kid": "010194d0fbd784a27e32bee2e574d3a3a884f6f8368abaf38b250ecf0501413a28c90a", - "fingerprint": "1688ba8d8f2e2e5bf11c7e2b64a5ae5020656e2e", - "host": "keybase.io", - "key_id": "64a5ae5020656e2e", - "kid": "010194d0fbd784a27e32bee2e574d3a3a884f6f8368abaf38b250ecf0501413a28c90a", - "uid": "ee4a0be7dfbc8d8b2766de4fa5504219", - "username": "teascade" - }, - "service": { - "hostname": "teasca.de", - "protocol": "http:" - }, - "type": "web_service_binding", - "version": 1 - }, - "ctime": 1478253579, - "expire_in": 157680000, - "prev": "f5e2246f42fd747ba8aa1021025bdd55375dc58a2f83997ba778193cc1cc7c5e", - "seqno": 10, - "tag": "signature" -} - -which yields the signature: - ------BEGIN PGP MESSAGE----- -Version: Keybase OpenPGP v2.0.58 -Comment: https://keybase.io/crypto - -yMIfAnicrZJbSBVBGMePngwvWD4kYgTp9pJhurfZ2ZXyoRBNy0sZ5a3DzM6sbuqe -0zmrpVbqg6h0IaReEsqHSoqwtEglKk9KYWaRSgpCoE9hGARKolDNSj0EPTYMDPPN -//vN//tmRqLdrsiQzvG26j0FPVEhY8GrNa7j20qjGjjsJXVcWgNXSdcXWkVowPZU -moRL43iBFzSZ8AYmUJWRCKkkYkpFCqBMJCQhVZUNxVAlRUUYGZKKRcBT3eABL8iC -hERV13jEJXOGaZVTv89vWjbDCoqqYqQS1RAdFjYEQYdUxIqMAKKAF3kFKOyEJVZ4 -A04GM4dRgKaYXhZjG8+6vX/o/7PvmnUcpTLiMYXEwDpzjUWoKITKBgKAl0VBc4QB -6rdQNWVqm6KAjgjlziVzLFpr6tRprFPJX4oU4hj2+b22V/dWsXCFbfvSnCy7zufI -TlPs+Q3wYNMirIcsoZb6A6bX4tIEptRt0yEKMlRFIAGoJXP0jM/0U4/pKABUVJ4N -5xpay5AGoKIoK4YsGgTKkD0CQgIvsgkwIQBIEBAdqEhkvdE0dg6hKmiSrgu6DnXg -GA7QU5aXsRnURuWMGTDLLWTX+FnBL4dKN7hCIl0bw0Kdz+WKjIj58+VgRLhrcGmt -mby6llk2tre/J+PsrcGirttjt+d7V2bcZcLqwJvsPn45JnwH0mMOnuxruuxJyZqY -Gp/DBY3Bxe7Elvzi5QPWj/bgz864mbcleYt3OnZdGhhK/Zra9Y1f6H4+3jo1H59Y -X5he/XB1NHh0LvbZfm3s8we00i4MR94fmumfaPsYO5qx0qujuMMlPV8Glh5daUla -oWvnZevig+mcyd2Gu/Z1+sC9abn4aaEvp2gyf19m7nSIK2b7e8Ha+eIE3FS45d3m -J6HNwyC24dhy4uxCZ/ynsK11hxZGJoY6Gh9XX8jVbuS47462N/GzCcGs7O9HukMT -+nFX6/W8hJvRmUn1vwBS50D6 -=ZJf7 ------END PGP MESSAGE----- - -And finally, I am proving ownership of this host by posting or -appending to this document. - -View my publicly-auditable identity here: https://keybase.io/teascade - -================================================================== diff --git a/blogposts/161213_0000_longtime.html b/public/blog/beenalongtime/index.html similarity index 65% rename from blogposts/161213_0000_longtime.html rename to public/blog/beenalongtime/index.html index 661fbef..4151fe0 100644 --- a/blogposts/161213_0000_longtime.html +++ b/public/blog/beenalongtime/index.html @@ -1,4 +1,58 @@ -

It’s been a long time, isn’t it?

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | It’s been a long time, isn’t it? + + + +
+ +
+
+ +
+
+ + +
+

It’s been a long time, isn’t it?

So it’s been a pretty damn long time since my last post (about 3 months .. I think ? ), so I decided to post one now.

Yeah I admit I’ve kind of partially forgotten this blog meantime, I promised myself I will try to get something to remind me every week or so from now on to post a blog post so everything gets to be in my blog and nothing gets forgotten.

So, let’s rewind a little and think what has happened meanwhile, shall we? So Arkhados is still in the makes (see Dnyarri’s blog for more information on Arkhados), and I’m still making heroes for it (see my page for the hero designs), but the rate at whitch I’m putting new heroes on the battlefield is slowing (because making of a hero takes quite a long time and I wait until some heroes are finished before designing new ones), meanwhile I can gather some inspiration on some new ones.

@@ -15,4 +69,11 @@

Please note this is a very small list of the races to be implemented. So Solid Kindom is going to be a Multiplayer (or Singleplayer) Open World turn-based RPG (kind of a hack n’ slash). Solid Kingdom is licenced with GPLv3. You can find Solid Kingdom’s Github here. Solid Kingdom is completely programmed in Java and for it’s multicolor output, and hotkey-system and partially for GUI an map drawing it uses Lanterna (a Java “terminal” library that allows all these things to be done).

Another project I’ve been working on with another friend of mine (commonly known as Firefortcut), is an Open Source handheld console that works on Raspberry Pi type-B circuit. The toughest part of it is actually (surprisingly) the shell of the console. after the future of the console is looking better I’m going to start working on a user interface for the console, and after that another game for the console (called Shadows of Karatsu, I already started working on it but not very focused on it, I will talk about it later). If the console gets enough fame and some name we can probably start making bit more of them and a good estimated price for the actual console is about 100-150€ (135-200 US$), the price gathers from the actual Pi, screen, buttons and the shell material and some tip for us. The Licence of the user interface is still in concideration weather it’s going to be completely free or what? The compressed version of the user interface most likely will be free.

-

As for Shadows of Karatsu, it’s going to be a pretty generig jRPG game that is going to be very LPC (Liberated Pixel Cup) styled (see http://lpc.opengameart.org/) in graphic and is going to be programmed in java, it uses LibGDX for it’s 2D game engine. It’s at very early stage and isn’t even working correctly atm. so you can expect a very long time before seeing something from it (and not even pushed to github yet, sorry). There’s nothing else really to say about it else than it’s going to be published with GPLv3 licence too.

\ No newline at end of file +

As for Shadows of Karatsu, it’s going to be a pretty generig jRPG game that is going to be very LPC (Liberated Pixel Cup) styled (see http://lpc.opengameart.org/) in graphic and is going to be programmed in java, it uses LibGDX for it’s 2D game engine. It’s at very early stage and isn’t even working correctly atm. so you can expect a very long time before seeing something from it (and not even pushed to github yet, sorry). There’s nothing else really to say about it else than it’s going to be published with GPLv3 licence too.

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/060416_0000_bestyears.html b/public/blog/bestworstyears/index.html similarity index 78% rename from blogposts/060416_0000_bestyears.html rename to public/blog/bestworstyears/index.html index 2209b4b..b42183c 100644 --- a/blogposts/060416_0000_bestyears.html +++ b/public/blog/bestworstyears/index.html @@ -1,15 +1,69 @@ -

How the “best years of my life” are quickly becoming the worst

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | How the “best years of my life” are quickly becoming the worst + + + +
+ +
+
+ +
+
+ + +
+

How the “best years of my life” are quickly becoming the worst

Hi, I’m just someone from Finland, and I’m going to be 18 in a few weeks. As many of you might know, people often consider ages 18 through 24 to be the best years one could live. Where nothing bothers you, when you don’t really have anything worth stressing over, and everything is chill.. Right?

Prologue

There are a few things though, that I need to get off my chest before I venture towards these amazing and absolutely glorious years of my life. I’m a transexual, which means that I’m not comfortable with the body I was born with, and wish it was the opposite gender. In some cases the desire is quite faint, and some hormone pills, or even a good talk can help. For me though, it’s very important to me that I do everything I can in order to get as close to the other gender as possible. I’m not satisfied, even if a small feature of me even resembles my current gender. And it sickens me. In addition to all this, I’m even bisexual, which stirs the stew¹ even more.

Always, have I felt uncomfortable around myself, and when I was smaller I was more attracted in the girls’ parties than the boys’ parties, and I was always intrigued about barbies and the generic girls’ toys. I didn’t play with them, I actually didn’t play with pretty much any toys at all, but the toys I played with, were very gender neutral, like legos (I’ll come back to this later). I also always ended up in the boys’ group since that’s just what society wants us to do, so the others would’ve bullied me for life for being the boy who played with barbies in kindergarten.. I feel remorse though, I feel like I should’ve done it anyways, maybe so I wouldn’t even be in this situation right now.

When I was smaller, I wanted the girls’ swim suits instead of the boys’, I often felt “girly” and I even asked my brother about it, and he was confused and laughed. I said about the swimsuit thing to my grandmom, whom I went swimming with often back then, but she was very confused aswell. I finally played with some girls some time before school started and I didn’t understand some of the words and got laughed at and traumatized, which is why I really never went into the girls’ groups anymore.

-
+

(This is a bit off-topic, you can skip this paragraph if you want)

Back to the legos for a bit, this is what eventually led to my career. I always liked creating, designing and being creative. I was presented computing and engineering, but I didn’t understand electricity, the mechanics required and I thought the material required to build everything I wanted, and I got disappointed since I wanted to make so much, but I couldn’t, since the materials and cables and everything required would cost so much and it was so complicated and “qhbwgqkjg”. So I was playing games at this age, as I grew a bit older I started thinking, I want to make my own games. I had made some board games and lego “games” before, but now I was starting to become interested in real video games. Therefore I started to research all this, and eventually this lead to me using Game Maker, later a friend teaching me Python and that was the start of my beautiful career as an indie game developer.

-
+

Alas this all leads to what I am today. I’m too shy to talk about my feelings, I feel very uncomfortable in my body and since I kind of gave out clues about my inner personality to people near me, they didn’t understand them. The feeling, that I can’t live my life to the fullest, that I am not, what I feel inside makes me feel caged, trapped, jailed even. Me being very shy and quiet, even introverted, I’m not going to tell anyone, obviously. I can’t. Very few people around me actually know how I feel, and the thought of telling my parents or my brother makes me scared stiff. I have actually told a doctor, but I’m not 18 yet, so they won’t let me into any kind of treatment without my parents knowing, not even the preparations for treatment.

-
+

Real analytical part

I’m starting to lose my strain of thought, so I guess it’s a good idea to take another start, this time more so from the medical and real standpoint. I admit, I was, for a long time, grossed out by girls and girl bacteria and such, but I feel like it’s because the society told me there were girl bacteria in the first place;

Stage 1, Denial and Anger

@@ -18,7 +72,7 @@

I then later, towards the end of upper elementary school, started to realize there was nothing to do about it, so I fell into depression. Not too hard yet, this stage didn’t fully start until high school or so. When it started though, it hit me good. This stage hasn’t even completely ended for me and the depression hits me very hard some days. When it hits, I often feel like even if I go through all these processes, nothing matters, since I’m not really a girl after them, or something like that. Sometimes it gets really bad. Like, really bad. So bad, that I don’t want to be a boy, but I’ll never be a girl, and it always leads me even to the edge of thinking that suicide is the only answer. I’ve never done it obviously, nor I’ve even tried it. But It’s just a feeling. I’ll come back to these thoughts later after stage 3.

Stage 3, Acceptance

This stage, actually, started for me only around two years ago. This is when I actually realized I was transexual and there was really nothing I could do about it, well besides hormone pills and other “repairing” operations. I’ve never really fallen off the stage two though, but I feel like I’m in stage three already, since I accept myself as trans, and I know I’m trans, but I still get often very depressed about it.

-
+

Conclusions

So as I mentioned earlier, I haven’t gotten into medical care about this, because I don’t want anyone to know about these “hideous” and “horrifying” (or so some think) conditions I had. Now later on my dad now knows, and I feel like all this saving and waiting until I’m 18 has gone straight to the drain. Now as I’m closing up to the age of 18, I’m becoming fairly old. Not old old, but you might get my point in jiffy. The fixing processes take years at best, and It’ll be a very long time from now until I’m going to be actually satisfied with my body. Now as I said in stage 2, I still get strongly depressed these days, and this is mostly why;

Remember when I told you ages 18 through 24 are the best years in human life, according to most people? Well I’m now entering this age, and not until soon, I can get actual medical attention and proper treatment. Do you know what this means? Instead of living my “best years of my life” happy and carefree, I’m going to be very depressed, sad and living in an abomination² of a body. Partially the reason I’m so introverted even, is because my body is not what i want it to be. Even if I started my fixing process right now, I’ll have to go talk to a therapist/psychiatrist or some sort, whom will determine if I’m qualified for these treatments. This’ll take about a year at worst. Now after the treatment starts, I probably start taking pills and eventually begin to resemble and/or look like my opposite gender, though my passport and pretty much everything says; “SEX: MALE”. This is a problem, a major problem. I’m going to practically have to live under a rock in order to not get beaten, because the guard in the bar line won’t let me in, because I’m a trap or something.

@@ -28,4 +82,11 @@
  1. Stirring the stew is a finnish saying, which means making something, which is already confusing or in some way odd, even more so.
  2. Not in literal sense, but the body is unpleasant either way, which is the point
  3. -
\ No newline at end of file + + +
+
+
+ + + \ No newline at end of file diff --git a/public/blog/creation/index.html b/public/blog/creation/index.html new file mode 100644 index 0000000..e0fdcc8 --- /dev/null +++ b/public/blog/creation/index.html @@ -0,0 +1,65 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | Creation + + + +
+ +
+
+ +
+
+ + +
+

The Creation

+

The Blog was created, but not yet quite ready, the blog still needs some ‘editing’ before given to publicity, but soon you will see it!

+

Today Allexit’s Magical Modpack was released to publicity ( click here ) and is built up from LOTS and LOTS of mods! +it will soon be updated too quite a lot of times for reasons such as it does not support custom launcher nor ‘easy installation’ yet..

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/blog/firstblogpost/index.html b/public/blog/firstblogpost/index.html new file mode 100644 index 0000000..ce4f5cd --- /dev/null +++ b/public/blog/firstblogpost/index.html @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | First blogpost! + + + +
+ +
+
+ +
+
+ + +
+

First blogpost!

+

Test! This is just a test blogpost!

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/060813_0000_meaningful.html b/public/blog/firstmeaningful/index.html similarity index 54% rename from blogposts/060813_0000_meaningful.html rename to public/blog/firstmeaningful/index.html index 19673e4..34e7b96 100644 --- a/blogposts/060813_0000_meaningful.html +++ b/public/blog/firstmeaningful/index.html @@ -1,6 +1,67 @@ -

My first meaningful post

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | My first meaningful post + + + +
+ +
+
+ +
+
+ + +
+

My first meaningful post

Today was a fairly productive day as I began working on this ‘kinda small’ but fun-to-do project for a minecraft mod. The minecraft mod is called ComputerCraft and it’s just so amazing, it lets you to bring the power of lua to Minecraft and interact with the world at the same time. Anyways, I didn’t make anything too practical but I did make an program that ‘simulates an operating system’, it’s not even near ready yet but I’m going to post a video about it later today.

So it’s called the Wandoze, and it’s supposed to be a ‘text-based’ version of Windows, kinda as a joke, but it already can handle quite a lot for a PC of Minecraft. it does have profiles like Windows professional, so you have to type your username and then password to get in etc. but it also supports a VERY high permission ranks, infinite literally, I made the system so that you can add even 100s of permission ranks from never-on-computer-visitor-dude to the ruler of all time. it also has many commands to help edit the profiles from the hand of admin without having to seek for the real files. ALSO it does not only support these little technical things, it already supports games and apps, whitch it can run pretty smooth, if the game/app is well made, but it doesn’t have any API or any sort of that stuff to help making them. but just make your game / app anything you want and drag it to on of the folders so the computer can run them.

About the Modpack I was working earlier today and yesterday, it’s now changed it’s name to a better ‘more offical’ name, Xetrox Modpack, I made quite a lot of information for it and a download link too, but an update is coming SOON, so you better look up to it. I also created a Wiki -page for the Modpack too, just so if people actually get interested in it, they can share their knowledge about the modpack in it, seriosuly even I don’t know much about some of the mods in it, as ironic as it sounds. Well what am I talking here here’s the link, Xetrox pack Wiki I too made a couple of pages for it already, I’m of course going to make more later but for starters a couple.

For now I think I’m going to take my focus more on the Wandoze -program, later I’m going to make Wandoze 2.0, whitch is practically the same but more bugfixes, a little more features and a internet support so all the usernames can be stored in one computer and remotely gotten to. After that Possibly a third Wandoze which is going to have more ‘graphical’ features, but we’ll have to see.. wait and see..

-

but FOR NOW really I’m really damn tired since I didn’t get any rest last night so I’m hitting the hay earlier than normal..

\ No newline at end of file +

but FOR NOW really I’m really damn tired since I didn’t get any rest last night so I’m hitting the hay earlier than normal..

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/blog/index.html b/public/blog/index.html new file mode 100644 index 0000000..66b055b --- /dev/null +++ b/public/blog/index.html @@ -0,0 +1,98 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog + + + +
+ +
+
+ +
+
+ + +
+

Blog

+

Welcome to my weird and messy blog!
+Also remember to check out my Mastodong @Teascade@cybergay.space

+

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/blog/januaryupdate/index.html b/public/blog/januaryupdate/index.html new file mode 100644 index 0000000..9b7954e --- /dev/null +++ b/public/blog/januaryupdate/index.html @@ -0,0 +1,67 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | January update + + + +
+ +
+
+ +
+
+ + +
+

January update

+

so, I kinda forgot about the thing where I was supposed to post a post every week, but once every month is good too.. right …? Yeah I admit I screwed up, but I’ll make it up to you, I started to learn jMonkeyEngine in the side of doing Solid Kingdom (still thinking another name for it), wishing I could once make a 3D game (lol).

+

I have this one idea I’m going to make with jME, but I’ll keep it a secret, I’ll tell you guys if it catches on, but it’s supposed to be release ready about 1.4.14 (see already why?), but it can strech up to August, since that’s when the Summer Assembly starts. I’ll be sending the game to the game dev comp this year, hoping for some attention and just for fun.

+
+

Later lookback on the post;

+

This post is one of the draft posts I started to make in this time, but somehow got lost, I finally found one. This wa ssupposed to be posted 12.1.2014, but anyways this project I’m talking about here has been like priority #2 for quite a long time now, I haven’t forgotten it but I rather work on Solid Kingdom than this.

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/311015_0000_matrix.html b/public/blog/matrixisreal/index.html similarity index 58% rename from blogposts/311015_0000_matrix.html rename to public/blog/matrixisreal/index.html index 9713cd5..e554eac 100644 --- a/blogposts/311015_0000_matrix.html +++ b/public/blog/matrixisreal/index.html @@ -1,8 +1,69 @@ -

The matrix is (uncertainly) real!

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | The matrix is (uncertainly) real! + + + +
+ +
+
+ +
+
+ + +
+

The matrix is (uncertainly) real!

So I was thinking the other day about humanity and our society. I then started thinking about the future of humanity, what kind of life would be “good life” for people in the future, and what kind of society could provide good life for everyone?

Well defining good life obviously differs for subject to subject, so general good life doesn’t exactly exist. This only means that people must be offered differing things depending on their desires, to give good life to them. A good place to start is obviously communism. In a perfect marxist communist society everyone gets equally what they need, and there is no money whatsoever. This though leads to a society where you would need to define a global good life, that people should live on, which wouldn’t work as intended as earlier noted, there can be no global good life. And because in communism there is no money, stuff is shared equally, people get stuff they don’t want and not enough stuff they want, so it’s not really optimal.

Now another path we could go, what if everyone has the equal amount of money, this would mean that anyone could just buy what they want, and everyone has the equal opportunity to have anything. This is a good model of a society working technically, but the greater questions come in hand, who would collect and more importantly distribute the money? Who would keep track of the money? Would money actually be necessary even in a society like this? If everyone just gets money, why would anyone do any work to get money or produce the goods to sell? So this model doesn’t quite fit for what we’re looking for either.

So let’s get really sci-fi, and imagine there can be a society where there are thousands of robots per every person, and they basically do everything for us, treat us, feed us and entertain us. This would be really handy, and probably a great model, but who would create the first robots? Secondly what could prevent the robots from becoming overlords, and enslaving humanity? And even thirdly could we have more efficient choices that provide good life for people with this kind of technology?

Then I started thinking, to provide to a single person anything he could desire, we should invent a true virtual reality, in which people can do and create whatever they desire, after the technology is sufficient enough, they wouldn’t be too expensive to create, and everyone could have their own “private reality” they live in. But hold on, we’re getting into some real matrix shit over here. Maybe the virtual reality would just be a counterpart of our reality, in where someone could just decide anything s/he wants, and it would happen (et cetera). So would that mean that everyone who lives there (exists there in general) are in the matrix? Yes. How can we tell we aren’t already in virtual reality like this? We most likely can’t. So when we invent these virtual reality machines, we end the circle, and nobody again knows, that they live in a virtual reality. This loop repeats infinitely, until someone were to realize they live in the virtual reality, and manage to actually escape it.

The only problem is, how can you really tell if you’re on the top level matrix or not?

-

This has been a jolly philosophical rant session. Thank you for reading.

\ No newline at end of file +

This has been a jolly philosophical rant session. Thank you for reading.

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/220913_0000_much.html b/public/blog/muchgoingon/index.html similarity index 63% rename from blogposts/220913_0000_much.html rename to public/blog/muchgoingon/index.html index 393f0a8..c0141e9 100644 --- a/blogposts/220913_0000_much.html +++ b/public/blog/muchgoingon/index.html @@ -1,8 +1,69 @@ -

‘Much’ going on

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | 'Much' going on + + + +
+ +
+
+ +
+
+ + +
+

‘Much’ going on

Okay so.. I haven’t posted anything here for a while and kind of forgotten (damn), so I remembered now and decided it’s time to post another of these fabulous posts. There’s ‘much’ been going on lately and I’ve had a quite projects, for example, Dnyarri, a friend of mine, is creating a BLC -like MOBA game called Arkhados, he has a blog of his own and you can see Arkhados’ process and progress from there.

So as I said Arkhados is a BLC (Bloodline Champions) -like MOBA game, for others, who are not familiar with BLC, it’s a MOBA game where in beginning of the match players select their bloodlines to play with. When the match starts there is a ‘smallish’ map where two teams fight eachother (1v1 to 5v5) and when the other team manages to kill other players of the opposite team, they win. You require x amount of wins to win the match, it is determined in rules and options.

Arkhados is much like that but at the moment there is only 3 rounds and basically ‘nobody wins’, also there is no teams (yet) and there will be multiple gamemodes, the only one and the current is deathmatch but for an example. there will be team deathmatch etc. later on in the game. Why I’m telling this is because I (at least) see myself as one of the biggest factors in the game, like I’m creating the heroes/champions (whatever they are really) and when we get to the certain point I’ll be making most of the maps too. Of course Dnyarri has power over the heroes since he’s making the game.

I’ve also coded and put up a website for the designs and there you can find all of the currently designed characters, characters that are ready for the game, characters that need polish and characters that has been declined by either me later on or Dnyarri, most likely I will not be adding any concepts of heroes there but I will be creating another page for them later. The attributions of the page are not yet added and I’m awfully sorry about it, I’ll be adding it tomorrow or the day after tomorrow, guranteed.

Also I have ‘cancelled’ the Red West project and continued with my old projects whitch can help the next textbased RPG I’m going to make, I’ll be providing links to their git repositerys too, so I’m making a textbased game-engine whitch includes everything a textbased game could need to get started. I haven’t uploaded it to git yet but I’m also making an rpg-toolkit, it’s compactible with textbased RPG:s, 2D and 3D RPG:s, and everything else in between. It’s supposed to handle much of the basic RPG elements, such as basic vendors, normal character, weapons, inventory, equipment, buffs and spells etc. The RPG-toolkit doesn’t really have a name of it’s own, at least yet, it just is, mostly to be an ‘community’ project. Also please note that the rpg-toolkit is in a very early stage and not ready for heavy criticism, so please if you look at it, look at it in a light perspective and be free to contribute with patches and suggestions.

For the Tower Defence I was supposed to make with JMonkeyEngine is looking pretty bad, I haven’t worked on it for quite a while (QUITE) and I’m feeling I should probably start the project all over again if I wanted it to happen. There are too much flaws in it.

-

But mosly I’ve been slacking off and not getting any work done, althrough I’ve had pretty rough days lately, it doesn’t still explain why I haven’t done anything but played Xonotic. Xonotic is pretty awesome btw, I recommen you checking it out, it’s a FOSS game created on DarkPlaces -engine, whitch is based on Quake Engine.Anyways I hope I’ll get more active now and remember to post more on this blog.

\ No newline at end of file +

But mosly I’ve been slacking off and not getting any work done, althrough I’ve had pretty rough days lately, it doesn’t still explain why I haven’t done anything but played Xonotic. Xonotic is pretty awesome btw, I recommen you checking it out, it’s a FOSS game created on DarkPlaces -engine, whitch is based on Quake Engine.Anyways I hope I’ll get more active now and remember to post more on this blog.

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/160813_0000_absence.html b/public/blog/myabsence/index.html similarity index 51% rename from blogposts/160813_0000_absence.html rename to public/blog/myabsence/index.html index 1057c2c..759c71f 100644 --- a/blogposts/160813_0000_absence.html +++ b/public/blog/myabsence/index.html @@ -1,5 +1,66 @@ -

My absence

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | My absence + + + +
+ +
+
+ +
+
+ + +
+

My absence

ok.. so, I’ve been faily absent from the blog for a while now, even tho it’s just begun, but I have my reasons for it.

For the first, I want to make clear that this isn’t the kinds of blogs that update like 4 times a day, I update when I get content to update. For the last days I’ve gotten a little content now, but I’ve somehow been so tired (because of school) and absent-minded that I’ve kinda forgot. So, I left to see my dad (I go see him usually every second weekend) and while there, I’m not able to access computer, so that’s why I kind of forgot about this blog. And that’s also why I haven’t had any content lately really, After going there I’ve been just lazy and playing with my friends (you can see my progress on it on http://www.Duxter.com/Allexit) and that’s not the kind of stuff I upload on this blog about.

So what I’ve been doing the few days now, I’ve started learning to use jMonkeyEngine, a 3D engine for Java, I don’t make any promies nor any speculations on upcoming games on it, but I hope to see it on more use on my projects later. Also I have this “old” text-based RPG -project called “Red West”, it’s at VERY early stage, not even really playable yet, so I’m not sending a link, yet, but before I get to making that I’m going to continue with my RPG-toolkit on python, I haven’t uploaded that on git yet, but I will soon after I get it some decent features more.

-

On the jMonkeyEngine, I’m hoping to make a Tower Defence game as a training game, I might release it, but that’s a huge maybe, and I don’t think it’s going to include very good art nor much content so don’t get your hopes up. also I’m hoping to make an VERY old project I’ve been speculating for like 3 years now, I’ve never really began making it, ubt I hope I get to make it with jMonkeyEngine. The game is very Arcade-like and humoristic, it’s also a kind of zombie survival, you’ll see when I start making on it. Also other game I hope to make on jMonkeyEngine is an RPG game, which I’ve been speculating too for quite a while, it’s going to have pretty much everything procedurally generated, from world to creatures, from weapons to cities. I’m hoping to see much activity on that too a little later as I learn to use jMonkeyEngine a little more.

\ No newline at end of file +

On the jMonkeyEngine, I’m hoping to make a Tower Defence game as a training game, I might release it, but that’s a huge maybe, and I don’t think it’s going to include very good art nor much content so don’t get your hopes up. also I’m hoping to make an VERY old project I’ve been speculating for like 3 years now, I’ve never really began making it, ubt I hope I get to make it with jMonkeyEngine. The game is very Arcade-like and humoristic, it’s also a kind of zombie survival, you’ll see when I start making on it. Also other game I hope to make on jMonkeyEngine is an RPG game, which I’ve been speculating too for quite a while, it’s going to have pretty much everything procedurally generated, from world to creatures, from weapons to cities. I’m hoping to see much activity on that too a little later as I learn to use jMonkeyEngine a little more.

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/blog/renovatedgrandopening/index.html b/public/blog/renovatedgrandopening/index.html new file mode 100644 index 0000000..ba47224 --- /dev/null +++ b/public/blog/renovatedgrandopening/index.html @@ -0,0 +1,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | Renovated grand opening + + + +
+ +
+
+ +
+
+ + +
+

Renovated grand opening

+

Hello, so as many of you probably know, I haven’t posted in a remarkably long time. I can not answer your fervent question, weather it’s about to change or not, but I’ve decided to take a complete new angle on this blog.

+

Now this blog is not just for my projects and programming stuff, but it’s for pretty much anything that I think of. Imagine twitter, but longer.

+

I’ll now start posting again some updates about a few projects I might have etc. but along with that I’ll be posting some rantings that might be philosophical, of public opinion, or some random criticism.

+

Till’ we meet again, have a jolly gay day.

+ +
+
+
+ + + \ No newline at end of file diff --git a/blogposts/230114_0000_updates.html b/public/blog/updatesupdates/index.html similarity index 67% rename from blogposts/230114_0000_updates.html rename to public/blog/updatesupdates/index.html index 00d1029..28a3a67 100644 --- a/blogposts/230114_0000_updates.html +++ b/public/blog/updatesupdates/index.html @@ -1,7 +1,68 @@ -

Updates updates..

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Blog | Updates updates.. + + + +
+ +
+
+ +
+
+ + +
+

Updates updates..

So, no I didn’t forget about the blog meantime the last update I made, instead I actually posted one or two updates but I’m not really sure why, they got removed and I didn’t obviously have a backup on them. now I’m just going to cover all I’ve updated so in them and a bit more.

So looking at Solid Kingdom, my newest project (see previous post where I tell more about it), it’s went on pretty well, I DO have it on github, in fact this is it’s github repositery, but I haven’t pushed updates into github for quite a long time actually, I’m very sorry about that, it might look like the project’s frozen but it’s actually running further than almost any of my projects has before. I still don’t have any real gameplay on the actual game (I’m currently working on it), but instead I’ve been working on huge things behind the scenes and I think this game is going to be so good and so much fun to make. I’m now going to try list all the things I’ve done after I stopped using github; I’ve added a layer system (easier to add messages and other things that overlap eachother). I’ve also added some kind of message box system, that’s not in real use yet but will be as soon as I get on the real gameplay. I’ve now recently added an Action/ActionHandler system, this just makes it easier for me to first work on singleplayer side of the game and later implement multiplayer, I’m not going to explain here with all the technical information on how it works, but in a nutshell, when you try to do anything it sends an action to the ActionHandler, whitch decides on what to do with it, after that it either processes the action itself or sends it to server to be processed (depends on if you’re playing multiplayer or singleplayer). I’ve also added tonnes of little things and bigger things too that I can’t quite recall at the moment

Now the reason I’ve kind of stopped using github, is because it really makes my project harder to handle for me. Git is a nice and easy version control, but I can’t use it very well, for example if I rename a file, it does not remove the old file from the repo nor rename it, just adds the renamed file as a new one. If I’m ever going to return to using Github with Solid Kingdom, I’m most likely going to make a full wipe and re-push everything. Now I’m not saying I’m stopping to use github on other projects, it works well in any other way and I’m very pleased with it, I’m just going to have to learn more how to use it and look back on it later.

On the story side of the Solid Kingdom, I haven’t really decided much, I’ve decided that I’m going to make some kind of “personal” wiki for the story and addthe story piece-by-piece there, not writing books or anything, but instead just listing out events, characters etc. from the story.

As some of you may have also noticed I always publish my working under “Smoldering Planet”, and as some of you might know, Smoldering Planet is my game-making studio. Obviously it’s not like a real company with oriented people doing stuff for me, but once in a while I might ask a friend to join me on a project, and we publish the work under the studio, and list our names in the credits. Anyways, Smoldering Planet has been going now for about 4 to 5 years, or maby even longer. Yes Smoldering Planet is VERY old, but it’s changed it’s name very many times for a number of reasons. Mostly because I just later thought the name is incredibly stupid. Smoldering Planet was first called “Lol Gamer Studios” (yes I’m serious), it was like that for about a year or so, then it changed to “Forming Time Studios” (yes, I’m not kidding). It stayed like that for about 2 years or so, when I changed to “OverCore”, I really never used the name, like it was there, but I never made a big thing about it. I don’t think I ever even made a website for it. Anyways, after that I finally changed to Smoldering Planet, I’m not very sure how long I’ve been with the name, but I think it’s been aroud a year. After all this time I’ve finally come up with a name I really like; Saltosion Entertainment or shortly just Saltosion. Yes I’m changing the name again, not very sure when, but probably as soon as I get Saltosion’s new page up and running, I allready have a logo for it too.

-

Looking on this blog, I really like this blog and I’m probably going to post here again in a week or two, so be prepared. I’m also hoping I’d see more visitors in this blog, not that I really like being famous or anything, but instead I’d like to share my stories with the whole world and I want everyone to know them, and maeby even help me on some situations. If you’d be so kind, tell your friends about me.

\ No newline at end of file +

Looking on this blog, I really like this blog and I’m probably going to post here again in a week or two, so be prepared. I’m also hoping I’d see more visitors in this blog, not that I really like being famous or anything, but instead I’d like to share my stories with the whole world and I want everyone to know them, and maeby even help me on some situations. If you’d be so kind, tell your friends about me.

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/css/blogposts.css b/public/css/blogposts.css new file mode 100644 index 0000000..63e423f --- /dev/null +++ b/public/css/blogposts.css @@ -0,0 +1,37 @@ +.blogposts { + padding: 0; + list-style: none; +} + +.blogposts > li a { + display: table; + width: var(--content-width); + transition: 0.2s; + background-color: #222; + overflow: scroll; + text-decoration: none; + padding: 1em; + padding-top: 0.5em; + color: var(--color-navbar-fg); +} + +.blogposts > li:hover a { + background-color: #1a1a1a; +} + +.blogposts > li a > * { + margin: 0; +} + +.blogposts > li a:focus { + outline: none; + background-color: #1a1a1a; +} + +.blogposts h3 { + color: var(--highlight-color); +} +.blogposts .timestamp { + color: #868282; + font-style: italic; +} \ No newline at end of file diff --git a/public/css/custom.css b/public/css/custom.css new file mode 100644 index 0000000..24b2baf --- /dev/null +++ b/public/css/custom.css @@ -0,0 +1,102 @@ +:root { + --color-main: #272727 !important; + --color-navbar-bg: #252525 !important; + --color-navbar-button: #222 !important; + --color-navbar-button-hover: #1a1a1a !important; + --color-navbar-button-focus: #161616 !important; + --color-navbar-border-bottom: #252525 !important; + + --color-content-bg: #282828 !important; + --color-content-fg: #cfcfcf !important; + + --highlight-color: #ff0091 !important; + + --content-width: calc(100% - 4em) !important; + --navbar-width: 80% !important; +} + +.container { + width: 100%; + height: 100%; + display: inline-flex; + flex-direction: row; +} + +.teacup { + flex: auto; + background-color: #1f1f1f; + text-align: center; + height: 100%; + display:flex; + justify-content:center; + align-items:center; +} + +.teacup img { + width: 70%; + margin: auto; +} + +article > *:last-child { + padding-bottom: 2em; +} + +.content { + flex: auto; + width: 30%; + height: 100%; + overflow: auto; +} + + +h1 { + color: var(--highlight-color); +} + +article p, article h2, article h3, hr { + margin-top: 1em; +} + +.itch-embedded { + max-width: var(--content-width); +} + +@media (max-width: 900px) { + .container { + flex-direction: column; + } + + .teacup { + height: 10%; + } + .teacup img { + height: 100%; + } + + .content { + width: 100%; + } + + :root { + --content-side-padding: 0%; + --content-width: 100%; + --navbar-text-size: 30px; + --content-text-size: 1.5em; + --navbar-width: 100% !important; + } + + nav { + height: auto; + } + + nav li { + display: block; + } + + nav li a { + text-align: center; + padding-top: 0.2em; + padding-bottom: 0.2em; + border: solid 3px var(--color-navbar-button-hover); + } +} \ No newline at end of file diff --git a/public/css/default.css b/public/css/default.css new file mode 100644 index 0000000..f24a191 --- /dev/null +++ b/public/css/default.css @@ -0,0 +1,179 @@ +:root { + --color-main-bg: rgb(38, 40, 43); + + --color-navbar-bg: rgb(52, 52, 56); + --color-navbar-button: rgb(50, 50, 53); + --color-navbar-button-hover: rgb(43, 43, 46); + --color-navbar-button-focus: rgb(44, 44, 48); + --color-navbar-border-bottom: rgb(41, 41, 44); + + --color-content-bg: rgb(44, 44, 48); + --color-content-fg: rgb(164, 161, 172); + + --navbar-height: 3.5vw; + --navbar-width: 60%; + --navbar-padding-size: 0.5em; + --navbar-text-size: 24px; + + --content-width: 50%; + --content-text-size: 1.2em; + --content-top-padding: 2em; + --content-side-padding: 2em; + + --highlight-color: rgb(230, 134, 217); +} + +body, html { + width: 100%; + height: 100%; + padding: 0; + margin: 0; + font-family: Roboto, Helvetica, sans-serif; + background-color: var(--color-main-bg); +} + +#text { + width: 100%; + margin: 0; + padding: 0; +} + +/* Navbar styles */ + +nav { + width: 100%; + height: var(--navbar-height); + background-color: var(--color-navbar-bg); + border-bottom: solid 4px var(--color-navbar-border-bottom); +} + +nav ul { + height: 100%; + font-size: 0; + margin: 0; + padding: 0; + list-style-type: none; + width: var(--navbar-width); + margin-left: auto; + margin-right: auto; +} + +nav li { + height: 100%; + font-size: var(--navbar-text-size); + display: inline-block; + margin: 0; +} + +nav li a { + display: block; + height: 100%; + background-color: var(--color-navbar-button); + color: var(--highlight-color); + text-decoration: none; + padding-left: var(--navbar-padding-size); + padding-right: var(--navbar-padding-size); + transition: 0.15s; + border-left: solid 3px var(--color-navbar-button-hover); + position: relative; +} +nav li:not(.image) a { + display: flex; + justify-content: center; + flex-direction: column; +} + +nav li:first-child a { + border-left: solid 3px var(--color-navbar-button-hover); +} + +nav li:last-child a { + border-right: solid 3px var(--color-navbar-button-hover); +} + +nav ul a:hover { + background-color: var(--color-navbar-button-hover); +} + +nav ul a:focus { + outline: none; + background-color: var(--color-navbar-button-focus); +} + +/* Navbar images */ + +nav img { + height: var(--navbar-height); + vertical-align: top; + border: 50%; +} + +nav li.image { + position: relative; + bottom: calc(var(--navbar-height) / 4); + padding: 0; +} + +nav li.image a { + height: auto; +} + +/* Article styles */ + +article { + width: var(--content-width); + min-height: calc(100% - var(--navbar-height) - var(--content-top-padding) - 4px); + margin: auto; + padding-top: var(--content-top-padding); + padding-left: var(--content-side-padding); + padding-right: var(--content-side-padding); + background-color: var(--color-content-bg); + color: var(--color-content-fg); + font-size: var(--content-text-size); +} + +@media (max-width: 900px) { + :root { + --content-side-padding: 5%; + --content-width: 90%; + --navbar-text-size: 30px; + --content-text-size: 1.5em; + --navbar-width: 100%; + } + + nav { + height: auto; + } + + nav li { + display: block; + } + + nav li a { + text-align: center; + padding-top: 0.2em; + padding-bottom: 0.2em; + border: solid 3px var(--color-navbar-button-hover); + } +} + +@media (max-width: 1500px) and (min-width: 900px) { + :root { + --content-width: 70% !important; + --navbar-text-size: 30px; + --navbar-height: 5vw; + } +} + + +article > * { + margin: 0; +} + +article a { + color: var(--highlight-color); +} + +article img { + max-width: calc(100% - var(--content-side-padding)); +} \ No newline at end of file diff --git a/public/css/loadbar.css b/public/css/loadbar.css new file mode 100644 index 0000000..b7fe5cb --- /dev/null +++ b/public/css/loadbar.css @@ -0,0 +1,16 @@ +#loadbar { + position: absolute; + top: 0; + left: 0; + height: 0.2em; + background-color: var(--highlight-color); + z-index: 1; + transition: 0.1s; + + width: 0%; + opacity: 0; +} + +#loadbar.loading { + opacity: 1; +} \ No newline at end of file diff --git a/public/games/index.html b/public/games/index.html new file mode 100644 index 0000000..301950f --- /dev/null +++ b/public/games/index.html @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Games + + + +
+ +
+
+ +
+
+ + +
+

Games

+

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical). +Once I release them I'll make sure to post them here and on my itch.io!

+

Saltosion

+

I have this organization though (See GitHub!), which I +sometimes use when collaborating games with other people. +The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

+

+ +
+
+
+ + + \ No newline at end of file diff --git a/img/favicon.png b/public/img/favicon.png similarity index 100% rename from img/favicon.png rename to public/img/favicon.png diff --git a/img/teascade.svg b/public/img/teascade.svg similarity index 100% rename from img/teascade.svg rename to public/img/teascade.svg diff --git a/img/teascade_cropped.svg b/public/img/teascade_cropped.svg similarity index 100% rename from img/teascade_cropped.svg rename to public/img/teascade_cropped.svg diff --git a/public/index.html b/public/index.html new file mode 100644 index 0000000..fc31d17 --- /dev/null +++ b/public/index.html @@ -0,0 +1,83 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | About + + + +
+ +
+
+ +
+
+ + +
+

Teascade

+

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

+
    +
  • Game dev
  • +
  • Artist
  • +
  • Philosopher
  • +
+

And a few things I am not;

+
    +
  • A normal person
  • +
+

Assuming I've totally caught your interest (for now at least), how about you check out my games, +my blog, and if you want to get really invested, you should check out some of the +following things:

+ +

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

+ +
+
+
+ + + \ No newline at end of file diff --git a/public/js/default.js b/public/js/default.js new file mode 100644 index 0000000..2fa9a53 --- /dev/null +++ b/public/js/default.js @@ -0,0 +1,94 @@ + +var _default_js_pageloader = { + begin: (url) => { console.log("Started to load " + url); }, + progress: (url, current, total) => { console.log("Progress of " + url + ": " + current + "/" + current + " (" + ((current / total) * 100) + "%)"); }, + loaded: (url, after_load) => { console.log("Loaded " + url); after_load(); } +} + +function _default_js_main() { + let elements = document.getElementsByTagName("a"); + for (element of elements) { + if (element.hostname == window.location.hostname) { + element.onclick = _default_js_onclick; + } + } + + window.onpopstate = function () { + var page = window.location + _default_js_open_page(page, false); + }; + +} + +function _default_js_onclick(event) { + event.preventDefault(); + + let node = event.target; + while (node.nodeName != "A") { + if (node.parentNode == null) { + return; + } + node = node.parentNode; + } + let url = node.href; + + + _default_js_open_page(url, true); +} + +function _default_js_open_page(url, no_pop_state) { + let request = new XMLHttpRequest(); + request.addEventListener("loadstart", (progress) => { + _default_js_pageloader.begin(url); + }); + request.addEventListener("progress", (progress) => { + _default_js_pageloader.progress(url, progress.loaded, progress.total); + }); + request.addEventListener("loadend", (progress) => { + _default_js_pageloader.loaded(url, () => { + let parser = new DOMParser(); + let new_document = parser.parseFromString(request.responseText, "text/html"); + change_page(new_document, url, no_pop_state); + }); + }); + request.open("GET", url); + request.send(); +} + +function change_page(new_document, new_url, no_pop_state) { + + // Some meta tags + document.title = new_document.title; + + let new_favicon = ""; + new_favicon = new_document.querySelector("link[rel*='icon']").href; + + document.querySelector("link[rel*='icon']").href = new_favicon; + + // Replace css/js tags + let list = document.getElementsByClassName("._default_js_meta"); + for (i in list) { + let element = list[0]; + if (element !== undefined) { + element.parentNode.removeChild(element); + } + } + + let new_list = new_document.getElementsByClassName("._default_js_meta"); + for (i in new_list) { + let element = new_list[0]; + if (element !== undefined) { + document.head.appendChild(element); + } + } + + // Actually replace the content + document.body = new_document.body; + _default_js_main(); + + // Do history modifications + if (no_pop_state) { + window.history.pushState(new_url, new_url, new_url); + } + +} diff --git a/public/js/loadbar.js b/public/js/loadbar.js new file mode 100644 index 0000000..904bf7c --- /dev/null +++ b/public/js/loadbar.js @@ -0,0 +1,19 @@ + +_default_js_pageloader.begin = () => { + let loadbar = document.getElementById("loadbar"); + loadbar.classList = "loading"; + loadbar.style.width = "5%"; +} + +_default_js_pageloader.progress = (url, current, total) => { + let loadbar = document.getElementById("loadbar"); + let percent = (current / total) * 100; + loadbar.style.width = percent + "%"; +} + +_default_js_pageloader.loaded = (url, after_load) => { + let loadbar = document.getElementById("loadbar"); + loadbar.style.width = "100%"; + loadbar.classList = ""; + setTimeout(after_load, 100); +} \ No newline at end of file diff --git a/public/saltosion/index.html b/public/saltosion/index.html new file mode 100644 index 0000000..e88cd00 --- /dev/null +++ b/public/saltosion/index.html @@ -0,0 +1,71 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Teascade | Saltosion + + + +
+ +
+
+ +
+
+ + +
+

Saltosion

+

Saltosion is an organization founded by me, Teascade +which I sometimes use, when collaborating with other devs and making +some art (and games sometimes)

+

Saltosion also has a +Selfhosted Git, GitHub and an Itch.io so check them out!

+

Here's also all the games made by Saltosion!

+

+

By Teascade and Neonmoe

+ +
+
+
+ + + \ No newline at end of file diff --git a/saltosion/index.html b/saltosion/index.html deleted file mode 100644 index d40eb91..0000000 --- a/saltosion/index.html +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | saltosion - - -
-
- -
- -
- -
-

Teascade

-

I'm a boring person, but in a desperate attempt to make you interested in me, I'm going to to tell you a few things I am;

-
    -
  • Game dev
  • -
  • Artist
  • -
  • Philosopher
  • -
-

And a few things I am not;

-
    -
  • A normal person
  • -
-

Assuming I've totally caught your interest (for now at least), how about you check out my games, -my blog, and if you want to get really invested, you should check out some of the -following things:

- -

And if you have a really desperate urge to contact me, you may try to email me at teascade@gmail.com

-

(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)

-
-
-

Games

-

I have a tonne of games none of which are released! You can check some of them from my selfhosted git (Or GitHub if you're sceptical).
-Once I release them I'll make sure to post them here and on my itch.io!

-

Saltosion

-

I have this organization though (See GitHub!), which I -sometimes use when collaborating games with other people.
-The games made under this organization then are listed here (aswell with Saltosion's own itch.io)

-

-
-
-

Blog

-

Welcome to my weird and messy blog!
-Also remember to check out my Twitter @Teascade

- -
-
-

Saltosion

-

Saltosion is an organization founded by me, Teascade -which I sometimes use, when collaborating with other devs and making -some art (and games sometimes)

-

Saltosion also has a -Selfhosted Git, GitHub and an Itch.io so check them out!

-

Here's also all the games made by Saltosion!

-

-

By Teascade and Excitedneon

-
-
- -
-
-
- - diff --git a/src/about.md b/src/about.md index c353eb6..1d8d810 100644 --- a/src/about.md +++ b/src/about.md @@ -11,8 +11,8 @@ And a few things I am not; - _A normal person_ -Assuming I've _totally_ caught your interest (for now at least), how about you check out [my games]$(/games), -[my blog]$(/blog), and if you want to get **really** invested, you should check out some of the +Assuming I've _totally_ caught your interest (for now at least), how about you check out [my games](/games), +[my blog](/blog), and if you want to get **really** invested, you should check out some of the following things: - [Selfhosted Git](https://git.teasca.de/teascade) @@ -22,5 +22,3 @@ following things: - [Reddit (not very active, /u/teascade)](https://reddit.com/u/teascade) And if you have a really desperate urge to contact me, you may try to email me at [teascade@gmail.com](mailto:teascade@gmail.com) - -_(By the way, don't get tooo attached to these sites, I intend to rework my websites some day)_ diff --git a/src/about.toml b/src/about.toml new file mode 100644 index 0000000..a5de2f0 --- /dev/null +++ b/src/about.toml @@ -0,0 +1,11 @@ +[page] +html_path = "index.html" +title = "Teascade | About" +description = "Game dev, artist and a philosopher featuring very bad jokes." +content_path = "about.md" +#favicon = "/favicon.png" +#before_navbar_url = "/navbar.html" +#before_content_url = "/before_content.html" +#after_content_url = "/after_content.html" +#javascript = ["Additional JavaScript"] +#css = ["Additional CSS"] \ No newline at end of file diff --git a/src/blog.md b/src/blog.md index 60a8c27..4724614 100644 --- a/src/blog.md +++ b/src/blog.md @@ -2,10 +2,6 @@ Blog ==== Welcome to my weird and messy blog! -Also remember to check out my Twitter [@Teascade](https://twitter.com/teascade) +Also remember to check out my Mastodong [@Teascade@cybergay.space](https://cybergay.space) - +[from_toml$src/from_toml/blog.toml] \ No newline at end of file diff --git a/src/blog.toml b/src/blog.toml new file mode 100644 index 0000000..458daff --- /dev/null +++ b/src/blog.toml @@ -0,0 +1,11 @@ +[page] +html_path = "blog/index.html" +title = "Teascade | Blog" +description = "The things that I have blogged about." +content_path = "blog.md" +#favicon = "/favicon.png" +#before_navbar_url = "/navbar.html" +#before_content_url = "/before_content.html" +#after_content_url = "/after_content.html" +#javascript = ["Additional JavaScript"] +#css = ["Additional CSS"] \ No newline at end of file diff --git a/src/blogposts/161213_0000_longtime.md b/src/blogposts/beenalongtime.md similarity index 100% rename from src/blogposts/161213_0000_longtime.md rename to src/blogposts/beenalongtime.md diff --git a/src/blogposts/beenalongtime.toml b/src/blogposts/beenalongtime.toml new file mode 100644 index 0000000..b106e88 --- /dev/null +++ b/src/blogposts/beenalongtime.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/beenalongtime/index.html" +title = "Teascade | Blog | It’s been a long time, isn’t it?" +description = "It’s been a long time, isn’t it?" +content_path = "beenalongtime.md" \ No newline at end of file diff --git a/src/blogposts/060416_0000_bestyears.md b/src/blogposts/bestworstyears.md similarity index 100% rename from src/blogposts/060416_0000_bestyears.md rename to src/blogposts/bestworstyears.md diff --git a/src/blogposts/bestworstyears.toml b/src/blogposts/bestworstyears.toml new file mode 100644 index 0000000..ffc4a5d --- /dev/null +++ b/src/blogposts/bestworstyears.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/bestworstyears/index.html" +title = "Teascade | Blog | How the “best years of my life” are quickly becoming the worst" +description = "How the “best years of my life” are quickly becoming the worst" +content_path = "bestworstyears.md" \ No newline at end of file diff --git a/src/blogposts/blogposts.json b/src/blogposts/blogposts.json deleted file mode 100644 index 02d7a7f..0000000 --- a/src/blogposts/blogposts.json +++ /dev/null @@ -1,57 +0,0 @@ -[ - { - "title": "First blogpost!", - "source": "021116_2346_first.html", - "time": 1478123391045 - }, - { - "title": "How the “best years of my life” are quickly becoming the worst", - "source": "060416_0000_bestyears.html", - "time": 1459904400000 - }, - { - "title": "The matrix is (uncertainly) real!", - "source": "311015_0000_matrix.html", - "time": 1440896400000 - }, - { - "title": "Renovated grand opening", - "source": "281016_0000_grand.html", - "time": 1440723600000 - }, - { - "title": "January update", - "source": "230114_0000_january.html", - "time": 1390442400001 - }, - { - "title": "Updates updates..", - "source": "230114_0000_updates.html", - "time": 1390442400000 - }, - { - "title": "It’s been a long time, isn’t it?", - "source": "161213_0000_longtime.html", - "time": 1387159200000 - }, - { - "title": "‘Much’ going on", - "source": "220913_0000_much.html", - "time": 1379811600000 - }, - { - "title": "My absence", - "source": "160813_0000_absence.html", - "time": 1376614800000 - }, - { - "title": "My first meaningful post", - "source": "060813_0000_meaningful.html", - "time": 1375750800001 - }, - { - "title": "The Creation", - "source": "060813_0000_creation.html", - "time": 1375750800000 - } -] diff --git a/src/blogposts/060813_0000_creation.md b/src/blogposts/creation.md similarity index 100% rename from src/blogposts/060813_0000_creation.md rename to src/blogposts/creation.md diff --git a/src/blogposts/creation.toml b/src/blogposts/creation.toml new file mode 100644 index 0000000..5c48440 --- /dev/null +++ b/src/blogposts/creation.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/creation/index.html" +title = "Teascade | Blog | Creation" +description = "Creation" +content_path = "creation.md" \ No newline at end of file diff --git a/src/blogposts/021116_2346_first.md b/src/blogposts/firstblogpost.md similarity index 100% rename from src/blogposts/021116_2346_first.md rename to src/blogposts/firstblogpost.md diff --git a/src/blogposts/firstblogpost.toml b/src/blogposts/firstblogpost.toml new file mode 100644 index 0000000..5194961 --- /dev/null +++ b/src/blogposts/firstblogpost.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/firstblogpost/index.html" +title = "Teascade | Blog | First blogpost!" +description = "First blogpost!" +content_path = "firstblogpost.md" \ No newline at end of file diff --git a/src/blogposts/060813_0000_meaningful.md b/src/blogposts/firstmeaningful.md similarity index 100% rename from src/blogposts/060813_0000_meaningful.md rename to src/blogposts/firstmeaningful.md diff --git a/src/blogposts/firstmeaningful.toml b/src/blogposts/firstmeaningful.toml new file mode 100644 index 0000000..c5fcca9 --- /dev/null +++ b/src/blogposts/firstmeaningful.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/firstmeaningful/index.html" +title = "Teascade | Blog | My first meaningful post" +description = "My first meaningful post" +content_path = "firstmeaningful.md" \ No newline at end of file diff --git a/src/blogposts/230114_0000_january.md b/src/blogposts/januaryupdate.md similarity index 100% rename from src/blogposts/230114_0000_january.md rename to src/blogposts/januaryupdate.md diff --git a/src/blogposts/januaryupdate.toml b/src/blogposts/januaryupdate.toml new file mode 100644 index 0000000..cd36ac0 --- /dev/null +++ b/src/blogposts/januaryupdate.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/januaryupdate/index.html" +title = "Teascade | Blog | January update" +description = "January update" +content_path = "januaryupdate.md" \ No newline at end of file diff --git a/src/blogposts/311015_0000_matrix.md b/src/blogposts/matrixisreal.md similarity index 100% rename from src/blogposts/311015_0000_matrix.md rename to src/blogposts/matrixisreal.md diff --git a/src/blogposts/matrixisreal.toml b/src/blogposts/matrixisreal.toml new file mode 100644 index 0000000..cad16ba --- /dev/null +++ b/src/blogposts/matrixisreal.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/matrixisreal/index.html" +title = "Teascade | Blog | The matrix is (uncertainly) real!" +description = "The matrix is (uncertainly) real!" +content_path = "matrixisreal.md" \ No newline at end of file diff --git a/src/blogposts/220913_0000_much.md b/src/blogposts/muchgoingon.md similarity index 100% rename from src/blogposts/220913_0000_much.md rename to src/blogposts/muchgoingon.md diff --git a/src/blogposts/muchgoingon.toml b/src/blogposts/muchgoingon.toml new file mode 100644 index 0000000..caf7e36 --- /dev/null +++ b/src/blogposts/muchgoingon.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/muchgoingon/index.html" +title = "Teascade | Blog | 'Much' going on" +description = "'Much' going on" +content_path = "muchgoingon.md" \ No newline at end of file diff --git a/src/blogposts/160813_0000_absence.md b/src/blogposts/myabsence.md similarity index 100% rename from src/blogposts/160813_0000_absence.md rename to src/blogposts/myabsence.md diff --git a/src/blogposts/myabsence.toml b/src/blogposts/myabsence.toml new file mode 100644 index 0000000..7cc924b --- /dev/null +++ b/src/blogposts/myabsence.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/myabsence/index.html" +title = "Teascade | Blog | My absence" +description = "My absence" +content_path = "myabsence.md" \ No newline at end of file diff --git a/src/blogposts/281016_0000_grand.md b/src/blogposts/renovatedgrandopening.md similarity index 100% rename from src/blogposts/281016_0000_grand.md rename to src/blogposts/renovatedgrandopening.md diff --git a/src/blogposts/renovatedgrandopening.toml b/src/blogposts/renovatedgrandopening.toml new file mode 100644 index 0000000..fd0559c --- /dev/null +++ b/src/blogposts/renovatedgrandopening.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/renovatedgrandopening/index.html" +title = "Teascade | Blog | Renovated grand opening" +description = "Renovated grand opening" +content_path = "renovatedgrandopening.md" \ No newline at end of file diff --git a/src/blogposts/230114_0000_updates.md b/src/blogposts/updatesupdates.md similarity index 100% rename from src/blogposts/230114_0000_updates.md rename to src/blogposts/updatesupdates.md diff --git a/src/blogposts/updatesupdates.toml b/src/blogposts/updatesupdates.toml new file mode 100644 index 0000000..eaa6dc4 --- /dev/null +++ b/src/blogposts/updatesupdates.toml @@ -0,0 +1,5 @@ +[page] +html_path = "blog/updatesupdates/index.html" +title = "Teascade | Blog | Updates updates.." +description = "Updates updates.." +content_path = "updatesupdates.md" \ No newline at end of file diff --git a/src/from_toml/blog.toml b/src/from_toml/blog.toml new file mode 100644 index 0000000..0426f32 --- /dev/null +++ b/src/from_toml/blog.toml @@ -0,0 +1,60 @@ +[meta] +rendered = ["firstblogpost", "bestworstyears", "matrixisreal", "renovatedgrandopening", "januaryupdate", "updatesupdates", "beenalongtime", "muchgoingon", "myabsence", "firstmeaningful", "creation"] +template = "src/from_toml/templates/blogpost.html" +list_classes = "blogposts" +is_list = true + +[list.firstblogpost] +link = "/blog/firstblogpost/index.html" +title = "First blogpost!" +timestamp = "Wed, 02 Nov 2016" + +[list.bestworstyears] +link = "/blog/bestworstyears/index.html" +title = "How the “best years of my life” are quickly becoming the worst" +timestamp = "Wed, 06 Apr 2016" + +[list.matrixisreal] +link = "/blog/matrixisreal/index.html" +title = "The matrix is (uncertainly) real!" +timestamp = "Sun, 30 Aug 2015" + +[list.renovatedgrandopening] +link = "/blog/renovatedgrandopening/index.html" +title = "Renovated grand opening" +timestamp = "Fri, 28 Aug 2015" + +[list.januaryupdate] +link = "/blog/januaryupdate/index.html" +title = "January update" +timestamp = "Thu, 23 Jan 2014" + +[list.updatesupdates] +link = "/blog/updatesupdates/index.html" +title = "Updates updates.." +timestamp = "Thu, 23 Jan 2014" + +[list.beenalongtime] +link = "/blog/beenalongtime/index.html" +title = "It’s been a long time, isn’t it?" +timestamp = "Mon, 16 Dec 2013" + +[list.muchgoingon] +link = "/blog/muchgoingon/index.html" +title = "‘Much’ going on" +timestamp = "Sun, 22 Sep 2013" + +[list.myabsence] +link = "/blog/myabsence/index.html" +title = "My absence" +timestamp = "Fri, 16 Aug 2013" + +[list.firstmeaningful] +link = "/blog/firstmeaningful/index.html" +title = "My first meaningful post" +timestamp = "Tue, 06 Aug 2013" + +[list.creation] +link = "/blog/creation/index.html" +title = "Creation" +timestamp = "Tue, 06 Aug 2013" \ No newline at end of file diff --git a/src/from_toml/games_itch.toml b/src/from_toml/games_itch.toml new file mode 100644 index 0000000..b4ba659 --- /dev/null +++ b/src/from_toml/games_itch.toml @@ -0,0 +1,8 @@ +[meta] +rendered = ["game"] +template = "src/from_toml/templates/itch.html" +list_classes = "" +is_list = false + +[list.game] +id = "94673" diff --git a/src/from_toml/some_list.toml b/src/from_toml/some_list.toml new file mode 100644 index 0000000..32fa3d7 --- /dev/null +++ b/src/from_toml/some_list.toml @@ -0,0 +1,11 @@ +[meta] +rendered = ["one_thing", "another_thing"] +template = "test_page/resources/template.html" +list_classes = "test_class" +is_list = true + +[list.one_thing] +thing = "jotain" + +[list.another_thing] +thing = "jotain muuta" \ No newline at end of file diff --git a/src/from_toml/templates/blogpost.html b/src/from_toml/templates/blogpost.html new file mode 100644 index 0000000..bd128bc --- /dev/null +++ b/src/from_toml/templates/blogpost.html @@ -0,0 +1,4 @@ + +

{{title}}

+

{{timestamp}}

+
\ No newline at end of file diff --git a/src/from_toml/templates/itch.html b/src/from_toml/templates/itch.html new file mode 100644 index 0000000..443d8af --- /dev/null +++ b/src/from_toml/templates/itch.html @@ -0,0 +1,2 @@ + \ No newline at end of file diff --git a/src/games.md b/src/games.md index 9ea3478..9271cdf 100644 --- a/src/games.md +++ b/src/games.md @@ -1,13 +1,13 @@ Games ===== -I have a tonne of games none of which are released! You can check some of them from my [selfhosted git](https://git.teasca.de/teascade) (Or [GitHub](https://github.com/teascade) if you're sceptical). +I have a tonne of games none of which are released! You can check some of them from my [selfhosted git](https://git.teasca.de/teascade) (Or [GitHub](https://github.com/teascade) if you're sceptical). Once I release them I'll make sure to post them here and on [my itch.io](https://teascade.itch.io)! -## [Saltosion]$(/saltosion) +### [Saltosion](/saltosion) I have this organization though ([See GitHub!](https://github.com/saltosion)), which I -sometimes use when collaborating games with other people. +sometimes use when collaborating games with other people. The games made under this organization then are listed here (aswell with [Saltosion's own itch.io](https://saltosion.itch.io)) -[itch$94673] +[from_toml$src/from_toml/games_itch.toml] diff --git a/src/games.toml b/src/games.toml new file mode 100644 index 0000000..4d005c0 --- /dev/null +++ b/src/games.toml @@ -0,0 +1,11 @@ +[page] +html_path = "games/index.html" +title = "Teascade | Games" +description = "The games I've done, which is not many." +content_path = "games.md" +#favicon = "/favicon.png" +#before_navbar_url = "/navbar.html" +#before_content_url = "/before_content.html" +#after_content_url = "/after_content.html" +#javascript = ["Additional JavaScript"] +#css = ["Additional CSS"] \ No newline at end of file diff --git a/src/injections/after_content.html b/src/injections/after_content.html new file mode 100644 index 0000000..50b9e11 --- /dev/null +++ b/src/injections/after_content.html @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/src/injections/before_navbar.html b/src/injections/before_navbar.html new file mode 100644 index 0000000..ef16cf3 --- /dev/null +++ b/src/injections/before_navbar.html @@ -0,0 +1,7 @@ +
+ +
+
+ +
+
\ No newline at end of file diff --git a/src/resources/css/blogposts.css b/src/resources/css/blogposts.css new file mode 100644 index 0000000..63e423f --- /dev/null +++ b/src/resources/css/blogposts.css @@ -0,0 +1,37 @@ +.blogposts { + padding: 0; + list-style: none; +} + +.blogposts > li a { + display: table; + width: var(--content-width); + transition: 0.2s; + background-color: #222; + overflow: scroll; + text-decoration: none; + padding: 1em; + padding-top: 0.5em; + color: var(--color-navbar-fg); +} + +.blogposts > li:hover a { + background-color: #1a1a1a; +} + +.blogposts > li a > * { + margin: 0; +} + +.blogposts > li a:focus { + outline: none; + background-color: #1a1a1a; +} + +.blogposts h3 { + color: var(--highlight-color); +} +.blogposts .timestamp { + color: #868282; + font-style: italic; +} \ No newline at end of file diff --git a/src/resources/css/custom.css b/src/resources/css/custom.css new file mode 100644 index 0000000..24b2baf --- /dev/null +++ b/src/resources/css/custom.css @@ -0,0 +1,102 @@ +:root { + --color-main: #272727 !important; + --color-navbar-bg: #252525 !important; + --color-navbar-button: #222 !important; + --color-navbar-button-hover: #1a1a1a !important; + --color-navbar-button-focus: #161616 !important; + --color-navbar-border-bottom: #252525 !important; + + --color-content-bg: #282828 !important; + --color-content-fg: #cfcfcf !important; + + --highlight-color: #ff0091 !important; + + --content-width: calc(100% - 4em) !important; + --navbar-width: 80% !important; +} + +.container { + width: 100%; + height: 100%; + display: inline-flex; + flex-direction: row; +} + +.teacup { + flex: auto; + background-color: #1f1f1f; + text-align: center; + height: 100%; + display:flex; + justify-content:center; + align-items:center; +} + +.teacup img { + width: 70%; + margin: auto; +} + +article > *:last-child { + padding-bottom: 2em; +} + +.content { + flex: auto; + width: 30%; + height: 100%; + overflow: auto; +} + + +h1 { + color: var(--highlight-color); +} + +article p, article h2, article h3, hr { + margin-top: 1em; +} + +.itch-embedded { + max-width: var(--content-width); +} + +@media (max-width: 900px) { + .container { + flex-direction: column; + } + + .teacup { + height: 10%; + } + .teacup img { + height: 100%; + } + + .content { + width: 100%; + } + + :root { + --content-side-padding: 0%; + --content-width: 100%; + --navbar-text-size: 30px; + --content-text-size: 1.5em; + --navbar-width: 100% !important; + } + + nav { + height: auto; + } + + nav li { + display: block; + } + + nav li a { + text-align: center; + padding-top: 0.2em; + padding-bottom: 0.2em; + border: solid 3px var(--color-navbar-button-hover); + } +} \ No newline at end of file diff --git a/src/resources/css/loadbar.css b/src/resources/css/loadbar.css new file mode 100644 index 0000000..b7fe5cb --- /dev/null +++ b/src/resources/css/loadbar.css @@ -0,0 +1,16 @@ +#loadbar { + position: absolute; + top: 0; + left: 0; + height: 0.2em; + background-color: var(--highlight-color); + z-index: 1; + transition: 0.1s; + + width: 0%; + opacity: 0; +} + +#loadbar.loading { + opacity: 1; +} \ No newline at end of file diff --git a/external_img/reid_logo.png b/src/resources/external_img/reid_logo.png similarity index 100% rename from external_img/reid_logo.png rename to src/resources/external_img/reid_logo.png diff --git a/src/resources/img/favicon.png b/src/resources/img/favicon.png new file mode 100644 index 0000000..e263d2b Binary files /dev/null and b/src/resources/img/favicon.png differ diff --git a/src/resources/img/teascade.svg b/src/resources/img/teascade.svg new file mode 100644 index 0000000..4b5a368 --- /dev/null +++ b/src/resources/img/teascade.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/resources/img/teascade_cropped.svg b/src/resources/img/teascade_cropped.svg new file mode 100644 index 0000000..17a45c5 --- /dev/null +++ b/src/resources/img/teascade_cropped.svg @@ -0,0 +1,245 @@ + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/resources/js/loadbar.js b/src/resources/js/loadbar.js new file mode 100644 index 0000000..904bf7c --- /dev/null +++ b/src/resources/js/loadbar.js @@ -0,0 +1,19 @@ + +_default_js_pageloader.begin = () => { + let loadbar = document.getElementById("loadbar"); + loadbar.classList = "loading"; + loadbar.style.width = "5%"; +} + +_default_js_pageloader.progress = (url, current, total) => { + let loadbar = document.getElementById("loadbar"); + let percent = (current / total) * 100; + loadbar.style.width = percent + "%"; +} + +_default_js_pageloader.loaded = (url, after_load) => { + let loadbar = document.getElementById("loadbar"); + loadbar.style.width = "100%"; + loadbar.classList = ""; + setTimeout(after_load, 100); +} \ No newline at end of file diff --git a/terminal/COPYING b/src/resources/terminal/COPYING similarity index 100% rename from terminal/COPYING rename to src/resources/terminal/COPYING diff --git a/terminal/COPYING-GPL b/src/resources/terminal/COPYING-GPL similarity index 100% rename from terminal/COPYING-GPL rename to src/resources/terminal/COPYING-GPL diff --git a/terminal/README.md b/src/resources/terminal/README.md similarity index 100% rename from terminal/README.md rename to src/resources/terminal/README.md diff --git a/terminal/audio/gripofnature.ogg b/src/resources/terminal/audio/gripofnature.ogg similarity index 100% rename from terminal/audio/gripofnature.ogg rename to src/resources/terminal/audio/gripofnature.ogg diff --git a/terminal/css/custom.css b/src/resources/terminal/css/custom.css similarity index 100% rename from terminal/css/custom.css rename to src/resources/terminal/css/custom.css diff --git a/terminal/css/custom.css.map b/src/resources/terminal/css/custom.css.map similarity index 100% rename from terminal/css/custom.css.map rename to src/resources/terminal/css/custom.css.map diff --git a/terminal/css/jsterminal.css b/src/resources/terminal/css/jsterminal.css similarity index 100% rename from terminal/css/jsterminal.css rename to src/resources/terminal/css/jsterminal.css diff --git a/terminal/css/jsterminal.css.map b/src/resources/terminal/css/jsterminal.css.map similarity index 100% rename from terminal/css/jsterminal.css.map rename to src/resources/terminal/css/jsterminal.css.map diff --git a/terminal/index.html b/src/resources/terminal/index.html similarity index 100% rename from terminal/index.html rename to src/resources/terminal/index.html diff --git a/terminal/js/jash.js b/src/resources/terminal/js/jash.js similarity index 100% rename from terminal/js/jash.js rename to src/resources/terminal/js/jash.js diff --git a/terminal/js/jsterminal.js b/src/resources/terminal/js/jsterminal.js similarity index 100% rename from terminal/js/jsterminal.js rename to src/resources/terminal/js/jsterminal.js diff --git a/terminal/js/jsx.js b/src/resources/terminal/js/jsx.js similarity index 100% rename from terminal/js/jsx.js rename to src/resources/terminal/js/jsx.js diff --git a/terminal/js/jsxcommands.js b/src/resources/terminal/js/jsxcommands.js similarity index 100% rename from terminal/js/jsxcommands.js rename to src/resources/terminal/js/jsxcommands.js diff --git a/terminal/js/jukebox.js b/src/resources/terminal/js/jukebox.js similarity index 100% rename from terminal/js/jukebox.js rename to src/resources/terminal/js/jukebox.js diff --git a/terminal/js/main.js b/src/resources/terminal/js/main.js similarity index 100% rename from terminal/js/main.js rename to src/resources/terminal/js/main.js diff --git a/terminal/js/soundtest.js b/src/resources/terminal/js/soundtest.js similarity index 100% rename from terminal/js/soundtest.js rename to src/resources/terminal/js/soundtest.js diff --git a/terminal/js/std.js b/src/resources/terminal/js/std.js similarity index 100% rename from terminal/js/std.js rename to src/resources/terminal/js/std.js diff --git a/terminal/js/testprogram.js b/src/resources/terminal/js/testprogram.js similarity index 100% rename from terminal/js/testprogram.js rename to src/resources/terminal/js/testprogram.js diff --git a/terminal/lib/jquery-3.1.0.min.js b/src/resources/terminal/lib/jquery-3.1.0.min.js similarity index 100% rename from terminal/lib/jquery-3.1.0.min.js rename to src/resources/terminal/lib/jquery-3.1.0.min.js diff --git a/terminal/scss/custom.scss b/src/resources/terminal/scss/custom.scss similarity index 100% rename from terminal/scss/custom.scss rename to src/resources/terminal/scss/custom.scss diff --git a/terminal/scss/jsterminal.scss b/src/resources/terminal/scss/jsterminal.scss similarity index 100% rename from terminal/scss/jsterminal.scss rename to src/resources/terminal/scss/jsterminal.scss diff --git a/terminal/ts/jash.ts b/src/resources/terminal/ts/jash.ts similarity index 100% rename from terminal/ts/jash.ts rename to src/resources/terminal/ts/jash.ts diff --git a/terminal/ts/jsterminal.ts b/src/resources/terminal/ts/jsterminal.ts similarity index 100% rename from terminal/ts/jsterminal.ts rename to src/resources/terminal/ts/jsterminal.ts diff --git a/terminal/ts/jsx.ts b/src/resources/terminal/ts/jsx.ts similarity index 100% rename from terminal/ts/jsx.ts rename to src/resources/terminal/ts/jsx.ts diff --git a/terminal/ts/jsxcommands.ts b/src/resources/terminal/ts/jsxcommands.ts similarity index 100% rename from terminal/ts/jsxcommands.ts rename to src/resources/terminal/ts/jsxcommands.ts diff --git a/terminal/ts/jukebox.ts b/src/resources/terminal/ts/jukebox.ts similarity index 100% rename from terminal/ts/jukebox.ts rename to src/resources/terminal/ts/jukebox.ts diff --git a/terminal/ts/main.ts b/src/resources/terminal/ts/main.ts similarity index 100% rename from terminal/ts/main.ts rename to src/resources/terminal/ts/main.ts diff --git a/terminal/ts/soundtest.ts b/src/resources/terminal/ts/soundtest.ts similarity index 100% rename from terminal/ts/soundtest.ts rename to src/resources/terminal/ts/soundtest.ts diff --git a/terminal/ts/std.ts b/src/resources/terminal/ts/std.ts similarity index 100% rename from terminal/ts/std.ts rename to src/resources/terminal/ts/std.ts diff --git a/terminal/ts/testprogram.ts b/src/resources/terminal/ts/testprogram.ts similarity index 100% rename from terminal/ts/testprogram.ts rename to src/resources/terminal/ts/testprogram.ts diff --git a/terminal/ts/typedefs/jquery.d.ts b/src/resources/terminal/ts/typedefs/jquery.d.ts similarity index 100% rename from terminal/ts/typedefs/jquery.d.ts rename to src/resources/terminal/ts/typedefs/jquery.d.ts diff --git a/terminal/tsconfig.json b/src/resources/terminal/tsconfig.json similarity index 100% rename from terminal/tsconfig.json rename to src/resources/terminal/tsconfig.json diff --git a/src/saltosion.md b/src/saltosion.md index 1f3ce6d..ba7d803 100644 --- a/src/saltosion.md +++ b/src/saltosion.md @@ -1,7 +1,7 @@ # Saltosion -Saltosion is an organization founded by me, [Teascade]$(/about) +Saltosion is an organization founded by me, [Teascade](/about) which I sometimes use, when collaborating with other devs and making some art (and games sometimes) @@ -10,6 +10,6 @@ Saltosion also has a Here's also all the games made by Saltosion! -[itch$94673] +[from_toml$src/from_toml/games_itch.toml] -By [Teascade]$(/about) and [Excitedneon](https://neon.moe/) +By [Teascade](/about) and [Neonmoe](https://neon.moe/) diff --git a/src/saltosion.toml b/src/saltosion.toml new file mode 100644 index 0000000..661adab --- /dev/null +++ b/src/saltosion.toml @@ -0,0 +1,11 @@ +[page] +html_path = "saltosion/index.html" +title = "Teascade | Saltosion" +description = "The games I've done with other people." +content_path = "saltosion.md" +#favicon = "/favicon.png" +#before_navbar_url = "/navbar.html" +#before_content_url = "/before_content.html" +#after_content_url = "/after_content.html" +#javascript = ["Additional JavaScript"] +#css = ["Additional CSS"] \ No newline at end of file diff --git a/src/scss/main.scss b/src/scss/main.scss deleted file mode 100644 index bf51677..0000000 --- a/src/scss/main.scss +++ /dev/null @@ -1,192 +0,0 @@ -$pink: #ff0091; -$regular: #fff; -$dark: #1f1f1f; - -body, html { - background-color: $dark; - font-family: helvetica, sans-serif; - width: 100%; - height: 100%; - margin: 0; - padding: 0; -} - -@media (max-width: 800px) { - .cont { - display: block !important; - width: 100%; - - .teacup { - height: auto !important; - - img { - margin-right: 20%; - width: 40% !important; - height: auto !important; - padding-top: 1em; - padding-bottom: 1em; - } - } - - .stuffarea { - margin-left: 10%; - padding-right: 0 !important; - width: 80% !important; - height: auto !important; - - ul.navbar { - padding: 0 !important; - padding-left: 0.5em !important; - } - } - } -} - -.cont { - display: inline-flex; - flex-direction: row; - width: 100%; - height: 100%; - - .teacup { - flex: auto; - height: 100%; - text-align: center; - display:flex; - justify-content:center; - align-items:center; - background-color: $dark - #040404; - - img { - width: 75%; - max-height: 100%; - height: auto; - } - - } - - .stuffarea { - width: 45%; - height: 100%; - padding-left: 5%; - padding-right: 5%; - margin-bottom: 10%; - overflow-y: auto; - - .hiddenarea { - visibility: hidden; - height: 0; - width: 0; - overflow: hidden; - margin: 0; - padding: 0; - } - - div { - margin: 0; - padding: 0; - padding-bottom: 15%; - } - - - @for $i from 1 through 6 { - h#{$i} { - margin: 0; - color: $pink; - } - } - - h2.blogtitle { - padding: 0.5em; - color: $pink; - transition: 0.2s; - margin: 0; - } - - h2.blogtitle:hover { - cursor: pointer; - background-color: $dark - #060606; - transition: 0.2s; - } - - a { - color: $pink; - } - - .timestamp { - color: $dark + #444; - vertical-align: middle; - font-size: 15px; - } - - p { - color: $regular; - } - - li { - color: $regular; - } - - ul.navbar { - - padding-left: 1em; - list-style: none; - white-space: nowrap; - padding-bottom: 1em; - - a:focus { - outline: none; - font-style: none; - border: none; - } - - li { - display: inline-block; - padding: 0.5em; - background-color: $dark; - margin: -3px; - transition: 0.2s; - color: $regular - #222; - border-right: 2px solid $dark + #111; - transform: skewX(-20deg); - - .button { - transform: skewX(20deg); - } - } - li:first-of-type { - border-left: 2px solid $dark + #111; - } - li:hover { - background-color: $dark + #111; - transition: 0.2s; - cursor: pointer; - } - - li.active { - background-color: $dark + #060606; - } - - li.active:hover { - background-color: $dark + #060606 + #111; - } - } - - iframe.itch-embedded { - width: 100%; - max-width: 700px; - } - - .js-link { - text-decoration: underline; - } - - .js-link:hover { - cursor: pointer; - } - } -} - -noscript { - color: $regular; -} diff --git a/src/template.html b/src/template.html deleted file mode 100644 index e760b29..0000000 --- a/src/template.html +++ /dev/null @@ -1,69 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Teascade | $page$ - - -
-
- -
- -
- -
- $about_content$ -
-
- $games_content$ -
-
- $blog_content$ -
-
- $saltosion_content$ -
-
- -
-
-
- - diff --git a/src/ts/main.ts b/src/ts/main.ts deleted file mode 100644 index 175f622..0000000 --- a/src/ts/main.ts +++ /dev/null @@ -1,156 +0,0 @@ - -interface Window { - currPage: string; - currOpacity: number; - blogpostDataStr: string; - blogpostData: {title: string, source: string, time: number}[]; -} - - -function main(page: string) { - window.currPage = page; - window.currOpacity = 1; - - document.getElementById("about-link").removeAttribute("href"); - document.getElementById("games-link").removeAttribute("href"); - document.getElementById("blog-link").removeAttribute("href"); - - document.getElementById("about-link").onclick = () => openPage("about"); - document.getElementById("games-link").onclick = () => openPage("games"); - document.getElementById("blog-link").onclick = () => openPage("blog"); - - let links = document.getElementsByClassName("js-link"); - for (let i = 0; i < links.length; i++) { - let link: HTMLLinkElement = links[i]; - let href = link.getAttribute("href").split("/").filter(f => f != "")[0]; - link.removeAttribute("href"); - link.onclick = () => { - openPage(href); - } - } - - addBlogposts(); - - let search = window.location.search; - if (search != "") { - setBlogTextOnSearch(search); - } - - window.onpopstate = () => { - let page = window.location.pathname.split("/").filter(f => f != "")[0]; - let search = window.location.search.slice(0, -1); - - if (page == "blogtext") { - setBlogTextOnSearch(search); - } - openPage(page || "about", page, false); - } -} - -function openPage(page: string, new_url: string = null, renew_history=true) { - if (page == window.currPage) { return; } - - slideOpacity(() => { - let link = document.getElementById(window.currPage + "-link"); - let new_link = document.getElementById(page + "-link"); - console.log(new_link); - if (link) { - link.children[0].className = "" - } if (new_link) { - new_link.children[0].className = "active" - } - - document.getElementById(window.currPage).className = "hiddenarea"; - window.currPage = page; - document.getElementById(page).style.opacity = "0"; - document.getElementById(page).className = ""; - let target = new_url || page; - let targetPg = "/" + target; - if (target == "about") { target = ""; targetPg = ""; }; - - if (renew_history) { - window.history.pushState(target, target, `${targetPg}/`); - } - document.title = "Teascade | " + page; - - document.getElementsByClassName("stuffarea")[0].scrollTop = 0; - - slideOpacity(() => { - - }, 1.5); - }, -1.5); -} - -function slideOpacity(callback: () => void, step: number) { - let currElem = document.getElementById(window.currPage); - let id = setInterval(() => { - window.currOpacity += 0.02 * step; - currElem.style.opacity = "" + window.currOpacity; - if ((window.currOpacity <= 0 && step < 0) || (window.currOpacity >= 1 && step > 0)) { - clearInterval(id); - callback(); - } - }, 2); -} - -function addBlogposts() { - window.blogpostData = JSON.parse(window.blogpostDataStr); - - let div = document.getElementById("blog"); - let blogpostData = window.blogpostData.sort((a, b) => {return b.time - a.time}); - - blogpostData.forEach((val) => { - let title = document.createElement("h2"); - title.className = "blogtitle" - title.innerHTML = val.title; - let timestamp = document.createElement("p"); - timestamp.className += "timestamp"; - timestamp.innerHTML = new Date(val.time).toUTCString(); - title.appendChild(timestamp); - - div.appendChild(title); - - title.onclick = () => { - openPage("blogtext", "blogtext?id=" + val.source.slice(0, -5)); - setBlogText(val.source, new Date(val.time).toUTCString()); - }; - }) -} - -function setBlogTextOnSearch(search: string) { - search = search.slice(1, -1); - let parts = search.split("="); - if (parts[0] == "id") { - - let timestamp: string; - for (let i in window.blogpostData) { - console.log(window.blogpostData[i].source); - console.log(search + ".html"); - if (window.blogpostData[i].source == parts[1] + ".html") { - timestamp = new Date(window.blogpostData[i].time).toUTCString(); - } - } - setBlogText(parts[1] + ".html", timestamp); - } -} - -function setBlogText(source: string, time: string) { - let xmlhttp = new XMLHttpRequest(); - - xmlhttp.onreadystatechange = () => { - if (xmlhttp.readyState == XMLHttpRequest.DONE) { - if (xmlhttp.status == 200) { - document.getElementById("blogtext").innerHTML = xmlhttp.responseText; - - let timestamp = document.createElement("p"); - timestamp.className += "timestamp"; - timestamp.innerHTML = time; - - document.getElementById("blogtext").appendChild(timestamp); - } - } - } - - xmlhttp.open("GET", "/blogposts/" + source, true); - xmlhttp.send(); -} diff --git a/tsconfig.json b/tsconfig.json deleted file mode 100644 index 35a6e65..0000000 --- a/tsconfig.json +++ /dev/null @@ -1,13 +0,0 @@ -{ - "compilerOptions": { - "rootDir": "src/ts", - "outDir": "js", - "module": "commonjs", - "target": "es5", - "noImplicitAny": false, - "sourceMap": false - }, - "exclude": [ - "node_modules" - ] -}