Compare commits

...

3 commits

Author SHA1 Message Date
8814335544 Fixed forge build
wrong modid for SS
2025-02-20 13:59:08 -05:00
d9993e541e LIFE IS BEAUTIFUL
Items are created and working-ish in fabric
forge is throwing a fit tho
2025-02-20 03:34:53 -05:00
b24bf0d8f2 THE MESS™ 2025-02-19 17:40:58 -05:00
42 changed files with 917 additions and 1114 deletions

1
.gitignore vendored
View file

@ -16,3 +16,4 @@ classes/
.metadata .metadata
.settings .settings
*.launch *.launch
.architectury-transformer

View file

@ -1,382 +0,0 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<profiles version="20">
<profile kind="CodeFormatterProfile" name="JavaConventions" version="20">
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_ellipsis" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_at_in_annotation_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_for_statment" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_block_boundaries" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_logical_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_for_parameter" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_package" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_invocation" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_imports" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_while" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_before_root_tags" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_annotation_type_member_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_record_declaration" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_throws" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_switch_statement" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_javadoc_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.indentation.size" value="4"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_postfix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_enum_constant_declaration" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_increments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_default" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_inits" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.align_with_spaces" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.disabling_tag" value="@formatter:off"/>
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation" value="2"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_before_code_block" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_switch_case_expressions" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_enum_constants" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_imports" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_method_body" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_package" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_local_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_if_while_statement" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_enum_constant" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.indent_root_tags" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_or_operator_multicatch" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.enabling_tag" value="@formatter:on"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_brace_in_block" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.count_line_length_from_starting_position" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_record_components" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_return" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_method_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_parameter" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_case" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_multiplicative_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.keep_then_statement_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_field" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_explicitconstructorcall_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_prefix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_type_declarations" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_catch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_method" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_switch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameterized_type_references" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_anonymous_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_logical_operator" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_annotation_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_record_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_enum_constant" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_multiplicative_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.never_indent_line_comments_on_first_column" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_and_in_type_parameter" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_for_inits" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_block" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_anonymous_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_wildcard" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_invocation_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_switch" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_descriptions_grouped" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.comment.line_length" value="120"/>
<setting id="org.eclipse.jdt.core.formatter.use_on_off_tags" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.keep_method_body_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_brackets_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_loop_body_block_on_one_line" value="one_line_never"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_constant" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_assignment_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.preserve_white_space_between_code_and_line_comments" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_local_variable" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_method_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_abstract_method" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.keep_enum_constant_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.align_variable_declarations_on_columns" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_union_type_in_multicatch" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_type_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_method_body" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_else_statement_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_catch_clause" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_additive_operator" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_parameterized_type_reference" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_multiple_field_declarations" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_constructor" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_explicit_constructor_call" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_relational_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiplicative_operator" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.keep_anonymous_type_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_switch_case_expressions" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_shift_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_annotation_declaration_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_superinterfaces" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_record_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_default" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_constructor_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_lambda_body" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_end_of_code_block" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.compact_else_if" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_catch" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_bitwise_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.put_empty_statement_on_new_line" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_constructor_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_parameters" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_invocation_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_method_invocation" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_throws_clause_in_constructor_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_loops" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_block_comment" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_catch_in_try_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_try" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_simple_for_body_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_at_end_of_file_if_missing" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.clear_blank_lines_in_javadoc_comment" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_relational_operator" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_unary_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_array_initializer" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.format_line_comment_starting_on_first_column" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_empty_lines_to_preserve" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_annotation" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_case" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_ellipsis" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_additive_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_try_resources" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_assert" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_if" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_and_in_type_parameter" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_string_concatenation" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_line_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_record_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_labeled_statement" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.text_block_indentation" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.align_type_members_on_columns" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assignment" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_module_statements" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_type_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_after_code_block" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.comment.align_tags_names_descriptions" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_type_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.keep_if_then_body_block_on_one_line" value="one_line_never"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_first_class_body_declaration" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression" value="80"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_closing_brace_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.format_guardian_clause_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_if" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.align_assignment_statements_on_columns" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_annotation_on_type" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_block" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_block_in_case" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_arrow_in_switch_default" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.insert_new_line_between_different_tags" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_conditional_expression_chain" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_allocation_expression" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assertion_message_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_additive_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_invocation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_while" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_switch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_method_declaration" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.join_wrapped_lines" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_parens_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_conditional_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_cases" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_synchronized" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_shift_operator" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.align_fields_grouping_blank_lines" value="2147483647"/>
<setting id="org.eclipse.jdt.core.formatter.comment.new_lines_at_javadoc_boundaries" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_bitwise_operator" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_annotation_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_resources_in_try" value="80"/>
<setting id="org.eclipse.jdt.core.formatter.use_tabs_only_for_leading_indentations" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_try_clause" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_selector_in_method_invocation" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.never_indent_block_comments_on_first_column" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.keep_code_block_on_one_line" value="one_line_never"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_synchronized" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_constructor_declaration_throws" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_record_components" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.tabulation.size" value="8"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_bitwise_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_allocation_expression" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_colon_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_source_code" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_try" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_semicolon_in_try_resources" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_field" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.continuation_indentation_for_array_initializer" value="2"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_question_in_wildcard" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_method" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superclass_in_type_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_record_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_enum_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_parenthesized_expression_in_throw" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_assignment_operator" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_labeled_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_not_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_switch" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_superinterfaces" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_type_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_brace_in_array_initializer" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_parenthesized_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_html" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_at_in_annotation_type_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_angle_bracket_in_type_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_method_delcaration" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_compact_if" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.keep_lambda_body_block_on_one_line" value="one_line_never"/>
<setting id="org.eclipse.jdt.core.formatter.indent_empty_lines" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_type_arguments" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_unary_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_annotation" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_record_constructor_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_record_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_empty_array_initializer_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.indent_switchstatements_compare_to_switch" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_assertion_message" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_else_in_if_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_assignment_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_new_chunk" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_label" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_declaration_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_constructor_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_method_declaration_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_cast" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_arrow_in_switch_case" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_assert" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_member_type" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_while_in_do_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_logical_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_record_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_parameterized_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_arguments_in_qualified_allocation_expression" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_superinterfaces_in_record_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_after_opening_brace_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_breaks_compare_to_cases" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_bitwise_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_if" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_relational_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_postfix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_try" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_cast" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.format_block_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_lambda_arrow" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.indent_tag_description" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.keep_imple_if_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_record_constructor" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_enum_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_parameters_in_method_declaration" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_brackets_in_array_type_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_string_concatenation" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_semicolon_in_for" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_method_declaration_throws" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_allocation_expression" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_after_last_class_body_declaration" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.indent_statements_compare_to_body" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_multiple_fields" value="16"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_enum_constant_arguments" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_simple_while_body_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_prefix_operator" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_array_initializer" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_logical_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_shift_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_method_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_type_parameters" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_catch" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_statement_group_in_switch" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_comma_in_annotation" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_enum_constant_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.parentheses_positions_in_lambda_declaration" value="common_lines"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_shift_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_between_empty_braces_in_array_initializer" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_colon_in_case" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_local_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_simple_do_while_body_on_same_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_annotation_type_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_bracket_in_array_reference" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.keep_enum_declaration_on_one_line" value="one_line_if_empty"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_record_components" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_method_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_outer_expressions_when_nested" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_closing_paren_in_cast" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_enum_constant" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.brace_position_for_type_declaration" value="end_of_line"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_multiplicative_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_before_package" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_for" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_synchronized" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_for_increments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_annotation_type_member_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.alignment_for_expressions_in_for_loop_header" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_additive_operator" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.keep_simple_getter_setter_on_one_line" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_while" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_enum_constant" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_explicitconstructorcall_arguments" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.indent_body_declarations_compare_to_enum_constant_header" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_string_concatenation" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_lambda_arrow" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_brace_in_constructor_declaration" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_constructor_declaration_throws" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.join_lines_in_comments" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_closing_angle_bracket_in_type_parameters" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_question_in_conditional" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.comment.indent_parameter_description" value="false"/>
<setting id="org.eclipse.jdt.core.formatter.number_of_blank_lines_at_beginning_of_code_block" value="0"/>
<setting id="org.eclipse.jdt.core.formatter.insert_new_line_before_finally_in_try_statement" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_record_declaration" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.tabulation.char" value="mixed"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_relational_operator" value="insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_comma_in_multiple_field_declarations" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.wrap_before_string_concatenation" value="true"/>
<setting id="org.eclipse.jdt.core.formatter.blank_lines_between_import_groups" value="1"/>
<setting id="org.eclipse.jdt.core.formatter.lineSplit" value="120"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_after_opening_paren_in_annotation" value="do not insert"/>
<setting id="org.eclipse.jdt.core.formatter.insert_space_before_opening_paren_in_switch" value="insert"/>
</profile>
</profiles>

