Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 4 additions & 5 deletions src/main/java/com/volmit/adapt/Adapt.java
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,15 @@ public class Adapt extends VolmitPlugin {
private SQLManager sqlManager;
@Getter
private ProtectorRegistry protectorRegistry;
@Getter
private Map<String, Window> guiLeftovers = new HashMap<>();


public Adapt() {
super();
instance = this;
}


public static int getJavaVersion() {
String version = System.getProperty("java.version");
if (version.startsWith("1.")) {
Expand Down Expand Up @@ -119,7 +121,7 @@ public static void autoUpdateCheck() {
}
}
in.close();
} catch (Exception e) {
} catch (Throwable e) {
error("Failed to check for updates.");
}
}
Expand Down Expand Up @@ -175,9 +177,6 @@ public static void msg(String string) {
}
}

@Getter
private Map<String, Window> guiLeftovers = new HashMap<>();

public static void hotloaded() {
J.s(() -> {
instance.guiLeftovers.values().forEach(window -> {
Expand Down
2 changes: 1 addition & 1 deletion src/main/java/com/volmit/adapt/AdaptConfig.java
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@ public class AdaptConfig {
public boolean allowAdaptationsInCreative = false;
public String adaptActivatorBlock = "BOOKSHELF";
public List<String> blacklistedWorlds = List.of("some_world_adapt_should_not_run_in", "anotherWorldFolderName");
boolean preventHunterSkillsWhenHungerApplied = true;
private ValueConfig value = new ValueConfig();
private boolean metrics = true;
private String language = "en_US";
Expand All @@ -67,7 +68,6 @@ public class AdaptConfig {
private boolean actionbarNotifyXp = true;
private boolean actionbarNotifyLevel = true;
private boolean unlearnAllButton = false;
boolean preventHunterSkillsWhenHungerApplied = true;
private SqlSettings sql = new SqlSettings();
private Map<String, Map<String, Boolean>> protectionOverrides = Map.of(
"adaptation-name", Map.of(
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void on(EntityDamageEvent e) {
addPotionStacks(p, PotionEffectType.POISON, getConfig().basePoisonFromLevel - getLevel(p), getConfig().baseHungerDuration, getConfig().stackPoisonPenalty);
}
} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.INVISIBILITY, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void on(EntityDamageEvent e) {
}

} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.JUMP, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,7 @@ public HunterLuck() {
public void addStats(int level, Element v) {
v.addLore(C.GRAY + Localizer.dLocalize("hunter", "luck", "lore1"));
v.addLore(C.GREEN + "+ " + level + C.GRAY + Localizer.dLocalize("hunter", "luck", "lore2"));
v.addLore(C.RED + "- " +(5 + level) + C.GRAY + Localizer.dLocalize("hunter", "luck", "lore3"));
v.addLore(C.RED + "- " + (5 + level) + C.GRAY + Localizer.dLocalize("hunter", "luck", "lore3"));
v.addLore(C.GRAY + "* " + level + C.GRAY + " " + Localizer.dLocalize("hunter", "luck", "lore4"));
v.addLore(C.GRAY + "* " + level + C.GRAY + " " + Localizer.dLocalize("hunter", "luck", "lore5"));
v.addLore(C.GRAY + "- " + level + C.RED + " " + Localizer.dLocalize("hunter", "penalty", "lore1"));
Expand All @@ -74,7 +74,7 @@ public void on(EntityDamageEvent e) {
}

} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.LUCK, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void on(EntityDamageEvent e) {
}

} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.DAMAGE_RESISTANCE, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void on(EntityDamageEvent e) {
}

} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.SPEED, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ public void on(EntityDamageEvent e) {
}

} else {
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration* getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.HUNGER, getConfig().baseHungerFromLevel - getLevel(p), getConfig().baseHungerDuration * getLevel(p), getConfig().stackHungerPenalty);
addPotionStacks(p, PotionEffectType.INCREASE_DAMAGE, getLevel(p), getConfig().baseEffectbyLevel * getLevel(p), getConfig().stackBuff);
}
} else {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,10 @@
import com.volmit.adapt.util.J;
import com.volmit.adapt.util.Localizer;
import lombok.NoArgsConstructor;
import org.bukkit.*;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.Particle;
import org.bukkit.Sound;
import org.bukkit.block.Block;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,10 @@
import com.volmit.adapt.util.J;
import com.volmit.adapt.util.Localizer;
import lombok.NoArgsConstructor;
import org.bukkit.*;
import org.bukkit.Bukkit;
import org.bukkit.Material;
import org.bukkit.Particle;
import org.bukkit.Sound;
import org.bukkit.block.Block;
import org.bukkit.block.data.BlockData;
import org.bukkit.entity.Entity;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,119 @@
/*------------------------------------------------------------------------------
- Adapt is a Skill/Integration plugin for Minecraft Bukkit Servers
- Copyright (c) 2022 Arcane Arts (Volmit Software)
-
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, either version 3 of the License, or
- (at your option) any later version.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see <https://www.gnu.org/licenses/>.
-----------------------------------------------------------------------------*/

package com.volmit.adapt.content.adaptation.rift;

import com.volmit.adapt.api.adaptation.SimpleAdaptation;
import com.volmit.adapt.util.C;
import com.volmit.adapt.util.Element;
import com.volmit.adapt.util.J;
import com.volmit.adapt.util.Localizer;
import lombok.NoArgsConstructor;
import org.bukkit.Material;
import org.bukkit.Sound;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.player.PlayerToggleSneakEvent;
import org.bukkit.potion.PotionEffect;
import org.bukkit.potion.PotionEffectType;

import java.util.ArrayList;
import java.util.List;

public class RiftDescent extends SimpleAdaptation<RiftDescent.Config> {
private final List<Player> cooldown = new ArrayList<>();

public RiftDescent() {
super("rift-descent");
registerConfiguration(Config.class);
setDescription(Localizer.dLocalize("rift", "descent", "description"));
setDisplayName(Localizer.dLocalize("rift", "descent", "name"));
setMaxLevel(1);
setIcon(Material.SHULKER_BOX);
setBaseCost(getConfig().baseCost);
setCostFactor(getConfig().costFactor);
setInitialCost(getConfig().initialCost);
setInterval(9544);
}

@Override
public void addStats(int level, Element v) {
v.addLore(C.YELLOW + Localizer.dLocalize("rift", "descent", "lore1"));
v.addLore(C.GREEN + Localizer.dLocalize("rift", "descent", "lore2") + " " + C.WHITE + getConfig().cooldown + "s");
}

@EventHandler(priority = EventPriority.HIGHEST)
public void on(PlayerToggleSneakEvent e) {
Player p = e.getPlayer();
if (!hasAdaptation(p)) {
return;
}
if (cooldown.contains(p)) {
return;
}

PotionEffect levi = e.getPlayer().getPotionEffect(PotionEffectType.LEVITATION);

if (!e.isSneaking() && (levi != null)) {
p.removePotionEffect(PotionEffectType.LEVITATION);
J.a(() -> {
cooldown.add(p);
try {
Thread.sleep((long) (getConfig().cooldown * 1000));
} catch (InterruptedException ex) {
throw new RuntimeException(ex);
}
p.playSound(p.getLocation(), Sound.ENTITY_EXPERIENCE_ORB_PICKUP, 1f, 1f);
cooldown.remove(p);

});

J.s(() -> {
p.addPotionEffect(new PotionEffect(PotionEffectType.SLOW_FALLING, (int) (20 * getConfig().cooldown), 0));
p.playSound(p.getLocation(), Sound.ENTITY_ENDER_DRAGON_FLAP, 1f, 1f);
});
}
}


@Override
public void onTick() {
}

@Override
public boolean isEnabled() {
return getConfig().enabled;
}

@Override
public boolean isPermanent() {
return getConfig().permanent;
}

@NoArgsConstructor
protected static class Config {
boolean permanent = true;
boolean enabled = true;
double cooldown = 5.0;
int baseCost = 1;
double costFactor = 2;
int initialCost = 3;
}

}
Original file line number Diff line number Diff line change
Expand Up @@ -151,8 +151,8 @@ private void openEye(Player p) {
p.teleport(l, PlayerTeleportEvent.TeleportCause.PLUGIN);
vfxLevelUp(p);
p.playSound(p.getLocation(), Sound.BLOCK_ENDER_CHEST_OPEN, 5.35f, 0.1f);
},85);
}
}, 85);
}

