// 
// Decompiled by Procyon v0.6.0
// 

package com.hypixel.hytale.server.npc.util;

import com.hypixel.hytale.server.core.asset.type.attitude.Attitude;
import com.hypixel.hytale.common.thread.ticking.Tickable;

public class AttitudeMemoryEntry implements Tickable
{
    private final Attitude attitudeOverride;
    private final double initialDuration;
    private double remainingDuration;
    
    public AttitudeMemoryEntry(final Attitude attitudeOverride, final double initialDuration) {
        this.attitudeOverride = attitudeOverride;
        this.initialDuration = initialDuration;
        this.remainingDuration = initialDuration;
    }
    
    @Override
    public void tick(final float dt) {
        this.remainingDuration = Math.max(this.remainingDuration - dt, 0.0);
    }
    
    public double getRemainingDuration() {
        return this.remainingDuration;
    }
    
    public double getInitialDuration() {
        return this.initialDuration;
    }
    
    public Attitude getAttitudeOverride() {
        return this.attitudeOverride;
    }
    
    public boolean isExpired() {
        return this.remainingDuration <= 0.0;
    }
}
