anchor.diff:      function ChooseToCutOrPlant: TPlantAct;
       procedure FindAnotherWorkPlan;
     public
  -    constructor Create(aUnit: TKMUnit; aRes: TWareType);
  +    constructor Create(aUnit: TKMUnit; aWare: TWareType);
       destructor Destroy; override;
  -    function WalkShouldAbandon:boolean; override;
  +    function WalkShouldAbandon: Boolean; override;
       constructor Load(LoadStream: TKMemoryStream); override;
       function GetActivityText: UnicodeString;
       property WorkPlan: TUnitWorkPlan read fWorkPlan;
  
positive.code: unit KM_UnitTaskMining;
  {$I KaM_Remake.inc}
  interface
  uses Math, SysUtils,
    KM_CommonClasses, KM_Defaults, KM_Points,
    KM_Units, KM_Units_Workplan, KM_Terrain,
    KM_ResWares;
  
  
  {Perform resource mining}
  type
    TTaskMining = class(TUnitTask)
    private
  
negative.code: 
  
  { TTaskMining }
  constructor TTaskMining.Create(aUnit: TKMUnit; aWare: TWareType);
  begin
    inherited Create(aUnit);
  
    fTaskName := utn_Mining;
    fWorkPlan := TUnitWorkPlan.Create;
    fBeastID  := 0;
  
    fWorkPlan.FindPlan( fUnit,
                        fUnit.GetHome.HouseType,
                        aWare,
                        KMPointBelow(aUnit.GetHome.GetEntrance),
                        ChooseToCutOrPlant
                        );
  