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

package com.hypixel.hytale.server.npc.movement.steeringforces;

import com.hypixel.hytale.server.npc.movement.Steering;
import com.hypixel.hytale.component.CommandBuffer;
import com.hypixel.hytale.component.ComponentAccessor;
import com.hypixel.hytale.server.core.universe.world.storage.EntityStore;
import com.hypixel.hytale.component.Ref;
import javax.annotation.Nonnull;
import com.hypixel.hytale.math.vector.Vector3d;

public abstract class SteeringForceWithGroup implements SteeringForce
{
    @Nonnull
    protected final Vector3d selfPosition;
    protected Vector3d componentSelector;
    
    public SteeringForceWithGroup() {
        this.selfPosition = new Vector3d();
    }
    
    public void setSelf(@Nonnull final Ref<EntityStore> ref, @Nonnull final Vector3d position, @Nonnull final ComponentAccessor<EntityStore> componentAccessor) {
        this.selfPosition.assign(position.getX(), position.getY(), position.getZ());
    }
    
    public void setComponentSelector(final Vector3d componentSelector) {
        this.componentSelector = componentSelector;
    }
    
    public abstract void reset();
    
    public abstract void add(@Nonnull final Ref<EntityStore> p0, @Nonnull final CommandBuffer<EntityStore> p1);
    
    @Override
    public boolean compute(final Steering output) {
        return true;
    }
}