26
.vscode/launch.json vendored
View file

@ -3,35 +3,29 @@
"configurations": [ "configurations": [
{ {
"type": "java", "type": "java",
"name": "Minecraft Client (:forge)", "name": "Minecraft Client (:fabric)",
"request": "launch", "request": "launch",
"cwd": "${workspaceFolder}/forge/run", "cwd": "${workspaceFolder}/fabric/run",
"console": "integratedTerminal", "console": "integratedTerminal",
"stopOnEntry": false, "stopOnEntry": false,
"mainClass": "dev.architectury.transformer.TransformerRuntime", "mainClass": "dev.architectury.transformer.TransformerRuntime",
"vmArgs": "-Dfabric.dli.config\u003d/pool/git/SimplyCompat/forge/.gradle/loom-cache/launch.cfg -Dfabric.dli.env\u003dclient -Djava.net.preferIPv6Addresses\u003dsystem -p /home/toph/.gradle/caches/modules-2/files-2.1/cpw.mods/securejarhandler/2.1.10/51e6a22c6c716beb11e244bf5b8be480f51dd6b5/securejarhandler-2.1.10.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-commons/9.5/19ab5b5800a3910d30d3a3e64fdb00fd0cb42de0/asm-commons-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-util/9.5/64b5a1fc8c1b15ed2efd6a063e976bc8d3dc5ffe/asm-util-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-analysis/9.5/490bacc77de7cbc0be1a30bb3471072d705be4a4/asm-analysis-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-tree/9.5/fd33c8b6373abaa675be407082fdfda35021254a/asm-tree-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.5/dc6ea1875f4d64fbc85e1691c95b96a3d8569c90/asm-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/net.minecraftforge/JarJarFileSystems/0.3.19/2464eb7d6b9ddb9db36a82cf8a95193e5c6fe020/JarJarFileSystems-0.3.19.jar --add-modules ALL-MODULE-PATH --add-opens java.base/java.util.jar\u003dcpw.mods.securejarhandler --add-opens java.base/java.lang.invoke\u003dcpw.mods.securejarhandler --add-exports java.base/sun.security.util\u003dcpw.mods.securejarhandler --add-exports jdk.naming.dns/com.sun.jndi.dns\u003djava.naming -Dfabric.dli.main\u003dcpw.mods.bootstraplauncher.BootstrapLauncher -Darchitectury.main.class\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.main_class -Darchitectury.runtime.transformer\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.transforms -Darchitectury.properties\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.properties -Djdk.attach.allowAttachSelf\u003dtrue -javaagent:/pool/git/SimplyCompat/.gradle/architectury/architectury-transformer-agent.jar", "vmArgs": "-Dfabric.dli.config\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/loom-cache/launch.cfg -Dfabric.dli.env\u003dclient -Dfabric.dli.main\u003dnet.fabricmc.loader.impl.launch.knot.KnotClient -Darchitectury.main.class\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.main_class -Darchitectury.runtime.transformer\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.transforms -Darchitectury.properties\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.properties -Djdk.attach.allowAttachSelf\u003dtrue -javaagent:/home/toph/git/simplycompat-1.20.1-fabric-forge-template/.gradle/architectury/architectury-transformer-agent.jar",
"args": "", "args": "",
"env": { "env": {},
"MOD_CLASSES": "main%%/pool/git/SimplyCompat/forge/build/resources/main:main%%/pool/git/SimplyCompat/forge/build/classes/java/main", "projectName": "fabric"
"MCP_MAPPINGS": "loom.stub"
},
"projectName": "forge"
}, },
{ {
"type": "java", "type": "java",
"name": "Minecraft Server (:forge)", "name": "Minecraft Server (:fabric)",
"request": "launch", "request": "launch",
"cwd": "${workspaceFolder}/forge/run", "cwd": "${workspaceFolder}/fabric/run",
"console": "integratedTerminal", "console": "integratedTerminal",
"stopOnEntry": false, "stopOnEntry": false,
"mainClass": "dev.architectury.transformer.TransformerRuntime", "mainClass": "dev.architectury.transformer.TransformerRuntime",
"vmArgs": "-Dfabric.dli.config\u003d/pool/git/SimplyCompat/forge/.gradle/loom-cache/launch.cfg -Dfabric.dli.env\u003dserver -Djava.net.preferIPv6Addresses\u003dsystem -p /home/toph/.gradle/caches/modules-2/files-2.1/cpw.mods/securejarhandler/2.1.10/51e6a22c6c716beb11e244bf5b8be480f51dd6b5/securejarhandler-2.1.10.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-commons/9.5/19ab5b5800a3910d30d3a3e64fdb00fd0cb42de0/asm-commons-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-util/9.5/64b5a1fc8c1b15ed2efd6a063e976bc8d3dc5ffe/asm-util-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-analysis/9.5/490bacc77de7cbc0be1a30bb3471072d705be4a4/asm-analysis-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm-tree/9.5/fd33c8b6373abaa675be407082fdfda35021254a/asm-tree-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/org.ow2.asm/asm/9.5/dc6ea1875f4d64fbc85e1691c95b96a3d8569c90/asm-9.5.jar:/home/toph/.gradle/caches/modules-2/files-2.1/net.minecraftforge/JarJarFileSystems/0.3.19/2464eb7d6b9ddb9db36a82cf8a95193e5c6fe020/JarJarFileSystems-0.3.19.jar --add-modules ALL-MODULE-PATH --add-opens java.base/java.util.jar\u003dcpw.mods.securejarhandler --add-opens java.base/java.lang.invoke\u003dcpw.mods.securejarhandler --add-exports java.base/sun.security.util\u003dcpw.mods.securejarhandler --add-exports jdk.naming.dns/com.sun.jndi.dns\u003djava.naming -Dfabric.dli.main\u003dcpw.mods.bootstraplauncher.BootstrapLauncher -Darchitectury.main.class\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.main_class -Darchitectury.runtime.transformer\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.transforms -Darchitectury.properties\u003d/pool/git/SimplyCompat/forge/.gradle/architectury/.properties -Djdk.attach.allowAttachSelf\u003dtrue -javaagent:/pool/git/SimplyCompat/.gradle/architectury/architectury-transformer-agent.jar", "vmArgs": "-Dfabric.dli.config\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/loom-cache/launch.cfg -Dfabric.dli.env\u003dserver -Dfabric.dli.main\u003dnet.fabricmc.loader.impl.launch.knot.KnotServer -Darchitectury.main.class\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.main_class -Darchitectury.runtime.transformer\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.transforms -Darchitectury.properties\u003d/home/toph/git/simplycompat-1.20.1-fabric-forge-template/fabric/.gradle/architectury/.properties -Djdk.attach.allowAttachSelf\u003dtrue -javaagent:/home/toph/git/simplycompat-1.20.1-fabric-forge-template/.gradle/architectury/architectury-transformer-agent.jar",
"args": "nogui", "args": "nogui",
"env": { "env": {},
"MOD_CLASSES": "main%%/pool/git/SimplyCompat/forge/build/resources/main:main%%/pool/git/SimplyCompat/forge/build/classes/java/main", "projectName": "fabric"
"MCP_MAPPINGS": "loom.stub"
},
"projectName": "forge"
} }
] ]
} }

