fixes
This commit is contained in:
@@ -5,7 +5,6 @@
|
|||||||
<androidPackage spec="com.appsflyer:af-android-sdk:6.17.6"></androidPackage>
|
<androidPackage spec="com.appsflyer:af-android-sdk:6.17.6"></androidPackage>
|
||||||
<androidPackage spec="com.appsflyer:unity-wrapper:6.17.91"></androidPackage>
|
<androidPackage spec="com.appsflyer:unity-wrapper:6.17.91"></androidPackage>
|
||||||
<androidPackage spec="com.android.installreferrer:installreferrer:2.1"></androidPackage>
|
<androidPackage spec="com.android.installreferrer:installreferrer:2.1"></androidPackage>
|
||||||
<androidPackage spec="com.appsflyer:purchase-connector:2.2.0"></androidPackage>
|
|
||||||
</androidPackages>
|
</androidPackages>
|
||||||
|
|
||||||
<iosPods>
|
<iosPods>
|
||||||
|
|||||||
@@ -14,6 +14,11 @@ public interface IColoringController
|
|||||||
void PaintRegion(string regionId, Color color);
|
void PaintRegion(string regionId, Color color);
|
||||||
IReadOnlyDictionary<string, Color> GetCurrentColors();
|
IReadOnlyDictionary<string, Color> GetCurrentColors();
|
||||||
UniTask PlayCompletionAnimationAsync(CancellationToken ct);
|
UniTask PlayCompletionAnimationAsync(CancellationToken ct);
|
||||||
|
|
||||||
|
// True while the completion celebration is on screen (the real drawing is hidden).
|
||||||
|
// Capture must skip these frames so it never grabs the animation instead of the art.
|
||||||
|
bool IsPlayingCompletionAnimation { get; }
|
||||||
|
|
||||||
bool HasNonAuthoredColors { get; }
|
bool HasNonAuthoredColors { get; }
|
||||||
void ResetAll();
|
void ResetAll();
|
||||||
void Clear();
|
void Clear();
|
||||||
|
|||||||
@@ -16,6 +16,7 @@ namespace Darkmatter.Core.Data.Static.Features.ShapeBuilder
|
|||||||
|
|
||||||
[Header("Drag")]
|
[Header("Drag")]
|
||||||
[SerializeField, Range(1f, 2f)] private float dragScale = 1.15f;
|
[SerializeField, Range(1f, 2f)] private float dragScale = 1.15f;
|
||||||
|
[SerializeField, Range(0f, 1f)] private float dragAlpha = 0.7f;
|
||||||
|
|
||||||
[Header("Preview easing")]
|
[Header("Preview easing")]
|
||||||
[SerializeField] private AnimationCurve previewCurve = AnimationCurve.EaseInOut(0, 0, 1, 1);
|
[SerializeField] private AnimationCurve previewCurve = AnimationCurve.EaseInOut(0, 0, 1, 1);
|
||||||
@@ -25,6 +26,7 @@ namespace Darkmatter.Core.Data.Static.Features.ShapeBuilder
|
|||||||
public float SnapDuration => snapDuration;
|
public float SnapDuration => snapDuration;
|
||||||
public float ReturnDuration => returnDuration;
|
public float ReturnDuration => returnDuration;
|
||||||
public float DragScale => dragScale;
|
public float DragScale => dragScale;
|
||||||
|
public float DragAlpha => dragAlpha;
|
||||||
public AnimationCurve PreviewCurve => previewCurve;
|
public AnimationCurve PreviewCurve => previewCurve;
|
||||||
|
|
||||||
public Vector2 DragSizeDelta(ShapeSO shape) =>
|
public Vector2 DragSizeDelta(ShapeSO shape) =>
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
using System.Threading;
|
using System.Threading;
|
||||||
using Cysharp.Threading.Tasks;
|
using Cysharp.Threading.Tasks;
|
||||||
using Darkmatter.Core.Contracts.Features.Capture;
|
using Darkmatter.Core.Contracts.Features.Capture;
|
||||||
|
using Darkmatter.Core.Contracts.Features.Coloring;
|
||||||
using Darkmatter.Core.Contracts.Features.DrawingCatalog;
|
using Darkmatter.Core.Contracts.Features.DrawingCatalog;
|
||||||
using Darkmatter.Core.Contracts.Features.GameplayFlow;
|
using Darkmatter.Core.Contracts.Features.GameplayFlow;
|
||||||
using Darkmatter.Core.Contracts.Features.Progression;
|
using Darkmatter.Core.Contracts.Features.Progression;
|
||||||
@@ -21,6 +22,7 @@ namespace Darkmatter.Features.Capture
|
|||||||
private readonly CaptureConfig _config;
|
private readonly CaptureConfig _config;
|
||||||
private readonly IProgressionSystem _progression;
|
private readonly IProgressionSystem _progression;
|
||||||
private readonly IDrawingTemplateCatalog _catalog;
|
private readonly IDrawingTemplateCatalog _catalog;
|
||||||
|
private readonly IColoringController _coloring;
|
||||||
|
|
||||||
public CaptureSystem(
|
public CaptureSystem(
|
||||||
ICaptureService captureService,
|
ICaptureService captureService,
|
||||||
@@ -29,7 +31,8 @@ namespace Darkmatter.Features.Capture
|
|||||||
IEventBus bus,
|
IEventBus bus,
|
||||||
CaptureConfig config,
|
CaptureConfig config,
|
||||||
IProgressionSystem progression,
|
IProgressionSystem progression,
|
||||||
IDrawingTemplateCatalog catalog)
|
IDrawingTemplateCatalog catalog,
|
||||||
|
IColoringController coloring)
|
||||||
{
|
{
|
||||||
_captureService = captureService;
|
_captureService = captureService;
|
||||||
_galleryService = galleryService;
|
_galleryService = galleryService;
|
||||||
@@ -38,10 +41,16 @@ namespace Darkmatter.Features.Capture
|
|||||||
_config = config;
|
_config = config;
|
||||||
_progression = progression;
|
_progression = progression;
|
||||||
_catalog = catalog;
|
_catalog = catalog;
|
||||||
|
_coloring = coloring;
|
||||||
}
|
}
|
||||||
|
|
||||||
public async UniTask<byte[]> CapturePngAsync(bool saveToGallery = false, CancellationToken ct = default)
|
public async UniTask<byte[]> CapturePngAsync(bool saveToGallery = false, CancellationToken ct = default)
|
||||||
{
|
{
|
||||||
|
// The completion celebration hides the real drawing and shows an animation object
|
||||||
|
// under PaperRoot. Capturing then would grab the animation, not the art, so skip.
|
||||||
|
// A null result keeps the existing thumbnail and skips the gallery write (both no-op on null).
|
||||||
|
if (_coloring.IsPlayingCompletionAnimation) return null;
|
||||||
|
|
||||||
var png = await _captureService.CapturePngAsync(_refs.PaperRoot.gameObject, _config.CaptureScale, ct);
|
var png = await _captureService.CapturePngAsync(_refs.PaperRoot.gameObject, _config.CaptureScale, ct);
|
||||||
if (!saveToGallery || png == null || png.Length == 0) return png;
|
if (!saveToGallery || png == null || png.Length == 0) return png;
|
||||||
|
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ public class ColoringController : IColoringController, IDisposable
|
|||||||
private GameObject _colorButtonPrefab;
|
private GameObject _colorButtonPrefab;
|
||||||
private GameObject _completionAnimationInstance;
|
private GameObject _completionAnimationInstance;
|
||||||
private CompletionAnimationView _completionAnimationView;
|
private CompletionAnimationView _completionAnimationView;
|
||||||
|
private bool _isPlayingCompletionAnimation;
|
||||||
private readonly List<ColorRegionView> _regions = new();
|
private readonly List<ColorRegionView> _regions = new();
|
||||||
private readonly List<ColorButton> _buttons = new();
|
private readonly List<ColorButton> _buttons = new();
|
||||||
private readonly Dictionary<string, Color> _authoredColors = new();
|
private readonly Dictionary<string, Color> _authoredColors = new();
|
||||||
@@ -88,17 +89,21 @@ public class ColoringController : IColoringController, IDisposable
|
|||||||
return snapshot;
|
return snapshot;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool IsPlayingCompletionAnimation => _isPlayingCompletionAnimation;
|
||||||
|
|
||||||
public async UniTask PlayCompletionAnimationAsync(CancellationToken ct)
|
public async UniTask PlayCompletionAnimationAsync(CancellationToken ct)
|
||||||
{
|
{
|
||||||
if (_completionAnimationInstance == null || _completionAnimationView == null) return;
|
if (_completionAnimationInstance == null || _completionAnimationView == null) return;
|
||||||
if (_colorInstance != null) _colorInstance.SetActive(false);
|
if (_colorInstance != null) _colorInstance.SetActive(false);
|
||||||
_completionAnimationInstance.SetActive(true);
|
_completionAnimationInstance.SetActive(true);
|
||||||
|
_isPlayingCompletionAnimation = true;
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
await _completionAnimationView.PlayAsync(ct);
|
await _completionAnimationView.PlayAsync(ct);
|
||||||
}
|
}
|
||||||
finally
|
finally
|
||||||
{
|
{
|
||||||
|
_isPlayingCompletionAnimation = false;
|
||||||
if (_completionAnimationInstance != null)
|
if (_completionAnimationInstance != null)
|
||||||
_completionAnimationInstance.SetActive(false);
|
_completionAnimationInstance.SetActive(false);
|
||||||
}
|
}
|
||||||
@@ -133,6 +138,7 @@ public class ColoringController : IColoringController, IDisposable
|
|||||||
public void Clear()
|
public void Clear()
|
||||||
{
|
{
|
||||||
_history.Drop();
|
_history.Drop();
|
||||||
|
_isPlayingCompletionAnimation = false;
|
||||||
|
|
||||||
foreach (var button in _buttons)
|
foreach (var button in _buttons)
|
||||||
if (button != null)
|
if (button != null)
|
||||||
|
|||||||
@@ -136,6 +136,12 @@ namespace Darkmatter.Features.GameplayFlow.Systems
|
|||||||
|
|
||||||
public async UniTask NextAsync(CancellationToken ct)
|
public async UniTask NextAsync(CancellationToken ct)
|
||||||
{
|
{
|
||||||
|
// Drop any debounced autosave so it can't fire during/after the completion
|
||||||
|
// animation and capture the animation (or an empty paper) into the thumbnail.
|
||||||
|
_autosaveCts?.Cancel();
|
||||||
|
_autosaveCts?.Dispose();
|
||||||
|
_autosaveCts = null;
|
||||||
|
|
||||||
await SaveCurrentAsync(ct);
|
await SaveCurrentAsync(ct);
|
||||||
_refs.Confetti.Play();
|
_refs.Confetti.Play();
|
||||||
_sfx.Play(SfxId.FireWorkLaunch);
|
_sfx.Play(SfxId.FireWorkLaunch);
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
private Vector2 _origAnchorMax;
|
private Vector2 _origAnchorMax;
|
||||||
private Vector2 _origPivot;
|
private Vector2 _origPivot;
|
||||||
private bool _origPreserveAspect;
|
private bool _origPreserveAspect;
|
||||||
|
private Vector3 _homeScale = Vector3.one;
|
||||||
|
|
||||||
// Per-drag state
|
// Per-drag state
|
||||||
private RectTransform _rt;
|
private RectTransform _rt;
|
||||||
@@ -45,6 +46,8 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
private Vector2 _trayPosInDragRoot;
|
private Vector2 _trayPosInDragRoot;
|
||||||
private Vector2 _dragSizeDelta;
|
private Vector2 _dragSizeDelta;
|
||||||
private Vector3 _dragLocalScale;
|
private Vector3 _dragLocalScale;
|
||||||
|
private float _dragOrigAlpha;
|
||||||
|
private Tween _dragScaleTween;
|
||||||
private Sequence _previewSeq;
|
private Sequence _previewSeq;
|
||||||
private Sequence _snapSettle;
|
private Sequence _snapSettle;
|
||||||
private bool _locked;
|
private bool _locked;
|
||||||
@@ -68,6 +71,14 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
if (image != null) image.color = color;
|
if (image != null) image.color = color;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private void SetAlpha(float a)
|
||||||
|
{
|
||||||
|
if (image == null) return;
|
||||||
|
var c = image.color;
|
||||||
|
c.a = a;
|
||||||
|
image.color = c;
|
||||||
|
}
|
||||||
|
|
||||||
public void Setup(
|
public void Setup(
|
||||||
ShapeSO shape,
|
ShapeSO shape,
|
||||||
SlotMarker[] candidateSlots,
|
SlotMarker[] candidateSlots,
|
||||||
@@ -95,6 +106,7 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
_origAnchorMax = RectTransform.anchorMax;
|
_origAnchorMax = RectTransform.anchorMax;
|
||||||
_origPivot = RectTransform.pivot;
|
_origPivot = RectTransform.pivot;
|
||||||
_origPreserveAspect = image != null && image.preserveAspect;
|
_origPreserveAspect = image != null && image.preserveAspect;
|
||||||
|
_homeScale = RectTransform.localScale;
|
||||||
|
|
||||||
image.sprite = shape.Sprite;
|
image.sprite = shape.Sprite;
|
||||||
ApplyTrayPose();
|
ApplyTrayPose();
|
||||||
@@ -104,6 +116,10 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
{
|
{
|
||||||
if (_locked) return;
|
if (_locked) return;
|
||||||
|
|
||||||
|
// Kill any tweens still running on this piece (e.g. a return/preview from a
|
||||||
|
// re-grab mid-animation) so the new drag starts from a clean, known pose.
|
||||||
|
Tween.StopAll(onTarget: RectTransform);
|
||||||
|
|
||||||
if (_dragRoot != null && RectTransform.parent != _dragRoot)
|
if (_dragRoot != null && RectTransform.parent != _dragRoot)
|
||||||
{
|
{
|
||||||
RectTransform.SetParent(_dragRoot, worldPositionStays: true);
|
RectTransform.SetParent(_dragRoot, worldPositionStays: true);
|
||||||
@@ -114,11 +130,20 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
_eventCam = e.pressEventCamera;
|
_eventCam = e.pressEventCamera;
|
||||||
_trayPosInDragRoot = RectTransform.anchoredPosition;
|
_trayPosInDragRoot = RectTransform.anchoredPosition;
|
||||||
_dragSizeDelta = RectTransform.sizeDelta;
|
_dragSizeDelta = RectTransform.sizeDelta;
|
||||||
_dragLocalScale = RectTransform.localScale;
|
// Use the canonical resting scale, not the live value, so a re-grab mid-tween
|
||||||
|
// can't bake a drifted scale into the drag base.
|
||||||
|
_dragLocalScale = _homeScale;
|
||||||
|
RectTransform.localScale = _homeScale;
|
||||||
_grabOffset = RectTransform.anchoredPosition - ScreenToLocal(e.position);
|
_grabOffset = RectTransform.anchoredPosition - ScreenToLocal(e.position);
|
||||||
_inPreview = false;
|
_inPreview = false;
|
||||||
|
|
||||||
Tween.LocalScale(RectTransform, _dragLocalScale * _cfg.DragScale, _cfg.SnapDuration, Ease.OutQuad);
|
if (image != null)
|
||||||
|
{
|
||||||
|
_dragOrigAlpha = image.color.a;
|
||||||
|
SetAlpha(_cfg.DragAlpha);
|
||||||
|
}
|
||||||
|
|
||||||
|
_dragScaleTween = Tween.Scale(RectTransform, _dragLocalScale * _cfg.DragScale, _cfg.SnapDuration, Ease.OutQuad);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void OnDrag(PointerEventData e)
|
public void OnDrag(PointerEventData e)
|
||||||
@@ -156,6 +181,12 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
{
|
{
|
||||||
if (_locked) return;
|
if (_locked) return;
|
||||||
|
|
||||||
|
// Stop the begin-drag scale-up so it can't fight the return/snap pose.
|
||||||
|
// Leave _previewSeq alive — the snap path lets it settle.
|
||||||
|
if (_dragScaleTween.isAlive) _dragScaleTween.Stop();
|
||||||
|
|
||||||
|
SetAlpha(_dragOrigAlpha);
|
||||||
|
|
||||||
var target = FindSlotUnder(e.position);
|
var target = FindSlotUnder(e.position);
|
||||||
if (target != null)
|
if (target != null)
|
||||||
{
|
{
|
||||||
@@ -184,6 +215,7 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
|
|
||||||
private void AnimatePreviewPose(bool toSlot)
|
private void AnimatePreviewPose(bool toSlot)
|
||||||
{
|
{
|
||||||
|
if (_dragScaleTween.isAlive) _dragScaleTween.Stop();
|
||||||
if (_previewSeq.isAlive) _previewSeq.Stop();
|
if (_previewSeq.isAlive) _previewSeq.Stop();
|
||||||
|
|
||||||
if (toSlot && _activeSlot != null)
|
if (toSlot && _activeSlot != null)
|
||||||
@@ -361,6 +393,7 @@ namespace Darkmatter.Features.ShapeBuilder.UI
|
|||||||
{
|
{
|
||||||
RectTransform.sizeDelta = _traySize;
|
RectTransform.sizeDelta = _traySize;
|
||||||
RectTransform.localRotation = Quaternion.identity;
|
RectTransform.localRotation = Quaternion.identity;
|
||||||
|
RectTransform.localScale = _homeScale;
|
||||||
}
|
}
|
||||||
|
|
||||||
private Vector2 ScreenToLocal(Vector2 screenPos)
|
private Vector2 ScreenToLocal(Vector2 screenPos)
|
||||||
|
|||||||
BIN
Assets/Darkmatter/Content/.DS_Store
vendored
BIN
Assets/Darkmatter/Content/.DS_Store
vendored
Binary file not shown.
BIN
Assets/Darkmatter/Content/Colorbook UI/.DS_Store
vendored
BIN
Assets/Darkmatter/Content/Colorbook UI/.DS_Store
vendored
Binary file not shown.
@@ -281,8 +281,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 2018849806684805117}
|
m_GameObject: {fileID: 2018849806684805117}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.4066, y: 1.4066, z: 1.4066}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 86201234489763977}
|
- {fileID: 86201234489763977}
|
||||||
- {fileID: 109331856778429183}
|
- {fileID: 109331856778429183}
|
||||||
|
|||||||
@@ -26,8 +26,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 970882496690282873}
|
m_GameObject: {fileID: 970882496690282873}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.1503, y: 1.1503, z: 1.1503}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4862617518150298184}
|
- {fileID: 4862617518150298184}
|
||||||
- {fileID: 1927978426257304632}
|
- {fileID: 1927978426257304632}
|
||||||
|
|||||||
@@ -101,8 +101,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 6408485857370138169}
|
m_GameObject: {fileID: 6408485857370138169}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.2033, y: 1.2033, z: 1.2033}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 1214920657407418962}
|
- {fileID: 1214920657407418962}
|
||||||
- {fileID: 6162131388587199005}
|
- {fileID: 6162131388587199005}
|
||||||
|
|||||||
@@ -101,8 +101,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 830151417515138702}
|
m_GameObject: {fileID: 830151417515138702}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.2121, y: 1.2121, z: 1.2121}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 1060224653914720711}
|
- {fileID: 1060224653914720711}
|
||||||
- {fileID: 3409973025274235484}
|
- {fileID: 3409973025274235484}
|
||||||
|
|||||||
@@ -930,7 +930,7 @@ GameObject:
|
|||||||
m_Icon: {fileID: 0}
|
m_Icon: {fileID: 0}
|
||||||
m_NavMeshLayer: 0
|
m_NavMeshLayer: 0
|
||||||
m_StaticEditorFlags: 0
|
m_StaticEditorFlags: 0
|
||||||
m_IsActive: 1
|
m_IsActive: 0
|
||||||
--- !u!224 &3765577967584406493
|
--- !u!224 &3765577967584406493
|
||||||
RectTransform:
|
RectTransform:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
@@ -2013,8 +2013,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 6684381930794325998}
|
m_GameObject: {fileID: 6684381930794325998}
|
||||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.2563, y: 1.2563, z: 1.2563}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4001251692510412888}
|
- {fileID: 4001251692510412888}
|
||||||
- {fileID: 9065922355177954181}
|
- {fileID: 9065922355177954181}
|
||||||
@@ -2022,7 +2022,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0.5}
|
m_AnchorMin: {x: 0.5, y: 0.5}
|
||||||
m_AnchorMax: {x: 0.5, y: 0.5}
|
m_AnchorMax: {x: 0.5, y: 0.5}
|
||||||
m_AnchoredPosition: {x: 0, y: -324.28992}
|
m_AnchoredPosition: {x: 18, y: -324.28992}
|
||||||
m_SizeDelta: {x: 484.2721, y: 79.242615}
|
m_SizeDelta: {x: 484.2721, y: 79.242615}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!1 &6720628983119242459
|
--- !u!1 &6720628983119242459
|
||||||
@@ -3192,8 +3192,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 8914662876087302500}
|
m_GameObject: {fileID: 8914662876087302500}
|
||||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.2563, y: 1.2563, z: 1.2563}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 4452683220369286777}
|
- {fileID: 4452683220369286777}
|
||||||
- {fileID: 1884834246100035824}
|
- {fileID: 1884834246100035824}
|
||||||
@@ -3201,7 +3201,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0.5, y: 0}
|
m_AnchorMin: {x: 0.5, y: 0}
|
||||||
m_AnchorMax: {x: 0.5, y: 0}
|
m_AnchorMax: {x: 0.5, y: 0}
|
||||||
m_AnchoredPosition: {x: -0.000030517578, y: 39.621277}
|
m_AnchoredPosition: {x: -33, y: 39.621277}
|
||||||
m_SizeDelta: {x: 484.27228, y: 79.242615}
|
m_SizeDelta: {x: 484.27228, y: 79.242615}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!1 &9047034408538749912
|
--- !u!1 &9047034408538749912
|
||||||
|
|||||||
@@ -28,8 +28,8 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 8269026611177622940}
|
m_GameObject: {fileID: 8269026611177622940}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.1414, y: 1.1414, z: 1.1414}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 1
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 0}
|
m_Father: {fileID: 0}
|
||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -164,7 +164,6 @@ MonoBehaviour:
|
|||||||
m_Name:
|
m_Name:
|
||||||
m_EditorClassIdentifier: Features.Capture::Darkmatter.Features.Capture.CaptureFeatureModule
|
m_EditorClassIdentifier: Features.Capture::Darkmatter.Features.Capture.CaptureFeatureModule
|
||||||
captureScale: 1
|
captureScale: 1
|
||||||
galleryBackground: {fileID: 2800000, guid: 0c8e208e83531f84cb2b842025cdd232, type: 3}
|
|
||||||
captureButtonView: {fileID: 376589371}
|
captureButtonView: {fileID: 376589371}
|
||||||
gallerySaveView: {fileID: 0}
|
gallerySaveView: {fileID: 0}
|
||||||
--- !u!1 &64614225
|
--- !u!1 &64614225
|
||||||
@@ -551,7 +550,7 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 259035377}
|
m_GameObject: {fileID: 259035377}
|
||||||
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1.4399601, y: 1.4399601, z: 1.4399601}
|
m_LocalScale: {x: 1.8345093, y: 1.8345093, z: 1.8345093}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 1176170784}
|
- {fileID: 1176170784}
|
||||||
@@ -559,7 +558,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 1, y: 0}
|
m_AnchorMin: {x: 1, y: 0}
|
||||||
m_AnchorMax: {x: 1, y: 0}
|
m_AnchorMax: {x: 1, y: 0}
|
||||||
m_AnchoredPosition: {x: -622.2647, y: 212}
|
m_AnchoredPosition: {x: -718, y: 244}
|
||||||
m_SizeDelta: {x: 407.377, y: 163}
|
m_SizeDelta: {x: 407.377, y: 163}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!114 &259035379
|
--- !u!114 &259035379
|
||||||
@@ -821,7 +820,7 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 376589366}
|
m_GameObject: {fileID: 376589366}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1.2278218, y: 1.2278218, z: 1.2278218}
|
m_LocalScale: {x: 1.3688985, y: 1.3688985, z: 1.3688985}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children: []
|
m_Children: []
|
||||||
m_Father: {fileID: 153461769}
|
m_Father: {fileID: 153461769}
|
||||||
@@ -2437,7 +2436,7 @@ RectTransform:
|
|||||||
m_GameObject: {fileID: 1310839948}
|
m_GameObject: {fileID: 1310839948}
|
||||||
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
|
||||||
m_LocalPosition: {x: 0, y: 0, z: 0}
|
m_LocalPosition: {x: 0, y: 0, z: 0}
|
||||||
m_LocalScale: {x: 1, y: 1, z: 1}
|
m_LocalScale: {x: 1.1945, y: 1.1945, z: 1.1945}
|
||||||
m_ConstrainProportionsScale: 0
|
m_ConstrainProportionsScale: 0
|
||||||
m_Children:
|
m_Children:
|
||||||
- {fileID: 2058063738}
|
- {fileID: 2058063738}
|
||||||
@@ -2446,7 +2445,7 @@ RectTransform:
|
|||||||
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
|
||||||
m_AnchorMin: {x: 0, y: 0}
|
m_AnchorMin: {x: 0, y: 0}
|
||||||
m_AnchorMax: {x: 0, y: 0}
|
m_AnchorMax: {x: 0, y: 0}
|
||||||
m_AnchoredPosition: {x: 505.82385, y: 200.40308}
|
m_AnchoredPosition: {x: 505.82385, y: 257}
|
||||||
m_SizeDelta: {x: 660.4729, y: 319.02832}
|
m_SizeDelta: {x: 660.4729, y: 319.02832}
|
||||||
m_Pivot: {x: 0.5, y: 0.5}
|
m_Pivot: {x: 0.5, y: 0.5}
|
||||||
--- !u!114 &1310839950
|
--- !u!114 &1310839950
|
||||||
@@ -3360,10 +3359,6 @@ PrefabInstance:
|
|||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
value: ArtBookView
|
value: ArtBookView
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 3521470624751981147, guid: 4dd2a1cb2754a410f9f807f563a55e7c, type: 3}
|
|
||||||
propertyPath: m_IsActive
|
|
||||||
value: 0
|
|
||||||
objectReference: {fileID: 0}
|
|
||||||
- target: {fileID: 3765577967584406493, guid: 4dd2a1cb2754a410f9f807f563a55e7c, type: 3}
|
- target: {fileID: 3765577967584406493, guid: 4dd2a1cb2754a410f9f807f563a55e7c, type: 3}
|
||||||
propertyPath: m_Pivot.x
|
propertyPath: m_Pivot.x
|
||||||
value: 0.5
|
value: 0.5
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
<key>PLIST_VERSION</key>
|
<key>PLIST_VERSION</key>
|
||||||
<string>1</string>
|
<string>1</string>
|
||||||
<key>BUNDLE_ID</key>
|
<key>BUNDLE_ID</key>
|
||||||
<string>com.Darkmatter.Colorbook</string>
|
<string>com.Darkmatter.ColorbookGame</string>
|
||||||
<key>PROJECT_ID</key>
|
<key>PROJECT_ID</key>
|
||||||
<string>colorbook-a7ceb</string>
|
<string>colorbook-a7ceb</string>
|
||||||
<key>STORAGE_BUCKET</key>
|
<key>STORAGE_BUCKET</key>
|
||||||
@@ -25,6 +25,6 @@
|
|||||||
<key>IS_SIGNIN_ENABLED</key>
|
<key>IS_SIGNIN_ENABLED</key>
|
||||||
<true></true>
|
<true></true>
|
||||||
<key>GOOGLE_APP_ID</key>
|
<key>GOOGLE_APP_ID</key>
|
||||||
<string>1:568157424262:ios:74b8e5566b3f8f09169f07</string>
|
<string>1:568157424262:ios:689c16b54819f200169f07</string>
|
||||||
</dict>
|
</dict>
|
||||||
</plist>
|
</plist>
|
||||||
@@ -10,7 +10,6 @@ dependencies {
|
|||||||
implementation 'androidx.lifecycle:lifecycle-process:2.6.2' // Packages/com.google.ads.mobile/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:17
|
implementation 'androidx.lifecycle:lifecycle-process:2.6.2' // Packages/com.google.ads.mobile/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:17
|
||||||
implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7
|
implementation 'com.android.installreferrer:installreferrer:2.1' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:7
|
||||||
implementation 'com.appsflyer:af-android-sdk:6.17.6' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5
|
implementation 'com.appsflyer:af-android-sdk:6.17.6' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:5
|
||||||
implementation 'com.appsflyer:purchase-connector:2.2.0' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:8
|
|
||||||
implementation 'com.appsflyer:unity-wrapper:6.17.91' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6
|
implementation 'com.appsflyer:unity-wrapper:6.17.91' // Assets/AppsFlyer/Editor/AppsFlyerDependencies.xml:6
|
||||||
implementation 'com.google.android.gms:play-services-ads:25.3.0' // Packages/com.google.ads.mobile/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:7
|
implementation 'com.google.android.gms:play-services-ads:25.3.0' // Packages/com.google.ads.mobile/GoogleMobileAds/Editor/GoogleMobileAdsDependencies.xml:7
|
||||||
implementation 'com.google.android.gms:play-services-base:18.10.0' // Assets/Firebase/Editor/AppDependencies.xml:20
|
implementation 'com.google.android.gms:play-services-base:18.10.0' // Assets/Firebase/Editor/AppDependencies.xml:20
|
||||||
|
|||||||
@@ -1 +0,0 @@
|
|||||||
{"TestSuite":"","Date":0,"Player":{"Development":false,"ScreenWidth":0,"ScreenHeight":0,"ScreenRefreshRate":0,"Fullscreen":false,"Vsync":0,"AntiAliasing":0,"Batchmode":false,"RenderThreadingMode":"MultiThreaded","MtRendering":false,"GraphicsJobs":false,"GpuSkinning":false,"Platform":"","ColorSpace":"","AnisotropicFiltering":"","BlendWeights":"","GraphicsApi":"","ScriptingBackend":"IL2CPP","AndroidTargetSdkVersion":"AndroidApiLevelAuto","AndroidBuildSystem":"Gradle","BuildTarget":"Android","StereoRenderingPath":"MultiPass"},"Hardware":{"OperatingSystem":"","DeviceModel":"","DeviceName":"","ProcessorType":"","ProcessorCount":0,"GraphicsDeviceName":"","SystemMemorySizeMB":0},"Editor":{"Version":"6000.4.5f1","Branch":"6000.4/staging","Changeset":"cc83ebd631f8","Date":1776765105},"Dependencies":["com.coffee.ui-particle@4.12.1","com.cysharp.unitask@2.5.11","com.gilzoide.update-manager@1.5.3","com.github-glitchenzo.nugetforunity@4.5.0","com.google.ads.mobile@11.2.0","com.kyrylokuzyk.primetween@1.4.0","com.unity.2d.animation@14.0.3","com.unity.2d.aseprite@4.0.1","com.unity.2d.psdimporter@13.0.2","com.unity.2d.sprite@1.0.0","com.unity.2d.spriteshape@14.0.1","com.unity.2d.tilemap@1.0.0","com.unity.2d.tilemap.extras@7.0.1","com.unity.2d.tooling@2.0.1","com.unity.addressables@2.9.1","com.unity.collab-proxy@2.12.4","com.unity.device-simulator.devices@1.0.1","com.unity.ide.rider@3.0.39","com.unity.ide.visualstudio@2.0.27","com.unity.inputsystem@1.19.0","com.unity.mobile.android-logcat@1.4.7","com.unity.multiplayer.center@1.0.1","com.unity.render-pipelines.universal@17.4.0","com.unity.test-framework@1.6.0","com.unity.timeline@1.8.12","com.unity.ugui@2.0.0","com.unity.visualscripting@1.9.11","com.yasirkula.nativegallery@1.9.3","jp.hadashikick.vcontainer@1.18.0","com.unity.modules.accessibility@1.0.0","com.unity.modules.adaptiveperformance@1.0.0","com.unity.modules.ai@1.0.0","com.unity.modules.androidjni@1.0.0","com.unity.modules.animation@1.0.0","com.unity.modules.assetbundle@1.0.0","com.unity.modules.audio@1.0.0","com.unity.modules.cloth@1.0.0","com.unity.modules.director@1.0.0","com.unity.modules.imageconversion@1.0.0","com.unity.modules.imgui@1.0.0","com.unity.modules.jsonserialize@1.0.0","com.unity.modules.particlesystem@1.0.0","com.unity.modules.physics@1.0.0","com.unity.modules.physics2d@1.0.0","com.unity.modules.screencapture@1.0.0","com.unity.modules.terrain@1.0.0","com.unity.modules.terrainphysics@1.0.0","com.unity.modules.tilemap@1.0.0","com.unity.modules.ui@1.0.0","com.unity.modules.uielements@1.0.0","com.unity.modules.umbra@1.0.0","com.unity.modules.unityanalytics@1.0.0","com.unity.modules.unitywebrequest@1.0.0","com.unity.modules.unitywebrequestassetbundle@1.0.0","com.unity.modules.unitywebrequestaudio@1.0.0","com.unity.modules.unitywebrequesttexture@1.0.0","com.unity.modules.unitywebrequestwww@1.0.0","com.unity.modules.vectorgraphics@1.0.0","com.unity.modules.vehicles@1.0.0","com.unity.modules.video@1.0.0","com.unity.modules.vr@1.0.0","com.unity.modules.wind@1.0.0","com.unity.modules.xr@1.0.0","com.unity.modules.subsystems@1.0.0","com.unity.modules.hierarchycore@1.0.0","com.unity.ext.nunit@2.0.5","com.unity.render-pipelines.core@17.4.0","com.unity.shadergraph@17.4.0","com.unity.render-pipelines.universal-config@17.4.0","com.unity.profiling.core@1.0.3","com.unity.scriptablebuildpipeline@2.6.1","com.unity.2d.common@13.0.1","com.unity.mathematics@1.3.3","com.unity.collections@6.4.0","com.google.external-dependency-manager@1.2.187","com.unity.searcher@4.9.4","com.unity.burst@1.8.29","com.unity.nuget.mono-cecil@1.11.6","com.unity.test-framework.performance@3.4.0"],"Results":[]}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: f94ab64051f694090abf4906db896df0
|
|
||||||
TextScriptImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
{"MeasurementCount":-1}
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
fileFormatVersion: 2
|
|
||||||
guid: cdbf3e4894eb54678926256b46820595
|
|
||||||
TextScriptImporter:
|
|
||||||
externalObjects: {}
|
|
||||||
userData:
|
|
||||||
assetBundleName:
|
|
||||||
assetBundleVariant:
|
|
||||||
@@ -4,7 +4,6 @@
|
|||||||
<package>androidx.lifecycle:lifecycle-process:2.6.2</package>
|
<package>androidx.lifecycle:lifecycle-process:2.6.2</package>
|
||||||
<package>com.android.installreferrer:installreferrer:2.1</package>
|
<package>com.android.installreferrer:installreferrer:2.1</package>
|
||||||
<package>com.appsflyer:af-android-sdk:6.17.6</package>
|
<package>com.appsflyer:af-android-sdk:6.17.6</package>
|
||||||
<package>com.appsflyer:purchase-connector:2.2.0</package>
|
|
||||||
<package>com.appsflyer:unity-wrapper:6.17.91</package>
|
<package>com.appsflyer:unity-wrapper:6.17.91</package>
|
||||||
<package>com.google.android.gms:play-services-ads:25.3.0</package>
|
<package>com.google.android.gms:play-services-ads:25.3.0</package>
|
||||||
<package>com.google.android.gms:play-services-base:18.10.0</package>
|
<package>com.google.android.gms:play-services-base:18.10.0</package>
|
||||||
|
|||||||
@@ -168,7 +168,7 @@ PlayerSettings:
|
|||||||
applicationIdentifier:
|
applicationIdentifier:
|
||||||
Android: com.Darkmatter.Colorbook
|
Android: com.Darkmatter.Colorbook
|
||||||
Standalone: com.DefaultCompany.2D-URP
|
Standalone: com.DefaultCompany.2D-URP
|
||||||
iPhone: com.Darkmatter.Colorbook
|
iPhone: com.Darkmatter.ColorbookGame
|
||||||
buildNumber:
|
buildNumber:
|
||||||
Standalone: 0
|
Standalone: 0
|
||||||
VisionOS: 0
|
VisionOS: 0
|
||||||
|
|||||||
Reference in New Issue
Block a user