Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
38 commits
Select commit Hold shift + click to select a range
fcb9cd4
1.21 Port
Sweenus Sep 18, 2024
ce0474e
1.21 Port
Sweenus Sep 20, 2024
ad411d6
1.21 Port
Sweenus Sep 20, 2024
7f31088
1.21 Port
Sweenus Sep 20, 2024
c161b1e
1.21 Port
Sweenus Sep 21, 2024
215b536
1.21 Port
Sweenus Sep 21, 2024
723ba54
Gem Power work 1
fzzyhmstrs Oct 8, 2024
7c8f210
Start work on runic sword
fzzyhmstrs Oct 11, 2024
f09944d
Finish reimpl of RunicSword pending tests
fzzyhmstrs Oct 11, 2024
7ff1f8e
Reimpl RunefusedGem pending test
fzzyhmstrs Oct 11, 2024
9234c4c
Re impl NetherfusedGemItem pending test
fzzyhmstrs Oct 11, 2024
9fd122d
Update GemPowerComponent with new helpers and polish tooltip
fzzyhmstrs Oct 11, 2024
1e54c07
Create GemPowerFiller.java
fzzyhmstrs Oct 11, 2024
c90554b
Update GemPowerFiller with itemstack
fzzyhmstrs Oct 11, 2024
6b0e223
Update NetherfusedGemItem with GemFiller interface
fzzyhmstrs Oct 11, 2024
ec70db4
Update GemPowerFiller with validation result
fzzyhmstrs Oct 11, 2024
5cc4516
Update RunefusedGemItem with updated filler method
fzzyhmstrs Oct 11, 2024
a709019
Update RunefusedGemItem.java
fzzyhmstrs Oct 11, 2024
6ba9bfc
Update NetherfusedGemItem with new filler interface
fzzyhmstrs Oct 11, 2024
d323d39
reimpl SimplySwordsAPI pending test
fzzyhmstrs Oct 11, 2024
481b480
fix up remote work, successful build with work so far
fzzyhmstrs Oct 11, 2024
2643ece
update to fzzy config 0.5.4, start in on the configs!
fzzyhmstrs Oct 16, 2024
6db62a8
more work on configs. loot buttoned up, uniques started
fzzyhmstrs Oct 18, 2024
c44f453
big batch of uniques config work. update to fconfig 0.5.5
fzzyhmstrs Oct 22, 2024
076c791
unique effects config buttoned up??
fzzyhmstrs Oct 27, 2024
2916e65
getting pretty close to wrapping up config port
fzzyhmstrs Nov 1, 2024
3cee628
optimize imports, excise cloth from codebase almost completely, carry…
fzzyhmstrs Nov 1, 2024
7d884b7
Update zh_cn.json
fzzyhmstrs Nov 1, 2024
ee66e8f
Update en_us.json
fzzyhmstrs Nov 1, 2024
7f5723b
few more conditional options, en_us polish
fzzyhmstrs Nov 1, 2024
b96ef94
polish up the Config presentation in-game
fzzyhmstrs Nov 4, 2024
764741b
fix status effect problem caused by arch. add some instructional guid…
fzzyhmstrs Nov 16, 2024
40c9714
fully remove cloth from build scripts
fzzyhmstrs Nov 17, 2024
0dedd59
Merge pull request #213 from fzzyhmstrs/Architectury-1.21
Sweenus Nov 17, 2024
b7f65f2
Update ru_ru.json
Heimdallr-1 Dec 14, 2024
1df0a46
Update ru_ru.json
Heimdallr-1 Dec 19, 2024
c686c9a
Update ru_ru.json
Heimdallr-1 Dec 21, 2024
8ee5757
Update ru_ru.json
Heimdallr-1 Dec 24, 2024
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
78 changes: 50 additions & 28 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,36 +1,27 @@
plugins {
id "architectury-plugin" version "3.4-SNAPSHOT"
id "dev.architectury.loom" version "1.2-SNAPSHOT" apply false
id 'dev.architectury.loom' version '1.7.412' apply false
id 'architectury-plugin' version '3.4-SNAPSHOT'
id 'com.github.johnrengelman.shadow' version '8.1.1' apply false
}

architectury {
minecraft = rootProject.minecraft_version
minecraft = project.minecraft_version
}