33
.vscode/settings.json vendored
View file

@ -1,23 +1,24 @@
{ {
"java.compile.nullAnalysis.mode": "automatic",
"editor.formatOnSave": true,
"java.format.settings.url": ".vscode/java-formatter.xml",
"[java]": { "[java]": {
"editor.detectIndentation": false,
"editor.insertSpaces": false, "editor.insertSpaces": false,
"editor.tabSize": 2, "editor.tabSize": 2
"editor.detectIndentation": false
}, },
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx2G -Xms100m -Xlog:disable",
"java.configuration.updateBuildConfiguration": "interactive",
"java.jdt.ls.java.home": "/home/toph/.asdf/installs/java/openjdk-17",
"explorer.fileNesting.patterns": {
"gradlew": "build.gradle, gradle.properties, gradlew.bat, settings.gradle",
".gitignore": ".gitattributes, .tool-versions, LICENSE.txt, README.md, .prettierrc.yaml"
},
"workbench.iconTheme": "material-icon-theme",
"editor.fontSize": 15,
"editor.cursorStyle": "block", "editor.cursorStyle": "block",
"editor.fontLigatures": true,
"editor.fontFamily": "'Monocraft Nerd Font', 'monospace', monospace", "editor.fontFamily": "'Monocraft Nerd Font', 'monospace', monospace",
"prettier-plugin-java-vscode.prettierConfigPath": "${workspaceFolder}/.prettierrc.yaml" "editor.fontLigatures": true,
"editor.fontSize": 15,
"editor.formatOnSave": true,
"explorer.fileNesting.patterns": {
".gitignore": ".gitattributes, .tool-versions, LICENSE.txt, README.md, .prettierrc.yaml",
"build.gradle": "gradle.properties, gradlew.bat, settings.gradle"
},
"java.compile.nullAnalysis.mode": "automatic",
"java.configuration.updateBuildConfiguration": "interactive",
"java.import.gradle.home": "/home/toph/.asdf/installs/gradle/8.8",
"java.jdt.ls.java.home": "/home/toph/.asdf/installs/java/openjdk-17",
"java.jdt.ls.vmargs": "-XX:+UseParallelGC -XX:GCTimeRatio=4 -XX:AdaptiveSizePolicyWeight=90 -Dsun.zip.disableMemoryMapping=true -Xmx4G -Xms100m -Xlog:disable",
"jdk.jdkhome": "/home/toph/.asdf/installs/java/openjdk-17",
"prettier-plugin-java-vscode.prettierConfigPath": "${workspaceFolder}/.prettierrc.yaml",
"workbench.iconTheme": "material-icon-theme"
} }

View file

@ -1,39 +1,27 @@
plugins { plugins {
id "architectury-plugin" version "3.4-SNAPSHOT" id 'dev.architectury.loom' version '1.7-SNAPSHOT' apply false
id "dev.architectury.loom" version "1.3-SNAPSHOT" apply false id 'architectury-plugin' version '3.4-SNAPSHOT'
id 'com.github.johnrengelman.shadow' version '8.1.1' apply false
} }
architectury { 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:1.20.1+build.10:v2"
}
} }
allprojects { allprojects {
apply plugin: "java" group = rootProject.maven_group
apply plugin: "architectury-plugin" version = rootProject.mod_version
apply plugin: "maven-publish"
base {
archivesName = rootProject.archives_base_name
} }
version = rootProject.mod_version subprojects {
group = rootProject.maven_group apply plugin: 'dev.architectury.loom'
apply plugin: 'architectury-plugin'
apply plugin: 'maven-publish'
base {
// Set up a suffixed format for the mod jar names, e.g. `example-fabric`.
archivesName = "$rootProject.archives_name-$project.name"
}
repositories { repositories {
// Add repositories to retrieve artifacts from in here. // Add repositories to retrieve artifacts from in here.
@ -41,14 +29,53 @@ allprojects {
// Loom adds the essential maven repositories to download Minecraft and libraries from automatically. // Loom adds the essential maven repositories to download Minecraft and libraries from automatically.
// See https://docs.gradle.org/current/userguide/declaring_repositories.html // See https://docs.gradle.org/current/userguide/declaring_repositories.html
// for more information about repositories. // for more information about repositories.
maven {
name = 'ParchmentMC'
url = 'https://maven.parchmentmc.org'
}
} }
tasks.withType(JavaCompile) { loom {
options.encoding = "UTF-8" silentMojangMappingsLicense()
options.release = 17 }
dependencies {
minecraft "net.minecraft:minecraft:$rootProject.minecraft_version"
mappings loom.layered() {
officialMojangMappings()
parchment("org.parchmentmc.data:parchment-$rootProject.parchment_version@zip")
}
} }
java { 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() withSourcesJar()
sourceCompatibility = JavaVersion.VERSION_17
targetCompatibility = JavaVersion.VERSION_17
}
tasks.withType(JavaCompile).configureEach {
it.options.release = 17
}
// 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.
}
} }
} }

View file

@ -1,47 +1,36 @@
architectury { architectury {
common(rootProject.enabled_platforms.split(",")) common rootProject.enabled_platforms.split(',')
} }
loom {
accessWidenerPath = file("src/main/resources/simplycompat.accesswidener")
}
repositories { repositories {
exclusiveContent {
forRepository {
maven { maven {
url "https://cursemaven.com" url "https://www.cursemaven.com"
} content {
}
filter {
includeGroup "curse.maven" includeGroup "curse.maven"
} }
} }
maven { url "https://maven.shedaniel.me/" }
} }
dependencies { dependencies {
// We depend on fabric loader here to use the fabric @Environment annotations and get the mixin dependencies // We depend on Fabric Loader here to use the Fabric @Environment annotations,
// Do NOT use other classes from fabric loader // which get remapped to the correct annotations on each platform.
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}" // Do NOT use other classes from Fabric Loader.
// Remove the next line if you don't want to depend on the API modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version"
modApi "dev.architectury:architectury:${rootProject.architectury_version}"
implementation "curse.maven:additional-additions-forge-582387:5155724" // Architectury API. This is optional, and you can comment it out if you don't need it.
implementation "curse.maven:create-328085:5838779" modImplementation "dev.architectury:architectury:$rootProject.architectury_api_version"
implementation "curse.maven:create-industry-693815:5811638"
implementation "curse.maven:simplyswords-659887:5255981"
modApi("me.shedaniel.cloth:cloth-config:$rootProject.cloth_config_version") {
exclude(group: "net.fabricmc.fabric-api")
} }
publishing { modImplementation "curse.maven:simplyswords-659887:5255981"
publications { // runtimeOnly "curse.maven:better-combat-by-daedelus-639842:5625757"
mavenCommon(MavenPublication) { // runtimeOnly "curse.maven:playeranimator-658587:4587214"
artifactId = rootProject.archives_base_name // implementation "curse.maven:additional-additions-forge-582387:5155724"
from components.java // implementation "curse.maven:create-328085:5838779"
} // implementation "curse.maven:create-industry-693815:5811638"
}
// 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.
}
} }

View file

