Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
20 commits
Select commit Hold shift + click to select a range
d825b16
New research category and funky formatting
KorrAn34 May 4, 2026
13d3bd5
Page turning in the Thavmonomicon
KorrAn34 May 5, 2026
cd5aa51
Fixed the underlining and persistent widget bugs
KorrAn34 May 5, 2026
6d5060b
Gentle PageTurning touches
KorrAn34 May 5, 2026
1558902
Merge remote-tracking branch 'upstream/0.13' into playground
KorrAn34 May 6, 2026
7caad42
Additionally pushed changed jsons
KorrAn34 May 6, 2026
a91200e
Very WIP dynamic research entry rendering
KorrAn34 May 6, 2026
63a3219
Revert "Very WIP dynamic research entry rendering"
KorrAn34 May 7, 2026
5502150
Reapply "Very WIP dynamic research entry rendering"
KorrAn34 May 7, 2026
7d82309
Progress towards dynamic rendering mainly EntryScreen.kt
KorrAn34 May 9, 2026
557d77e
More progress towards dynamic, made DynamicRenderingHelper.kt
KorrAn34 May 10, 2026
2f1f233
Theory of dynamic rendering finished, time to test
KorrAn34 May 10, 2026
c2bb5d0
Test#1 actually registered PageFeatureTypes, but getting null font
KorrAn34 May 10, 2026
3cd12c9
Basic paragraph and title dynamic rendering done, polishing and figur…
KorrAn34 May 12, 2026
abb15b9
I actually did it, adjustable font size has got nothing on me!
KorrAn34 May 12, 2026
a9ea121
Adjustable font size done, need to discuss config options.
KorrAn34 May 25, 2026
a18357d
Started working towards parallax bookscreen dragging.
KorrAn34 May 26, 2026
ee7073e
Added parallax-scrolling, some tuning of the parameters may be in order.
KorrAn34 May 27, 2026
5d96125
Fixed the awful research entry crash bug and also added fading in and…
KorrAn34 May 28, 2026
ac1c7ac
Code cleanup
KorrAn34 May 28, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
44 changes: 34 additions & 10 deletions src/generated/resources/assets/thavma/lang/en_us.json
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@
"item.thavma.basic_amulet": "Basic Amulet",
"item.thavma.basic_belt": "Basic Belt",
"item.thavma.basic_ring": "Basic Ring",
"item.thavma.book": "Elements of Thavma",
"item.thavma.book": "Elements",
"item.thavma.charm_of_the_dawn": "Charm of the Dawn",
"item.thavma.eye_of_warden": "Eye of Warden",
"item.thavma.fabric": "Infused Fabric",
Expand Down Expand Up @@ -162,25 +162,49 @@
"research.thavma.scroll_given": "You have received a research scroll",
"research.thavma.toast": "Research Complete!",
"research/category.thavma.alchemy": "Alchemy",
"research/category.thavma.story": "???",
"research/category.thavma.thavma": "Thavma",
"research/entry.thavma.alchemy.alchemy": "Alchemy",
"research/entry.thavma.story.story_test": "A Courtesy Call",
"research/entry.thavma.story.story_test.figure_feature0": "We're no strangers to love You know the rules and so do I A full commitment's what I'm thinking of You wouldn't get this from any other guy I just wanna tell you how I'm feeling Gotta make you understand Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you We've known each other for so long Your heart's been aching, but you're too shy to say it Inside, we both know what's been going on We know the game, and we're gonna play it And if you ask me how I'm feeling Don't tell me you're too blind to see Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you Ooh (Give you up) Ooh-ooh (Give you up) Ooh (Never gonna give, never gonna give) Give you up Ooh-ooh (Never gonna give, never gonna give) Give you up We've known each other for so long Your heart's been aching, but you're too shy to say it Inside, we both know what's been going on We know the game, and we're gonna play it I just wanna tell you how I'm feeling Gotta make you understand Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you Never gonna give you up Never gonna let you down Never gonna run around and desert you Never gonna make you cry Never gonna say goodbye Never gonna tell a lie and hurt you",
"research/entry.thavma.story.story_test.page0.paragraph0": "Lorem ipsum %s 1 sit amet,",
"research/entry.thavma.story.story_test.page0.paragraph1": "this story a great meaning haveth.",
"research/entry.thavma.story.story_test.page0.title": "A Courtesy Call 1",
"research/entry.thavma.story.story_test.page1.paragraph0": "Lorem dolor 2 sit amet,",
"research/entry.thavma.story.story_test.page1.paragraph1": "this story a great meaning haveth.",
"research/entry.thavma.story.story_test.page1.paragraph2": "",
"research/entry.thavma.story.story_test.page1.title": "A Courtesy Call 2",
"research/entry.thavma.story.story_test.page2.paragraph0": "Lorem lotrumatum dolor 3 sit amet,",
"research/entry.thavma.story.story_test.page2.paragraph1": "this story a great meaning haveth.",
"research/entry.thavma.story.story_test.page2.title": "A Courtesy Call 3",
"research/entry.thavma.story.story_test.paragraph_feature0": "As fate would have it, this paragraph will probably not start a page because it does not have the mustStartPage flag set to true, which is actually rather a worrisome tragedy. Somebody had better do something about it soon.",
"research/entry.thavma.story.story_test.paragraph_feature1": "This is an experiment simply due to the fact that I am testing out double-trim-indent behaviour! If this fails and I am left to contemplate my existence in the bottomless abyss that my mind is, I will be making phone calls real fast real soon. (I got my Karen haircut done yesterday so while you mongrels crawl about, I will bee the queen out of every damn bastard who makes me think badly of me, myself included.)",
"research/entry.thavma.story.story_test.paragraph_feature2": "On the other hand, this paragraph should start a new page always. It has the mustStartPage property set to true :3",
"research/entry.thavma.story.story_test.paragraph_feature3": "Just another random little paragraph :D",
"research/entry.thavma.story.story_test.paragraph_feature4": "And BAM! smack that paragraph right in the middle without it being an image caption! (Both the image and this have a preferred page index set to 5 -> always page number 6)",
"research/entry.thavma.story.story_test.title_feature0": "A courtesy call starts the page",
"research/entry.thavma.story.story_test.title_feature1": "This title might appear in the middle",
"research/entry.thavma.story.story_test.title_feature2": "(start of page)",
"research/entry.thavma.story.story_test.title_feature3": "this is page number 1! Surprise! Even though this Title is added as the fourth one in the DataPackBuiltinEntriesProvider and LanguageProvider after a ton of paragraphs and titles and figures etc., it has a preferred page index 0!",
"research/entry.thavma.story.story_test2": "I will not be denied",
"research/entry.thavma.story.story_test2.paragraph_feature0": "When faced with setback, we must challenge our assumptions.",
"research/entry.thavma.thavma.alchemy": "Alchemy",
"research/entry.thavma.thavma.arcane_lens": "The Arcane Lens",
"research/entry.thavma.thavma.arcane_lens.page0.paragraph0": "The part of the book I can read describes an arcane tool that \"allows the user to see\", whatever that might mean. I have a feeling that crafting it could assist my work in unsealing the other pages.",
"research/entry.thavma.thavma.arcane_lens.page0.paragraph1": "The blueprint describes a hexagonal device, much like a prism, made with those colorful crystals I found lying in a cave.",
"research/entry.thavma.thavma.arcane_lens.page0.paragraph2": "I should look at the world through its lens, maybe it will uncover something useful.",
"research/entry.thavma.thavma.arcane_lens.page0.title": "The Arcane Lens",
"research/entry.thavma.thavma.arcane_lens.paragraph_feature0": "The part of the book I can read describes an arcane tool that \"allows the user to see\", whatever that might mean. I have a feeling that crafting it could assist my work in unsealing the other pages.",
"research/entry.thavma.thavma.arcane_lens.paragraph_feature1": "The blueprint describes a hexagonal device, much like a prism, made with those colorful crystals I found lying in a cave.",
"research/entry.thavma.thavma.arcane_lens.paragraph_feature2": "I should look at the world through its lens, maybe it will uncover something useful.",
"research/entry.thavma.thavma.arcane_lens.title_feature0": "The Arcane Lens",
"research/entry.thavma.thavma.infusion": "Infusion",
"research/entry.thavma.thavma.ores": "Ores",
"research/entry.thavma.thavma.research_proficiency": "Research Proficiency",
"research/entry.thavma.thavma.research_table": "Research Table",
"research/entry.thavma.thavma.technology": "Technology",
"research/entry.thavma.thavma.thavma": "Thavma",
"research/entry.thavma.thavma.thavma.page0.paragraph0": "I was merely toying with that wand -if it can even be called that- when this tome flew into my hands! I can sense great power within it.",
"research/entry.thavma.thavma.thavma.page0.paragraph1": "The cover reads \"Elements of Thavma\", but a lot of its pages appear blank, sealed by some magic.",
"research/entry.thavma.thavma.thavma.page0.paragraph2": "To read them, I will first need to break that seal. It won't be easy... but I have a feeling it will be worth my efforts.",
"research/entry.thavma.thavma.thavma.page0.title": "Thavma",
"research/entry.thavma.thavma.thavma.page1.paragraph0": "I will document all my findings inside the book, so that I can recall them later.",
"research/entry.thavma.thavma.thavma.paragraph_feature0": "I was merely toying with that wand -if it can even be called that- when this tome flew into my hands! I can sense great power within it.",
"research/entry.thavma.thavma.thavma.paragraph_feature1": "The cover reads \"Elements\", but a lot of its pages appear blank, sealed by some magic.",
"research/entry.thavma.thavma.thavma.paragraph_feature2": "To read them, I will first need to break that seal. It won't be easy... but I have a feeling it will be worth my efforts.",
"research/entry.thavma.thavma.thavma.paragraph_feature3": "I will document all my findings inside the book, so that I can recall them later.",
"research/entry.thavma.thavma.thavma.title_feature0": "Thavma",
"research/entry.thavma.thavma.trees": "Trees",
"research/entry.thavma.thavma.wands": "Wands",
"tag.block.thavma.crucible_heat_sources": "Crucible Block Heat Sources",
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
{
"icon": {
"count": 1,
"id": "minecraft:writable_book"
},
"index": 2.0,
"title": {
"translate": "research/category.thavma.story"
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@
"count": 1,
"id": "thavma:crucible"
},
"pages": [],
"pageFeatures": [],
"position": [
0,
0
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
{
"category": "thavma:story",
"children": [
"thavma:story/story_test2"
],
"defaultKnown": true,
"defaultResearchState": [],
"icon": {
"count": 1,
"id": "minecraft:turtle_helmet"
},
"pageFeatures": [
{
"type": "thavma:title",
"starts_page": true,
"text": {
"bold": true,
"translate": "research/entry.thavma.story.story_test.title_feature0"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.story.story_test.paragraph_feature0"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.story.story_test.paragraph_feature1"
}
},
{
"type": "thavma:figure",
"caption": {
"color": "dark_aqua",
"italic": true,
"translate": "research/entry.thavma.story.story_test.figure_feature0"
},
"image": {
"canvas_height": 101,
"canvas_width": 180,
"height": 101,
"location": "thavma:textures/gui/images/important_image.png",
"width": 180
}
},
{
"type": "thavma:title",
"text": {
"bold": true,
"translate": "research/entry.thavma.story.story_test.title_feature1"
}
},
{
"type": "thavma:paragraph",
"starts_page": true,
"text": {
"translate": "research/entry.thavma.story.story_test.paragraph_feature2"
}
},
{
"type": "thavma:title",
"starts_page": true,
"text": {
"bold": true,
"translate": "research/entry.thavma.story.story_test.title_feature2"
}
},
{
"type": "thavma:title",
"has_set_page": true,
"preferred_page": 0,
"starts_page": true,
"text": {
"bold": true,
"translate": "research/entry.thavma.story.story_test.title_feature3"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.story.story_test.paragraph_feature3"
}
},
{
"type": "thavma:figure",
"has_set_page": true,
"image": {
"canvas_height": 77,
"canvas_width": 87,
"height": 77,
"location": "thavma:textures/gui/images/important_image2.png",
"width": 87
},
"preferred_page": 5
},
{
"type": "thavma:paragraph",
"has_set_page": true,
"preferred_page": 5,
"text": {
"translate": "research/entry.thavma.story.story_test.paragraph_feature4"
}
}
],
"position": [
0,
0
],
"preferX": false,
"title": {
"color": "yellow",
"translate": "research/entry.thavma.story.story_test"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
{
"category": "thavma:story",
"children": [],
"defaultKnown": false,
"defaultResearchState": [],
"icon": {
"count": 1,
"id": "minecraft:fishing_rod"
},
"pageFeatures": [
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.story.story_test2.paragraph_feature0"
}
}
],
"position": [
0,
3
],
"preferX": false,
"title": {
"color": "yellow",
"translate": "research/entry.thavma.story.story_test2"
}
}
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"category": "thavma:thavma",
"children": [],
"defaultKnown": false,
"defaultKnown": true,
"defaultResearchState": [
{
"aspect": "thavma:aqua",
Expand All @@ -26,7 +26,7 @@
"count": 1,
"id": "thavma:crucible"
},
"pages": [],
"pageFeatures": [],
"position": [
-2,
2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"children": [
"thavma:thavma/research_table"
],
"defaultKnown": false,
"defaultKnown": true,
"defaultResearchState": [
{
"aspect": "thavma:lux",
Expand Down Expand Up @@ -36,23 +36,31 @@
"count": 1,
"id": "thavma:arcane_lens"
},
"pages": [
"pageFeatures": [
{
"type": "thavma:text",
"paragraphs": [
{
"translate": "research/entry.thavma.thavma.arcane_lens.page0.paragraph0"
},
{
"translate": "research/entry.thavma.thavma.arcane_lens.page0.paragraph1"
},
{
"translate": "research/entry.thavma.thavma.arcane_lens.page0.paragraph2"
}
],
"title": {
"type": "thavma:title",
"starts_page": true,
"text": {
"bold": true,
"translate": "research/entry.thavma.thavma.arcane_lens.page0.title"
"translate": "research/entry.thavma.thavma.arcane_lens.title_feature0"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.thavma.arcane_lens.paragraph_feature0"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.thavma.arcane_lens.paragraph_feature1"
}
},
{
"type": "thavma:paragraph",
"text": {
"translate": "research/entry.thavma.thavma.arcane_lens.paragraph_feature2"
}
}
],
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"category": "thavma:thavma",
"children": [],
"defaultKnown": false,
"defaultKnown": true,
"defaultResearchState": [
{
"aspect": "thavma:terra",
Expand All @@ -26,7 +26,7 @@
"count": 1,
"id": "thavma:infusion_matrix"
},
"pages": [],
"pageFeatures": [],
"position": [
2,
2
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,12 +28,12 @@
"count": 1,
"id": "thavma:aqua_shard"
},
"pages": [],
"pageFeatures": [],
"position": [
2,
-4
],
"preferX": false,
"preferX": true,
"title": {
"color": "yellow",
"translate": "research/entry.thavma.thavma.ores"
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,9 @@
{
"category": "thavma:thavma",
"children": [],
"defaultKnown": false,
"children": [
"thavma:thavma/research_table"
],
"defaultKnown": true,
"defaultResearchState": [
{
"aspect": "thavma:aether",
Expand All @@ -26,10 +28,10 @@
"count": 1,
"id": "thavma:research_table"
},
"pages": [],
"pageFeatures": [],
"position": [
-1,
-1
-2,
-2
],
"preferX": false,
"title": {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,10 +4,9 @@
"thavma:thavma/wands",
"thavma:thavma/technology",
"thavma:thavma/alchemy",
"thavma:thavma/infusion",
"thavma:thavma/research_proficiency"
"thavma:thavma/infusion"
],
"defaultKnown": false,
"defaultKnown": true,
"defaultResearchState": [
{
"aspect": "thavma:aether",
Expand All @@ -32,12 +31,7 @@
"count": 1,
"id": "thavma:research_table"
},
"pages": [
{
"type": "thavma:crafting",
"recipeRL": "minecraft:chest"
}
],
"pageFeatures": [],
"position": [
0,
0
Expand Down
Loading