Skip to content

Commit

Permalink
Merge pull request #2 from CuteNekoOwO/dev/1.20.4
Browse files Browse the repository at this point in the history
Updated to 1.20.4.
  • Loading branch information
qyl27 authored Feb 21, 2024
2 parents e702c6d + 4a6ec05 commit efba7be
Show file tree
Hide file tree
Showing 124 changed files with 461 additions and 554 deletions.
5 changes: 4 additions & 1 deletion .github/workflows/gradle-build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ name: Gradle Build

on:
push:
workflow_dispatch:

jobs:
build-gradle-project:
Expand All @@ -21,4 +22,6 @@ jobs:
uses: actions/upload-artifact@v3
with:
name: build
path: build/libs
path: |
catsplus-fabric/build/libs/catsplus-fabric-[0-9.]+.jar
retention-days: 90
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -116,3 +116,5 @@ run/

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar

.architectury-transformer/
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,6 @@ Make cats in Minecraft more fun!
- [ ] Tell me your ideas.

## About MeowBot233
MeowBot233, the main developer of CatsPlus, was passed away on September 16, 2023, due to Ewing's sarcoma.
MeowBot233, the creator of CatsPlus, was passed away on September 16, 2023, due to Ewing's sarcoma.
We will always remember her.
This project will be continually maintained by CuteNekoOwO organize and qyl27.
71 changes: 36 additions & 35 deletions build.gradle
Original file line number Diff line number Diff line change
@@ -1,36 +1,43 @@
plugins {
id 'architectury-plugin' version '3.4-SNAPSHOT'
id 'dev.architectury.loom' version '1.3-SNAPSHOT' apply false
id 'architectury-plugin' version "${architect_plugin_version}"
id 'dev.architectury.loom' version "${architectury_loom_version}" apply false
}

architectury {
minecraft = project.minecraft_version
}

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

group = 'cuteneko.catsplus'
version = project.mod_version

architectury {
minecraft = project.minecraft_version
}

loom {
accessWidenerPath = file('src/main/resources/catsplus.accesswidener')
}

repositories {
}

dependencies {
minecraft "com.mojang:minecraft:${project.minecraft_version}"
mappings "net.fabricmc:yarn:${project.yarn_mappings}:v2"
}
}

allprojects {
apply plugin: 'java'
apply plugin: 'architectury-plugin'
apply plugin: 'maven-publish'

group = project.project_group
archivesBaseName = project.archives_base_name

version = project.mod_version

repositories {
modImplementation "net.fabricmc:fabric-loader:${project.fabric_loader_version}"
modApi "dev.architectury:architectury:${project.architectury_version}"
}

configurations {
common
shadowCommon
compileClasspath.extendsFrom common
runtimeClasspath.extendsFrom common
developmentForge.extendsFrom common
developmentFabric.extendsFrom common
developmentNeoForge.extendsFrom common
}

def targetJavaVersion = 17
Expand All @@ -46,7 +53,6 @@ allprojects {
if (JavaVersion.current() < javaVersion) {
toolchain.languageVersion = JavaLanguageVersion.of(targetJavaVersion)
}
archivesBaseName = project.archives_base_name
withSourcesJar()
}

Expand All @@ -61,16 +67,12 @@ allprojects {

var replaceTokens = [
minecraft_version: minecraft_version,
mod_id: mod_id,
mod_name: mod_name,
mod_version: mod_version,
mod_description: mod_description,
forge_version: forge_version,
fabric_loader_version: fabric_loader_version,
fabric_api_version: fabric_api_version,
forge_version: forge_version,
next_minecraft_version: next_minecraft_version,
next_forge_loader_version: next_forge_loader_version,
next_forge_version: next_forge_version
neoforge_version: neoforge_version,
architectury_version: architectury_version
]

inputs.properties replaceTokens
Expand All @@ -82,15 +84,14 @@ allprojects {
}

publishing {
publications {
mavenCommon(MavenPublication) {
artifactId = rootProject.archives_base_name
from components.java
}
}

repositories {
mavenLocal()
}
}
}

architectury {
common(project.enabled_platforms.split(','))
}

sourceSets.main.resources.srcDir 'src/main/generated'
70 changes: 70 additions & 0 deletions catsplus-fabric/build.gradle
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
plugins {
id 'com.github.johnrengelman.shadow' version "${shadow_plugin_version}"
id 'me.shedaniel.unified-publishing' version "${unified_publishing_version}"
}

architectury {
platformSetupLoomIde()
fabric()
}

loom {
accessWidenerPath = project(':').loom.accessWidenerPath

runs {
data {
inherit client

name 'Data Generation'

vmArg '-Dfabric-api.datagen'
vmArg "-Dfabric-api.datagen.output-dir=${file("../src/main/generated")}"
vmArg '-Dfabric-api.datagen.modid=catsplus'

runDir 'build/datagen'
}
}
}

dependencies {
modImplementation "net.fabricmc:fabric-loader:${project.fabric_loader_version}"
modApi "net.fabricmc.fabric-api:fabric-api:${project.fabric_api_version}"
modApi "dev.architectury:architectury-fabric:${project.architectury_version}"

common(project(path: ':', configuration: 'namedElements')) { transitive = false }
shadowCommon(project(path: ':', configuration: 'transformProductionFabric')) { transitive = false }
}

shadowJar {
exclude 'architectury.common.json'

configurations = [project.configurations.shadowCommon]
archiveClassifier = 'dev-shadow'
}

remapJar {
injectAccessWidener = true
input.set shadowJar.archiveFile
dependsOn shadowJar
}

sourcesJar {
def commonSources = project(':').sourcesJar
dependsOn commonSources
from commonSources.archiveFile.map { zipTree(it) }
}

components.java {
withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
skip()
}
}