@ -1,26 +0,0 @@
package cc.toph.simplycompat;
import dev.architectury.platform.Platform;
import java.nio.file.Path;
public class ExpectPlatform {
/**
* We can use {@link Platform#getConfigFolder()} but this is just an example of {@link dev.architectury.injectables.annotations.ExpectPlatform}.
* <p>
* This must be a <b>public static</b> method. The platform-implemented solution must be placed under a
* platform sub-package, with its class suffixed with {@code Impl}.
* <p>
* Example:
* Expect: cc.toph.simplycompat.ExampleExpectPlatform#getConfigDirectory()
* Actual Fabric: net.examplemod.fabric.ExampleExpectPlatformImpl#getConfigDirectory()
* Actual Forge: net.examplemod.forge.ExampleExpectPlatformImpl#getConfigDirectory()
* <p>
* <a href="https://plugins.jetbrains.com/plugin/16210-architectury">You should also get the IntelliJ plugin to help with @ExpectPlatform.</a>
*/
@dev.architectury.injectables.annotations.ExpectPlatform
public static Path getConfigDirectory() {
// Just throw an error, the content should get replaced at runtime.
throw new AssertionError();
}
}

View file

@ -1,24 +1,38 @@
package cc.toph.simplycompat; package cc.toph.simplycompat;
public class SimplyCompat { import cc.toph.simplycompat.registry.ItemsRegistry;
import dev.architectury.registry.CreativeTabRegistry;
import dev.architectury.registry.registries.DeferredRegister;
import dev.architectury.registry.registries.RegistrySupplier;
import net.minecraft.core.registries.Registries;
import net.minecraft.network.chat.Component;
import net.minecraft.world.item.CreativeModeTab;
import net.minecraft.world.item.ItemStack;
import net.minecraft.world.item.Items;
import org.apache.logging.log4j.LogManager;
import org.apache.logging.log4j.Logger;
public final class SimplyCompat {
public static final String MOD_ID = "simplycompat"; public static final String MOD_ID = "simplycompat";
// We can use this if we don't want to use DeferredRegister
// public static final Supplier<RegistrarManager> REGISTRIES = Suppliers.memoize(() -> RegistrarManager.get(MOD_ID)); public static final DeferredRegister<CreativeModeTab> TABS = DeferredRegister.create(
// MOD_ID,
// // Registering a new creative tab Registries.CREATIVE_MODE_TAB
// public static final DeferredRegister<ItemGroups> TABS = DeferredRegister.create(MOD_ID, Registries.CREATIVE_MODE_TAB); );
// public static final RegistrySupplier<ItemGroups> EXAMPLE_TAB = TABS.register("example_tab", () -> public static final RegistrySupplier<CreativeModeTab> SIMPLYCOMPAT = TABS.register(MOD_ID, () ->
// CreativeTabRegistry.create(Component.translatable("itemGroup." + MOD_ID + ".example_tab"), CreativeTabRegistry.create(
// () -> new ItemStack(ExampleMod.EXAMPLE_ITEM.get()))); Component.translatable("creativeTab.simplycompat.simplycompat"),
// () -> new ItemStack(Items.AMETHYST_SHARD)
// public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(MOD_ID, Registries.ITEM); )
// public static final RegistrySupplier<Item> EXAMPLE_ITEM = ITEMS.register("example_item", () -> );
// new Item(new Item.Properties().arch$tab(ExampleMod.EXAMPLE_TAB)));
// public static final Logger LOGGER = LogManager.getLogger(MOD_ID);
public static void init() { public static void init() {
// TABS.register(); // Write common init code here.
// ITEMS.register();
// TABS.register();
System.out.println(ExpectPlatform.getConfigDirectory().toAbsolutePath().normalize().toString()); ItemsRegistry.ITEMS.register();
} }
} }

View file

@ -0,0 +1,77 @@
package cc.toph.simplycompat.item;
import com.google.common.base.Suppliers;
import java.util.function.Supplier;
import net.minecraft.core.registries.BuiltInRegistries;
import net.minecraft.world.item.Item;
import net.minecraft.world.item.Items;
import net.minecraft.world.item.Tier;
import net.minecraft.world.item.crafting.Ingredient;
public enum SimplyCompatToolMaterials implements Tier {
COPPER(1, 125, 4.5F, 1.0F, 8, Items.COPPER_INGOT),
STEEL(2, 600, 6.5F, 2.5F, 12, Items.DIAMOND);
private final int level;
private final int uses;
private final float speed;
private final float attackDamageBonus;
private final int enchantmentValue;
private final Supplier<Ingredient> repairIngredient;
SimplyCompatToolMaterials(
int level,
int uses,
float speed,
float attackDamageBonus,
int enchantmentValue,
Item... repairIngredient
) {
this.level = level;
this.uses = uses;
this.speed = speed;
this.attackDamageBonus = attackDamageBonus;
this.enchantmentValue = enchantmentValue;
this.repairIngredient = Suppliers.memoize(() -> Ingredient.of(repairIngredient));
}
/**
* Returns RepairIngredient ResourceLocation as a string
* @return String ResourceLocation Path (mod:item)
*/
public String getIdentifier() {
return BuiltInRegistries.ITEM.getKey(
this.repairIngredient.get().getItems()[0].getItem()
).toString();
}
@Override
public int getUses() {
return uses;
}
@Override
public float getSpeed() {
return speed;
}
@Override
public float getAttackDamageBonus() {
return attackDamageBonus;
}
@Override
public int getLevel() {
return level;
}
@Override
public int getEnchantmentValue() {
return enchantmentValue;
}
@Override
public Ingredient getRepairIngredient() {
return this.repairIngredient.get();
}
}

View file

@ -1,15 +0,0 @@
package cc.toph.simplycompat.mixin;
import net.minecraft.client.gui.screen.TitleScreen;
import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.injection.At;
import org.spongepowered.asm.mixin.injection.Inject;
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
@Mixin(TitleScreen.class)
public class MixinTitleScreen {
@Inject(at = @At("HEAD"), method = "init()V")
private void init(CallbackInfo info) {
System.out.println("Hello from example architectury common mixin!");
}
}

View file

