/// <summary> /// Compares ItemID, Type, LocationX, LocationY, LocationZ, LookVectorX, LookVectorY amd LookVectoryZ of ItemLocation /// </summary> /// <param name="original">Original Item</param> /// <param name="comparer">Item to Compare Against</param> /// <returns> /// True if ItemID, Type, LocationX, LocationY, LocationZ, LookVectorX, LookVectorY amd LookVectoryZ of both Items /// match, otherwise false /// </returns> public static bool Compare(this ItemLocation original, ItemLocation comparer) { return(original != null && comparer != null && original.Compare(comparer.As <ItemBase>()) && original.mLocX == comparer.mLocX && original.mLocY == comparer.mLocY && original.mLocZ == comparer.mLocZ && FloatTolerance(original.mLookVector.x, comparer.mLookVector.x, 0.1f) && FloatTolerance(original.mLookVector.y, comparer.mLookVector.y, 0.1f) && FloatTolerance(original.mLookVector.z, comparer.mLookVector.z, 0.1f)); // original.mLookVector.x == comparer.mLookVector.x && // original.mLookVector.y == comparer.mLookVector.y && // original.mLookVector.z == comparer.mLookVector.z; }