Package net.aufdemrand.denizen.tags.core

Source Code of net.aufdemrand.denizen.tags.core.NotableLocationTags

package net.aufdemrand.denizen.tags.core;

import net.aufdemrand.denizen.Denizen;
import net.aufdemrand.denizen.events.bukkit.ReplaceableTagEvent;
import net.aufdemrand.denizen.objects.dLocation;
import net.aufdemrand.denizen.objects.notable.NotableManager;
import net.aufdemrand.denizen.tags.Attribute;
import net.aufdemrand.denizen.utilities.debugging.dB;

import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;

@Deprecated
public class NotableLocationTags implements Listener {

    public NotableLocationTags(Denizen denizen) {
        denizen.getServer().getPluginManager().registerEvents(this, denizen);
    }

    @EventHandler
    public void notableTags(ReplaceableTagEvent event) {

        if (!event.matches("NOTABLE")) return;

        dB.echoError(event.getAttributes().getScriptEntry().getResidingQueue(), "notable: tags are deprecated! Use <l@NotableName>!");
        String tag = event.raw_tag;

        String id = null;
        if (event.hasValue()) {
            id = event.getValue();
            tag = tag.split(":", 2)[1];
        }

        else if (event.hasNameContext()) id = event.getNameContext();

        if (NotableManager.isType(id, dLocation.class)) {
            dB.echoError("Notable tag '" + event.raw_tag + "': id was not found.");
        }

        dLocation location = (dLocation) NotableManager.getSavedObject(id);

        Attribute attribute = new Attribute(event.raw_tag, event.getScriptEntry());
        attribute.fulfill(1);
        tag = location.getAttribute(attribute);

        event.setReplaced(tag);

    }
}
TOP

Related Classes of net.aufdemrand.denizen.tags.core.NotableLocationTags

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.