com.wallstop-studios.unity-helpers 2.0.0-rc56 → 2.0.0-rc58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.config/dotnet-tools.json +9 -9
- package/.editorconfig +184 -184
- package/.gitattributes +63 -63
- package/.github/workflows/npm-publish.yml +66 -66
- package/.pre-commit-config.yaml +21 -21
- package/Editor/AnimationCopier.cs +181 -181
- package/Editor/AnimationCopier.cs.meta +2 -2
- package/Editor/AnimationCreator.cs +253 -253
- package/Editor/AnimationCreator.cs.meta +11 -11
- package/Editor/AnimationEventEditor.cs +887 -887
- package/Editor/AnimatorControllerCopier.cs +162 -162
- package/Editor/AnimatorControllerCopier.cs.meta +2 -2
- package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs +34 -34
- package/Editor/CustomEditors/MatchColliderToSpriteEditor.cs.meta +2 -2
- package/Editor/CustomEditors.meta +2 -2
- package/Editor/FitTextureSizeWizard.cs +147 -147
- package/Editor/FitTextureSizeWizard.cs.meta +2 -2
- package/Editor/PrefabCheckWizard.cs +170 -170
- package/Editor/PrefabCheckWizard.cs.meta +11 -11
- package/Editor/SpriteSettingsApplier.cs +272 -272
- package/Editor/SpriteSettingsApplier.cs.meta +2 -2
- package/Editor/StringInListeDrawer.cs +56 -56
- package/Editor/TextureResizerWizard.cs +181 -181
- package/Editor/TextureResizerWizard.cs.meta +2 -2
- package/Editor/TextureSettingsApplier.cs +178 -178
- package/Editor/TextureSettingsApplier.cs.meta +2 -2
- package/Editor/Utils/DxReadOnlyPropertyDrawer.cs +26 -26
- package/Editor/Utils/DxReadOnlyPropertyDrawer.cs.meta +11 -11
- package/Editor/Utils/EditorUtilities.cs +22 -22
- package/Editor/Utils/EditorUtilities.cs.meta +11 -11
- package/Editor/Utils.meta +8 -8
- package/Editor/WShowIfPropertyDrawer.cs +63 -63
- package/Editor/WallstopStudios.UnityHelpers.Editor.asmdef +17 -17
- package/Editor/WallstopStudios.UnityHelpers.Editor.asmdef.meta +7 -7
- package/LICENSE +21 -21
- package/LICENSE.md +6 -6
- package/LICENSE.meta +7 -7
- package/README.md +177 -177
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.dll.meta +33 -33
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.xml +223 -223
- package/Runtime/Binaries/Microsoft.Bcl.AsyncInterfaces.xml.meta +7 -7
- package/Runtime/Binaries/System.Text.Encodings.Web.dll.meta +33 -33
- package/Runtime/Binaries/System.Text.Encodings.Web.xml +935 -935
- package/Runtime/Binaries/System.Text.Encodings.Web.xml.meta +7 -7
- package/Runtime/Binaries/System.Text.Json.dll.meta +33 -33
- package/Runtime/Binaries/System.Text.Json.xml +4829 -4829
- package/Runtime/Binaries/System.Text.Json.xml.meta +7 -7
- package/Runtime/Binaries.meta +8 -8
- package/Runtime/Core/Attributes/AnimationEventAttribute.cs +131 -131
- package/Runtime/Core/Attributes/ChildComponentAttribute.cs +209 -209
- package/Runtime/Core/Attributes/DxReadOnlyAttribute.cs +6 -6
- package/Runtime/Core/Attributes/KSerializableAttribute.cs +19 -19
- package/Runtime/Core/Attributes/NotNullAttribute.cs +32 -32
- package/Runtime/Core/Attributes/ParentComponent.cs +185 -185
- package/Runtime/Core/Attributes/RelationalComponentExtensions.cs +14 -14
- package/Runtime/Core/Attributes/SiblingComponentAttribute.cs +117 -117
- package/Runtime/Core/Attributes/SiblingComponentAttribute.cs.meta +11 -11
- package/Runtime/Core/Attributes/ValidateAssignmentAttribute.cs +101 -101
- package/Runtime/Core/Attributes/ValidateAssignmentAttribute.cs.meta +11 -11
- package/Runtime/Core/Attributes/WShowIfAttribute.cs +16 -16
- package/Runtime/Core/Attributes.meta +8 -8
- package/Runtime/Core/DataStructure/Adapters/FastVector2Int.cs +92 -92
- package/Runtime/Core/DataStructure/Adapters/FastVector3Int.cs +185 -185
- package/Runtime/Core/DataStructure/Adapters/KGuid.cs +305 -305
- package/Runtime/Core/DataStructure/Adapters/KVector2.cs +80 -80
- package/Runtime/Core/DataStructure/Circle.cs +50 -50
- package/Runtime/Core/DataStructure/CyclicBuffer.cs +153 -153
- package/Runtime/Core/DataStructure/ISpatialTree.cs +60 -60
- package/Runtime/Core/DataStructure/ISpatialTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/KDTree.cs +292 -292
- package/Runtime/Core/DataStructure/KDTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/QuadTree.cs +287 -287
- package/Runtime/Core/DataStructure/RTree.cs +346 -346
- package/Runtime/Core/DataStructure/RTree.cs.meta +11 -11
- package/Runtime/Core/DataStructure/StringWrapper.cs +91 -91
- package/Runtime/Core/DataStructure/TimedCache.cs +66 -66
- package/Runtime/Core/Extension/AnimatorExtensions.cs +25 -25
- package/Runtime/Core/Extension/AsyncOperationExtensions.cs +110 -108
- package/Runtime/Core/Extension/CircleExtensions.cs +25 -25
- package/Runtime/Core/Extension/ColorExtensions.cs +629 -629
- package/Runtime/Core/Extension/DictionaryExtensions.cs +279 -279
- package/Runtime/Core/Extension/DirectionExtensions.cs +213 -213
- package/Runtime/Core/Extension/EnumExtensions.cs +37 -37
- package/Runtime/Core/Extension/EnumExtensions.cs.meta +2 -2
- package/Runtime/Core/Extension/HashSetExtensions.cs +12 -12
- package/Runtime/Core/Extension/IEnumerableExtensions.cs +122 -122
- package/Runtime/Core/Extension/IListExtensions.cs +106 -106
- package/Runtime/Core/Extension/LoggingExtensions.cs +258 -258
- package/Runtime/Core/Extension/RandomExtensions.cs +109 -109
- package/Runtime/Core/Extension/SerializedPropertyExtensions.cs +157 -157
- package/Runtime/Core/Extension/StringExtensions.cs +151 -151
- package/Runtime/Core/Extension/UnityExtensions.cs +1608 -1608
- package/Runtime/Core/Helper/ArrayConverter.cs +39 -39
- package/Runtime/Core/Helper/ArrayConverter.cs.meta +2 -2
- package/Runtime/Core/Helper/AssignUtilities.cs +14 -14
- package/Runtime/Core/Helper/AssignUtilities.cs.meta +11 -11
- package/Runtime/Core/Helper/Enumerables.cs +17 -17
- package/Runtime/Core/Helper/FormattingHelpers.cs +32 -32
- package/Runtime/Core/Helper/Geometry.cs +43 -43
- package/Runtime/Core/Helper/Helpers.cs +722 -722
- package/Runtime/Core/Helper/Helpers.cs.meta +11 -11
- package/Runtime/Core/Helper/IterationHelpers.cs +32 -32
- package/Runtime/Core/Helper/IterationHelpers.cs.meta +11 -11
- package/Runtime/Core/Helper/LifetimeHelpers.cs +13 -13
- package/Runtime/Core/Helper/Objects.cs +769 -769
- package/Runtime/Core/Helper/Partials/LogHelpers.cs +13 -13
- package/Runtime/Core/Helper/Partials/LogHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/MathHelpers.cs +30 -30
- package/Runtime/Core/Helper/Partials/MathHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/ObjectHelpers.cs +388 -388
- package/Runtime/Core/Helper/Partials/ObjectHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials/TransformHelpers.cs +189 -189
- package/Runtime/Core/Helper/Partials/TransformHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/Partials.meta +2 -2
- package/Runtime/Core/Helper/ReflectionHelpers.cs +452 -452
- package/Runtime/Core/Helper/ReflectionHelpers.cs.meta +2 -2
- package/Runtime/Core/Helper/SceneHelper.cs +209 -213
- package/Runtime/Core/Helper/SpriteHelpers.cs +41 -41
- package/Runtime/Core/Helper/SpriteHelpers.cs.meta +11 -11
- package/Runtime/Core/Helper/StringInList.cs +31 -31
- package/Runtime/Core/Helper/StringInList.cs.meta +11 -11
- package/Runtime/Core/Helper/UnityMainThreadDispatcher.cs +82 -80
- package/Runtime/Core/Helper/WallMath.cs +166 -166
- package/Runtime/Core/Math/Line.cs +55 -55
- package/Runtime/Core/Math/Parabola.cs +47 -47
- package/Runtime/Core/Math/PointPolygonCheck.cs +36 -36
- package/Runtime/Core/Math/PointPolygonCheck.cs.meta +11 -11
- package/Runtime/Core/Math/Range.cs +92 -92
- package/Runtime/Core/Math/XXHash.cs +310 -310
- package/Runtime/Core/Math/XXHash.cs.meta +11 -11
- package/Runtime/Core/Model/Direction.cs +43 -43
- package/Runtime/Core/OneOf/FastOneOf.cs +152 -152
- package/Runtime/Core/OneOf/None.cs +4 -4
- package/Runtime/Core/Random/AbstractRandom.cs +585 -585
- package/Runtime/Core/Random/DotNetRandom.cs +54 -54
- package/Runtime/Core/Random/DotNetRandom.cs.meta +2 -2
- package/Runtime/Core/Random/IRandom.cs +161 -161
- package/Runtime/Core/Random/LinearCongruentialGenerator.cs +49 -49
- package/Runtime/Core/Random/NativePcgRandom.cs +97 -97
- package/Runtime/Core/Random/PRNG.cs +7 -7
- package/Runtime/Core/Random/PRNG.cs.meta +2 -2
- package/Runtime/Core/Random/PcgRandom.cs +149 -149
- package/Runtime/Core/Random/PerlinNoise.cs +369 -369
- package/Runtime/Core/Random/PerlinNoise.cs.meta +2 -2
- package/Runtime/Core/Random/RandomState.cs +131 -131
- package/Runtime/Core/Random/RandomUtilities.cs +26 -26
- package/Runtime/Core/Random/RandomUtilities.cs.meta +11 -11
- package/Runtime/Core/Random/RomuDuo.cs +116 -116
- package/Runtime/Core/Random/RomuDuo.cs.meta +2 -2
- package/Runtime/Core/Random/SplitMix64.cs +94 -94
- package/Runtime/Core/Random/SplitMix64.cs.meta +2 -2
- package/Runtime/Core/Random/SquirrelRandom.cs +84 -84
- package/Runtime/Core/Random/SystemRandom.cs +162 -162
- package/Runtime/Core/Random/ThreadLocalRandom.cs +12 -12
- package/Runtime/Core/Random/UnityRandom.cs +57 -57
- package/Runtime/Core/Random/UnityRandom.cs.meta +11 -11
- package/Runtime/Core/Random/WyRandom.cs +121 -121
- package/Runtime/Core/Random/WyRandom.cs.meta +2 -2
- package/Runtime/Core/Random/XorShiftRandom.cs +52 -52
- package/Runtime/Core/Random/XorShiftRandom.cs.meta +11 -11
- package/Runtime/Core/Random/XorShiroRandom.cs +119 -119
- package/Runtime/Core/Random/XorShiroRandom.cs.meta +2 -2
- package/Runtime/Core/Serialization/JsonConverters/ColorConverter.cs +88 -88
- package/Runtime/Core/Serialization/JsonConverters/GameObjectConverter.cs +37 -37
- package/Runtime/Core/Serialization/JsonConverters/Matrix4x4Converter.cs +218 -218
- package/Runtime/Core/Serialization/JsonConverters/TypeConverter.cs +28 -28
- package/Runtime/Core/Serialization/JsonConverters/Vector2Converter.cs +74 -74
- package/Runtime/Core/Serialization/JsonConverters/Vector3Converter.cs +81 -81
- package/Runtime/Core/Serialization/JsonConverters/Vector4Converter.cs +88 -88
- package/Runtime/Core/Serialization/Serializer.cs +195 -195
- package/Runtime/Core/Threading/SingleThreadedThreadPool.cs +113 -113
- package/Runtime/Protobuf-Net/System.Buffers.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Collections.Immutable.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Collections.Immutable.xml +5379 -5379
- package/Runtime/Protobuf-Net/System.Collections.Immutable.xml.meta +7 -7
- package/Runtime/Protobuf-Net/System.Numerics.Vectors.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.dll.meta +33 -33
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.xml +290 -290
- package/Runtime/Protobuf-Net/System.Runtime.CompilerServices.Unsafe.xml.meta +7 -7
- package/Runtime/Protobuf-Net/protobuf-net.Core.dll.meta +33 -33
- package/Runtime/Protobuf-Net/protobuf-net.dll.meta +33 -33
- package/Runtime/UI/LayeredImage.cs +364 -364
- package/Runtime/UI/LayeredImage.cs.meta +2 -2
- package/Runtime/UI.meta +2 -2
- package/Runtime/Utils/AnimationEventEqualityComparer.cs +161 -161
- package/Runtime/Utils/AnimatorEnumStateMachine.cs +88 -88
- package/Runtime/Utils/Buffers.cs +33 -33
- package/Runtime/Utils/CenterPointOffset.cs +30 -30
- package/Runtime/Utils/CenterPointOffset.cs.meta +2 -2
- package/Runtime/Utils/CircleLineRenderer.cs +134 -134
- package/Runtime/Utils/CoroutineHandler.cs +4 -4
- package/Runtime/Utils/CoroutineHandler.cs.meta +2 -2
- package/Runtime/Utils/DeferredDisposalResult.cs +23 -23
- package/Runtime/Utils/MatchColliderToSprite.cs +94 -94
- package/Runtime/Utils/MatchColliderToSprite.cs.meta +2 -2
- package/Runtime/Utils/Oscillator.cs +27 -27
- package/Runtime/Utils/RuntimeSingleton.cs +69 -69
- package/Runtime/Utils/RuntimeSingleton.cs.meta +11 -11
- package/Runtime/Utils/SetTextureImportData.cs +69 -69
- package/Runtime/Utils/SpriteRendererMetadata.cs +374 -374
- package/Runtime/Utils/SpriteRendererMetadata.cs.meta +2 -2
- package/Runtime/Utils/SpriteRendererSyncer.cs +100 -100
- package/Runtime/Utils/SpriteRendererSyncer.cs.meta +2 -2
- package/Runtime/Utils/TextureScale.cs +179 -179
- package/Runtime/Utils/TextureScale.cs.meta +2 -2
- package/Runtime/WallstopStudios.UnityHelpers.asmdef +13 -13
- package/Tests/Runtime/Attributes/ChildComponentTests.cs +81 -81
- package/Tests/Runtime/Attributes/Components/ExpectChildSpriteRenderers.cs +28 -28
- package/Tests/Runtime/Attributes/Components/ExpectParentSpriteRenderers.cs +28 -28
- package/Tests/Runtime/Attributes/ParentComponentTests.cs +68 -68
- package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs +34 -34
- package/Tests/Runtime/Components/RelationalComponentTesterComplex.cs.meta +2 -2
- package/Tests/Runtime/Components/RelationalComponentsTesterSimple.cs +40 -40
- package/Tests/Runtime/Components.meta +2 -2
- package/Tests/Runtime/DataStructures/BalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/BalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/CyclicBufferTests.cs +324 -324
- package/Tests/Runtime/DataStructures/QuadTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/QuadTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/SpatialTreeTests.cs +130 -130
- package/Tests/Runtime/DataStructures/SpatialTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures/UnbalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/DataStructures/UnbalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/DataStructures.meta +8 -8
- package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs +439 -439
- package/Tests/Runtime/Extensions/DictionaryExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/EnumExtensionTests.cs +128 -128
- package/Tests/Runtime/Extensions/EnumExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/IListExtensionTests.cs +104 -104
- package/Tests/Runtime/Extensions/RandomExtensionTests.cs +27 -27
- package/Tests/Runtime/Extensions/RandomExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions/StringExtensionTests.cs +31 -31
- package/Tests/Runtime/Extensions/StringExtensionTests.cs.meta +2 -2
- package/Tests/Runtime/Extensions.meta +2 -2
- package/Tests/Runtime/Helper/ArrayConverterTests.cs +19 -19
- package/Tests/Runtime/Helper/ArrayConverterTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/FormattingHelperTests.cs +129 -129
- package/Tests/Runtime/Helper/FormattingHelperTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/ObjectHelperTests.cs +402 -402
- package/Tests/Runtime/Helper/ObjectHelperTests.cs.meta +2 -2
- package/Tests/Runtime/Helper/ReflectionHelperTests.cs +536 -536
- package/Tests/Runtime/Helper/SceneHelperTests.cs +94 -94
- package/Tests/Runtime/Helper/WallMathTests.cs +233 -233
- package/Tests/Runtime/Helper/WallMathTests.cs.meta +2 -2
- package/Tests/Runtime/Helper.meta +2 -2
- package/Tests/Runtime/Performance/KDTreePerformanceTests.cs +14 -14
- package/Tests/Runtime/Performance/KDTreePerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/QuadTreePerformanceTests.cs +14 -14
- package/Tests/Runtime/Performance/QuadTreePerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/RandomPerformanceTests.cs +157 -157
- package/Tests/Runtime/Performance/RandomPerformanceTests.cs.meta +11 -11
- package/Tests/Runtime/Performance/RelationComponentPerformanceTests.cs +61 -61
- package/Tests/Runtime/Performance/RelationComponentPerformanceTests.cs.meta +2 -2
- package/Tests/Runtime/Performance/SpatialTreePerformanceTest.cs +154 -154
- package/Tests/Runtime/Performance/SpatialTreePerformanceTest.cs.meta +11 -11
- package/Tests/Runtime/Performance/UnbalancedKDTreeTests.cs +14 -14
- package/Tests/Runtime/Performance/UnbalancedKDTreeTests.cs.meta +11 -11
- package/Tests/Runtime/Performance.meta +8 -8
- package/Tests/Runtime/Random/DotNetRandomTests.cs +9 -9
- package/Tests/Runtime/Random/DotNetRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/LinearCongruentialGeneratorTests.cs +12 -12
- package/Tests/Runtime/Random/PcgRandomTests.cs +9 -9
- package/Tests/Runtime/Random/PcgRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/RandomTestBase.cs +787 -787
- package/Tests/Runtime/Random/RandomTestBase.cs.meta +11 -11
- package/Tests/Runtime/Random/RomuDuoRandomTests.cs +9 -9
- package/Tests/Runtime/Random/RomuDuoRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/SplitMix64RandomTests.cs +9 -9
- package/Tests/Runtime/Random/SplitMix64RandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/SquirrelRandomTests.cs +14 -14
- package/Tests/Runtime/Random/SquirrelRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/SystemRandomTests.cs +10 -10
- package/Tests/Runtime/Random/SystemRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/UnityRandomTests.cs +9 -9
- package/Tests/Runtime/Random/UnityRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/WyRandomTests.cs +9 -9
- package/Tests/Runtime/Random/WyRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random/XorShiftRandomTests.cs +9 -9
- package/Tests/Runtime/Random/XorShiftRandomTests.cs.meta +11 -11
- package/Tests/Runtime/Random/XorShiroRandomTests.cs +9 -9
- package/Tests/Runtime/Random/XorShiroRandomTests.cs.meta +2 -2
- package/Tests/Runtime/Random.meta +8 -8
- package/Tests/Runtime/Serialization/JsonSerializationTest.cs +156 -156
- package/Tests/Runtime/Serialization/JsonSerializationTest.cs.meta +2 -2
- package/Tests/Runtime/Serialization.meta +2 -2
- package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs +399 -399
- package/Tests/Runtime/Utils/SpriteRendererMetadataTests.cs.meta +2 -2
- package/Tests/Runtime/Utils.meta +2 -2
- package/Tests/Runtime/WallstopStudios.UnityHelpers.Tests.Runtime.asmdef +22 -22
- package/Tests/Runtime/WallstopStudios.UnityHelpers.Tests.Runtime.asmdef.meta +7 -7
- package/Tests/Runtime.meta +8 -8
- package/package.json +38 -38
|
@@ -1,185 +1,185 @@
|
|
|
1
|
-
namespace UnityHelpers.Core.DataStructure.Adapters
|
|
2
|
-
{
|
|
3
|
-
using System;
|
|
4
|
-
using System.Runtime.CompilerServices;
|
|
5
|
-
using Helper;
|
|
6
|
-
using ProtoBuf;
|
|
7
|
-
using UnityEngine;
|
|
8
|
-
|
|
9
|
-
[Serializable]
|
|
10
|
-
[ProtoContract]
|
|
11
|
-
public struct FastVector3Int
|
|
12
|
-
: IEquatable<FastVector3Int>,
|
|
13
|
-
IComparable<FastVector3Int>,
|
|
14
|
-
IComparable
|
|
15
|
-
{
|
|
16
|
-
public static readonly FastVector3Int zero = new(0, 0, 0);
|
|
17
|
-
|
|
18
|
-
[ProtoMember(1)]
|
|
19
|
-
public int x;
|
|
20
|
-
|
|
21
|
-
[ProtoMember(2)]
|
|
22
|
-
public int y;
|
|
23
|
-
|
|
24
|
-
[ProtoMember(3)]
|
|
25
|
-
public int z;
|
|
26
|
-
|
|
27
|
-
private int _hash;
|
|
28
|
-
|
|
29
|
-
public FastVector3Int(int x, int y, int z)
|
|
30
|
-
{
|
|
31
|
-
this.x = x;
|
|
32
|
-
this.y = y;
|
|
33
|
-
this.z = z;
|
|
34
|
-
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
public FastVector3Int(Vector3Int vector)
|
|
38
|
-
: this(vector.x, vector.y, vector.z) { }
|
|
39
|
-
|
|
40
|
-
public FastVector3Int(int x, int y)
|
|
41
|
-
: this(x, y, 0) { }
|
|
42
|
-
|
|
43
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
44
|
-
public static bool operator ==(FastVector3Int lhs, FastVector3Int rhs)
|
|
45
|
-
{
|
|
46
|
-
return lhs.Equals(rhs);
|
|
47
|
-
}
|
|
48
|
-
|
|
49
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
50
|
-
public static bool operator !=(FastVector3Int lhs, FastVector3Int rhs)
|
|
51
|
-
{
|
|
52
|
-
return !lhs.Equals(rhs);
|
|
53
|
-
}
|
|
54
|
-
|
|
55
|
-
public static FastVector3Int operator +(FastVector3Int lhs, FastVector3Int rhs)
|
|
56
|
-
{
|
|
57
|
-
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z);
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
public static FastVector3Int operator +(FastVector3Int lhs, Vector3Int rhs)
|
|
61
|
-
{
|
|
62
|
-
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z);
|
|
63
|
-
}
|
|
64
|
-
|
|
65
|
-
public static FastVector3Int operator +(FastVector3Int lhs, Vector2Int rhs)
|
|
66
|
-
{
|
|
67
|
-
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z);
|
|
68
|
-
}
|
|
69
|
-
|
|
70
|
-
public static FastVector3Int operator +(FastVector3Int lhs, FastVector2Int rhs)
|
|
71
|
-
{
|
|
72
|
-
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z);
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
public static FastVector3Int operator -(FastVector3Int lhs, FastVector3Int rhs)
|
|
76
|
-
{
|
|
77
|
-
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z);
|
|
78
|
-
}
|
|
79
|
-
|
|
80
|
-
public static FastVector3Int operator -(FastVector3Int lhs, Vector3Int rhs)
|
|
81
|
-
{
|
|
82
|
-
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z);
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
public static FastVector3Int operator -(FastVector3Int lhs, FastVector2Int rhs)
|
|
86
|
-
{
|
|
87
|
-
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z);
|
|
88
|
-
}
|
|
89
|
-
|
|
90
|
-
public static FastVector3Int operator -(FastVector3Int lhs, Vector2Int rhs)
|
|
91
|
-
{
|
|
92
|
-
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z);
|
|
93
|
-
}
|
|
94
|
-
|
|
95
|
-
public static implicit operator Vector3Int(FastVector3Int vector)
|
|
96
|
-
{
|
|
97
|
-
return new Vector3Int(vector.x, vector.y, vector.z);
|
|
98
|
-
}
|
|
99
|
-
|
|
100
|
-
public static implicit operator FastVector3Int(Vector3Int vector)
|
|
101
|
-
{
|
|
102
|
-
return new FastVector3Int(vector.x, vector.y, vector.z);
|
|
103
|
-
}
|
|
104
|
-
|
|
105
|
-
public static implicit operator Vector2Int(FastVector3Int vector)
|
|
106
|
-
{
|
|
107
|
-
return new Vector2Int(vector.x, vector.y);
|
|
108
|
-
}
|
|
109
|
-
|
|
110
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
111
|
-
public override int GetHashCode()
|
|
112
|
-
{
|
|
113
|
-
if (_hash == 0)
|
|
114
|
-
{
|
|
115
|
-
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
116
|
-
}
|
|
117
|
-
return _hash;
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
121
|
-
public override bool Equals(object obj)
|
|
122
|
-
{
|
|
123
|
-
return obj is FastVector3Int other && Equals(other);
|
|
124
|
-
}
|
|
125
|
-
|
|
126
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
127
|
-
public bool Equals(FastVector3Int other)
|
|
128
|
-
{
|
|
129
|
-
return GetHashCode() == other.GetHashCode()
|
|
130
|
-
&& x == other.x
|
|
131
|
-
&& y == other.y
|
|
132
|
-
&& z == other.z;
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
136
|
-
public int CompareTo(FastVector3Int other)
|
|
137
|
-
{
|
|
138
|
-
int comparison = x.CompareTo(other.x);
|
|
139
|
-
if (comparison != 0)
|
|
140
|
-
{
|
|
141
|
-
return comparison;
|
|
142
|
-
}
|
|
143
|
-
|
|
144
|
-
comparison = y.CompareTo(other.y);
|
|
145
|
-
if (comparison != 0)
|
|
146
|
-
{
|
|
147
|
-
return comparison;
|
|
148
|
-
}
|
|
149
|
-
|
|
150
|
-
return z.CompareTo(other.z);
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
154
|
-
public int CompareTo(object other)
|
|
155
|
-
{
|
|
156
|
-
if (other is FastVector3Int vector)
|
|
157
|
-
{
|
|
158
|
-
return CompareTo(vector);
|
|
159
|
-
}
|
|
160
|
-
|
|
161
|
-
return -1;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
public override string ToString()
|
|
165
|
-
{
|
|
166
|
-
return $"({x}, {y}, {z})";
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
[ProtoAfterDeserialization]
|
|
170
|
-
private void AfterDeserialize()
|
|
171
|
-
{
|
|
172
|
-
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
173
|
-
}
|
|
174
|
-
|
|
175
|
-
public readonly Vector2 AsVector2()
|
|
176
|
-
{
|
|
177
|
-
return new Vector2(x, y);
|
|
178
|
-
}
|
|
179
|
-
|
|
180
|
-
public readonly Vector3 AsVector3()
|
|
181
|
-
{
|
|
182
|
-
return new Vector3(x, y, z);
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
}
|
|
1
|
+
namespace UnityHelpers.Core.DataStructure.Adapters
|
|
2
|
+
{
|
|
3
|
+
using System;
|
|
4
|
+
using System.Runtime.CompilerServices;
|
|
5
|
+
using Helper;
|
|
6
|
+
using ProtoBuf;
|
|
7
|
+
using UnityEngine;
|
|
8
|
+
|
|
9
|
+
[Serializable]
|
|
10
|
+
[ProtoContract]
|
|
11
|
+
public struct FastVector3Int
|
|
12
|
+
: IEquatable<FastVector3Int>,
|
|
13
|
+
IComparable<FastVector3Int>,
|
|
14
|
+
IComparable
|
|
15
|
+
{
|
|
16
|
+
public static readonly FastVector3Int zero = new(0, 0, 0);
|
|
17
|
+
|
|
18
|
+
[ProtoMember(1)]
|
|
19
|
+
public int x;
|
|
20
|
+
|
|
21
|
+
[ProtoMember(2)]
|
|
22
|
+
public int y;
|
|
23
|
+
|
|
24
|
+
[ProtoMember(3)]
|
|
25
|
+
public int z;
|
|
26
|
+
|
|
27
|
+
private int _hash;
|
|
28
|
+
|
|
29
|
+
public FastVector3Int(int x, int y, int z)
|
|
30
|
+
{
|
|
31
|
+
this.x = x;
|
|
32
|
+
this.y = y;
|
|
33
|
+
this.z = z;
|
|
34
|
+
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
public FastVector3Int(Vector3Int vector)
|
|
38
|
+
: this(vector.x, vector.y, vector.z) { }
|
|
39
|
+
|
|
40
|
+
public FastVector3Int(int x, int y)
|
|
41
|
+
: this(x, y, 0) { }
|
|
42
|
+
|
|
43
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
44
|
+
public static bool operator ==(FastVector3Int lhs, FastVector3Int rhs)
|
|
45
|
+
{
|
|
46
|
+
return lhs.Equals(rhs);
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
50
|
+
public static bool operator !=(FastVector3Int lhs, FastVector3Int rhs)
|
|
51
|
+
{
|
|
52
|
+
return !lhs.Equals(rhs);
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
public static FastVector3Int operator +(FastVector3Int lhs, FastVector3Int rhs)
|
|
56
|
+
{
|
|
57
|
+
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z);
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
public static FastVector3Int operator +(FastVector3Int lhs, Vector3Int rhs)
|
|
61
|
+
{
|
|
62
|
+
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z + rhs.z);
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
public static FastVector3Int operator +(FastVector3Int lhs, Vector2Int rhs)
|
|
66
|
+
{
|
|
67
|
+
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z);
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
public static FastVector3Int operator +(FastVector3Int lhs, FastVector2Int rhs)
|
|
71
|
+
{
|
|
72
|
+
return new FastVector3Int(lhs.x + rhs.x, lhs.y + rhs.y, lhs.z);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
public static FastVector3Int operator -(FastVector3Int lhs, FastVector3Int rhs)
|
|
76
|
+
{
|
|
77
|
+
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z);
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
public static FastVector3Int operator -(FastVector3Int lhs, Vector3Int rhs)
|
|
81
|
+
{
|
|
82
|
+
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z - rhs.z);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
public static FastVector3Int operator -(FastVector3Int lhs, FastVector2Int rhs)
|
|
86
|
+
{
|
|
87
|
+
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
public static FastVector3Int operator -(FastVector3Int lhs, Vector2Int rhs)
|
|
91
|
+
{
|
|
92
|
+
return new FastVector3Int(lhs.x - rhs.x, lhs.y - rhs.y, lhs.z);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
public static implicit operator Vector3Int(FastVector3Int vector)
|
|
96
|
+
{
|
|
97
|
+
return new Vector3Int(vector.x, vector.y, vector.z);
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
public static implicit operator FastVector3Int(Vector3Int vector)
|
|
101
|
+
{
|
|
102
|
+
return new FastVector3Int(vector.x, vector.y, vector.z);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
public static implicit operator Vector2Int(FastVector3Int vector)
|
|
106
|
+
{
|
|
107
|
+
return new Vector2Int(vector.x, vector.y);
|
|
108
|
+
}
|
|
109
|
+
|
|
110
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
111
|
+
public override int GetHashCode()
|
|
112
|
+
{
|
|
113
|
+
if (_hash == 0)
|
|
114
|
+
{
|
|
115
|
+
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
116
|
+
}
|
|
117
|
+
return _hash;
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
121
|
+
public override bool Equals(object obj)
|
|
122
|
+
{
|
|
123
|
+
return obj is FastVector3Int other && Equals(other);
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
127
|
+
public bool Equals(FastVector3Int other)
|
|
128
|
+
{
|
|
129
|
+
return GetHashCode() == other.GetHashCode()
|
|
130
|
+
&& x == other.x
|
|
131
|
+
&& y == other.y
|
|
132
|
+
&& z == other.z;
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
136
|
+
public int CompareTo(FastVector3Int other)
|
|
137
|
+
{
|
|
138
|
+
int comparison = x.CompareTo(other.x);
|
|
139
|
+
if (comparison != 0)
|
|
140
|
+
{
|
|
141
|
+
return comparison;
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
comparison = y.CompareTo(other.y);
|
|
145
|
+
if (comparison != 0)
|
|
146
|
+
{
|
|
147
|
+
return comparison;
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
return z.CompareTo(other.z);
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
[MethodImpl(MethodImplOptions.AggressiveInlining)]
|
|
154
|
+
public int CompareTo(object other)
|
|
155
|
+
{
|
|
156
|
+
if (other is FastVector3Int vector)
|
|
157
|
+
{
|
|
158
|
+
return CompareTo(vector);
|
|
159
|
+
}
|
|
160
|
+
|
|
161
|
+
return -1;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
public override string ToString()
|
|
165
|
+
{
|
|
166
|
+
return $"({x}, {y}, {z})";
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
[ProtoAfterDeserialization]
|
|
170
|
+
private void AfterDeserialize()
|
|
171
|
+
{
|
|
172
|
+
_hash = Objects.ValueTypeHashCode(x, y, z);
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
public readonly Vector2 AsVector2()
|
|
176
|
+
{
|
|
177
|
+
return new Vector2(x, y);
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
public readonly Vector3 AsVector3()
|
|
181
|
+
{
|
|
182
|
+
return new Vector3(x, y, z);
|
|
183
|
+
}
|
|
184
|
+
}
|
|
185
|
+
}
|