anchor.diff:  
     LoadStream.Read(fThought, 4);
     LoadStream.Read(fCondition, 4);
  -  LoadStream.Read(Speed, 4);
     LoadStream.Read(fOwner, 4);
     LoadStream.Read(fHome.ID, 4); //Substitute it with reference on SyncLoad
     LoadStream.Read(fPosition, 8); //2floats
  
positive.code: end;
  
  
  procedure TKMUnitAnimal.Paint();
  var AnimAct,AnimDir:integer;
  begin
  inherited;
    if fUnitType = ut_Fish then
         AnimAct:=byte(fFishCount) //For fish the action is the number of fish in the group
    else AnimAct:=byte(fCurrentAction.fActionType); //should correspond with UnitAction
  
    AnimDir:=byte(Direction);
    fRender.RenderUnit(byte(Self.GetUnitType), AnimAct, AnimDir, AnimStep, 0, fPosition.X+0.5, fPosition.Y+1,true);
  end;
  
  
  procedure TKMUnitAnimal.Save(SaveStream:TMemoryStream);
  begin
    inherited;
  
negative.code:   fUnitType := aUnitType;
    Direction := dir_S;
    fVisible := true;
    SetActionStay(10, ua_Walk);
    ID := fGame.GetNewID;
    AnimStep := UnitStillFrames[Direction]; //Use still frame at begining, so units don't all change frame on first tick
  