private boolean isBound(ItemStack stack) {
return stack.getType().equals(Material.ENDER_EYE) && BoundEyeOfEnder.getLocation(stack) != null;
Expand Down Expand Up @@ -198,11 +198,11 @@ public boolean isPermanent() {
return getConfig().permanent;
}

@NoArgsConstructor
protected static class Config {
boolean permanent = false;
boolean enabled = true;
boolean consumeOnUse = true;
boolean showParticles = true;
}
@NoArgsConstructor
protected static class Config {
boolean permanent = false;
boolean enabled = true;
boolean consumeOnUse = true;
boolean showParticles = true;
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ public SkillRift() {
registerAdaptation(new RiftEnderchest());
registerAdaptation(new RiftGate());
registerAdaptation(new RiftBlink());
registerAdaptation(new RiftDescent());
lasttp = new HashMap<>();
}

Expand Down
21 changes: 10 additions & 11 deletions src/main/java/com/volmit/adapt/util/UIWindow.java
Original file line number Diff line number Diff line change
Expand Up @@ -293,17 +293,6 @@ public String getTitle() {
return title;
}

@Override
public String getTag() {
return tag;
}

@Override
public void setTag(String s) {
tag = s;
}


@Override
public UIWindow setTitle(String title) {
this.title = title;
Expand All @@ -315,6 +304,16 @@ public UIWindow setTitle(String title) {
return this;
}

@Override
public String getTag() {
return tag;
}

@Override
public void setTag(String s) {
tag = s;
}

@Override
public UIWindow setElement(int position, int row, Element e) {
if (row > highestRow) {
Expand Down
4 changes: 2 additions & 2 deletions src/main/java/com/volmit/adapt/util/Window.java
Original file line number Diff line number Diff line change
Expand Up @@ -74,12 +74,12 @@ public interface Window {

String getTitle();

Window setTitle(String title);

String getTag();

void setTag(String s);

Window setTitle(String title);

boolean hasElement(int position, int row);

Window setElement(int position, int row, Element e);
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,6 @@
import com.volmit.adapt.util.C;
import lombok.Getter;

import java.nio.charset.Charset;
import java.nio.charset.StandardCharsets;
import java.util.List;
import java.util.Random;
Expand Down
6 changes: 6 additions & 0 deletions src/main/resources/en_US.json
Original file line number Diff line number Diff line change
Expand Up @@ -906,6 +906,12 @@
"description": "Open an enderchest by Left-clicking it in your hand.",
"lore1": "Click an Enderchest in your hand to open (Just dont place it)"
},
"descent": {
"name": "Anti-Levitation",
"description": "Are you tired of being stuck in the air? This is the skill for you!",
"lore1": "Just Sneak to descend, and you will fall at a less than normal rate!",
"lore2": "Cooldown:"
},
"gate": {
"name": "Rift Gate",
"description": "Teleport to a marked location.",
Expand Down
Loading