anchor.diff:    if Assigned(fPlayers) and Assigned(fPlayers.Player[byte(fOwner)]) then
       fPlayers.Player[byte(fOwner)].DestroyedUnit(fUnitType);
   
  -  fThought:=th_None; //Reset thought
  +  fThought := th_None; //Reset thought
     SetAction(nil,0); //Dispose of current action
     FreeAndNil(fUnitTask); //Should be overriden to dispose of Task-specific items
     fUnitTask:=TTaskDie.Create(Self);
  
positive.code:     function GetPosition():TKMPoint;
      property PositionF:TKMPointF read fPosition write fPosition;
      property Thought:TUnitThought read fThought write fThought;
      function UpdateState():boolean; virtual;
      procedure Paint; virtual;
    end;
  
negative.code: 
  procedure TKMUnit.Feed(Amount:single);
  begin
    fCondition := min(fCondition + round(Amount), UNIT_MAX_CONDITION);
  end;
  
  
  