@ -0,0 +1,436 @@
package cc.toph.simplycompat.registry;
import cc.toph.simplycompat.SimplyCompat;
import cc.toph.simplycompat.item.SimplyCompatToolMaterials;
import dev.architectury.registry.registries.DeferredRegister;
import dev.architectury.registry.registries.RegistrySupplier;
import net.minecraft.core.registries.Registries;
import net.minecraft.world.item.Item;
import net.sweenus.simplyswords.config.ConfigDefaultValues;
import net.sweenus.simplyswords.item.SimplySwordsSwordItem;
public class ItemsRegistry {
enum WeaponType {
CHAKRAM(
"chakram",
net.sweenus.simplyswords.config.Config.getFloat(
"chakram_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.chakram_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"chakram_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.chakram_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"chakram_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.chakram_attackSpeed
)
),
CLAYMORE(
"claymore",
net.sweenus.simplyswords.config.Config.getFloat(
"claymore_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.claymore_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"claymore_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.claymore_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"claymore_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.claymore_attackSpeed
)
),
CUTLASS(
"cutlass",
net.sweenus.simplyswords.config.Config.getFloat(
"cutlass_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.cutlass_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"cutlass_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.cutlass_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"cutlass_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.cutlass_attackSpeed
)
),
GLAIVE(
"glaive",
net.sweenus.simplyswords.config.Config.getFloat(
"glaive_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.glaive_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"glaive_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.glaive_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"glaive_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.glaive_attackSpeed
)
),
GREATAXE(
"greataxe",
net.sweenus.simplyswords.config.Config.getFloat(
"greataxe_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.greataxe_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"greataxe_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.greataxe_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"greataxe_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.greataxe_attackSpeed
)
),
GREATHAMMER(
"greathammer",
net.sweenus.simplyswords.config.Config.getFloat(
"greathammer_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.greathammer_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"greathammer_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.greathammer_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"greathammer_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.greathammer_attackSpeed
)
),
HALBERD(
"halberd",
net.sweenus.simplyswords.config.Config.getFloat(
"halberd_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.halberd_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"halberd_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.halberd_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"halberd_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.halberd_attackSpeed
)
),
KATANA(
"katana",
net.sweenus.simplyswords.config.Config.getFloat(
"katana_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.katana_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"katana_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.katana_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"katana_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.katana_attackSpeed
)
),
LONGSWORD(
"longsword",
net.sweenus.simplyswords.config.Config.getFloat(
"longsword_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.longsword_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"longsword_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.longsword_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"longsword_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.longsword_attackSpeed
)
),
RAPIER(
"rapier",
net.sweenus.simplyswords.config.Config.getFloat(
"rapier_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.rapier_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"rapier_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.rapier_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"rapier_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.rapier_attackSpeed
)
),
SAI(
"sai",
net.sweenus.simplyswords.config.Config.getFloat(
"sai_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.sai_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"sai_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.sai_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"sai_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.sai_attackSpeed
)
),
SCYTHE(
"scythe",
net.sweenus.simplyswords.config.Config.getFloat(
"scythe_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.scythe_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"scythe_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.scythe_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"scythe_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.scythe_attackSpeed
)
),
SPEAR(
"spear",
net.sweenus.simplyswords.config.Config.getFloat(
"spear_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.spear_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"spear_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.spear_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"spear_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.spear_attackSpeed
)
),
TWINBLADE(
"twinblade",
net.sweenus.simplyswords.config.Config.getFloat(
"twinblade_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.twinblade_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"twinblade_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.twinblade_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"twinblade_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.twinblade_attackSpeed
)
),
WARGLAIVE(
"warglaive",
net.sweenus.simplyswords.config.Config.getFloat(
"warglaive_positiveDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.warglaive_positiveDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"warglaive_negativeDamageModifier",
"WeaponAttributes",
ConfigDefaultValues.warglaive_negativeDamageModifier
),
net.sweenus.simplyswords.config.Config.getFloat(
"warglaive_attackSpeed",
"WeaponAttributes",
ConfigDefaultValues.warglaive_attackSpeed
)
);
final String weaponNameSuffix;
final float positiveModifier;
final float negativeModifier;
final float attackSpeed;
WeaponType(
String weaponNameSuffix,
float positiveModifier,
float negativeModifier,
float attackSpeed
) {
this.weaponNameSuffix = weaponNameSuffix;
this.positiveModifier = positiveModifier;
this.negativeModifier = negativeModifier;
this.attackSpeed = attackSpeed;
}
public String getWeaponNameSuffix() {
return weaponNameSuffix;
}
public float getPositiveModifier() {
return positiveModifier;
}
public float getNegativeModifier() {
return negativeModifier;
}
public float getAttackSpeed() {
return attackSpeed;
}
}
public static final DeferredRegister<Item> ITEMS = DeferredRegister.create(
SimplyCompat.MOD_ID,
Registries.ITEM
);
private static RegistrySupplier<SimplySwordsSwordItem> registerSword(
String materialPrefix,
SimplyCompatToolMaterials material,
WeaponType type
) {
// Get the base modifier from config by constructing the key "<materialPrefix>_damageModifier"
// float baseModifier = Config.getFloat(
// materialPrefix + "_damageModifier",
// "WeaponAttributes",
// 1.0F // TODO: Change config to a data structure, or at least have one available for accessing here, Since we cant `ConfigDefaultValues.material_damageModifier` here
// );
var materialTag = material.getIdentifier();
float finalDamage = 2.0f + type.getPositiveModifier() - type.getNegativeModifier();
// float finalDamage = baseModifier + type.getPositiveModifier() - type.getNegativeModifier();
String name = materialPrefix + "_" + type.getWeaponNameSuffix();
return ITEMS.register(name, () ->
new SimplySwordsSwordItem(material, (int) finalDamage, type.getAttackSpeed(), materialTag)
);
}
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_CHAKRAM = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.CHAKRAM
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_CLAYMORE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.CLAYMORE
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_CUTLASS = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.CUTLASS
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_GLAIVE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.GLAIVE
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_GREATAXE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.GREATAXE
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_GREATHAMMER = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.GREATHAMMER
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_HALBERD = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.HALBERD
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_KATANA = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.KATANA
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_LONGSWORD = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.LONGSWORD
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_RAPIER = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.RAPIER
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_SAI = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.SAI
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_SCYTHE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.SCYTHE
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_SPEAR = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.SPEAR
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_TWINBLADE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.TWINBLADE
);
public static final RegistrySupplier<SimplySwordsSwordItem> COPPER_WARGLAIVE = registerSword(
"copper",
SimplyCompatToolMaterials.COPPER,
WeaponType.WARGLAIVE
);
}

View file

@ -1,3 +0,0 @@
{
"accessWidener": "simplycompat.accesswidener"
}

View file

@ -1,3 +1,4 @@
{ {
"item.examplemod.example_item": "Example Item" "item.simplycompat.copper_longsword": "Copper Longsword",
"item.simplycompat.copper_scythe": "Copper Scythe"
} }

View file

@ -0,0 +1,6 @@
{
"parent": "simplyswords:item/template_longsword",
"textures": {
"layer0": "simplycompat:item/copper_longsword"
}
}

View file

