Skip to content

Commit 9a192a4

Browse files
committed
basic functionality
1 parent 8fa3af1 commit 9a192a4

File tree

9 files changed

+72
-161
lines changed

9 files changed

+72
-161
lines changed

LICENSE

Lines changed: 21 additions & 121 deletions
Original file line numberDiff line numberDiff line change
@@ -1,121 +1,21 @@
1-
Creative Commons Legal Code
2-
3-
CC0 1.0 Universal
4-
5-
CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE
6-
LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN
7-
ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS
8-
INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES
9-
REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS
10-
PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM
11-
THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED
12-
HEREUNDER.
13-
14-
Statement of Purpose
15-
16-
The laws of most jurisdictions throughout the world automatically confer
17-
exclusive Copyright and Related Rights (defined below) upon the creator
18-
and subsequent owner(s) (each and all, an "owner") of an original work of
19-
authorship and/or a database (each, a "Work").
20-
21-
Certain owners wish to permanently relinquish those rights to a Work for
22-
the purpose of contributing to a commons of creative, cultural and
23-
scientific works ("Commons") that the public can reliably and without fear
24-
of later claims of infringement build upon, modify, incorporate in other
25-
works, reuse and redistribute as freely as possible in any form whatsoever
26-
and for any purposes, including without limitation commercial purposes.
27-
These owners may contribute to the Commons to promote the ideal of a free
28-
culture and the further production of creative, cultural and scientific
29-
works, or to gain reputation or greater distribution for their Work in
30-
part through the use and efforts of others.
31-
32-
For these and/or other purposes and motivations, and without any
33-
expectation of additional consideration or compensation, the person
34-
associating CC0 with a Work (the "Affirmer"), to the extent that he or she
35-
is an owner of Copyright and Related Rights in the Work, voluntarily
36-
elects to apply CC0 to the Work and publicly distribute the Work under its
37-
terms, with knowledge of his or her Copyright and Related Rights in the
38-
Work and the meaning and intended legal effect of CC0 on those rights.
39-
40-
1. Copyright and Related Rights. A Work made available under CC0 may be
41-
protected by copyright and related or neighboring rights ("Copyright and
42-
Related Rights"). Copyright and Related Rights include, but are not
43-
limited to, the following:
44-
45-
i. the right to reproduce, adapt, distribute, perform, display,
46-
communicate, and translate a Work;
47-
ii. moral rights retained by the original author(s) and/or performer(s);
48-
iii. publicity and privacy rights pertaining to a person's image or
49-
likeness depicted in a Work;
50-
iv. rights protecting against unfair competition in regards to a Work,
51-
subject to the limitations in paragraph 4(a), below;
52-
v. rights protecting the extraction, dissemination, use and reuse of data
53-
in a Work;
54-
vi. database rights (such as those arising under Directive 96/9/EC of the
55-
European Parliament and of the Council of 11 March 1996 on the legal
56-
protection of databases, and under any national implementation
57-
thereof, including any amended or successor version of such
58-
directive); and
59-
vii. other similar, equivalent or corresponding rights throughout the
60-
world based on applicable law or treaty, and any national
61-
implementations thereof.
62-
63-
2. Waiver. To the greatest extent permitted by, but not in contravention
64-
of, applicable law, Affirmer hereby overtly, fully, permanently,
65-
irrevocably and unconditionally waives, abandons, and surrenders all of
66-
Affirmer's Copyright and Related Rights and associated claims and causes
67-
of action, whether now known or unknown (including existing as well as
68-
future claims and causes of action), in the Work (i) in all territories
69-
worldwide, (ii) for the maximum duration provided by applicable law or
70-
treaty (including future time extensions), (iii) in any current or future
71-
medium and for any number of copies, and (iv) for any purpose whatsoever,
72-
including without limitation commercial, advertising or promotional
73-
purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each
74-
member of the public at large and to the detriment of Affirmer's heirs and
75-
successors, fully intending that such Waiver shall not be subject to
76-
revocation, rescission, cancellation, termination, or any other legal or
77-
equitable action to disrupt the quiet enjoyment of the Work by the public
78-
as contemplated by Affirmer's express Statement of Purpose.
79-
80-
3. Public License Fallback. Should any part of the Waiver for any reason
81-
be judged legally invalid or ineffective under applicable law, then the
82-
Waiver shall be preserved to the maximum extent permitted taking into
83-
account Affirmer's express Statement of Purpose. In addition, to the
84-
extent the Waiver is so judged Affirmer hereby grants to each affected
85-
person a royalty-free, non transferable, non sublicensable, non exclusive,
86-
irrevocable and unconditional license to exercise Affirmer's Copyright and
87-
Related Rights in the Work (i) in all territories worldwide, (ii) for the
88-
maximum duration provided by applicable law or treaty (including future
89-
time extensions), (iii) in any current or future medium and for any number
90-
of copies, and (iv) for any purpose whatsoever, including without
91-
limitation commercial, advertising or promotional purposes (the
92-
"License"). The License shall be deemed effective as of the date CC0 was
93-
applied by Affirmer to the Work. Should any part of the License for any
94-
reason be judged legally invalid or ineffective under applicable law, such
95-
partial invalidity or ineffectiveness shall not invalidate the remainder
96-
of the License, and in such case Affirmer hereby affirms that he or she
97-
will not (i) exercise any of his or her remaining Copyright and Related
98-
Rights in the Work or (ii) assert any associated claims and causes of
99-
action with respect to the Work, in either case contrary to Affirmer's
100-
express Statement of Purpose.
101-
102-
4. Limitations and Disclaimers.
103-
104-
a. No trademark or patent rights held by Affirmer are waived, abandoned,
105-
surrendered, licensed or otherwise affected by this document.
106-
b. Affirmer offers the Work as-is and makes no representations or
107-
warranties of any kind concerning the Work, express, implied,
108-
statutory or otherwise, including without limitation warranties of
109-
title, merchantability, fitness for a particular purpose, non
110-
infringement, or the absence of latent or other defects, accuracy, or
111-
the present or absence of errors, whether or not discoverable, all to
112-
the greatest extent permissible under applicable law.
113-
c. Affirmer disclaims responsibility for clearing rights of other persons
114-
that may apply to the Work or any use thereof, including without
115-
limitation any person's Copyright and Related Rights in the Work.
116-
Further, Affirmer disclaims responsibility for obtaining any necessary
117-
consents, permissions or other rights required for any use of the
118-
Work.
119-
d. Affirmer understands and acknowledges that Creative Commons is not a
120-
party to this document and has no duty or obligation with respect to
121-
this CC0 or use of the Work.
1+
MIT License
2+
3+
Copyright (c) 2022 Timofey Gelazoniya
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

README.md

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
1-
# Fabric Example Mod
1+
# RemoveBlockOutline
22

3-
## Setup
3+
This mod removes the outlines that get drawn when the player mouse over a block.
44

5-
For setup instructions please see the [fabric wiki page](https://fabricmc.net/wiki/tutorial:setup) that relates to the IDE that you are using.
5+
The idea of the mod was taken from [Remove Mouseover Highlight Mod](https://www.curseforge.com/minecraft/mc-mods/remove-mouseover-highlight).
6+
But this mod uses a Forge mod loader but all the mods I use use a Fabric mod loader.
7+
So i decided to create this mod =)
68

7-
## License
9+
[scrn1](https://i.imgur.com/jTeW1nQ.jpg)
10+
[scrn2](https://i.imgur.com/znVbxXC.jpg)
811

9-
This template is available under the CC0 license. Feel free to learn from it and incorporate it in your own projects.
12+
# Download
13+
Download last version from [releases](https://github.com/xzeldon/RemoveBlockOutline/releases).
14+
15+
# Install
16+
Download and install [Fabric](https://fabricmc.net/use/installer/) then place `.jar` file to the `mods` folder.

gradle.properties

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,9 +8,9 @@ org.gradle.jvmargs=-Xmx1G
88
loader_version=0.14.6
99

1010
# Mod Properties
11-
mod_version = 1.0.0
12-
maven_group = com.example
13-
archives_base_name = fabric-example-mod
11+
mod_version = 1.0.0-1.18.2
12+
maven_group = ru.xzeldon.removeblockoutline
13+
archives_base_name = removeblockoutline
1414

1515
# Dependencies
1616
fabric_version=0.53.0+1.18.2

src/main/java/net/fabricmc/example/mixin/ExampleMixin.java

Lines changed: 0 additions & 16 deletions
This file was deleted.
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,21 @@
1-
package net.fabricmc.example;
1+
package ru.xzeldon.removeblockoutline;
22

33
import net.fabricmc.api.ModInitializer;
44
import org.slf4j.Logger;
55
import org.slf4j.LoggerFactory;
66

7-
public class ExampleMod implements ModInitializer {
7+
public class RemoveBlockOutline implements ModInitializer {
88
// This logger is used to write text to the console and the log file.
99
// It is considered best practice to use your mod id as the logger's name.
1010
// That way, it's clear which mod wrote info, warnings, and errors.
11-
public static final Logger LOGGER = LoggerFactory.getLogger("modid");
11+
public static final Logger LOGGER = LoggerFactory.getLogger("removeblockoutline");
1212

1313
@Override
1414
public void onInitialize() {
1515
// This code runs as soon as Minecraft is in a mod-load-ready state.
1616
// However, some things (like resources) may still be uninitialized.
1717
// Proceed with mild caution.
1818

19-
LOGGER.info("Hello Fabric world!");
19+
LOGGER.info("RemoveBlockOutline mod initialized");
2020
}
2121
}
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package ru.xzeldon.removeblockoutline.mixin;
2+
3+
import net.minecraft.block.BlockState;
4+
import net.minecraft.client.render.VertexConsumer;
5+
import net.minecraft.client.render.WorldRenderer;
6+
import net.minecraft.client.util.math.MatrixStack;
7+
import net.minecraft.entity.Entity;
8+
import net.minecraft.util.math.BlockPos;
9+
import org.spongepowered.asm.mixin.Mixin;
10+
import org.spongepowered.asm.mixin.injection.At;
11+
import org.spongepowered.asm.mixin.injection.Inject;
12+
import org.spongepowered.asm.mixin.injection.callback.CallbackInfo;
13+
14+
@Mixin(WorldRenderer.class)
15+
public class RemoveBlockOutlineMixin {
16+
@Inject(method = "drawBlockOutline", at = @At("HEAD"), cancellable = true)
17+
private void onDrawBlockOutline(MatrixStack matrixStack, VertexConsumer vertexConsumer, Entity entity, double cameraX, double cameraY, double cameraZ, BlockPos blockPos, BlockState blockState, CallbackInfo ci) {
18+
ci.cancel();
19+
}
20+
}

src/main/resources/fabric.mod.json

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,29 @@
11
{
22
"schemaVersion": 1,
3-
"id": "modid",
3+
"id": "removeblockoutline",
44
"version": "${version}",
55

6-
"name": "Example Mod",
7-
"description": "This is an example description! Tell everyone what your mod is about!",
6+
"name": "RemoveBlockOutline",
7+
"description": "This mod removes the outlines that get drawn when the player mouse over a block.",
88
"authors": [
9-
"Me!"
9+
"xzeldon"
1010
],
1111
"contact": {
12-
"homepage": "https://fabricmc.net/",
13-
"sources": "https://github.com/FabricMC/fabric-example-mod"
12+
"homepage": "https://zeldon.ru/",
13+
"sources": "https://github.com/xzeldon/RemoveBlockOutline"
1414
},
1515

16-
"license": "CC0-1.0",
17-
"icon": "assets/modid/icon.png",
16+
"license": "MIT",
17+
"icon": "assets/removeblockoutline/icon.png",
1818

1919
"environment": "*",
2020
"entrypoints": {
2121
"main": [
22-
"net.fabricmc.example.ExampleMod"
22+
"ru.xzeldon.removeblockoutline.RemoveBlockOutline"
2323
]
2424
},
2525
"mixins": [
26-
"modid.mixins.json"
26+
"removeblockoutline.mixins.json"
2727
],
2828

2929
"depends": {

src/main/resources/modid.mixins.json renamed to src/main/resources/removeblockoutline.mixins.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
{
22
"required": true,
33
"minVersion": "0.8",
4-
"package": "net.fabricmc.example.mixin",
4+
"package": "ru.xzeldon.removeblockoutline.mixin",
55
"compatibilityLevel": "JAVA_17",
66
"mixins": [
77
],
88
"client": [
9-
"ExampleMixin"
9+
"RemoveBlockOutlineMixin"
1010
],
1111
"injectors": {
1212
"defaultRequire": 1

0 commit comments

Comments
 (0)