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"))
|
||||
return new UnlockSlotTrigger(config);
|
||||
|
||||
if (config.getKey().equals("unlock_spawn_point"))
|
||||
return new UnlockSpawnPointTrigger(config);
|
||||
|
||||
if (config.getKey().equals("unlock_skill"))
|
||||
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