@ -0,0 +1,6 @@
{
"parent": "simplyswords:item/big_handheld",
"textures": {
"layer0": "simplycompat:item/copper_scythe"
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 347 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 539 B

View file

@ -0,0 +1,4 @@
{
"replace": false,
"values": ["simplycompat:copper_longsword", "simplycompat:copper_scythe"]
}

View file

@ -0,0 +1,39 @@
{
"attributes": {
"attack_range": 2.9,
"category": "sword",
"attacks": [
{
"hitbox": "HORIZONTAL_PLANE",
"damage_multiplier": 1,
"angle": 120,
"upswing": 0.5,
"animation": "bettercombat:one_handed_slash_horizontal_right",
"swing_sound": {
"id": "bettercombat:sword_slash"
}
},
{
"hitbox": "HORIZONTAL_PLANE",
"damage_multiplier": 1,
"angle": 120,
"upswing": 0.5,
"animation": "bettercombat:one_handed_slash_horizontal_left",
"swing_sound": {
"id": "bettercombat:sword_slash"
}
},
{
"hitbox": "FORWARD_BOX",
"damage_multiplier": 1.4,
"angle": 0,
"upswing": 0.5,
"animation": "bettercombat:one_handed_stab",
"swing_sound": {
"id": "bettercombat:sword_slash",
"pitch": 1.2
}
}
]
}
}

View file

@ -1 +0,0 @@
accessWidener v2 named

View file

@ -4,7 +4,6 @@
"compatibilityLevel": "JAVA_17", "compatibilityLevel": "JAVA_17",
"minVersion": "0.8", "minVersion": "0.8",
"client": [ "client": [
"MixinTitleScreen"
], ],
"mixins": [ "mixins": [
], ],

View file

@ -1,5 +1,5 @@
plugins { plugins {
id "com.github.johnrengelman.shadow" version "7.1.2" id 'com.github.johnrengelman.shadow'
} }
architectury { architectury {
@ -7,71 +7,72 @@ architectury {
fabric() fabric()
} }
loom {
accessWidenerPath = project(":common").loom.accessWidenerPath
}
configurations { configurations {
common common {
shadowCommon // Don't use shadow from the shadow plugin since it *excludes* files. canBeResolved = true
canBeConsumed = false
}
compileClasspath.extendsFrom common compileClasspath.extendsFrom common
runtimeClasspath.extendsFrom common runtimeClasspath.extendsFrom common
developmentFabric.extendsFrom common developmentFabric.extendsFrom common
// Files in this configuration will be bundled into your mod using the Shadow plugin.
// Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files.
shadowBundle {
canBeResolved = true
canBeConsumed = false
}
}
repositories {
maven {
url "https://www.cursemaven.com"
content {
includeGroup "curse.maven"
}
}
maven { url "https://maven.shedaniel.me/" }
} }
dependencies { dependencies {
modImplementation "net.fabricmc:fabric-loader:${rootProject.fabric_loader_version}" modImplementation "net.fabricmc:fabric-loader:$rootProject.fabric_loader_version"
modApi "net.fabricmc.fabric-api:fabric-api:${rootProject.fabric_api_version}"
// Remove the next line if you don't want to depend on the API
modApi "dev.architectury:architectury-fabric:${rootProject.architectury_version}"
common(project(path: ":common", configuration: "namedElements")) { transitive false } // Fabric API. This is technically optional, but you probably want it anyway.
shadowCommon(project(path: ":common", configuration: "transformProductionFabric")) { transitive false } modImplementation "net.fabricmc.fabric-api:fabric-api:$rootProject.fabric_api_version"
// Architectury API. This is optional, and you can comment it out if you don't need it.
modImplementation "dev.architectury:architectury-fabric:$rootProject.architectury_api_version"
modApi("me.shedaniel.cloth:cloth-config-fabric:${rootProject.cloth_config_version}") {
exclude(group: "net.fabricmc.fabric-api")
}
modImplementation "curse.maven:simplyswords-659887:5255981"
// runtimeOnly "curse.maven:better-combat-by-daedelus-639842:5625757"
// runtimeOnly "curse.maven:playeranimator-658587:4587214"
// implementation "curse.maven:additional-additions-forge-582387:5155724"
// implementation "curse.maven:create-328085:5838779"
// implementation "curse.maven:create-industry-693815:5811638"
common(project(path: ':common', configuration: 'namedElements')) { transitive false }
shadowBundle project(path: ':common', configuration: 'transformProductionFabric')
} }
processResources { processResources {
inputs.property "version", project.version inputs.property 'version', project.version
filesMatching("fabric.mod.json") { filesMatching('fabric.mod.json') {
expand "version": project.version expand version: project.version
} }
} }
shadowJar { shadowJar {
exclude "architectury.common.json" configurations = [project.configurations.shadowBundle]
archiveClassifier = 'dev-shadow'
configurations = [project.configurations.shadowCommon]
archiveClassifier = "dev-shadow"
} }
remapJar { remapJar {
injectAccessWidener = true inputFile.set shadowJar.archiveFile
input.set shadowJar.archiveFile
dependsOn shadowJar
}
sourcesJar {
def commonSources = project(":common").sourcesJar
dependsOn commonSources
from commonSources.archiveFile.map { zipTree(it) }
}
components.java {
withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
skip()
}
}
publishing {
publications {
mavenFabric(MavenPublication) {
artifactId = rootProject.archives_base_name + "-" + project.name
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.
}
} }

View file

@ -1,15 +0,0 @@
package cc.toph.simplycompat.fabric;
import cc.toph.simplycompat.ExpectPlatform;
import net.fabricmc.loader.api.FabricLoader;
import java.nio.file.Path;
public class ExpectPlatformImpl {
/**
* This is our actual method to {@link ExpectPlatform#getConfigDirectory()}.
*/
public static Path getConfigDirectory() {
return FabricLoader.getInstance().getConfigDir();
}
}

View file

@ -0,0 +1,17 @@
package cc.toph.simplycompat.fabric;
import cc.toph.simplycompat.SimplyCompat;
import net.fabricmc.api.ModInitializer;
public final class SimplyCompatFabric implements ModInitializer {
@Override
public void onInitialize() {
// This code runs as soon as Minecraft is in a mod-load-ready state.
// However, some things (like resources) may still be uninitialized.
// Proceed with mild caution.
// Run our common setup.
SimplyCompat.init();
}
}

View file

@ -1,11 +0,0 @@
package cc.toph.simplycompat.fabric;
import cc.toph.simplycompat.SimplyCompat;
import net.fabricmc.api.ModInitializer;
public class SimplyCompatModFabric implements ModInitializer {
@Override
public void onInitialize() {
SimplyCompat.init();
}
}

View file

@ -0,0 +1,11 @@
package cc.toph.simplycompat.fabric.client;
import net.fabricmc.api.ClientModInitializer;
public final class SimplyCompatFabricClient implements ClientModInitializer {
@Override
public void onInitializeClient() {
// This entrypoint is suitable for setting up client-specific logic, such as rendering.
}
}

View file

@ -2,29 +2,29 @@
"schemaVersion": 1, "schemaVersion": 1,
"id": "simplycompat", "id": "simplycompat",
"version": "${version}", "version": "${version}",
"name": "Example Mod", "name": "Simply Compat",
"description": "This is an example description! Tell everyone what your mod is about!", "description": "This is an example description! Tell everyone what your mod is about!",
"authors": [ "authors": ["Me!"],
"Me!"
],
"contact": { "contact": {
"homepage": "https://fabricmc.net/", "homepage": "https://fabricmc.net/",
"sources": "https://github.com/FabricMC/fabric-example-mod" "sources": "https://github.com/FabricMC/fabric-example-mod"
}, },
"license": "Insert License Here", "license": "CC0-1.0",
"icon": "assets/simplycompat/icon.png", "icon": "assets/simplycompat/icon.png",
"environment": "*", "environment": "*",
"entrypoints": { "entrypoints": {
"main": [ "main": ["cc.toph.simplycompat.fabric.SimplyCompatFabric"],
"cc.toph.simplycompat.fabric.SimplyCompatModFabric" "client": ["cc.toph.simplycompat.fabric.client.SimplyCompatFabricClient"]
]
}, },
"mixins": [ "mixins": ["simplycompat.mixins.json"],
"simplycompat.fabric.mixins.json"
],
"depends": { "depends": {
"fabric": "*", "fabricloader": ">=0.16.10",
"minecraft": ">=1.20.1", "minecraft": "~1.20.1",
"architectury": ">=9.1.12" "java": ">=17",
"architectury": ">=9.2.14",
"fabric-api": "*"
},
"suggests": {
"another-mod": "*"
} }
} }

View file

@ -1,13 +0,0 @@
{
"required": true,
"package": "cc.toph.simplycompat.fabric.mixin",
"compatibilityLevel": "JAVA_17",
"minVersion": "0.8",
"client": [
],
"mixins": [
],
"injectors": {
"defaultRequire": 1
}
}

View file

@ -1,5 +1,11 @@
plugins { plugins {
id "com.github.johnrengelman.shadow" version "7.1.2" id 'com.github.johnrengelman.shadow'
}
loom {
forge {
mixinConfig "simplycompat.mixins.json"
}
} }
architectury { architectury {
@ -7,77 +13,79 @@ architectury {
forge() forge()
} }
loom { // def localModsDir = project.rootProject.file('./run/mods/')
accessWidenerPath = project(":common").loom.accessWidenerPath // if (localModsDir.exists() && localModsDir.isDirectory()) {
// def localMods = localModsDir
forge { // .listFiles({ file -> file.isFile() && file.name.endsWith('.jar') } as FileFilter)
convertAccessWideners = true // localMods.each { mod ->
extraAccessWideners.add loom.accessWidenerPath.get().asFile.name // dependencies {
// modLocalRuntime files(mod)
mixinConfig "simplycompat.forge.mixins.json" // }
} // }
} // }
configurations { configurations {
common common {
shadowCommon // Don't use shadow from the shadow plugin since it *excludes* files. canBeResolved = true
canBeConsumed = false
}
compileClasspath.extendsFrom common compileClasspath.extendsFrom common
runtimeClasspath.extendsFrom common runtimeClasspath.extendsFrom common
developmentForge.extendsFrom common developmentForge.extendsFrom common
// Files in this configuration will be bundled into your mod using the Shadow plugin.
// Don't use the `shadow` configuration from the plugin itself as it's meant for excluding files.
shadowBundle {
canBeResolved = true
canBeConsumed = false
}
}
repositories {
maven {
url "https://www.cursemaven.com"
content {
includeGroup "curse.maven"
}
}
maven { url "https://maven.shedaniel.me/" }
} }
dependencies { dependencies {
forge "net.minecraftforge:forge:${rootProject.forge_version}" forge "net.minecraftforge:forge:$rootProject.forge_version"
// Remove the next line if you don't want to depend on the API
modApi "dev.architectury:architectury-forge:${rootProject.architectury_version}"
common(project(path: ":common", configuration: "namedElements")) { transitive false } // Architectury API. This is optional, and you can comment it out if you don't need it.
shadowCommon(project(path: ":common", configuration: "transformProductionForge")) { transitive = false } modImplementation "dev.architectury:architectury-forge:$rootProject.architectury_api_version"
modApi("me.shedaniel.cloth:cloth-config-forge:${rootProject.cloth_config_version}")
modImplementation "curse.maven:simplyswords-659887:5639538"
// modImplementation "curse.maven:simplyswords-659887:5255981"
// runtimeOnly "curse.maven:better-combat-by-daedelus-639842:5625757"
// runtimeOnly "curse.maven:playeranimator-658587:4587214"
// implementation "curse.maven:additional-additions-forge-582387:5155724"
// implementation "curse.maven:create-328085:5838779"
// implementation "curse.maven:create-industry-693815:5811638"
common(project(path: ':common', configuration: 'namedElements')) { transitive false }
shadowBundle project(path: ':common', configuration: 'transformProductionForge')
} }
processResources { processResources {
inputs.property "version", project.version inputs.property 'version', project.version
filesMatching("META-INF/mods.toml") { filesMatching('META-INF/mods.toml') {
expand "version": project.version expand version: project.version
} }
} }
shadowJar { shadowJar {
exclude "fabric.mod.json" configurations = [project.configurations.shadowBundle]
exclude "architectury.common.json" archiveClassifier = 'dev-shadow'
configurations = [project.configurations.shadowCommon]
archiveClassifier = "dev-shadow"
} }
remapJar { remapJar {
input.set shadowJar.archiveFile inputFile.set shadowJar.archiveFile
dependsOn shadowJar
}
sourcesJar {
def commonSources = project(":common").sourcesJar
dependsOn commonSources
from commonSources.archiveFile.map { zipTree(it) }
}
components.java {
withVariantsFromConfiguration(project.configurations.shadowRuntimeElements) {
skip()
}
}
publishing {
publications {
mavenForge(MavenPublication) {
artifactId = rootProject.archives_base_name + "-" + project.name
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.
}
} }

View file

@ -0,0 +1,22 @@
package cc.toph.simplycompat.forge;
import cc.toph.simplycompat.SimplyCompat;
import dev.architectury.platform.forge.EventBuses;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
@Mod(SimplyCompat.MOD_ID)
public final class ExampleModForge {
@SuppressWarnings("removal")
public ExampleModForge() {
// Submit our event bus to let Architectury API register our content on the right time.
EventBuses.registerModEventBus(
SimplyCompat.MOD_ID,
FMLJavaModLoadingContext.get().getModEventBus()
);
// Run our common setup.
SimplyCompat.init();
}
}

View file

@ -1,15 +0,0 @@
package cc.toph.simplycompat.forge;
import cc.toph.simplycompat.ExpectPlatform;
import net.minecraftforge.fml.loading.FMLPaths;
import java.nio.file.Path;
public class ExpectPlatformImpl {
/**
* This is our actual method to {@link ExpectPlatform#getConfigDirectory()}.
*/
public static Path getConfigDirectory() {
return FMLPaths.CONFIGDIR.get();
}
}

View file

@ -1,15 +0,0 @@
package cc.toph.simplycompat.forge;
import cc.toph.simplycompat.SimplyCompat;
import dev.architectury.platform.forge.EventBuses;
import net.minecraftforge.fml.common.Mod;
import net.minecraftforge.fml.javafmlmod.FMLJavaModLoadingContext;
@Mod(SimplyCompat.MOD_ID)
public class SimplyCompatForge {
public SimplyCompatForge() {
// Submit our event bus to let architectury register our content on the right time
EventBuses.registerModEventBus(SimplyCompat.MOD_ID, FMLJavaModLoadingContext.get().getModEventBus());
SimplyCompat.init();
}
}

View file

@ -13,8 +13,6 @@ This is an example description! Tell everyone what your mod is about!
''' '''
#logoFile = "" #logoFile = ""
# TODO: add simply swords here
[[dependencies.simplycompat]] [[dependencies.simplycompat]]
modId = "forge" modId = "forge"
mandatory = true mandatory = true
@ -32,6 +30,6 @@ side = "BOTH"
[[dependencies.simplycompat]] [[dependencies.simplycompat]]
modId = "architectury" modId = "architectury"
mandatory = true mandatory = true
versionRange = "[9.1.12,)" versionRange = "[9.2.14,)"
ordering = "AFTER" ordering = "AFTER"
side = "BOTH" side = "BOTH"

View file

@ -1,6 +1,7 @@
{ {
"pack": { "pack": {
"description": "Simply Compat", "description": "Simply Compat",
"forge:server_data_pack_format": 15,
"pack_format": 15 "pack_format": 15
} }
} }

View file

@ -1,13 +0,0 @@
{
"required": true,
"package": "cc.toph.simplycompat.forge.mixin",
"compatibilityLevel": "JAVA_17",
"minVersion": "0.8",
"client": [
],
"mixins": [
],
"injectors": {
"defaultRequire": 1
}
}

View file

@ -1,18 +1,20 @@
org.gradle.jvmargs=-Xmx2048M # Done to increase the memory available to Gradle.
org.gradle.jvmargs=-Xmx6G
org.gradle.parallel=true
minecraft_version=1.20.1 # Mod properties
mod_version = 1.0.0
maven_group = cc.toph.simplycompat
archives_name = simplycompat
enabled_platforms = fabric,forge enabled_platforms = fabric,forge
archives_base_name=simplycompat # Minecraft properties
mod_version=0.0.1 minecraft_version = 1.20.1
maven_group=cc.toph
architectury_version=9.1.12
fabric_loader_version=0.14.23
fabric_api_version=0.90.4+1.20.1
forge_version=1.20.1-47.2.1
# Dependencies
architectury_api_version = 9.2.14
cloth_config_version=11.1.106
fabric_loader_version = 0.16.10
fabric_api_version = 0.92.3+1.20.1
forge_version=1.20.1-47.1.1
parchment_version = 1.20.1:2023.09.03

Binary file not shown.

View file

@ -1,6 +0,0 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
networkTimeout=10000
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists

244
gradlew vendored
View file

@ -1,244 +0,0 @@
#!/bin/sh
#
# Copyright © 2015-2021 the original authors.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
##############################################################################
#
# Gradle start up script for POSIX generated by Gradle.
#
# Important for running:
#
# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is
# noncompliant, but you have some other compliant shell such as ksh or
# bash, then to run this script, type that shell name before the whole
# command line, like:
#
# ksh Gradle
#
# Busybox and similar reduced shells will NOT work, because this script
# requires all of these POSIX shell features:
# * functions;
# * expansions «$var», «${var}», «${var:-default}», «${var+SET}»,
# «${var#prefix}», «${var%suffix}», and «$( cmd )»;
# * compound commands having a testable exit status, especially «case»;
# * various built-in commands including «command», «set», and «ulimit».
#
# Important for patching:
#
# (2) This script targets any POSIX shell, so it avoids extensions provided
# by Bash, Ksh, etc; in particular arrays are avoided.
#
# The "traditional" practice of packing multiple parameters into a
# space-separated string is a well documented source of bugs and security
# problems, so this is (mostly) avoided, by progressively accumulating
# options in "$@", and eventually passing that to Java.
#
# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS,
# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly;
# see the in-line comments for details.
#
# There are tweaks for specific operating systems such as AIX, CygWin,
# Darwin, MinGW, and NonStop.
#
# (3) This script is generated from the Groovy template
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt
# within the Gradle project.
#
# You can find Gradle at https://github.com/gradle/gradle/.
#
##############################################################################
# Attempt to set APP_HOME
# Resolve links: $0 may be a link
app_path=$0
# Need this for daisy-chained symlinks.
while
APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path
[ -h "$app_path" ]
do
ls=$( ls -ld "$app_path" )
link=${ls#*' -> '}
case $link in #(
/*) app_path=$link ;; #(
*) app_path=$APP_HOME$link ;;
esac
done
# This is normally unused
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
APP_HOME=$( cd "${APP_HOME:-./}" && pwd -P ) || exit
# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
warn () {
echo "$*"
} >&2
die () {
echo
echo "$*"
echo
exit 1
} >&2
# OS specific support (must be 'true' or 'false').
cygwin=false
msys=false
darwin=false
nonstop=false
case "$( uname )" in #(
CYGWIN* ) cygwin=true ;; #(
Darwin* ) darwin=true ;; #(
MSYS* | MINGW* ) msys=true ;; #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
# Determine the Java command to use to start the JVM.
if [ -n "$JAVA_HOME" ] ; then
if [ -x "$JAVA_HOME/jre/sh/java" ] ; then
# IBM's JDK on AIX uses strange locations for the executables
JAVACMD=$JAVA_HOME/jre/sh/java
else
JAVACMD=$JAVA_HOME/bin/java
fi
if [ ! -x "$JAVACMD" ] ; then
die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
else
JAVACMD=java
which java >/dev/null 2>&1 || die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
Please set the JAVA_HOME variable in your environment to match the
location of your Java installation."
fi
# Increase the maximum file descriptors if we can.
if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then
case $MAX_FD in #(
max*)
# In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
MAX_FD=$( ulimit -H -n ) ||
warn "Could not query maximum file descriptor limit"
esac
case $MAX_FD in #(
'' | soft) :;; #(
*)
# In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked.
# shellcheck disable=SC3045
ulimit -n "$MAX_FD" ||
warn "Could not set maximum file descriptor limit to $MAX_FD"
esac
fi
# Collect all arguments for the java command, stacking in reverse order:
# * args from the command line
# * the main class name
# * -classpath
# * -D...appname settings
# * --module-path (only if needed)
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables.
# For Cygwin or MSYS, switch paths to Windows format before running java
if "$cygwin" || "$msys" ; then
APP_HOME=$( cygpath --path --mixed "$APP_HOME" )
CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" )
JAVACMD=$( cygpath --unix "$JAVACMD" )
# Now convert the arguments - kludge to limit ourselves to /bin/sh
for arg do
if
case $arg in #(
-*) false ;; # don't mess with options #(
/?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath
[ -e "$t" ] ;; #(
*) false ;;
esac
then
arg=$( cygpath --path --ignore --mixed "$arg" )
fi
# Roll the args list around exactly as many times as the number of
# args, so each arg winds up back in the position where it started, but
# possibly modified.
#
# NB: a `for` loop captures its iteration list before it begins, so
# changing the positional parameters here affects neither the number of
# iterations, nor the values presented in `arg`.
shift # remove old arg
set -- "$@" "$arg" # push replacement arg
done
fi
# Collect all arguments for the java command;
# * $DEFAULT_JVM_OPTS, $JAVA_OPTS, and $GRADLE_OPTS can contain fragments of
# shell script including quotes and variable substitutions, so put them in
# double quotes to make sure that they get re-expanded; and
# * put everything else in single quotes, so that it's not re-expanded.
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
org.gradle.wrapper.GradleWrapperMain \
"$@"
# Stop when "xargs" is not available.
if ! command -v xargs >/dev/null 2>&1
then
die "xargs is not available"
fi
# Use "xargs" to parse quoted args.
#
# With -n1 it outputs one arg per line, with the quotes and backslashes removed.
#
# In Bash we could simply go:
#
# readarray ARGS < <( xargs -n1 <<<"$var" ) &&
# set -- "${ARGS[@]}" "$@"
#
# but POSIX shell has neither arrays nor command substitution, so instead we
# post-process each arg (as a line of input to sed) to backslash-escape any
# character that might be a shell metacharacter, then use eval to reverse
# that process (while maintaining the separation between arguments), and wrap
# the whole thing up as a single "set" statement.
#
# This will of course break if any of these variables contains a newline or
# an unmatched quote.
#
eval "set -- $(
printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" |
xargs -n1 |
sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' |
tr '\n' ' '
)" '"$@"'
exec "$JAVACMD" "$@"

92
gradlew.bat vendored
View file

@ -1,92 +0,0 @@
@rem
@rem Copyright 2015 the original author or authors.
@rem
@rem Licensed under the Apache License, Version 2.0 (the "License");
@rem you may not use this file except in compliance with the License.
@rem You may obtain a copy of the License at
@rem
@rem https://www.apache.org/licenses/LICENSE-2.0
@rem
@rem Unless required by applicable law or agreed to in writing, software
@rem distributed under the License is distributed on an "AS IS" BASIS,
@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@rem
@rem Gradle startup script for Windows
@rem
@rem ##########################################################################
@rem Set local scope for the variables with windows NT shell
if "%OS%"=="Windows_NT" setlocal
set DIRNAME=%~dp0
if "%DIRNAME%"=="" set DIRNAME=.
@rem This is normally unused
set APP_BASE_NAME=%~n0
set APP_HOME=%DIRNAME%
@rem Resolve any "." and ".." in APP_HOME to make it shorter.
for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi
@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script.
set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m"
@rem Find java.exe
if defined JAVA_HOME goto findJavaFromJavaHome
set JAVA_EXE=java.exe
%JAVA_EXE% -version >NUL 2>&1
if %ERRORLEVEL% equ 0 goto execute
echo.
echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH.
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:findJavaFromJavaHome
set JAVA_HOME=%JAVA_HOME:"=%
set JAVA_EXE=%JAVA_HOME%/bin/java.exe
if exist "%JAVA_EXE%" goto execute
echo.
echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME%
echo.
echo Please set the JAVA_HOME variable in your environment to match the
echo location of your Java installation.
goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
:end
@rem End local scope for the variables with windows NT shell
if %ERRORLEVEL% equ 0 goto mainEnd
:fail
rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of
rem the _cmd.exe /c_ return code!
set EXIT_CODE=%ERRORLEVEL%
if %EXIT_CODE% equ 0 set EXIT_CODE=1
if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE%
exit /b %EXIT_CODE%
:mainEnd
if "%OS%"=="Windows_NT" endlocal
:omega

View file

@ -2,13 +2,13 @@ pluginManagement {
repositories { repositories {
maven { url "https://maven.fabricmc.net/" } maven { url "https://maven.fabricmc.net/" }
maven { url "https://maven.architectury.dev/" } maven { url "https://maven.architectury.dev/" }
maven { url "https://maven.minecraftforge.net/" } maven { url "https://files.minecraftforge.net/maven/" }
gradlePluginPortal() gradlePluginPortal()
} }
} }
include("common") rootProject.name = 'simplycompat'
include("fabric")
include("forge")
rootProject.name = "SimplyCompat" include 'common'
include 'fabric'
include 'forge'