subprojects {
apply plugin: "dev.architectury.loom"

loom {
silentMojangMappingsLicense()
}

dependencies {
minecraft "com.mojang:minecraft:${rootProject.minecraft_version}"
// The following line declares the mojmap mappings, you may use other mappings as well
//mappings loom.officialMojangMappings()
// The following line declares the yarn mappings you may select this one as well.
mappings "net.fabricmc:yarn:${rootProject.yarn_mappings}:v2"
}
allprojects {
group = rootProject.maven_group
version = rootProject.mod_version
}

allprojects {
apply plugin: "java"
apply plugin: "architectury-plugin"
apply plugin: "maven-publish"
subprojects {
apply plugin: 'dev.architectury.loom'
apply plugin: 'architectury-plugin'
apply plugin: 'maven-publish'

archivesBaseName = rootProject.archives_base_name
version = rootProject.mod_version
group = rootProject.maven_group
base {
// Set up a suffixed format for the mod jar names, e.g. `example-fabric`.
archivesName = "$rootProject.archives_name-$project.name"
}

repositories {
// Add repositories to retrieve artifacts from in here.
Expand All @@ -40,12 +31,43 @@ allprojects {
// for more information about repositories.
}

tasks.withType(JavaCompile) {
options.encoding = "UTF-8"
options.release = 17
dependencies {
minecraft "net.minecraft:minecraft:$rootProject.minecraft_version"
mappings loom.layered {
it.mappings("net.fabricmc:yarn:$rootProject.yarn_mappings:v2")
it.mappings("dev.architectury:yarn-mappings-patch-neoforge:$rootProject.yarn_mappings_patch_neoforge_version")
}
}

java {
// Loom will automatically attach sourcesJar to a RemapSourcesJar task and to the "build" task
// if it is present.
// If you remove this line, sources will not be generated.
withSourcesJar()

sourceCompatibility = JavaVersion.VERSION_21
targetCompatibility = JavaVersion.VERSION_21
}
}

tasks.withType(JavaCompile).configureEach {
it.options.release = 21
}

// Configure Maven publishing.
publishing {
publications {
mavenJava(MavenPublication) {
artifactId = base.archivesName.get()
from components.java
}
}

// See https://docs.gradle.org/current/userguide/publishing_maven.html for information on how to set up publishing.
repositories {
// Add repositories to publish to here.
// Notice: This block does NOT have the same function as the block in the top level.
// The repositories here will be used for publishing your artifact, not for
// retrieving dependencies.
}
}
}
13 changes: 8 additions & 5 deletions common/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -28,18 +28,21 @@ repositories {
maven { url = "https://jitpack.io" }
maven { url "https://maven.shedaniel.me/" }
maven { url "https://maven.terraformersmc.com/releases/" }
maven {
name = "FzzyMaven"
url = "https://maven.fzzyhmstrs.me/"
}
}

dependencies {
// We depend on fabric loader here to use the fabric @Environment annotations and get the mixin dependencies
// Do NOT use other classes from fabric loader
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}"
// Remove the next line if you don't want to depend on the API
modApi "dev.architectury:architectury:${rootProject.architectury_version}"
modApi("me.shedaniel.cloth:cloth-config:${rootProject.cloth_config_version}") {
exclude(group: "net.fabricmc.fabric-api")
}
modImplementation "dev.architectury:architectury:$rootProject.architectury_api_version"
modImplementation "curse.maven:necronomicon-586157:${rootProject.necronomicon_version}"

modImplementation "me.fzzyhmstrs:fzzy_config:${project.fzz_config_version}"
}

publishing {
Expand All @@ -57,4 +60,4 @@ publishing {
maven { url "https://maven.shedaniel.me/" }
maven { url "https://maven.terraformersmc.com/releases/" }
}
}
}
59 changes: 10 additions & 49 deletions common/src/main/java/net/sweenus/simplyswords/SimplySwords.java
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,6 @@
import dev.architectury.registry.registries.RegistrySupplier;
import dev.architectury.utils.Env;
import dev.architectury.utils.EnvExecutor;
import me.shedaniel.autoconfig.AutoConfig;
import me.shedaniel.autoconfig.serializer.JanksonConfigSerializer;
import me.shedaniel.autoconfig.serializer.PartitioningSerializer;
import net.fabricmc.api.EnvType;
import net.fabricmc.api.Environment;
import net.minecraft.client.render.entity.BeeEntityRenderer;
Expand All @@ -26,14 +23,15 @@
import net.sweenus.simplyswords.client.renderer.BattleStandardRenderer;
import net.sweenus.simplyswords.client.renderer.model.BattleStandardDarkModel;
import net.sweenus.simplyswords.client.renderer.model.BattleStandardModel;
import net.sweenus.simplyswords.compat.EldritchEndCompat;
import net.sweenus.simplyswords.compat.eldritch_end.EldritchEndCompatRegistry;
import net.sweenus.simplyswords.config.*;
import net.sweenus.simplyswords.config.Config;
import net.sweenus.simplyswords.entity.BattleStandardDarkEntity;
import net.sweenus.simplyswords.entity.BattleStandardEntity;
import net.sweenus.simplyswords.entity.SimplySwordsBeeEntity;
import net.sweenus.simplyswords.registry.ComponentTypeRegistry;
import net.sweenus.simplyswords.registry.EffectRegistry;
import net.sweenus.simplyswords.registry.EntityRegistry;
import net.sweenus.simplyswords.registry.GemPowerRegistry;
import net.sweenus.simplyswords.registry.ItemsRegistry;
import net.sweenus.simplyswords.registry.SoundRegistry;
import net.sweenus.simplyswords.util.FileCopier;
Expand Down Expand Up @@ -61,65 +59,28 @@ public class SimplySwords {

public static final Logger LOGGER = LogManager.getLogger(MOD_ID);

public static boolean isConfigOutdated;
public static GeneralConfig generalConfig;
public static LootConfig lootConfig;
public static GemEffectsConfig gemEffectsConfig;
public static RunicEffectsConfig runicEffectsConfig;
public static StatusEffectsConfig statusEffectsConfig;
public static UniqueEffectsConfig uniqueEffectsConfig;
public static WeaponAttributesConfig weaponAttributesConfig;

public static String minimumEldritchEndVersion = "0.2.40";
public static String minimumSpellPowerVersion = "0.10.0+1.20.1";

public static void init() {

//CONFIG

SimplySwordsConfig.init();

AutoConfig.register(ConfigWrapper.class, PartitioningSerializer.wrap(JanksonConfigSerializer::new));
generalConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().general;
lootConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().loot;
gemEffectsConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().gem_effects;
runicEffectsConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().runic_effects;
statusEffectsConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().status_effects;
uniqueEffectsConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().unique_effects;
weaponAttributesConfig = AutoConfig.getConfigHolder(ConfigWrapper.class).getConfig().weapon_attributes;

String version = SimplySwordsExpectPlatform.getVersion();
String defaultConfig = String.format("""
{
"regen_simplyswords_config_file": false,
"config_version": %s
}""", version.substring(0, 4));

File configFile = Config.createFile("config/simplyswords_extra/backupconfig.json", defaultConfig, false);
JsonObject json = Config.getJsonObject(Config.readFile(configFile));
if (json.has("config_version") && version.startsWith(json.get("config_version").getAsString())) {
isConfigOutdated = false;
} else {
isConfigOutdated = true;
//System.out.println("SimplySwords: It looks like you've updated from a previous version. Please regenerate the Simply Swords configs to get the latest features.");
//System.out.println(version.substring(0, 4));
}

SimplySwordsConfig.generateConfigs(json == null || !json.has("regen_simplyswords_config_file") || json.get("regen_simplyswords_config_file").getAsBoolean());
SimplySwordsConfig.loadConfig();

Config.init();

SimplySwords.TABS.register();
ItemsRegistry.ITEM.register();
SoundRegistry.SOUND.register();
EffectRegistry.EFFECT.register();
EntityRegistry.ENTITIES.register();
ComponentTypeRegistry.COMPONENT_TYPES.register();
GemPowerRegistry.register();
EntityAttributeRegistry.register(EntityRegistry.BATTLESTANDARD, BattleStandardEntity::createBattleStandardAttributes);
EntityAttributeRegistry.register(EntityRegistry.BATTLESTANDARDDARK, BattleStandardDarkEntity::createBattleStandardDarkAttributes);
EntityAttributeRegistry.register(EntityRegistry.SIMPLYBEEENTITY, SimplySwordsBeeEntity::createSimplyBeeAttributes);
ModLootTableModifiers.init();
if (passVersionCheck("eldritch_end", minimumEldritchEndVersion)) {
EldritchEndCompat.registerModItems();
//EldritchEndCompat.registerModItems(); 1.21
EldritchEndCompatRegistry.EFFECT.register();
}
try {
Expand Down Expand Up @@ -147,8 +108,8 @@ public static boolean passVersionCheck(String modId, String requiredVersion) {

@Environment(EnvType.CLIENT)
public static class Client {
public static final EntityModelLayer BATTLESTANDARD_MODEL = new EntityModelLayer(new Identifier("battlestandard", "cube"), "main");
public static final EntityModelLayer BATTLESTANDARD_DARK_MODEL = new EntityModelLayer(new Identifier("battlestandarddark", "cube"), "main");
public static final EntityModelLayer BATTLESTANDARD_MODEL = new EntityModelLayer(Identifier.of("battlestandard", "cube"), "main");
public static final EntityModelLayer BATTLESTANDARD_DARK_MODEL = new EntityModelLayer(Identifier.of("battlestandarddark", "cube"), "main");

@Environment(EnvType.CLIENT)
public static void initializeClient() {
Expand All @@ -160,4 +121,4 @@ public static void initializeClient() {
}
}

}
}
Loading