diff --git a/CHANGELOG.md b/CHANGELOG.md index bda296d..9b534dd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,14 @@ # Changelog +## [0.5.1] +### Changes +- Added a block that stores the daily market data in it, for use with computercraft +- Made mining gadget tiers freely cyclable in crafting +- Fixed shulker tooltips +- Fixed boiler research stage not working +- Fixed research quest not consuming currency +- Add longer chat history & persistence mods + ## [0.5.0] ### Changes - Fixed market randomization not happening on first day of world creation diff --git a/config/crash_assistant/modlist.json b/config/crash_assistant/modlist.json index f49c22a..1972d85 100644 --- a/config/crash_assistant/modlist.json +++ b/config/crash_assistant/modlist.json @@ -482,6 +482,14 @@ "curseForgeHash": 361198542, "modrinthHash": "99bf8e0f4dce30384d9aa2094a750f7aadb548c3" }, + "DontClearChatHistory-1.jar": { + "jarName": "DontClearChatHistory-1.jar", + "modId": "dcch", + "name": "Dont Clear Chat History", + "version": "1", + "curseForgeHash": 3403112640, + "modrinthHash": "a6e532823419a509b7ef9dba7d252eaa19d49b34" + }, "doublejump-1.0.0.jar": { "jarName": "doublejump-1.0.0.jar", "modId": "doublejump", @@ -522,14 +530,6 @@ "curseForgeHash": 1186236462, "modrinthHash": "9bfb5d63ac2e03ecdab8755c968ffa25b799469b" }, - "EasyShulkerBoxes-v8.0.2-1.20.1-Forge.jar": { - "jarName": "EasyShulkerBoxes-v8.0.2-1.20.1-Forge.jar", - "modId": "easyshulkerboxes", - "name": "Easy Shulker Boxes", - "version": "8.0.2", - "curseForgeHash": 2149531480, - "modrinthHash": "c5245255c422afa2d627e89bbbf4a2f1d5d721e8" - }, "embeddium-0.3.31+mc1.20.1.jar": { "jarName": "embeddium-0.3.31+mc1.20.1.jar", "modId": "embeddium", @@ -964,6 +964,14 @@ "curseForgeHash": 123853733, "modrinthHash": "3b9f1c7fea5e0bdbc6f06429e147bd0a7c08663d" }, + "LongerChatHistory-1.3-Forge.jar": { + "jarName": "LongerChatHistory-1.3-Forge.jar", + "modId": "longerchathistory", + "name": "Longer Chat History", + "version": "1.3", + "curseForgeHash": 1497798873, + "modrinthHash": "717d1e68336519f97b7676322c98c9afe72651a0" + }, "lootbeams-1.20.1-1.2.6.jar": { "jarName": "lootbeams-1.20.1-1.2.6.jar", "modId": "lootbeams", diff --git a/config/ftbquests/quests/chapters/the_lab.snbt b/config/ftbquests/quests/chapters/the_lab.snbt index 9c81b90..1f99586 100644 --- a/config/ftbquests/quests/chapters/the_lab.snbt +++ b/config/ftbquests/quests/chapters/the_lab.snbt @@ -90,9 +90,10 @@ type: "item" } { + consume_items: true count: 2L id: "3FF37C3D2694AF57" - item: { Count: 2, id: "numismatics:cog" } + item: "numismatics:cog" type: "item" } ] diff --git a/config/ftbquests/quests/chapters/welcome_to_the_ranch.snbt b/config/ftbquests/quests/chapters/welcome_to_the_ranch.snbt index 5b523b5..8be863d 100644 --- a/config/ftbquests/quests/chapters/welcome_to_the_ranch.snbt +++ b/config/ftbquests/quests/chapters/welcome_to_the_ranch.snbt @@ -1015,6 +1015,7 @@ item: "farmersdelight:cake_slice" type: "item" }] + shape: "rsquare" tasks: [ { id: "1B51D0724E851D91" @@ -1257,25 +1258,11 @@ }] shape: "circle" subtitle: "Eureka!" - tasks: [ - { - id: "70D917DACD6BBCE0" - title: "Knowledge is power!" - type: "checkmark" - } - { - consume_items: true - count: 4L - id: "760AAEF7A16DEC88" - item: { - Count: 1 - id: "splendid_slimes:slime_heart" - tag: { } - } - match_nbt: false - type: "item" - } - ] + tasks: [{ + id: "70D917DACD6BBCE0" + title: "Knowledge is power!" + type: "checkmark" + }] title: "&b The Lab" x: -6.25d y: 5.5d diff --git a/config/quark-common.toml b/config/quark-common.toml index d801aee..3f0bb55 100644 --- a/config/quark-common.toml +++ b/config/quark-common.toml @@ -1614,7 +1614,7 @@ "Enchanting Tooltips" = true "Fuel Time Tooltips" = true "Shulker Box Use Colors" = true - "Shulker Box Require Shift" = true + "Shulker Box Require Shift" = false "Map Require Shift" = true #The value of each shank of food. #Tweak this when using mods like Hardcore Hunger which change that value. diff --git a/kubejs/assets/society_trading/lang/en_us.json b/kubejs/assets/society_trading/lang/en_us.json index 77a7e49..93994d3 100644 --- a/kubejs/assets/society_trading/lang/en_us.json +++ b/kubejs/assets/society_trading/lang/en_us.json @@ -7,7 +7,7 @@ "shop.society_trading.mining_gadgets.description": "Upgrades for your (actually SCCOGAC's) trusty mining gadget.", "shop.society_trading.travel_aids": "Travel Aids", "shop.society_trading.travel_aids.description": "Gadgets and devices that help make the journey a little less perilous.", - "shop.society_trading.backpacks": "Backpacks", + "shop.society_trading.backpacks": "Backpacks & Storage", "shop.society_trading.backpacks.description": "Backpacks and their upgrades for automation and convenience!", "shop.society_trading.building_gadgets": "Building Gadgets", "shop.society_trading.building_gadgets.description": "Ingenious gadgets crafted to assist builders in their building.", diff --git a/kubejs/data/society_trading/shops/backpacks.json b/kubejs/data/society_trading/shops/backpacks.json index 3967aea..a4b4a26 100644 --- a/kubejs/data/society_trading/shops/backpacks.json +++ b/kubejs/data/society_trading/shops/backpacks.json @@ -5,6 +5,18 @@ "block_tag": "splendid_ranching:open_backpacks", "jei_catalyst": { "item": "sophisticatedbackpacks:backpack" }, "trades": [ + { + "offer": { "item": "minecraft:shulker_box", "count": 1 }, + "request": { "item": "numismatics:cog", "count": 4 }, + "numismatics_cost": 256, + "trade_id": "splendid_shulker_box" + }, + { + "offer": { "item": "quark:crate", "count": 1 }, + "request": { "item": "numismatics:sprocket", "count": 2 }, + "numismatics_cost": 32, + "trade_id": "splendid_shulker_box" + }, { "offer": { "item": "sophisticatedbackpacks:backpack", "count": 1 }, "request": { "item": "numismatics:crown", "count": 2 }, diff --git a/kubejs/data/society_trading/shops/banking.json b/kubejs/data/society_trading/shops/banking.json index b76dacd..6cc691f 100644 --- a/kubejs/data/society_trading/shops/banking.json +++ b/kubejs/data/society_trading/shops/banking.json @@ -29,6 +29,12 @@ "numismatics_cost": 32, "trade_id": "splendid_bank_market_monitor" }, + { + "offer": { "item": "kubejs:market_data_storage", "count": 1 }, + "request": { "item": "numismatics:crown", "count": 1 }, + "numismatics_cost": 512, + "trade_id": "splendid_market_data_storage" + }, { "offer": { "item": "numismatics:bank_terminal", "count": 1 }, "request": { "item": "numismatics:cog", "count": 4 }, diff --git a/kubejs/data/society_trading/shops/mining_gadgets.json b/kubejs/data/society_trading/shops/mining_gadgets.json index 73985f4..02b5a95 100644 --- a/kubejs/data/society_trading/shops/mining_gadgets.json +++ b/kubejs/data/society_trading/shops/mining_gadgets.json @@ -11,20 +11,6 @@ "numismatics_cost": 64, "trade_id": "splendid_mining_laser_mk1" }, - { - "offer": { "item": "mininggadgets:mininggadget_fancy", "count": 1 }, - "request": { "item": "numismatics:crown", "count": 1 }, - "second_request": { "item": "mininggadgets:mininggadget_simple", "count": 1 }, - "numismatics_cost": 512, - "trade_id": "splendid_mining_laser_mk2" - }, - { - "offer": { "item": "mininggadgets:mininggadget", "count": 1 }, - "request": { "item": "numismatics:sun", "count": 1 }, - "second_request": { "item": "mininggadgets:mininggadget_fancy", "count": 1 }, - "numismatics_cost": 4096, - "trade_id": "splendid_mining_laser_mk3" - }, { "offer": { "item": "mininggadgets:modificationtable", "count": 1 }, "request": { "item": "numismatics:cog", "count": 1 }, diff --git a/kubejs/server_scripts/mods/mininggadgets/shaped.js b/kubejs/server_scripts/mods/mininggadgets/shaped.js new file mode 100644 index 0000000..e69de29 diff --git a/kubejs/server_scripts/mods/mininggadgets/shapeless.js b/kubejs/server_scripts/mods/mininggadgets/shapeless.js new file mode 100644 index 0000000..840ca29 --- /dev/null +++ b/kubejs/server_scripts/mods/mininggadgets/shapeless.js @@ -0,0 +1,25 @@ +ServerEvents.recipes(e => { + // All function the same, make them swappable + + // mk1 > mk2 + e.shapeless('mininggadgets:mininggadget_fancy', ['mininggadgets:mininggadget_simple']) + .modifyResult((grid, result) => { + let input = grid.find('mininggadgets:mininggadget_simple') + return result.withNBT(input.nbt) + }) + .id(`kubejs:mininggadgets/shapeless/mk1_to_mk2`) + // mk2 > mk3 + e.shapeless('mininggadgets:mininggadget', ['mininggadgets:mininggadget_fancy']) + .modifyResult((grid, result) => { + let input = grid.find('mininggadgets:mininggadget_fancy') + return result.withNBT(input.nbt) + }) + .id(`kubejs:mininggadgets/shapeless/mk2_to_mk3`) + // mk3 > mk1 + e.shapeless('mininggadgets:mininggadget_simple', ['mininggadgets:mininggadget']) + .modifyResult((grid, result) => { + let input = grid.find('mininggadgets:mininggadget') + return result.withNBT(input.nbt) + }) + .id(`kubejs:mininggadgets/shapeless/mk3_to_mk1`) +}) diff --git a/kubejs/startup_scripts/blocks/jadeBlocks.js b/kubejs/startup_scripts/blocks/jadeBlocks.js index 3811cc7..0c857a7 100644 --- a/kubejs/startup_scripts/blocks/jadeBlocks.js +++ b/kubejs/startup_scripts/blocks/jadeBlocks.js @@ -1,5 +1,3 @@ - - /** * @param {Internal.BlockEntity} blockEntity * @param {Internal.CompoundTag} tag diff --git a/kubejs/startup_scripts/blocks/marketDataStorage.js b/kubejs/startup_scripts/blocks/marketDataStorage.js new file mode 100644 index 0000000..2b99124 --- /dev/null +++ b/kubejs/startup_scripts/blocks/marketDataStorage.js @@ -0,0 +1,40 @@ +/** @param {Internal.BlockEntityJS} entity */ +global['handleDataStorageTick'] = (entity) => { + let nbt = entity.block.entityData + nbt.merge({ data: entity.level.server.persistentData['slime_value_data'] }) +} + +/** @param {Internal.BlockRightClickedEventJS} clickCtx */ +global['dataStorageClicked'] = (clickCtx) => { + const { block, player, item } = clickCtx + if (!player.shiftKeyDown) { + player.tell("§cShift key must be held to display market data") + return + } + let nbt = clickCtx.block.entityData + nbt.merge({ data: player.server.persistentData['slime_value_data'] }) + player.tell(nbt) + player.tell("§dDisplayed market data above, copy from your log if usage desired.") +} + +StartupEvents.registry("block", e => { + e.create("kubejs:market_data_storage", "cardinal") + .tagBlock("minecraft:mineable/pickaxe") + .tagBlock("minecraft:needs_stone_tool") + .soundType("copper") + .model("minecraft:block/furnace") + .item(item => { + item.tooltip(Text.gray("Stores the daily markets data in it's block entity data")) + item.tooltip(Text.gray("The data can be extracted using computercraft and a block reader")) + item.tooltip(Text.gray("Shift right clicking also sends you the full market data")) + }) + .rightClick(clickCtx => { + if (clickCtx.hand == "OFF_HAND") return + global['dataStorageClicked'](clickCtx) + }) + .blockEntity(blockInfo => { + blockInfo.serverTick(100, 0, entity => { + global['handleDataStorageTick'](entity) + }) + }) +}) diff --git a/kubejs/startup_scripts/researchDefinitions.js b/kubejs/startup_scripts/researchDefinitions.js index b3774ed..70b2993 100644 --- a/kubejs/startup_scripts/researchDefinitions.js +++ b/kubejs/startup_scripts/researchDefinitions.js @@ -63,7 +63,7 @@ global.researchStages = { "name": "Factory Gauges", "ingredients": ["create:factory_gauge", "#kubejs:extra_gauges"] }, - "create_boiler": { + "create_boilers": { "name": "Steam Boilers", "ingredients": ["create:steam_engine"] }, diff --git a/pakku-lock.json b/pakku-lock.json index 3a6dfa8..2dc432e 100644 --- a/pakku-lock.json +++ b/pakku-lock.json @@ -2438,6 +2438,51 @@ } ] }, + { + "pakku_id": "tUxHwiHbovPTTM1J", + "type": "MOD", + "slug": { + "curseforge": "dont-clear-chat-history" + }, + "name": { + "curseforge": "Don't Clear Chat History" + }, + "id": { + "curseforge": "404400" + }, + "files": [ + { + "type": "curseforge", + "file_name": "DontClearChatHistory-1.jar", + "mc_versions": [ + "1.20.2", + "1.20.2-Snapshot", + "1.20.5-Snapshot", + "1.20.3-Snapshot", + "1.20.3", + "1.20.1", + "1.20", + "1.20.4", + "1.20-Snapshot" + ], + "loaders": [ + "neoforge", + "forge" + ], + "release_type": "release", + "url": "https://edge.forgecdn.net/files/5189/256/DontClearChatHistory-1.jar", + "id": "5189256", + "parent_id": "404400", + "hashes": { + "sha1": "a6e532823419a509b7ef9dba7d252eaa19d49b34", + "md5": "fb72ae2902fb690b2da7c6fc8063a2f5" + }, + "required_dependencies": [], + "size": 3093, + "date_published": "2024-03-17T12:11:49.687Z" + } + ] + }, { "pakku_id": "o7fKM0vGj6LUsJEg", "type": "MOD", @@ -2669,44 +2714,6 @@ } ] }, - { - "pakku_id": "YNF51L3DSgqeEg5w", - "type": "MOD", - "slug": { - "curseforge": "easy-shulker-boxes" - }, - "name": { - "curseforge": "Easy Shulker Boxes" - }, - "id": { - "curseforge": "594006" - }, - "files": [ - { - "type": "curseforge", - "file_name": "EasyShulkerBoxes-v8.0.2-1.20.1-Forge.jar", - "mc_versions": [ - "1.20.1" - ], - "loaders": [ - "forge" - ], - "release_type": "release", - "url": "https://edge.forgecdn.net/files/5157/55/EasyShulkerBoxes-v8.0.2-1.20.1-Forge.jar", - "id": "5157055", - "parent_id": "594006", - "hashes": { - "sha1": "c5245255c422afa2d627e89bbbf4a2f1d5d721e8", - "md5": "e51ded9f25728d16587084eb7adf9fd0" - }, - "required_dependencies": [ - "495476" - ], - "size": 581742, - "date_published": "2024-03-04T12:50:56.090Z" - } - ] - }, { "pakku_id": "ppb2GiRJ64J9brIL", "type": "RESOURCE_PACK", @@ -4835,6 +4842,45 @@ } ] }, + { + "pakku_id": "fJkQrmCPOZBpZUTs", + "type": "MOD", + "slug": { + "curseforge": "longer-chat-history" + }, + "name": { + "curseforge": "Longer Chat History [Forge/NeoForge/Fabric]" + }, + "id": { + "curseforge": "913234" + }, + "files": [ + { + "type": "curseforge", + "file_name": "LongerChatHistory-1.3-Forge.jar", + "mc_versions": [ + "1.20.2", + "1.20.1", + "1.20" + ], + "loaders": [ + "neoforge", + "forge" + ], + "release_type": "release", + "url": "https://edge.forgecdn.net/files/4766/550/LongerChatHistory-1.3-Forge.jar", + "id": "4766550", + "parent_id": "913234", + "hashes": { + "sha1": "717d1e68336519f97b7676322c98c9afe72651a0", + "md5": "f0a3e89a3e42f1db2ef27e4744c34b0b" + }, + "required_dependencies": [], + "size": 7757, + "date_published": "2023-09-24T10:14:45.813Z" + } + ] + }, { "pakku_id": "Qenrkz1XwPDc6kcZ", "type": "MOD",