mirror of
https://gitlab.com/phoenix-dvpmt/mmocore.git
synced 2025-02-01 11:11:23 +01:00
Added UnlockSpawnPointTrigger.
This commit is contained in:
parent
086c3d3be5
commit
c0d69a1e5a
@ -29,6 +29,9 @@ public class DefaultMMOLoader extends MMOLoader {
|
|||||||
if (config.getKey().equals("unlock_slot"))
|
if (config.getKey().equals("unlock_slot"))
|
||||||
return new UnlockSlotTrigger(config);
|
return new UnlockSlotTrigger(config);
|
||||||
|
|
||||||
|
if (config.getKey().equals("unlock_spawn_point"))
|
||||||
|
return new UnlockSpawnPointTrigger(config);
|
||||||
|
|
||||||
if (config.getKey().equals("unlock_skill"))
|
if (config.getKey().equals("unlock_skill"))
|
||||||
return new UnlockSkillTrigger(config);
|
return new UnlockSkillTrigger(config);
|
||||||
|
|
||||||
|
@ -0,0 +1,33 @@
|
|||||||
|
package net.Indyuce.mmocore.api.quest.trigger;
|
||||||
|
|
||||||
|
import io.lumine.mythic.lib.api.MMOLineConfig;
|
||||||
|
import net.Indyuce.mmocore.MMOCore;
|
||||||
|
import net.Indyuce.mmocore.api.player.PlayerData;
|
||||||
|
import net.Indyuce.mmocore.skill.binding.SkillSlot;
|
||||||
|
import net.Indyuce.mmocore.api.quest.trigger.api.Removable;
|
||||||
|
import net.Indyuce.mmocore.spawnpoint.SpawnPoint;
|
||||||
|
import org.apache.commons.lang.Validate;
|
||||||
|
|
||||||
|
|
||||||
|
public class UnlockSpawnPointTrigger extends Trigger implements Removable {
|
||||||
|
private final SpawnPoint spawnPoint;
|
||||||
|
|
||||||
|
public UnlockSpawnPointTrigger(MMOLineConfig config) {
|
||||||
|
super(config);
|
||||||
|
config.validateKeys("spawn-point");
|
||||||
|
Validate.isTrue(MMOCore.plugin.spawnPointManager.isSpawnPoint(config.getString("spawn-point")), config.getString("spawn-point") + " is not a valid spawn point");
|
||||||
|
spawnPoint = MMOCore.plugin.spawnPointManager.getSpawnPoint(config.getString("spawn-point"));
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void apply(PlayerData player) {
|
||||||
|
if (!player.hasUnlocked(spawnPoint))
|
||||||
|
player.unlock(spawnPoint);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void remove(PlayerData player) {
|
||||||
|
if (player.hasUnlocked(spawnPoint))
|
||||||
|
player.lock(spawnPoint);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user