publishing {
publications {
mavenFabric(MavenPublication) {
artifactId = project.name
from components.java
}
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package cuteneko.catsplus.fabric;

import cuteneko.catsplus.CatsPlus;
import net.fabricmc.api.ModInitializer;

public class CatsPlusFabric implements ModInitializer {
private final CatsPlus mod;

public CatsPlusFabric() {
mod = new CatsPlus();
}

@Override
public void onInitialize() {
mod.init();
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
package cuteneko.catsplus.fabric;

import cuteneko.catsplus.fabric.platform.CatPlayer;
import cuteneko.catsplus.fabric.platform.GeniusCat;
import cuteneko.catsplus.platform.ICatPlayer;
import cuteneko.catsplus.platform.IGeniusCat;
import net.minecraft.entity.passive.CatEntity;
import net.minecraft.entity.player.PlayerEntity;

public class CatsPlusPlatformImpl {
public static ICatPlayer getCatPlayer(PlayerEntity player) {
return new CatPlayer(player);
}

public static IGeniusCat getGeniusCat(CatEntity cat) {
return new GeniusCat(cat);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ public class CatsPlusFabricClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
ModelPredicateProviderRegistry.register(
ModItems.CAT_BAG,
ModItems.CAT_BAG.get(),
new Identifier("catsplus", "cat"),
(itemStack, clientWorld, livingEntity, index) -> {
if(!itemStack.hasNbt() || !Objects.requireNonNull(itemStack.getNbt()).contains("Cat")) {
Expand All @@ -38,8 +38,8 @@ public void onInitializeClient() {
});

ColorProviderRegistry.ITEM.register(
((stack, tintIndex) -> tintIndex > 0 ? -1 : ((DyeableItem) stack.getItem()).getColor(stack)),
ModItems.CAT_BAG
((stack, tintIndex) -> tintIndex > 0 ? -1 : ((DyeableItem) stack.getItem()).getColor(stack)),
ModItems.CAT_BAG.get()
);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,6 @@ public void generateBlockStateModels(BlockStateModelGenerator generator) {

@Override
public void generateItemModels(ItemModelGenerator generator) {
generator.register(ModItems.TOTEMEOW, Models.GENERATED);
generator.register(ModItems.TOTEMEOW.get(), Models.GENERATED);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,23 +3,25 @@
import cuteneko.catsplus.item.ModItems;
import net.fabricmc.fabric.api.datagen.v1.FabricDataOutput;
import net.fabricmc.fabric.api.datagen.v1.provider.FabricRecipeProvider;
import net.minecraft.data.server.recipe.RecipeJsonProvider;
import net.minecraft.data.server.recipe.RecipeExporter;
import net.minecraft.data.server.recipe.ShapedRecipeJsonBuilder;
import net.minecraft.item.Items;
import net.minecraft.recipe.book.RecipeCategory;
import net.minecraft.registry.tag.ItemTags;
import net.minecraft.registry.tag.TagKey;

import java.util.function.Consumer;

public class ModRecipeProvider extends FabricRecipeProvider {
public ModRecipeProvider(FabricDataOutput output) {
super(output);
}

private static <T> String hasTag(TagKey<T> tag) {
return "has_tag_" + tag.id().getNamespace() + "_" + tag.id().getPath();
}

@Override
public void generate(Consumer<RecipeJsonProvider> exporter) {
ShapedRecipeJsonBuilder.create(RecipeCategory.TOOLS, ModItems.CAT_BAG)
public void generate(RecipeExporter exporter) {
ShapedRecipeJsonBuilder.create(RecipeCategory.TOOLS, ModItems.CAT_BAG.get())
.pattern("LLL")
.pattern("LGL")
.pattern("LLL")
Expand All @@ -29,7 +31,7 @@ public void generate(Consumer<RecipeJsonProvider> exporter) {
.criterion(hasItem(Items.GLASS_PANE), conditionsFromItem(Items.GLASS_PANE))
.offerTo(exporter);

ShapedRecipeJsonBuilder.create(RecipeCategory.TOOLS, ModItems.TOTEMEOW)
ShapedRecipeJsonBuilder.create(RecipeCategory.TOOLS, ModItems.TOTEMEOW.get())
.pattern("FFF")
.pattern("FTF")
.pattern("FFF")
Expand All @@ -39,8 +41,4 @@ public void generate(Consumer<RecipeJsonProvider> exporter) {
.criterion(hasItem(Items.TOTEM_OF_UNDYING), conditionsFromItem(Items.TOTEM_OF_UNDYING))
.offerTo(exporter);
}

private static <T> String hasTag(TagKey<T> tag) {
return "has_tag_" + tag.id().getNamespace() + "_" + tag.id().getPath();
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,16 @@ public ModLangProviderENUS(FabricDataOutput dataOutput) {

@Override
public void generateTranslations(TranslationBuilder builder) {
builder.add(ModItems.CAT_BAG, "Cat Bag");
builder.add(ModItems.TOTEMEOW, "Totemeow");
builder.add(ModItems.CAT_SPIRIT, "Cat Spirit");
builder.add(ModItems.FANG_LUO, "Paper Model of Fang_Luo");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION, "Don't be sad, have a hug..."); // Don't change to other language when translating.
builder.add(ModItems.CAT_BAG.get(), "Cat Bag");
builder.add(ModItems.TOTEMEOW.get(), "Totemeow");
builder.add(ModItems.CAT_SPIRIT.get(), "Cat Spirit");
builder.add(ModItems.FANG_LUO.get(), "Doll of Fang_Luo");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION_1, "In memory of Fang_Luo, a girl who was passed away because of cancer.");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION_2, "Rest in peace.");

builder.add(ModBlocks.CAT_RESURRECTION_STATION, "Cat Resurrection Station");
builder.add(ModBlocks.CAT_RESURRECTION_STATION_BLOCK.get(), "Cat Resurrection Station");

builder.add(ModEffects.CATTIFY, "Cattify");
builder.add(ModEffects.CATTIFY.get(), "Cattify");
builder.add(Constants.MESSAGE_CATTIFY_POTION, "Potion of Cattify");
builder.add(Constants.MESSAGE_CATTIFY_SPLASH_POTION, "Splash Potion of Cattify");
builder.add(Constants.MESSAGE_CATTIFY_LINGERING_POTION, "Lingering Potion of Cattify");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,16 @@ public ModLangProviderZHCN(FabricDataOutput dataOutput) {

@Override
public void generateTranslations(TranslationBuilder builder) {
builder.add(ModItems.CAT_BAG, "猫包");
builder.add(ModItems.TOTEMEOW, "不死猫腾");
builder.add(ModItems.CAT_SPIRIT, "猫魂");
builder.add(ModItems.FANG_LUO, "坊洛纸模");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION, "Don't be sad, have a hug...");
builder.add(ModItems.CAT_BAG.get(), "猫包");
builder.add(ModItems.TOTEMEOW.get(), "不死猫腾");
builder.add(ModItems.CAT_SPIRIT.get(), "猫魂");
builder.add(ModItems.FANG_LUO.get(), "坊洛玩偶");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION_1, "纪念因肿瘤离去的坊洛。");
builder.add(Constants.MESSAGE_FANG_LUO_DESCRIPTION_2, "缅怀……");

builder.add(ModBlocks.CAT_RESURRECTION_STATION, "猫咪复活台");
builder.add(ModBlocks.CAT_RESURRECTION_STATION_BLOCK.get(), "猫咪复活台");

builder.add(ModEffects.CATTIFY, "猫咪化");
builder.add(ModEffects.CATTIFY.get(), "猫咪化");
builder.add(Constants.MESSAGE_CATTIFY_POTION, "变猫药水");
builder.add(Constants.MESSAGE_CATTIFY_SPLASH_POTION, "喷溅型变猫药水");
builder.add(Constants.MESSAGE_CATTIFY_LINGERING_POTION, "滞留型变猫药水");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public void setCatEntity(CatEntity cat) {

@Override
public boolean isCat() {
return ((IPlayerEntityMixin) player).catsplus$isCat() || player.hasStatusEffect(ModEffects.CATTIFY);
return ((IPlayerEntityMixin) player).catsplus$isCat() || player.hasStatusEffect(ModEffects.CATTIFY.get());
}

@Override
Expand Down
Loading

0 comments on commit efba7be

Please sign in to comment.