Skip to content

Commit

Permalink
fix(Events): Fixed PlayerObjectUpdateSkinEvent
Browse files Browse the repository at this point in the history
  • Loading branch information
GeorgeV220 committed Apr 9, 2023
1 parent 3baceed commit da51ce5
Show file tree
Hide file tree
Showing 2 changed files with 11 additions and 3 deletions.
Expand Up @@ -5,20 +5,23 @@
import com.georgev22.skinoverlay.event.Event;
import com.georgev22.skinoverlay.event.events.player.PlayerObjectEvent;
import com.georgev22.skinoverlay.utilities.SkinOptions;
import com.georgev22.skinoverlay.utilities.Utilities;
import com.georgev22.skinoverlay.utilities.player.PlayerObject;
import lombok.SneakyThrows;
import org.jetbrains.annotations.Nullable;

public class PlayerObjectUpdateSkinEvent extends PlayerObjectEvent implements Event, Cancellable {

private SkinOptions skinOptions;

public PlayerObjectUpdateSkinEvent(PlayerObject playerObject, UserManager.@Nullable User user, boolean async, SkinOptions skinOptions) {
public PlayerObjectUpdateSkinEvent(PlayerObject playerObject, UserManager.@Nullable User user, boolean async, @Nullable SkinOptions skinOptions) {
super(playerObject, user, async);
this.skinOptions = skinOptions;
}

@SneakyThrows
public SkinOptions getSkinOptions() {
return skinOptions;
return skinOptions == null ? Utilities.getSkinOptions(getUser().getCustomData("skinOptions")) : skinOptions;
}

public void setSkinOptions(SkinOptions skinOptions) {
Expand Down
Expand Up @@ -208,7 +208,12 @@ public void updateSkin(@NotNull PlayerObject playerObject, boolean forOthers) {
skinOverlay.getLogger().log(Level.SEVERE, "Error(updateSkin): User is null");
return;
}
PlayerObjectUpdateSkinEvent event = new PlayerObjectUpdateSkinEvent(playerObject, user, true, user.getCustomData("skinOptions"));
PlayerObjectUpdateSkinEvent event;
try {
event = new PlayerObjectUpdateSkinEvent(playerObject, user, true, Utilities.getSkinOptions(user.getCustomData("skinOptions")));
} catch (IOException | ClassNotFoundException e) {
throw new RuntimeException(e);
}
skinOverlay.getEventManager().fireEvent(event);
if (event.isCancelled())
return;
Expand Down

0 comments on commit da51ce5

Please sign in to comment.