Updated to 1.17
This commit is contained in:
parent
529aecac0c
commit
2198917229
46 changed files with 43 additions and 35 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
build/libs/song-player-1.1.0-dev.jar
Normal file
BIN
build/libs/song-player-1.1.0-dev.jar
Normal file
Binary file not shown.
BIN
build/libs/song-player-1.1.0-sources-dev.jar
Normal file
BIN
build/libs/song-player-1.1.0-sources-dev.jar
Normal file
Binary file not shown.
BIN
build/libs/song-player-1.1.0-sources.jar
Normal file
BIN
build/libs/song-player-1.1.0-sources.jar
Normal file
Binary file not shown.
BIN
build/libs/song-player-1.1.0.jar
Normal file
BIN
build/libs/song-player-1.1.0.jar
Normal file
Binary file not shown.
2
build/loom-cache/mixin-map-1.17-1.17+build.1-v2.0.tiny
Normal file
2
build/loom-cache/mixin-map-1.17-1.17+build.1-v2.0.tiny
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
v1 named intermediary
|
||||||
|
FIELD com/github/hhhzzzsss/songplayer/mixin/ClientPlayNetworkHandlerMixin Lnet/minecraft/network/ClientConnection; connection field_3689
|
1
build/loom-cache/mixin-map-1.17-1.17+build.13-v2.0.tiny
Normal file
1
build/loom-cache/mixin-map-1.17-1.17+build.13-v2.0.tiny
Normal file
|
@ -0,0 +1 @@
|
||||||
|
v1 named intermediary
|
|
@ -1,7 +1,7 @@
|
||||||
{
|
{
|
||||||
"schemaVersion": 1,
|
"schemaVersion": 1,
|
||||||
"id": "songplayer",
|
"id": "songplayer",
|
||||||
"version": "1.0.0",
|
"version": "1.1.0",
|
||||||
|
|
||||||
"name": "Song Player",
|
"name": "Song Player",
|
||||||
"description": "Builds and plays noteblocks",
|
"description": "Builds and plays noteblocks",
|
||||||
|
@ -29,7 +29,7 @@
|
||||||
"depends": {
|
"depends": {
|
||||||
"fabricloader": ">=0.7.4",
|
"fabricloader": ">=0.7.4",
|
||||||
"fabric": "*",
|
"fabric": "*",
|
||||||
"minecraft": "1.16.x"
|
"minecraft": "1.17.x"
|
||||||
},
|
},
|
||||||
"suggests": {
|
"suggests": {
|
||||||
"flamingo": "*"
|
"flamingo": "*"
|
||||||
|
|
|
@ -1,8 +1,8 @@
|
||||||
|
com/github/hhhzzzsss/songplayer/mixin/ClientPlayerEntityMixin.java
|
||||||
|
com.github.hhhzzzsss.songplayer.mixin.ClientPlayerEntityMixin
|
||||||
com/github/hhhzzzsss/songplayer/SongPlayer.java
|
com/github/hhhzzzsss/songplayer/SongPlayer.java
|
||||||
com.github.hhhzzzsss.songplayer.SongPlayer
|
com.github.hhhzzzsss.songplayer.SongPlayer
|
||||||
com.github.hhhzzzsss.songplayer.SongPlayer$Mode
|
com.github.hhhzzzsss.songplayer.SongPlayer$Mode
|
||||||
com/github/hhhzzzsss/songplayer/mixin/ClientPlayerEntityMixin.java
|
|
||||||
com.github.hhhzzzsss.songplayer.mixin.ClientPlayerEntityMixin
|
|
||||||
com/github/hhhzzzsss/songplayer/mixin/KeyboardMixin.java
|
com/github/hhhzzzsss/songplayer/mixin/KeyboardMixin.java
|
||||||
com.github.hhhzzzsss.songplayer.mixin.KeyboardMixin
|
com.github.hhhzzzsss.songplayer.mixin.KeyboardMixin
|
||||||
com/github/hhhzzzsss/songplayer/mixin/MinecraftClientMixin.java
|
com/github/hhhzzzsss/songplayer/mixin/MinecraftClientMixin.java
|
||||||
|
@ -24,7 +24,6 @@ com/github/hhhzzzsss/songplayer/song/Song.java
|
||||||
com.github.hhhzzzsss.songplayer.song.Song
|
com.github.hhhzzzsss.songplayer.song.Song
|
||||||
com/github/hhhzzzsss/songplayer/CommandProcessor.java
|
com/github/hhhzzzsss/songplayer/CommandProcessor.java
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor
|
com.github.hhhzzzsss.songplayer.CommandProcessor
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$1
|
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$Command
|
com.github.hhhzzzsss.songplayer.CommandProcessor$Command
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$currentCommand
|
com.github.hhhzzzsss.songplayer.CommandProcessor$currentCommand
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$gotoCommand
|
com.github.hhhzzzsss.songplayer.CommandProcessor$gotoCommand
|
||||||
|
@ -37,9 +36,9 @@ com/github/hhhzzzsss/songplayer/CommandProcessor.java
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$songsCommand
|
com.github.hhhzzzsss.songplayer.CommandProcessor$songsCommand
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$stopCommand
|
com.github.hhhzzzsss.songplayer.CommandProcessor$stopCommand
|
||||||
com.github.hhhzzzsss.songplayer.CommandProcessor$toggleFakePlayerCommand
|
com.github.hhhzzzsss.songplayer.CommandProcessor$toggleFakePlayerCommand
|
||||||
com/github/hhhzzzsss/songplayer/mixin/ClientPlayNetworkHandlerMixin.java
|
|
||||||
com.github.hhhzzzsss.songplayer.mixin.ClientPlayNetworkHandlerMixin
|
|
||||||
com/github/hhhzzzsss/songplayer/noteblocks/PlayingThread.java
|
com/github/hhhzzzsss/songplayer/noteblocks/PlayingThread.java
|
||||||
com.github.hhhzzzsss.songplayer.noteblocks.PlayingThread
|
com.github.hhhzzzsss.songplayer.noteblocks.PlayingThread
|
||||||
|
com/github/hhhzzzsss/songplayer/mixin/ClientPlayNetworkHandlerMixin.java
|
||||||
|
com.github.hhhzzzsss.songplayer.mixin.ClientPlayNetworkHandlerMixin
|
||||||
com/github/hhhzzzsss/songplayer/song/DownloadingThread.java
|
com/github/hhhzzzsss/songplayer/song/DownloadingThread.java
|
||||||
com.github.hhhzzzsss.songplayer.song.DownloadingThread
|
com.github.hhhzzzsss.songplayer.song.DownloadingThread
|
||||||
|
|
|
@ -12,6 +12,8 @@ import com.github.hhhzzzsss.songplayer.noteblocks.Stage;
|
||||||
import com.github.hhhzzzsss.songplayer.song.DownloadingThread;
|
import com.github.hhhzzzsss.songplayer.song.DownloadingThread;
|
||||||
import com.github.hhhzzzsss.songplayer.song.Song;
|
import com.github.hhhzzzsss.songplayer.song.Song;
|
||||||
|
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
|
|
||||||
public class CommandProcessor {
|
public class CommandProcessor {
|
||||||
public static ArrayList<Command> commands = new ArrayList<>();
|
public static ArrayList<Command> commands = new ArrayList<>();
|
||||||
|
|
||||||
|
@ -178,7 +180,7 @@ public class CommandProcessor {
|
||||||
}
|
}
|
||||||
if (args.length() == 0) {
|
if (args.length() == 0) {
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.remove();
|
SongPlayer.fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
SongPlayer.fakePlayer = null;
|
SongPlayer.fakePlayer = null;
|
||||||
}
|
}
|
||||||
SongPlayer.stage.movePlayerToStagePosition();
|
SongPlayer.stage.movePlayerToStagePosition();
|
||||||
|
@ -382,7 +384,7 @@ public class CommandProcessor {
|
||||||
if (SongPlayer.showFakePlayer) {
|
if (SongPlayer.showFakePlayer) {
|
||||||
if (SongPlayer.mode == Mode.PLAYING || SongPlayer.mode == Mode.BUILDING) {
|
if (SongPlayer.mode == Mode.PLAYING || SongPlayer.mode == Mode.BUILDING) {
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.remove();
|
SongPlayer.fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
}
|
}
|
||||||
SongPlayer.fakePlayer = new FakePlayerEntity();
|
SongPlayer.fakePlayer = new FakePlayerEntity();
|
||||||
}
|
}
|
||||||
|
@ -390,7 +392,7 @@ public class CommandProcessor {
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.remove();
|
SongPlayer.fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
}
|
}
|
||||||
SongPlayer.addChatMessage("§6Disabled fake player");
|
SongPlayer.addChatMessage("§6Disabled fake player");
|
||||||
}
|
}
|
||||||
|
|
|
@ -14,7 +14,7 @@ public class FakePlayerEntity extends OtherClientPlayerEntity {
|
||||||
|
|
||||||
copyStagePosAndPlayerLook();
|
copyStagePosAndPlayerLook();
|
||||||
|
|
||||||
inventory.clone(player.inventory);
|
getInventory().clone(player.getInventory());
|
||||||
|
|
||||||
Byte playerModel = player.getDataTracker().get(PlayerEntity.PLAYER_MODEL_PARTS);
|
Byte playerModel = player.getDataTracker().get(PlayerEntity.PLAYER_MODEL_PARTS);
|
||||||
getDataTracker().set(PlayerEntity.PLAYER_MODEL_PARTS, playerModel);
|
getDataTracker().set(PlayerEntity.PLAYER_MODEL_PARTS, playerModel);
|
||||||
|
@ -26,16 +26,16 @@ public class FakePlayerEntity extends OtherClientPlayerEntity {
|
||||||
capeY = getY();
|
capeY = getY();
|
||||||
capeZ = getZ();
|
capeZ = getZ();
|
||||||
|
|
||||||
world.addEntity(getEntityId(), this);
|
world.addEntity(getId(), this);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void resetPlayerPosition() {
|
public void resetPlayerPosition() {
|
||||||
player.refreshPositionAndAngles(getX(), getY(), getZ(), yaw, pitch);
|
player.refreshPositionAndAngles(getX(), getY(), getZ(), getYaw(), getPitch());
|
||||||
}
|
}
|
||||||
|
|
||||||
public void copyStagePosAndPlayerLook() {
|
public void copyStagePosAndPlayerLook() {
|
||||||
if (SongPlayer.stage != null) {
|
if (SongPlayer.stage != null) {
|
||||||
refreshPositionAndAngles(SongPlayer.stage.position.getX()+0.5, SongPlayer.stage.position.getY(), SongPlayer.stage.position.getZ()+0.5, player.yaw, player.pitch);
|
refreshPositionAndAngles(SongPlayer.stage.position.getX()+0.5, SongPlayer.stage.position.getY(), SongPlayer.stage.position.getZ()+0.5, player.getYaw(), player.getPitch());
|
||||||
headYaw = player.headYaw;
|
headYaw = player.headYaw;
|
||||||
bodyYaw = player.bodyYaw;
|
bodyYaw = player.bodyYaw;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
package com.github.hhhzzzsss.songplayer;
|
package com.github.hhhzzzsss.songplayer;
|
||||||
|
|
||||||
import net.minecraft.client.network.ClientPlayerEntity;
|
import net.minecraft.client.network.ClientPlayerEntity;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.text.LiteralText;
|
import net.minecraft.text.LiteralText;
|
||||||
import net.minecraft.util.math.Vec3d;
|
import net.minecraft.util.math.Vec3d;
|
||||||
|
|
||||||
|
@ -31,7 +32,7 @@ public class Freecam {
|
||||||
enabled = false;
|
enabled = false;
|
||||||
if (fakePlayer != null) {
|
if (fakePlayer != null) {
|
||||||
fakePlayer.resetPlayerPosition();
|
fakePlayer.resetPlayerPosition();
|
||||||
fakePlayer.remove();
|
fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
fakePlayer = null;
|
fakePlayer = null;
|
||||||
player.setVelocity(Vec3d.ZERO);
|
player.setVelocity(Vec3d.ZERO);
|
||||||
}
|
}
|
||||||
|
|
|
@ -30,7 +30,7 @@ public class ClientPlayNetworkHandlerMixin {
|
||||||
ci.cancel();
|
ci.cancel();
|
||||||
}*/
|
}*/
|
||||||
if (SongPlayer.mode != SongPlayer.Mode.IDLE && packet instanceof PlayerMoveC2SPacket) {
|
if (SongPlayer.mode != SongPlayer.Mode.IDLE && packet instanceof PlayerMoveC2SPacket) {
|
||||||
connection.send(new PlayerMoveC2SPacket.Both(SongPlayer.stage.position.getX()+0.5, SongPlayer.stage.position.getY(), SongPlayer.stage.position.getZ()+0.5, SongPlayer.MC.player.yaw, SongPlayer.MC.player.pitch, true));
|
connection.send(new PlayerMoveC2SPacket.Full(SongPlayer.stage.position.getX()+0.5, SongPlayer.stage.position.getY(), SongPlayer.stage.position.getZ()+0.5, SongPlayer.MC.player.getYaw(), SongPlayer.MC.player.getPitch(), true));
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.copyStagePosAndPlayerLook();
|
SongPlayer.fakePlayer.copyStagePosAndPlayerLook();
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,4 +18,4 @@ public class ClientPlayerEntityMixin {
|
||||||
ci.cancel();
|
ci.cancel();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -8,11 +8,13 @@ import com.github.hhhzzzsss.songplayer.song.Song;
|
||||||
|
|
||||||
import net.minecraft.block.Block;
|
import net.minecraft.block.Block;
|
||||||
import net.minecraft.block.BlockState;
|
import net.minecraft.block.BlockState;
|
||||||
|
import net.minecraft.block.Blocks;
|
||||||
import net.minecraft.client.network.ClientPlayerEntity;
|
import net.minecraft.client.network.ClientPlayerEntity;
|
||||||
import net.minecraft.client.world.ClientWorld;
|
import net.minecraft.client.world.ClientWorld;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.entity.player.PlayerInventory;
|
import net.minecraft.entity.player.PlayerInventory;
|
||||||
import net.minecraft.item.ItemStack;
|
import net.minecraft.item.ItemStack;
|
||||||
import net.minecraft.nbt.CompoundTag;
|
import net.minecraft.nbt.NbtCompound;
|
||||||
import net.minecraft.util.Hand;
|
import net.minecraft.util.Hand;
|
||||||
import net.minecraft.util.hit.BlockHitResult;
|
import net.minecraft.util.hit.BlockHitResult;
|
||||||
import net.minecraft.util.math.BlockPos;
|
import net.minecraft.util.math.BlockPos;
|
||||||
|
@ -22,12 +24,12 @@ import net.minecraft.world.GameMode;
|
||||||
|
|
||||||
public class BuildingThread extends Thread {
|
public class BuildingThread extends Thread {
|
||||||
private final ClientPlayerEntity player = SongPlayer.MC.player;
|
private final ClientPlayerEntity player = SongPlayer.MC.player;
|
||||||
private final PlayerInventory inventory = SongPlayer.MC.player.inventory;
|
private final PlayerInventory inventory = SongPlayer.MC.player.getInventory();
|
||||||
private final ClientWorld world = SongPlayer.MC.world;
|
private final ClientWorld world = SongPlayer.MC.world;
|
||||||
private final Stage stage = SongPlayer.stage;
|
private final Stage stage = SongPlayer.stage;
|
||||||
private final BlockPos stagePos = SongPlayer.stage.position;
|
private final BlockPos stagePos = SongPlayer.stage.position;
|
||||||
private final Song song = SongPlayer.song;
|
private final Song song = SongPlayer.song;
|
||||||
private final int NOTEBLOCK_BASE_ID = 249;
|
private final int NOTEBLOCK_BASE_ID = Block.getRawIdFromState(Blocks.NOTE_BLOCK.getDefaultState());
|
||||||
private final String[] instrumentNames = {"harp", "basedrum", "snare", "hat", "bass", "flute", "bell", "guitar", "chime", "xylophone", "iron_xylophone", "cow_bell", "didgeridoo", "bit", "banjo", "pling"};
|
private final String[] instrumentNames = {"harp", "basedrum", "snare", "hat", "bass", "flute", "bell", "guitar", "chime", "xylophone", "iron_xylophone", "cow_bell", "didgeridoo", "bit", "banjo", "pling"};
|
||||||
private boolean[] missingNotes = new boolean[400];
|
private boolean[] missingNotes = new boolean[400];
|
||||||
|
|
||||||
|
@ -44,7 +46,7 @@ public class BuildingThread extends Thread {
|
||||||
BlockPos pos = new BlockPos(stagePos.getX()+dx, stagePos.getY()+dy, stagePos.getZ()+dz);
|
BlockPos pos = new BlockPos(stagePos.getX()+dx, stagePos.getY()+dy, stagePos.getZ()+dz);
|
||||||
BlockState bs = world.getBlockState(pos);
|
BlockState bs = world.getBlockState(pos);
|
||||||
int blockId = Block.getRawIdFromState(bs);
|
int blockId = Block.getRawIdFromState(bs);
|
||||||
if (blockId >= 249 && blockId <= 1048) {
|
if (blockId >= NOTEBLOCK_BASE_ID && blockId < NOTEBLOCK_BASE_ID+800) {
|
||||||
int noteId = (blockId-NOTEBLOCK_BASE_ID)/2;
|
int noteId = (blockId-NOTEBLOCK_BASE_ID)/2;
|
||||||
if (missingNotes[noteId]) {
|
if (missingNotes[noteId]) {
|
||||||
stage.tunedNoteblocks[noteId] = pos;
|
stage.tunedNoteblocks[noteId] = pos;
|
||||||
|
@ -89,12 +91,12 @@ public class BuildingThread extends Thread {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
player.abilities.allowFlying = true;
|
player.getAbilities().allowFlying = true;
|
||||||
player.abilities.flying = true;
|
player.getAbilities().flying = true;
|
||||||
SongPlayer.stage.movePlayerToStagePosition();
|
SongPlayer.stage.movePlayerToStagePosition();
|
||||||
if (SongPlayer.showFakePlayer) {
|
if (SongPlayer.showFakePlayer) {
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.remove();
|
SongPlayer.fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
}
|
}
|
||||||
SongPlayer.fakePlayer = new FakePlayerEntity();
|
SongPlayer.fakePlayer = new FakePlayerEntity();
|
||||||
}
|
}
|
||||||
|
@ -167,16 +169,16 @@ public class BuildingThread extends Thread {
|
||||||
private void holdNoteblock(int id) {
|
private void holdNoteblock(int id) {
|
||||||
int instrument = id/25;
|
int instrument = id/25;
|
||||||
int note = id%25;
|
int note = id%25;
|
||||||
CompoundTag nbt = new CompoundTag();
|
NbtCompound nbt = new NbtCompound();
|
||||||
nbt.putString("id", "minecraft:note_block");
|
nbt.putString("id", "minecraft:note_block");
|
||||||
nbt.putByte("Count", (byte) 1);
|
nbt.putByte("Count", (byte) 1);
|
||||||
CompoundTag tag = new CompoundTag();
|
NbtCompound tag = new NbtCompound();
|
||||||
CompoundTag bsTag = new CompoundTag();
|
NbtCompound bsTag = new NbtCompound();
|
||||||
bsTag.putString("instrument", instrumentNames[instrument]);
|
bsTag.putString("instrument", instrumentNames[instrument]);
|
||||||
bsTag.putString("note", Integer.toString(note));
|
bsTag.putString("note", Integer.toString(note));
|
||||||
tag.put("BlockStateTag", bsTag);
|
tag.put("BlockStateTag", bsTag);
|
||||||
nbt.put("tag", tag);
|
nbt.put("tag", tag);
|
||||||
inventory.main.set(inventory.selectedSlot, ItemStack.fromTag(nbt));
|
inventory.main.set(inventory.selectedSlot, ItemStack.fromNbt(nbt));
|
||||||
SongPlayer.MC.interactionManager.clickCreativeStack(player.getStackInHand(Hand.MAIN_HAND), 36 + inventory.selectedSlot);
|
SongPlayer.MC.interactionManager.clickCreativeStack(player.getStackInHand(Hand.MAIN_HAND), 36 + inventory.selectedSlot);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,6 +4,7 @@ import com.github.hhhzzzsss.songplayer.SongPlayer;
|
||||||
import com.github.hhhzzzsss.songplayer.song.Song;
|
import com.github.hhhzzzsss.songplayer.song.Song;
|
||||||
|
|
||||||
import net.minecraft.client.network.ClientPlayerEntity;
|
import net.minecraft.client.network.ClientPlayerEntity;
|
||||||
|
import net.minecraft.entity.Entity;
|
||||||
import net.minecraft.util.math.Direction;
|
import net.minecraft.util.math.Direction;
|
||||||
import net.minecraft.world.GameMode;
|
import net.minecraft.world.GameMode;
|
||||||
|
|
||||||
|
@ -25,8 +26,8 @@ public class PlayingThread extends Thread{
|
||||||
}
|
}
|
||||||
stage.rebuild = false;
|
stage.rebuild = false;
|
||||||
|
|
||||||
player.abilities.allowFlying = true;
|
player.getAbilities().allowFlying = true;
|
||||||
player.abilities.flying = true;
|
player.getAbilities().flying = true;
|
||||||
SongPlayer.stage.movePlayerToStagePosition();
|
SongPlayer.stage.movePlayerToStagePosition();
|
||||||
|
|
||||||
long songStartTime = System.currentTimeMillis() - song.get(song.position).time;
|
long songStartTime = System.currentTimeMillis() - song.get(song.position).time;
|
||||||
|
@ -82,11 +83,11 @@ public class PlayingThread extends Thread{
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
player.abilities.allowFlying = true;
|
player.getAbilities().allowFlying = true;
|
||||||
player.abilities.flying = true;
|
player.getAbilities().flying = true;
|
||||||
SongPlayer.stage.movePlayerToStagePosition();
|
SongPlayer.stage.movePlayerToStagePosition();
|
||||||
if (SongPlayer.fakePlayer != null) {
|
if (SongPlayer.fakePlayer != null) {
|
||||||
SongPlayer.fakePlayer.remove();
|
SongPlayer.fakePlayer.remove(Entity.RemovalReason.DISCARDED);
|
||||||
SongPlayer.fakePlayer = null;
|
SongPlayer.fakePlayer = null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -21,7 +21,7 @@ public class Stage {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void movePlayerToStagePosition() {
|
public void movePlayerToStagePosition() {
|
||||||
player.refreshPositionAndAngles(position.getX() + 0.5, position.getY() + 0.0, position.getZ() + 0.5, player.yaw, player.pitch);
|
player.refreshPositionAndAngles(position.getX() + 0.5, position.getY() + 0.0, position.getZ() + 0.5, player.getYaw(), player.getPitch());
|
||||||
player.setVelocity(Vec3d.ZERO);
|
player.setVelocity(Vec3d.ZERO);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -29,7 +29,7 @@
|
||||||
"depends": {
|
"depends": {
|
||||||
"fabricloader": ">=0.7.4",
|
"fabricloader": ">=0.7.4",
|
||||||
"fabric": "*",
|
"fabric": "*",
|
||||||
"minecraft": "1.16.x"
|
"minecraft": "1.17.x"
|
||||||
},
|
},
|
||||||
"suggests": {
|
"suggests": {
|
||||||
"flamingo": "*"
|
"flamingo": "*"
|
||||||
|
|
Loading…
Reference in a new issue