001    package org.bukkit.entity;
002    
003    import org.bukkit.DyeColor;
004    
005    /**
006     * Represents a Wolf
007     */
008    public interface Wolf extends Animals, Tameable {
009    
010        /**
011         * Checks if this wolf is angry
012         *
013         * @return Anger true if angry
014         */
015        public boolean isAngry();
016    
017        /**
018         * Sets the anger of this wolf.
019         * <p>
020         * An angry wolf can not be fed or tamed, and will actively look for
021         * targets to attack.
022         *
023         * @param angry true if angry
024         */
025        public void setAngry(boolean angry);
026    
027        /**
028         * Checks if this wolf is sitting
029         *
030         * @return true if sitting
031         */
032        public boolean isSitting();
033    
034        /**
035         * Sets if this wolf is sitting.
036         * <p>
037         * Will remove any path that the wolf was following beforehand.
038         *
039         * @param sitting true if sitting
040         */
041        public void setSitting(boolean sitting);
042    
043        /**
044         * Get the collar color of this wolf
045         *
046         * @return the color of the collar
047         */
048        public DyeColor getCollarColor();
049    
050        /**
051         * Set the collar color of this wolf
052         *
053         * @param color the color to apply
054         */
055        public void setCollarColor(DyeColor color);
056    }