6 Commits

Author SHA1 Message Date
b6bb6565a8 Updated mod to 1.21.5 2025-03-26 16:50:38 +01:00
8cebb278b8 Updated mod to 1.21.5 2025-03-26 16:45:19 +01:00
f17519a547 Updated README for v1.3.0 2025-03-26 16:24:52 +01:00
8be2f2dc31 Prettified README 2025-03-26 16:00:09 +01:00
091efb900a Scrapped Telekinesis (for now) due to complexity 2025-03-26 15:10:27 +01:00
824c84e329 Fixed spelling mistake 2025-03-26 10:59:42 +01:00
4 changed files with 36 additions and 61 deletions

View File

@ -1,38 +1,43 @@
# Survival Fabric
# ![Logo](https://i.imgur.com/ktkHND1.png)
This mod is FAR FROM FINISHED, and initially just created for our private Survival Server. This mod is FAR FROM FINISHED, and initially just created for our private Survival Server.
As a challenge I'm trying to make it as user-friendly as possible. (It ain't there yet tho ;) ) As a challenge I'm trying to make it as user-friendly as possible. (It ain't there yet tho ;) )
## Current feature-set ## Current feature-set
### Features ### Features
- Custom join message - Custom join message
- Custom quit message ![Join Message](https://i.imgur.com/7uv5lUb.png)
- Custom chat message - Custom quit message
- Tab list dimension indicator ![Quit Message](https://i.imgur.com/OhFq1BT.png)
- Custom chat message
![Chat Message](https://i.imgur.com/PDwRywP.png)
- Tab list dimension indicator
![Overworld](https://i.imgur.com/FB1Y7gD.png)
![Nether](https://i.imgur.com/XxJDL7u.png)
![End](https://i.imgur.com/t5u9goh.png)
![Spectator](https://i.imgur.com/eEn4V9S.png)
- Config
- Configurable messages
- Feature toggle
- Version "control"
- Shared Ender Chest
- Shared EC Access control (via config)
- Vein miner
![VeinMiner](https://i.imgur.com/zOXWMNa.gif)
### Commands ### Commands
- /spectator | Essentially server-side free-cam, you get put in spectator and are able to fly around, once you use the command again you get put back to where you were. - /spectator | Essentially server-side free-cam, you get put in spectator and are able to fly around, once you use the command again you get put back to where you were.
- /slimechunk (/sc) | See if you're currently in a slimechunk
## Currently working on v1.3.0
### Features
- [x] Config
- [x] Configurable messages
- [x] Feature toggle
- [x] Version "control"
- [x] Shared Ender Chest
- [x] Shared EC Access control (via config)
- [x] Vein miner
- [ ] Telekinesis
### Commands
- [x] /slimechunk (/sc) | See if you're currently in a slimechunk
### Misc ### Misc
- [x] Updated icon - Updated icon
## Features to come ## Features to come
For now there are no more feautures! - Telekinesis
Be sure to give your idea by [opening an issue](https://git.hak.wtf/hkuijlman/SurvivalFabric/issues/new) wit the label Feature Request
Other than that no more features!
Be sure to give your idea by [opening an issue](https://git.hak.wtf/hkuijlman/SurvivalFabric/issues/new) with the label Feature Request

View File

@ -4,14 +4,14 @@ org.gradle.parallel=true
# Fabric Properties # Fabric Properties
# check these on https://fabricmc.net/develop # check these on https://fabricmc.net/develop
minecraft_version=1.21.4 minecraft_version=1.21.5
yarn_mappings=1.21.4+build.8 yarn_mappings=1.21.5+build.1
loader_version=0.16.10 loader_version=0.16.10
# Mod Properties # Mod Properties
mod_version=1.3.0 mod_version=1.3.1
maven_group=wtf.hak.survivalfabric maven_group=wtf.hak.survivalfabric
archives_base_name=survivalfabric archives_base_name=survivalfabric
# Dependencies # Dependencies
fabric_version=0.119.0+1.21.4 fabric_version=0.119.5+1.21.5

View File

@ -5,9 +5,7 @@ import net.fabricmc.api.ModInitializer;
import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback; import net.fabricmc.fabric.api.command.v2.CommandRegistrationCallback;
import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents; import net.fabricmc.fabric.api.event.lifecycle.v1.ServerEntityEvents;
import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents; import net.fabricmc.fabric.api.event.player.PlayerBlockBreakEvents;
import net.minecraft.entity.Entity;
import net.minecraft.server.network.ServerPlayerEntity; import net.minecraft.server.network.ServerPlayerEntity;
import net.minecraft.server.world.ServerWorld;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import wtf.hak.survivalfabric.commands.ReloadConfigCommand; import wtf.hak.survivalfabric.commands.ReloadConfigCommand;

View File

@ -1,12 +1,11 @@
package wtf.hak.survivalfabric.sharedenderchest; package wtf.hak.survivalfabric.sharedenderchest;
import net.minecraft.entity.player.PlayerEntity; import net.minecraft.entity.player.PlayerEntity;
import net.minecraft.inventory.Inventories; import net.minecraft.inventory.Inventories;
import net.minecraft.inventory.Inventory; import net.minecraft.inventory.Inventory;
import net.minecraft.item.ItemStack; import net.minecraft.item.ItemStack;
import net.minecraft.util.collection.DefaultedList; import net.minecraft.util.collection.DefaultedList;
import java.util.Iterator;
public class SharedInventory implements Inventory { public class SharedInventory implements Inventory {
private final DefaultedList<ItemStack> stacks; private final DefaultedList<ItemStack> stacks;
@ -19,28 +18,6 @@ public class SharedInventory implements Inventory {
this.stacks = dl; this.stacks = dl;
} }
/*
@Override
public void onClose(PlayerEntity player) {
Inventory.super.onClose(player);
EnderChestBlockEntity blockEntity = enderChests.remove(player);
if (blockEntity != null)
blockEntity.onClose(player);
}
@Override
public void onOpen(PlayerEntity player) {
Inventory.super.onOpen(player);
EnderChestBlockEntity blockEntity = enderChests.get(player);
if (blockEntity != null)
blockEntity.onOpen(player);
}
public void setBlockEntity(PlayerEntity player, EnderChestBlockEntity be) {
enderChests.put(player, be);
}
*/
public DefaultedList<ItemStack> getList(DefaultedList<ItemStack> dl) { public DefaultedList<ItemStack> getList(DefaultedList<ItemStack> dl) {
dl = stacks; dl = stacks;
@ -54,7 +31,7 @@ public class SharedInventory implements Inventory {
@Override @Override
public boolean isEmpty() { public boolean isEmpty() {
Iterator<ItemStack> var1 = this.stacks.iterator(); var var1 = this.stacks.iterator();
ItemStack itemStack_1; ItemStack itemStack_1;
do { do {
@ -62,7 +39,7 @@ public class SharedInventory implements Inventory {
return true; return true;
} }
itemStack_1 = (ItemStack)var1.next(); itemStack_1 = var1.next();
} while(itemStack_1.isEmpty()); } while(itemStack_1.isEmpty());
return false; return false;
@ -76,10 +53,6 @@ public class SharedInventory implements Inventory {
@Override @Override
public ItemStack removeStack(int int_1, int int_2) { public ItemStack removeStack(int int_1, int int_2) {
ItemStack itemStack_1 = Inventories.splitStack(this.stacks, int_1, int_2); ItemStack itemStack_1 = Inventories.splitStack(this.stacks, int_1, int_2);
if (!itemStack_1.isEmpty()) {
//this.container.onContentChanged(this);
}
return itemStack_1; return itemStack_1;
} }
@ -91,7 +64,6 @@ public class SharedInventory implements Inventory {
@Override @Override
public void setStack(int i, ItemStack itemStack) { public void setStack(int i, ItemStack itemStack) {
this.stacks.set(i, itemStack); this.stacks.set(i, itemStack);
//this.container.onContentChanged(this);
} }
@Override @Override