    001    package net.minecraft.world.storage;
    002
    003    import cpw.mods.fml.common.Side;
    004    import cpw.mods.fml.common.asm.SideOnly;
    005    import net.minecraft.world.EnumGameType;
    006
    007    @SideOnly(Side.CLIENT)
    008    public class SaveFormatComparator implements Comparable
    009    {
    010        /** the file name of this save */
    011        private final String fileName;
    012
    013        /** the displayed name of this save file */
    014        private final String displayName;
    015        private final long lastTimePlayed;
    016        private final long sizeOnDisk;
    017        private final boolean requiresConversion;
    018
    019        /** Instance of EnumGameType. */
    020        private final EnumGameType theEnumGameType;
    021        private final boolean hardcore;
    022        private final boolean cheatsEnabled;
    023
    024        public SaveFormatComparator(String par1Str, String par2Str, long par3, long par5, EnumGameType par7EnumGameType, boolean par8, boolean par9, boolean par10)
    025        {
    026            this.fileName = par1Str;
    027            this.displayName = par2Str;
    028            this.lastTimePlayed = par3;
    029            this.sizeOnDisk = par5;
    030            this.theEnumGameType = par7EnumGameType;
    031            this.requiresConversion = par8;
    032            this.hardcore = par9;
    033            this.cheatsEnabled = par10;
    034        }
    035
    036        /**
    037         * return the file name
    038         */
    039        public String getFileName()
    040        {
    041            return this.fileName;
    042        }
    043
    044        /**
    045         * return the display name of the save
    046         */
    047        public String getDisplayName()
    048        {
    049            return this.displayName;
    050        }
    051
    052        public boolean requiresConversion()
    053        {
    054            return this.requiresConversion;
    055        }
    056
    057        public long getLastTimePlayed()
    058        {
    059            return this.lastTimePlayed;
    060        }
    061
    062        public int compareTo(SaveFormatComparator par1SaveFormatComparator)
    063        {
    064            return this.lastTimePlayed < par1SaveFormatComparator.lastTimePlayed ? 1 : (this.lastTimePlayed > par1SaveFormatComparator.lastTimePlayed ? -1 : this.fileName.compareTo(par1SaveFormatComparator.fileName));
    065        }
    066
    067        /**
    068         * Gets the EnumGameType.
    069         */
    070        public EnumGameType getEnumGameType()
    071        {
    072            return this.theEnumGameType;
    073        }
    074
    075        public boolean isHardcoreModeEnabled()
    076        {
    077            return this.hardcore;
    078        }
    079
    080        /**
    081         * @return {@code true} if cheats are enabled for this world
    082         */
    083        public boolean getCheatsEnabled()
    084        {
    085            return this.cheatsEnabled;
    086        }
    087
    088        public int compareTo(Object par1Obj)
    089        {
    090            return this.compareTo((SaveFormatComparator)par1Obj);
    091        }
    092    }