anchor.diff:    //Verify all input parameters
     if InRange(aPlayer1, 0, gHands.Count - 1)
     and InRange(aPlayer2, 0, gHands.Count - 1)
  -  and (aPlayer1 <> aPlayer2) then
  +  and (aPlayer1 <> aPlayer2)
  +  and (gHands[aPlayer1].Enabled)
  +  and (gHands[aPlayer2].Enabled) then
     begin
       gHands[aPlayer1].Alliances[aPlayer2] := ALLIED[aAllied];
       if aAllied then
  
positive.code: procedure TKMScriptActions.PlayerShareFog(aPlayer1, aPlayer2: Word; aShare: Boolean);
  begin
    if  InRange(aPlayer1, 0, gHands.Count - 1)
    and InRange(aPlayer2, 0, gHands.Count - 1) then
      gHands[aPlayer1].ShareFOW[aPlayer2] := aShare
    else
      LogError('Actions.PlayerShareFog', [aPlayer1, aPlayer2, Byte(aShare)]);
  
negative.code: function TKMScriptStates.PlayerAllianceCheck(aPlayer1, aPlayer2: Byte): Boolean;
  begin
    if  InRange(aPlayer1, 0, gHands.Count - 1)
    and InRange(aPlayer2, 0, gHands.Count - 1)
    and (gHands[aPlayer1].Enabled)
    and (gHands[aPlayer2].Enabled)then
      Result := gHands[aPlayer1].Alliances[aPlayer2] = at_Ally
    else
    begin
  