added boss (final commit)

This commit is contained in:
MrTorex committed 2026-02-07 13:34:37 +03:00
1 parent ff19b0461e
commit 0a1cecfb4a
71 files changed
+1953 -144

No files matched your search

+23
View File
@@ -0,0 +1,23 @@
using Code.Gameplay.Player;
using UnityEngine;
namespace Code.Gameplay
{
public class BossTrigger: MonoBehaviour
{
private bool _triggered;
private void OnTriggerEnter2D(Collider2D other)
{
if (!other.CompareTag("Player") || _triggered) return;
Instantiate(Resources.Load<GameObject>("Prefabs/Boss"));
_triggered = true;
}
private void Update()
{
if (_triggered && FindFirstObjectByType<PlayerMovement>().gameObject.transform.position.x > transform.position.x + 10)
GetComponent<Collider2D>().isTrigger = false;
}
}
}
+3
View File
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 91d34fb33bdc44ddb5146b689aafa67f
timeCreated: 1770457564
+289
View File
@@ -0,0 +1,289 @@
using System;
using UnityEngine;
using Code.Gameplay.Player;
using Code.UI;
using DG.Tweening;
using Cysharp.Threading.Tasks;
using Random = UnityEngine.Random;
namespace Code.Gameplay.Enemies
{
public class Boss : MonoBehaviour, IEnemy
{
[SerializeField] private int _maxHealth = 200;
[SerializeField] private int _damagePerHit = 25;
[SerializeField] private float _enrageThreshold = 0.5f;
[SerializeField] private float _flyUpHeight = 10f;
[SerializeField] private float _flyUpSpeed = 8f;
[SerializeField] private float _diveSpeed = 18f;
[SerializeField] private float _diveCooldown = 4f;
[SerializeField] private float _featherCooldown = 3f;
[SerializeField] private float _enragedFeatherCooldown = 1.5f;
[SerializeField] private float _sweepSpeed = 12f;
[SerializeField] private float _sweepYOffset = -1f;
[SerializeField] private int _sweepPasses = 3;
[SerializeField] private float _sweepRange = 20f;
[SerializeField] private Transform _player;
[SerializeField] private GameObject _featherPrefab;
[SerializeField] private SpriteRenderer _spriteRenderer;
[SerializeField] private AudioClip _diveSFX;
[SerializeField] private AudioClip _featherSFX;
[SerializeField] private AudioClip _sweepSFX;
[SerializeField] private AudioClip _hitSFX;
[SerializeField] private AudioClip _deathSFX;
[SerializeField] private AudioSource _audioSource;
private int _currentHealth;
private State _currentState = State.Perching;
private float _lastDiveTime;
private float _lastFeatherTime;
private bool isEnraged => (float)_currentHealth / _maxHealth <= _enrageThreshold;
private bool _isSweeping;
private Vector3 _spawnPosition;
private enum State
{
Perching,
Diving,
Returning,
Sweeping
}
private void Start()
{
_currentHealth = _maxHealth;
_spawnPosition = transform.position;
if (!_player) _player = GameObject.FindWithTag("Player").transform;
}
private void Update()
{
if (!_player) return;
if (_currentState is State.Perching or State.Returning)
{
LookAtPlayer();
}
if (_currentState != State.Perching) return;
if (isEnraged && !_isSweeping && Random.value < 0.03f)
{
SweepAttack().Forget();
return;
}
if (Time.time - _lastDiveTime > _diveCooldown && CanDive())
{
DiveAttack().Forget();
}
else if (Time.time - _lastFeatherTime > (isEnraged ? _enragedFeatherCooldown : _featherCooldown))
{
FeatherAttack();
}
}
private void LookAtPlayer()
{
if (!_player) return;
var direction = _player.position.x - transform.position.x;
transform.localScale = new Vector3(
direction >= 0 ? Mathf.Abs(transform.localScale.x) : -Mathf.Abs(transform.localScale.x),
transform.localScale.y,
transform.localScale.z
);
}
private bool CanDive() =>
_player &&
Vector2.Distance(transform.position, _player.position) > 3f &&
Mathf.Abs(transform.position.y - _player.position.y) < 8f;
private async UniTaskVoid DiveAttack()
{
_currentState = State.Diving;
if (_diveSFX && _audioSource)
_audioSource.PlayOneShot(_diveSFX);
var startPos = transform.position;
var flyUpPos = new Vector3(startPos.x, startPos.y + _flyUpHeight, startPos.z);
while (Vector3.Distance(transform.position, flyUpPos) > 0.1f)
{
transform.position = Vector3.MoveTowards(transform.position, flyUpPos, _flyUpSpeed * Time.deltaTime);
await UniTask.Yield();
}
await UniTask.Delay(TimeSpan.FromSeconds(1.2f));
if (_player)
{
var diveTarget = new Vector3(_player.position.x, startPos.y, startPos.z);
while (Vector3.Distance(transform.position, diveTarget) > 0.1f)
{
transform.position = Vector3.MoveTowards(transform.position, diveTarget, _diveSpeed * Time.deltaTime);
await UniTask.Yield();
}
if (Vector2.Distance(transform.position, _player.position) < 1.8f)
{
_player.GetComponent<PlayerHealth>()?.TakeDamage();
}
}
_currentState = State.Returning;
ReturnToPosition(_spawnPosition);
_lastDiveTime = Time.time;
_currentState = State.Perching;
}
private void FeatherAttack()
{
_lastFeatherTime = Time.time;
if (!_featherPrefab || !_player) return;
if (_featherSFX && _audioSource)
_audioSource.PlayOneShot(_featherSFX);
var facingRight = transform.localScale.x > 0;
var angles = facingRight
? new[] { 20f, 0f, -20f }
: new[] { 160f, 180f, 200f };
foreach (var angle in angles)
{
var feather = Instantiate(_featherPrefab, transform.position, Quaternion.identity);
var featherScript = feather.GetComponent<FeatherProjectile>();
if (featherScript)
{
featherScript.Launch(angle);
}
}
}
private async UniTaskVoid SweepAttack()
{
if (!_player) return;
_isSweeping = true;
_currentState = State.Sweeping;
if (_sweepSFX && _audioSource)
_audioSource.PlayOneShot(_sweepSFX);
var sweepY = _player.position.y + _sweepYOffset;
var leftBound = new Vector3(_player.position.x - _sweepRange, sweepY, transform.position.z);
var rightBound = new Vector3(_player.position.x + _sweepRange, sweepY, transform.position.z);
for (var i = 0; i < _sweepPasses; i++)
{
while (transform.position.x < rightBound.x)
{
transform.position += Vector3.right * (_sweepSpeed * Time.deltaTime);
LookAtDirection(true);
CheckPlayerCollision();
await UniTask.Yield();
}
while (transform.position.x > leftBound.x)
{
transform.position += Vector3.left * (_sweepSpeed * Time.deltaTime);
LookAtDirection(false);
CheckPlayerCollision();
await UniTask.Yield();
}
}
_isSweeping = false;
_currentState = State.Returning;
ReturnToPosition(_spawnPosition);
_currentState = State.Perching;
}
private void LookAtDirection(bool right)
{
transform.localScale = new Vector3(
right ? Mathf.Abs(transform.localScale.x) : -Mathf.Abs(transform.localScale.x),
transform.localScale.y,
transform.localScale.z
);
}
private void ReturnToPosition(Vector3 target)
{
transform.position = Vector3.MoveTowards(transform.position, target, 10f * Time.deltaTime);
}
private void CheckPlayerCollision()
{
if (_player && Vector2.Distance(transform.position, _player.position) < 1.8f)
{
_player.GetComponent<PlayerHealth>()?.TakeDamage();
}
}
public void TakeDamage()
{
_currentHealth -= _damagePerHit;
if (_hitSFX && _audioSource)
_audioSource.PlayOneShot(_hitSFX);
BlinkHit();
if (_currentHealth <= 0)
{
Die();
}
}
private void BlinkHit()
{
if (!_spriteRenderer) return;
var originalColor = _spriteRenderer.color;
var hitColor = new Color(1f, 0.3f, 0.3f, originalColor.a);
DOTween.Sequence()
.Append(_spriteRenderer.DOColor(hitColor, 0.1f))
.Append(_spriteRenderer.DOColor(originalColor, 0.1f))
.Append(_spriteRenderer.DOColor(hitColor, 0.1f))
.Append(_spriteRenderer.DOColor(originalColor, 0.1f))
.SetLink(gameObject);
}
private void Die()
{
if (_deathSFX && _audioSource)
_audioSource.PlayOneShot(_deathSFX);
enabled = false;
if (_spriteRenderer)
{
_spriteRenderer.DOFade(0f, 2f)
.OnComplete(() =>
{
var gameplayController = FindFirstObjectByType<GameplayControllerSecond>();
gameplayController?.OnBossDefeated();
Destroy(gameObject);
})
.SetLink(gameObject);
}
else
{
var gameplayController = FindFirstObjectByType<GameplayControllerSecond>();
gameplayController?.OnBossDefeated();
Destroy(gameObject);
}
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: 1f7e2017ad2d4e8a9dfcb2a92ae14eec
timeCreated: 1770453614
@@ -0,0 +1,41 @@
using Code.Gameplay.Player;
using UnityEngine;
namespace Code.Gameplay.Enemies
{
public class FeatherProjectile : MonoBehaviour
{
[SerializeField] private float _speed = 6f;
[SerializeField] private float _lifetime = 3f;
[SerializeField] private LayerMask _playerLayer;
private Vector2 _direction;
private float _timer;
public void Launch(float angle)
{
var rad = angle * Mathf.Deg2Rad;
_direction = new Vector2(Mathf.Cos(rad), Mathf.Sin(rad));
transform.rotation = Quaternion.Euler(0, 0, angle);
}
private void Update()
{
transform.Translate(_direction * (_speed * Time.deltaTime), Space.World);
var hit = Physics2D.OverlapCircle(transform.position, 0.4f, _playerLayer);
if (hit && hit.CompareTag("Player"))
{
hit.GetComponent<PlayerHealth>()?.TakeDamage();
Destroy(gameObject);
}
_timer += Time.deltaTime;
if (_timer > _lifetime)
{
Destroy(gameObject);
}
}
}
}
@@ -0,0 +1,3 @@
fileFormatVersion: 2
guid: dcf6d88618b142b6b38c021a1b66054d
timeCreated: 1770454095
+3 -2
View File
@@ -7,7 +7,6 @@ using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using DG.Tweening;
using Unity.VisualScripting;
namespace Code.UI
{
@@ -45,7 +44,9 @@ namespace Code.UI
deathScreen.rectTransform.DOScale(1f, 0.3f)
.SetEase(Ease.OutBack);
deathText.color = deathText.color.WithAlpha(0f);
var color = deathText.color;
color.a = 0;
deathText.color = color;
deathText.DOFade(1f, 0.6f)
.OnComplete(() =>
{
+40 -8
View File
@@ -7,15 +7,17 @@ using UnityEngine;
using UnityEngine.SceneManagement;
using UnityEngine.UI;
using DG.Tweening;
using Unity.VisualScripting;
namespace Code.UI
{
public class GameplayControllerSecond : MonoBehaviour
{
[SerializeField] private Image deathScreen;
[SerializeField] private Image winScreen;
[SerializeField] private TMP_Text deathText;
[SerializeField] private TMP_Text winText;
[SerializeField] private Button exitButton;
[SerializeField] private Button returnButton;
[SerializeField] private PlayerHealth playerHealth;
[SerializeField] private AudioSource audioSource;
[SerializeField] private BoxCollider2D blockBorder;
@@ -29,9 +31,11 @@ namespace Code.UI
FindFirstObjectByType<PlayerMovement>().Construct(_inputService);
exitButton.onClick.AddListener(OnExitButtonPressed);
returnButton.onClick.AddListener(OnReturnButtonPressed);
playerHealth.OnDied += HandleDeath;
deathScreen.gameObject.SetActive(false);
winScreen.gameObject.SetActive(false);
}
private void HandleDeath()
@@ -45,7 +49,9 @@ namespace Code.UI
deathScreen.rectTransform.DOScale(1f, 0.3f)
.SetEase(Ease.OutBack);
deathText.color = deathText.color.WithAlpha(0f);
var color = deathText.color;
color.a = 0;
deathText.color = color;
deathText.DOFade(1f, 0.6f)
.OnComplete(() =>
{
@@ -54,6 +60,29 @@ namespace Code.UI
.SetEase(Ease.InOutSine);
});
}
public void OnBossDefeated()
{
var clip = Resources.Load<AudioClip>("Audio/SFX/WinSFX");
audioSource.PlayOneShot(clip);
_inputService.DisableMap(ActionMapping.Gameplay);
winScreen.gameObject.SetActive(true);
winScreen.rectTransform.localScale = Vector3.zero;
winScreen.rectTransform.DOScale(1f, 0.3f)
.SetEase(Ease.OutBack);
var color = winText.color;
color.a = 0;
winText.color = color;
winText.DOFade(1f, 0.6f)
.OnComplete(() =>
{
deathText.DOFade(0.8f, 0.5f)
.SetLoops(-1, LoopType.Yoyo)
.SetEase(Ease.InOutSine);
});
}
private void OnExitButtonPressed()
{
@@ -61,15 +90,18 @@ namespace Code.UI
DOTween.Kill(deathText);
exitButton.onClick.RemoveAllListeners();
returnButton.onClick.RemoveAllListeners();
SceneManager.LoadScene("MainMenu");
}
private void Update()
private void OnReturnButtonPressed()
{
if (!FindAnyObjectByType<BasicEnemy>())
{
blockBorder.gameObject.SetActive(false);
}
DOTween.Kill(winScreen.rectTransform);
DOTween.Kill(winText);
exitButton.onClick.RemoveAllListeners();
returnButton.onClick.RemoveAllListeners();
SceneManager.LoadScene("MainMenu");
}
}
}
+1 -1
View File
@@ -121,7 +121,7 @@ namespace Code.UI
parallaxRoot.localPosition = _currentParallaxOffset;
}
private void OnStartGameClicked() => FadeOutAndLoad("Gameplay2");
private void OnStartGameClicked() => FadeOutAndLoad("Gameplay1");
private void OnExitButtonClicked() => FadeOutAndQuit();
@@ -8,4 +8,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/DOTween.XML
uploadId: 831234
uploadId: 858678
Binary file not shown.
@@ -26,4 +26,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/DOTween.dll
uploadId: 831234
uploadId: 858678
@@ -131,6 +131,27 @@
Not used as menu item anymore, but as a utility function
</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.RefreshDOTweenSettings(DG.Tweening.Core.DOTweenSettings)">
<summary>Sets the modules bool values to the current defines state</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.RefreshAll">
<summary>Refreshes the enabled state of all defines</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.ApplyGUIEnabledToAll">
<summary>Applies the guiEnabled value state to each define, adding or removing them based on that</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.RemoveAll">
<summary>Removes all DOTween defines including the ones for external assets</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.RemoveAllLegacy">
<summary>Removes all legacy defines</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.Def.Remove">
<summary>Removes the define if present</summary>
</member>
<member name="M:DG.DOTweenEditor.DOTweenDefines.Def.Add">
<summary>Adds the define if it's not already present</summary>
</member>
<member name="F:DG.DOTweenEditor.UnityEditorVersion.Version">
<summary>Full major version + first minor version (ex: 2018.1f)</summary>
</member>
@@ -8,4 +8,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/DOTweenEditor.XML
uploadId: 831234
uploadId: 858678
@@ -26,4 +26,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/DOTweenEditor.dll
uploadId: 831234
uploadId: 858678
@@ -8,4 +8,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/DOTweenUpgradeManager.XML
uploadId: 831234
uploadId: 858678
@@ -51,4 +51,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/Imgs/DOTweenIcon.png
uploadId: 831234
uploadId: 858678
@@ -72,4 +72,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/Imgs/DOTweenMiniIcon.png
uploadId: 831234
uploadId: 858678
@@ -51,4 +51,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/Imgs/Footer.png
uploadId: 831234
uploadId: 858678
@@ -51,4 +51,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/Imgs/Footer_dark.png
uploadId: 831234
uploadId: 858678
@@ -51,4 +51,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Editor/Imgs/Header.jpg
uploadId: 831234
uploadId: 858678
@@ -1,7 +1,7 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
#if true // MODULE_MARKER
#if !DOTWEEN_NOAUDIO // MODULE_MARKER
using System;
using DG.Tweening.Core;
using DG.Tweening.Plugins.Options;
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleAudio.cs
uploadId: 831234
uploadId: 858678
@@ -1,6 +1,6 @@
using UnityEngine;
#if false || EPO_DOTWEEN // MODULE_MARKER
#if DOTWEEN_EPO || EPO_DOTWEEN // MODULE_MARKER
using EPOOutline;
using DG.Tweening.Plugins.Options;
@@ -16,4 +16,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleEPOOutline.cs
uploadId: 831234
uploadId: 858678
@@ -1,7 +1,7 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
#if false // MODULE_MARKER
#if !DOTWEEN_NOPHYSICS // MODULE_MARKER
using System;
using DG.Tweening.Core;
using DG.Tweening.Core.Enums;
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics.cs
uploadId: 831234
uploadId: 858678
@@ -1,7 +1,7 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
#if false // MODULE_MARKER
#if !DOTWEEN_NOPHYSICS2D // MODULE_MARKER
using System;
using DG.Tweening.Core;
using DG.Tweening.Plugins;
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModulePhysics2D.cs
uploadId: 831234
uploadId: 858678
@@ -1,7 +1,7 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
#if true // MODULE_MARKER
#if !DOTWEEN_NOSPRITES // MODULE_MARKER
using System;
using UnityEngine;
using DG.Tweening.Core;
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleSprite.cs
uploadId: 831234
uploadId: 858678
@@ -1,7 +1,7 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
#if true // MODULE_MARKER
#if !DOTWEEN_NOUI // MODULE_MARKER
using System;
using System.Globalization;
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUI.cs
uploadId: 831234
uploadId: 858678
@@ -0,0 +1,113 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2026/01/08
#if DOTWEEN_UITOOLKIT && UNITY_2021_3_OR_NEWER // MODULE_MARKER
using UnityEngine;
using UnityEngine.UIElements;
using DG.Tweening.Core;
using DG.Tweening.Plugins.Options;
#pragma warning disable 1591
namespace DG.Tweening
{
public static class DOTweenModuleUIToolkit
{
#region Shortcuts
#region VisualElement
/// <summary>Tweens a VisualElement's position (via style.translate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMove(this VisualElement target, Vector3 endValue, float duration, bool snapping = false)
{
TweenerCore<Vector3, Vector3, VectorOptions> t
= DOTween.To(() => target.resolvedStyle.translate, x => target.style.translate = new Translate(x.x, x.y, x.z), endValue, duration);
t.SetOptions(snapping).SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's position (via style.translate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
public static TweenerCore<Vector2, Vector2, VectorOptions> DOMove(this VisualElement target, Vector2 endValue, float duration, bool snapping = false)
{
TweenerCore<Vector2, Vector2, VectorOptions> t
= DOTween.To(() => (Vector2)target.resolvedStyle.translate, x => target.style.translate = x, endValue, duration);
t.SetOptions(snapping).SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's X position (via style.translate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveX(this VisualElement target, float endValue, float duration, bool snapping = false)
{
TweenerCore<Vector3, Vector3, VectorOptions> t
= DOTween.To(() => target.resolvedStyle.translate, x => target.style.translate = new Translate(x.x, x.y, x.z), new Vector3(endValue, 0, 0), duration);
t.SetOptions(AxisConstraint.X, snapping).SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's Y position (via style.translate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveY(this VisualElement target, float endValue, float duration, bool snapping = false)
{
TweenerCore<Vector3, Vector3, VectorOptions> t
= DOTween.To(() => target.resolvedStyle.translate, x => target.style.translate = new Translate(x.x, x.y, x.z), new Vector3(0, endValue, 0), duration);
t.SetOptions(AxisConstraint.Y, snapping).SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's Z position (via style.translate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
/// <param name="snapping">If TRUE the tween will smoothly snap all values to integers</param>
public static TweenerCore<Vector3, Vector3, VectorOptions> DOMoveZ(this VisualElement target, float endValue, float duration, bool snapping = false)
{
TweenerCore<Vector3, Vector3, VectorOptions> t
= DOTween.To(() => target.resolvedStyle.translate, x => target.style.translate = new Translate(x.x, x.y, x.z), new Vector3(0, 0, endValue), duration);
t.SetOptions(AxisConstraint.Z, snapping).SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's scale (via style.scale) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
public static TweenerCore<Vector2, Vector2, VectorOptions> DOScale(this VisualElement target, Vector2 endValue, float duration)
{
TweenerCore<Vector2, Vector2, VectorOptions> t
= DOTween.To(() => (Vector2)target.resolvedStyle.scale.value, x => target.style.scale = new Scale(x), endValue, duration);
t.SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's scale (via style.scale) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
public static TweenerCore<Vector2, Vector2, VectorOptions> DOScale(this VisualElement target, float endValue, float duration)
{
TweenerCore<Vector2, Vector2, VectorOptions> t
= DOTween.To(() => (Vector2)target.resolvedStyle.scale.value, x => target.style.scale = new Scale(x), new Vector2(endValue, endValue), duration);
t.SetTarget(target);
return t;
}
/// <summary>Tweens a VisualElement's rotation (via style.rotate) to the given value.
/// Also stores the VisualElement as the tween's target so it can be used for filtered operations</summary>
/// <param name="endValue">The end value to reach</param><param name="duration">The duration of the tween</param>
public static TweenerCore<float, float, FloatOptions> DORotate(this VisualElement target, float endValue, float duration)
{
TweenerCore<float, float, FloatOptions> t
= DOTween.To(() => target.resolvedStyle.rotate.angle.value, x => target.style.rotate = new Rotate(x), endValue, duration);
t.SetTarget(target);
return t;
}
#endregion
#endregion
}
}
#endif
@@ -0,0 +1,18 @@
fileFormatVersion: 2
guid: 0c0a6d2683fb84e4193f2aa968264881
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
AssetOrigin:
serializedVersion: 1
productId: 27676
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUIToolkit.cs
uploadId: 858678
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUnityVersion.cs
uploadId: 831234
uploadId: 858678
@@ -1,4 +1,4 @@
// Author: Daniele Giardini - http://www.demigiant.com
// Author: Daniele Giardini - http://www.demigiant.com
// Created: 2018/07/13
using System;
@@ -12,7 +12,7 @@ using DG.Tweening.Plugins.Options;
namespace DG.Tweening
{
/// <summary>
/// Utility functions that deal with available Modules.
/// Utility functions that deal with available Modules and rewrite them.
/// Modules defines:
/// - DOTAUDIO
/// - DOTPHYSICS
@@ -87,7 +87,7 @@ namespace DG.Tweening
// Called via DOTweenExternalCommand callback
public static void SetOrientationOnPath(PathOptions options, Tween t, Quaternion newRot, Transform trans)
{
#if false // PHYSICS_MARKER
#if !DOTWEEN_NOPHYSICS // PHYSICS_MARKER
if (options.isRigidbody) ((Rigidbody)t.target).rotation = newRot;
else trans.rotation = newRot;
#else
@@ -98,7 +98,7 @@ namespace DG.Tweening
// Returns FALSE if the DOTween's Physics2D Module is disabled, or if there's no Rigidbody2D attached
public static bool HasRigidbody2D(Component target)
{
#if false // PHYSICS2D_MARKER
#if !DOTWEEN_NOPHYSICS2D // PHYSICS2D_MARKER
return target.GetComponent<Rigidbody2D>() != null;
#else
return false;
@@ -115,7 +115,7 @@ namespace DG.Tweening
#endif
public static bool HasRigidbody(Component target)
{
#if false // PHYSICS_MARKER
#if !DOTWEEN_NOPHYSICS // PHYSICS_MARKER
return target.GetComponent<Rigidbody>() != null;
#else
return false;
@@ -131,7 +131,7 @@ namespace DG.Tweening
){
TweenerCore<Vector3, Path, PathOptions> t = null;
bool rBodyFoundAndTweened = false;
#if false // PHYSICS_MARKER
#if !DOTWEEN_NOPHYSICS // PHYSICS_MARKER
if (tweenRigidbody) {
Rigidbody rBody = target.GetComponent<Rigidbody>();
if (rBody != null) {
@@ -142,7 +142,7 @@ namespace DG.Tweening
}
}
#endif
#if false // PHYSICS2D_MARKER
#if !DOTWEEN_NOPHYSICS2D // PHYSICS2D_MARKER
if (!rBodyFoundAndTweened && tweenRigidbody) {
Rigidbody2D rBody2D = target.GetComponent<Rigidbody2D>();
if (rBody2D != null) {
@@ -12,4 +12,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/Modules/DOTweenModuleUtils.cs
uploadId: 831234
uploadId: 858678
@@ -8,4 +8,4 @@ AssetOrigin:
packageName: DOTween (HOTween v2)
packageVersion: 1.2.790
assetPath: Assets/Plugins/Demigiant/DOTween/readme.txt
uploadId: 831234
uploadId: 858678
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 87098722c28d2aeaa961046530f4c78d
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: d8f8b2d8f62b971bf94926f33d168558
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 211ced45c2be848269243a3084de3b54
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: db267c7e2e4e9b88194b31196d2d01b4
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 42ff16e3c732ab687b10810d0a8462ae
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: f121f8bd1db697c8094de7c977ce5c44
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
Binary file not shown.
@@ -0,0 +1,23 @@
fileFormatVersion: 2
guid: 61e843ef7440be8f08b6d81290cbf6b6
AudioImporter:
externalObjects: {}
serializedVersion: 8
defaultSettings:
serializedVersion: 2
loadType: 0
sampleRateSetting: 0
sampleRateOverride: 44100
compressionFormat: 1
quality: 1
conversionMode: 0
preloadAudioData: 0
platformSettingOverrides: {}
forceToMono: 0
normalize: 1
loadInBackground: 0
ambisonic: 0
3D: 1
userData:
assetBundleName:
assetBundleVariant:
+1
View File
@@ -44,6 +44,7 @@ MonoBehaviour:
physics2DEnabled: 0
spriteEnabled: 1
uiEnabled: 1
uiToolkitEnabled: 0
textMeshProEnabled: 0
tk2DEnabled: 0
deAudioEnabled: 0
+8
View File
@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: feee26ca57b9699ae861428d6c591b39
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+296
View File
@@ -0,0 +1,296 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &4330776298416977529
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 254785257286598391}
- component: {fileID: 2230461001287445807}
- component: {fileID: 6427988031343748505}
- component: {fileID: 251082247796596844}
- component: {fileID: 2517875536159763359}
- component: {fileID: 6539897934721054833}
m_Layer: 6
m_Name: Boss
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &254785257286598391
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 150, y: -3, z: 0}
m_LocalScale: {x: 1.5, y: 1.5, z: 1.5}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &2230461001287445807
SpriteRenderer:
serializedVersion: 2
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_Sprite: {fileID: 8728508913616413636, guid: 2366eae9f40af86419045ff062bfad24, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 1, y: 1}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!114 &6427988031343748505
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 1f7e2017ad2d4e8a9dfcb2a92ae14eec, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Gameplay.Enemies.Boss
_maxHealth: 200
_damagePerHit: 10
_enrageThreshold: 0.5
_flyUpHeight: 10
_flyUpSpeed: 8
_diveSpeed: 18
_diveCooldown: 4
_featherCooldown: 3
_enragedFeatherCooldown: 1.5
_sweepSpeed: 20
_sweepYOffset: -1
_sweepPasses: 1
_sweepRange: 20
_player: {fileID: 0}
_featherPrefab: {fileID: 7014297862649152320, guid: 830417babb7e8e725a0e311c55caf25c, type: 3}
_spriteRenderer: {fileID: 2230461001287445807}
_diveSFX: {fileID: 8300000, guid: 87098722c28d2aeaa961046530f4c78d, type: 3}
_featherSFX: {fileID: 8300000, guid: 42ff16e3c732ab687b10810d0a8462ae, type: 3}
_sweepSFX: {fileID: 8300000, guid: f121f8bd1db697c8094de7c977ce5c44, type: 3}
_hitSFX: {fileID: 8300000, guid: 211ced45c2be848269243a3084de3b54, type: 3}
_deathSFX: {fileID: 8300000, guid: d8f8b2d8f62b971bf94926f33d168558, type: 3}
_audioSource: {fileID: 6539897934721054833}
--- !u!95 &251082247796596844
Animator:
serializedVersion: 7
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
m_Enabled: 1
m_Avatar: {fileID: 0}
m_Controller: {fileID: 9100000, guid: 42b94a88c762051428e01eecd08ec642, type: 2}
m_CullingMode: 0
m_UpdateMode: 0
m_ApplyRootMotion: 0
m_LinearVelocityBlending: 0
m_StabilizeFeet: 0
m_AnimatePhysics: 0
m_WarningMessage:
m_HasTransformHierarchy: 1
m_AllowConstantClipSamplingOptimization: 1
m_KeepAnimatorStateOnDisable: 0
m_WriteDefaultValuesOnDisable: 0
--- !u!61 &2517875536159763359
BoxCollider2D:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
m_Enabled: 1
serializedVersion: 3
m_Density: 1
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_LayerOverridePriority: 0
m_ForceSendLayers:
serializedVersion: 2
m_Bits: 4294967295
m_ForceReceiveLayers:
serializedVersion: 2
m_Bits: 4294967295
m_ContactCaptureLayers:
serializedVersion: 2
m_Bits: 4294967295
m_CallbackLayers:
serializedVersion: 2
m_Bits: 4294967295
m_IsTrigger: 1
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
m_Offset: {x: -0.2333796, y: -0.100019276}
m_SpriteTilingProperty:
border: {x: 0, y: 0, z: 0, w: 0}
pivot: {x: 0.5, y: 0.5}
oldSize: {x: 8, y: 6.26}
newSize: {x: 1, y: 1}
adaptiveTilingThreshold: 0.5
drawMode: 0
adaptiveTiling: 0
m_AutoTiling: 0
m_Size: {x: 4.5993323, y: 3.7928486}
m_EdgeRadius: 0
--- !u!82 &6539897934721054833
AudioSource:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4330776298416977529}
m_Enabled: 1
serializedVersion: 4
OutputAudioMixerGroup: {fileID: 0}
m_audioClip: {fileID: 0}
m_Resource: {fileID: 8300000, guid: db267c7e2e4e9b88194b31196d2d01b4, type: 3}
m_PlayOnAwake: 1
m_Volume: 1
m_Pitch: 1
Loop: 1
Mute: 0
Spatialize: 0
SpatializePostEffects: 0
Priority: 128
DopplerLevel: 1
MinDistance: 1
MaxDistance: 15
Pan2D: 0
rolloffMode: 0
BypassEffects: 0
BypassListenerEffects: 0
BypassReverbZones: 0
rolloffCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
- serializedVersion: 3
time: 1
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
panLevelCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
spreadCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 0
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
reverbZoneMixCustomCurve:
serializedVersion: 2
m_Curve:
- serializedVersion: 3
time: 0
value: 1
inSlope: 0
outSlope: 0
tangentMode: 0
weightedMode: 0
inWeight: 0.33333334
outWeight: 0.33333334
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8a4a325fa93f916ffb1cb6913a0e96ef
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+111
View File
@@ -0,0 +1,111 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &7014297862649152320
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3303967580285926004}
- component: {fileID: 793839130799877208}
- component: {fileID: 3061542466145346617}
m_Layer: 0
m_Name: Feather
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3303967580285926004
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7014297862649152320}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0.4, y: 0.4, z: 0.4}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &793839130799877208
SpriteRenderer:
serializedVersion: 2
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7014297862649152320}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RayTracingAccelStructBuildFlagsOverride: 0
m_RayTracingAccelStructBuildFlags: 1
m_SmallMeshCulling: 1
m_ForceMeshLod: -1
m_MeshLodSelectionBias: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: a97c105638bdf8b4a8650670310a4cd3, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_GlobalIlluminationMeshLod: 0
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_MaskInteraction: 0
m_Sprite: {fileID: 170912805055401693, guid: 1f28ee95efe57e26bbc6a16626e9d2da, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 1, y: 1}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!114 &3061542466145346617
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 7014297862649152320}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: dcf6d88618b142b6b38c021a1b66054d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Gameplay.Enemies.FeatherProjectile
_speed: 20
_lifetime: 5
_playerLayer:
serializedVersion: 2
m_Bits: 1
@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 830417babb7e8e725a0e311c55caf25c
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
+527 -38
View File
@@ -494,8 +494,9 @@ GameObject:
m_Component:
- component: {fileID: 96529930}
- component: {fileID: 96529931}
m_Layer: 0
m_Name: EndBorder
- component: {fileID: 96529932}
m_Layer: 3
m_Name: BossTriggerBorder
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
@@ -510,7 +511,7 @@ Transform:
m_GameObject: {fileID: 96529929}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 203, y: 7, z: 0}
m_LocalPosition: {x: 115, y: 7, z: 0}
m_LocalScale: {x: 1, y: 40, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
@@ -546,7 +547,7 @@ BoxCollider2D:
m_CallbackLayers:
serializedVersion: 2
m_Bits: 4294967295
m_IsTrigger: 0
m_IsTrigger: 1
m_UsedByEffector: 0
m_CompositeOperation: 0
m_CompositeOrder: 0
@@ -562,6 +563,18 @@ BoxCollider2D:
m_AutoTiling: 0
m_Size: {x: 1, y: 1}
m_EdgeRadius: 0
--- !u!114 &96529932
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 96529929}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 91d34fb33bdc44ddb5146b689aafa67f, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Gameplay.BossTrigger
--- !u!1 &99074354
GameObject:
m_ObjectHideFlags: 0
@@ -1330,12 +1343,15 @@ MonoBehaviour:
m_GameObject: {fileID: 287467137}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 6eba792e8ea4481b8819feb8542a117c, type: 3}
m_Script: {fileID: 11500000, guid: 383ec75bd05d4b5fae1493d1d7265015, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.UI.GameplayController
m_EditorClassIdentifier: Assembly-CSharp::Code.UI.GameplayControllerSecond
deathScreen: {fileID: 1706632823}
winScreen: {fileID: 1003181303}
deathText: {fileID: 417979273}
winText: {fileID: 369811480}
exitButton: {fileID: 254654570}
returnButton: {fileID: 937406823}
playerHealth: {fileID: 1616841237}
audioSource: {fileID: 519420034}
blockBorder: {fileID: 302015869}
@@ -1749,6 +1765,143 @@ SpriteRenderer:
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!1 &369811478
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 369811479}
- component: {fileID: 369811481}
- component: {fileID: 369811480}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &369811479
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 369811478}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 1003181302}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: 0, y: 100}
m_SizeDelta: {x: 0, y: 400}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &369811480
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 369811478}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: YOU WIN!
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 40f6dc8bcf4b6f11a999aa4b0b41d5c0, type: 2}
m_sharedMaterial: {fileID: -4378138787272434441, guid: 40f6dc8bcf4b6f11a999aa4b0b41d5c0, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 250
m_fontSizeBase: 250
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &369811481
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 369811478}
m_CullTransparentMesh: 1
--- !u!1 &417979271
GameObject:
m_ObjectHideFlags: 0
@@ -2480,6 +2633,143 @@ SpriteRenderer:
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!1 &605260517
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 605260518}
- component: {fileID: 605260520}
- component: {fileID: 605260519}
m_Layer: 5
m_Name: Text (TMP)
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &605260518
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 605260517}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 937406822}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: -12.5}
m_SizeDelta: {x: 0, y: -25}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &605260519
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 605260517}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3}
m_Name:
m_EditorClassIdentifier: Unity.TextMeshPro::TMPro.TextMeshProUGUI
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Back to menu
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 40f6dc8bcf4b6f11a999aa4b0b41d5c0, type: 2}
m_sharedMaterial: {fileID: -4378138787272434441, guid: 40f6dc8bcf4b6f11a999aa4b0b41d5c0, type: 2}
m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0}
m_fontMaterials: []
m_fontColor32:
serializedVersion: 2
rgba: 4294967295
m_fontColor: {r: 1, g: 1, b: 1, a: 1}
m_enableVertexGradient: 0
m_colorMode: 3
m_fontColorGradient:
topLeft: {r: 1, g: 1, b: 1, a: 1}
topRight: {r: 1, g: 1, b: 1, a: 1}
bottomLeft: {r: 1, g: 1, b: 1, a: 1}
bottomRight: {r: 1, g: 1, b: 1, a: 1}
m_fontColorGradientPreset: {fileID: 0}
m_spriteAsset: {fileID: 0}
m_tintAllSprites: 0
m_StyleSheet: {fileID: 0}
m_TextStyleHashCode: -1183493901
m_overrideHtmlColors: 0
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 72
m_fontSizeBase: 72
m_fontWeight: 400
m_enableAutoSizing: 0
m_fontSizeMin: 18
m_fontSizeMax: 72
m_fontStyle: 0
m_HorizontalAlignment: 2
m_VerticalAlignment: 512
m_textAlignment: 65535
m_characterSpacing: 0
m_characterHorizontalScale: 1
m_wordSpacing: 0
m_lineSpacing: 0
m_lineSpacingMax: 0
m_paragraphSpacing: 0
m_charWidthMaxAdj: 0
m_TextWrappingMode: 1
m_wordWrappingRatios: 0.4
m_overflowMode: 0
m_linkedTextComponent: {fileID: 0}
parentLinkedComponent: {fileID: 0}
m_enableKerning: 0
m_ActiveFontFeatures: 6e72656b
m_enableExtraPadding: 0
checkPaddingRequired: 0
m_isRichText: 1
m_EmojiFallbackSupport: 1
m_parseCtrlCharacters: 1
m_isOrthographic: 1
m_isCullingEnabled: 0
m_horizontalMapping: 0
m_verticalMapping: 0
m_uvLineOffset: 0
m_geometrySortingOrder: 0
m_IsTextObjectScaleStatic: 0
m_VertexBufferAutoSizeReduction: 0
m_useMaxVisibleDescender: 1
m_pageToDisplay: 1
m_margin: {x: 0, y: 0, z: 0, w: 0}
m_isUsingLegacyAnimationComponent: 0
m_isVolumetricText: 0
m_hasFontAssetChanged: 0
m_baseMaterial: {fileID: 0}
m_maskOffset: {x: 0, y: 0, z: 0, w: 0}
--- !u!222 &605260520
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 605260517}
m_CullTransparentMesh: 1
--- !u!1 &613005218
GameObject:
m_ObjectHideFlags: 0
@@ -3938,6 +4228,127 @@ BoxCollider2D:
m_AutoTiling: 0
m_Size: {x: 11.359903, y: 3.575173}
m_EdgeRadius: 0
--- !u!1 &937406821
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 937406822}
- component: {fileID: 937406825}
- component: {fileID: 937406824}
- component: {fileID: 937406823}
m_Layer: 5
m_Name: BackButton
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &937406822
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 937406821}
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 605260518}
m_Father: {fileID: 1003181302}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0.5}
m_AnchorMax: {x: 1, y: 0.5}
m_AnchoredPosition: {x: 0, y: -300}
m_SizeDelta: {x: -1200, y: 200}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &937406823
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 937406821}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Button
m_Navigation:
m_Mode: 3
m_WrapAround: 0
m_SelectOnUp: {fileID: 0}
m_SelectOnDown: {fileID: 0}
m_SelectOnLeft: {fileID: 0}
m_SelectOnRight: {fileID: 0}
m_Transition: 1
m_Colors:
m_NormalColor: {r: 1, g: 1, b: 1, a: 1}
m_HighlightedColor: {r: 1, g: 1, b: 1, a: 1}
m_PressedColor: {r: 1, g: 1, b: 1, a: 1}
m_SelectedColor: {r: 0.9607843, g: 0.9607843, b: 0.9607843, a: 1}
m_DisabledColor: {r: 0.78431374, g: 0.78431374, b: 0.78431374, a: 0.5019608}
m_ColorMultiplier: 1
m_FadeDuration: 0.1
m_SpriteState:
m_HighlightedSprite: {fileID: 0}
m_PressedSprite: {fileID: 0}
m_SelectedSprite: {fileID: 0}
m_DisabledSprite: {fileID: 0}
m_AnimationTriggers:
m_NormalTrigger: Normal
m_HighlightedTrigger: Highlighted
m_PressedTrigger: Pressed
m_SelectedTrigger: Selected
m_DisabledTrigger: Disabled
m_Interactable: 1
m_TargetGraphic: {fileID: 937406824}
m_OnClick:
m_PersistentCalls:
m_Calls: []
--- !u!114 &937406824
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 937406821}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 7664807735657788756, guid: 62b290fc3754dfa539a4bc348075df02, type: 3}
m_Type: 1
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 3
--- !u!222 &937406825
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 937406821}
m_CullTransparentMesh: 1
--- !u!1 &942914040
GameObject:
m_ObjectHideFlags: 0
@@ -4211,6 +4622,83 @@ SpriteRenderer:
m_SpriteTileMode: 0
m_WasSpriteAssigned: 1
m_SpriteSortPoint: 0
--- !u!1 &1003181301
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 1003181302}
- component: {fileID: 1003181304}
- component: {fileID: 1003181303}
m_Layer: 5
m_Name: Wonscreen
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!224 &1003181302
RectTransform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1003181301}
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 369811479}
- {fileID: 937406822}
m_Father: {fileID: 1163535557}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
m_AnchorMax: {x: 1, y: 1}
m_AnchoredPosition: {x: 0, y: 0}
m_SizeDelta: {x: 0, y: 0}
m_Pivot: {x: 0.5, y: 0.5}
--- !u!114 &1003181303
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1003181301}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3}
m_Name:
m_EditorClassIdentifier: UnityEngine.UI::UnityEngine.UI.Image
m_Material: {fileID: 0}
m_Color: {r: 0, g: 0, b: 0, a: 0.627451}
m_RaycastTarget: 1
m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0}
m_Maskable: 1
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_Sprite: {fileID: 0}
m_Type: 0
m_PreserveAspect: 0
m_FillCenter: 1
m_FillMethod: 4
m_FillAmount: 1
m_FillClockwise: 1
m_FillOrigin: 0
m_UseSpriteMesh: 0
m_PixelsPerUnitMultiplier: 1
--- !u!222 &1003181304
CanvasRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1003181301}
m_CullTransparentMesh: 1
--- !u!1 &1010519422
GameObject:
m_ObjectHideFlags: 0
@@ -5118,6 +5606,7 @@ RectTransform:
- {fileID: 186387337}
- {fileID: 1475998709}
- {fileID: 1706632822}
- {fileID: 1003181302}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
m_AnchorMin: {x: 0, y: 0}
@@ -6945,13 +7434,13 @@ GameObject:
- component: {fileID: 1616841232}
- component: {fileID: 1616841231}
- component: {fileID: 1616841235}
- component: {fileID: 1616841233}
- component: {fileID: 1616841234}
- component: {fileID: 1616841236}
- component: {fileID: 1616841237}
- component: {fileID: 1616841238}
- component: {fileID: 1616841239}
- component: {fileID: 1616841240}
- component: {fileID: 1616841241}
m_Layer: 0
m_Name: Player
m_TagString: Player
@@ -7027,40 +7516,13 @@ Transform:
m_GameObject: {fileID: 1616841230}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: -15.9, y: 4, z: 0}
m_LocalPosition: {x: -16, y: 4, z: 0}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
- {fileID: 641789617}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!50 &1616841233
Rigidbody2D:
serializedVersion: 5
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1616841230}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 100
m_LinearDamping: 0
m_AngularDamping: 0.05
m_GravityScale: 5
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_Interpolate: 0
m_SleepingMode: 0
m_CollisionDetection: 1
m_Constraints: 4
--- !u!114 &1616841234
MonoBehaviour:
m_ObjectHideFlags: 0
@@ -7073,7 +7535,7 @@ MonoBehaviour:
m_Script: {fileID: 11500000, guid: 0c9ba2abef40495ca9fdfbe42f74330d, type: 3}
m_Name:
m_EditorClassIdentifier: Assembly-CSharp::Code.Gameplay.Player.PlayerMovement
_rb: {fileID: 1616841233}
_rb: {fileID: 1616841241}
_groundCheck: {fileID: 641789617}
_groundLayer:
serializedVersion: 2
@@ -7470,6 +7932,33 @@ AudioSource:
m_PreInfinity: 2
m_PostInfinity: 2
m_RotationOrder: 4
--- !u!50 &1616841241
Rigidbody2D:
serializedVersion: 5
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 1616841230}
m_BodyType: 0
m_Simulated: 1
m_UseFullKinematicContacts: 0
m_UseAutoMass: 0
m_Mass: 100
m_LinearDamping: 0
m_AngularDamping: 0.05
m_GravityScale: 5
m_Material: {fileID: 0}
m_IncludeLayers:
serializedVersion: 2
m_Bits: 0
m_ExcludeLayers:
serializedVersion: 2
m_Bits: 0
m_Interpolate: 0
m_SleepingMode: 0
m_CollisionDetection: 1
m_Constraints: 4
--- !u!1 &1635129659
GameObject:
m_ObjectHideFlags: 0
@@ -13050,7 +13539,7 @@ Transform:
m_GameObject: {fileID: 5415458882047424566}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: -0, w: 1}
m_LocalPosition: {x: 180.2, y: -7.7, z: 0}
m_LocalPosition: {x: 180.2, y: -7.7, z: 1}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children:
@@ -14285,7 +14774,7 @@ Transform:
m_GameObject: {fileID: 6678468856837076043}
serializedVersion: 2
m_LocalRotation: {x: -0, y: -0, z: 0.13630354, w: 0.99066716}
m_LocalPosition: {x: 181.82, y: -6.7417, z: -0.001436}
m_LocalPosition: {x: 181.82, y: -6.7417, z: 2}
m_LocalScale: {x: 1.2298, y: 2.3358822, z: 1.2298}
m_ConstrainProportionsScale: 0
m_Children:
Binary file not shown.
+143
View File
@@ -0,0 +1,143 @@
fileFormatVersion: 2
guid: 1f28ee95efe57e26bbc6a16626e9d2da
TextureImporter:
internalIDToNameTable:
- first:
213: 170912805055401693
second: Feather_0
externalObjects: {}
serializedVersion: 13
mipmaps:
mipMapMode: 0
enableMipMap: 0
sRGBTexture: 1
linearTexture: 0
fadeOut: 0
borderMipMap: 0
mipMapsPreserveCoverage: 0
alphaTestReferenceValue: 0.5
mipMapFadeDistanceStart: 1
mipMapFadeDistanceEnd: 3
bumpmap:
convertToNormalMap: 0
externalNormalMap: 0
heightScale: 0.25
normalMapFilter: 0
flipGreenChannel: 0
isReadable: 0
streamingMipmaps: 0
streamingMipmapsPriority: 0
vTOnly: 0
ignoreMipmapLimit: 0
grayScaleToAlpha: 0
generateCubemap: 6
cubemapConvolution: 0
seamlessCubemap: 0
textureFormat: 1
maxTextureSize: 2048
textureSettings:
serializedVersion: 2
filterMode: 1
aniso: 1
mipBias: 0
wrapU: 1
wrapV: 1
wrapW: 1
nPOTScale: 0
lightmap: 0
compressionQuality: 50
spriteMode: 2
spriteExtrude: 1
spriteMeshType: 1
alignment: 0
spritePivot: {x: 0.5, y: 0.5}
spritePixelsToUnits: 100
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
spriteGenerateFallbackPhysicsShape: 1
alphaUsage: 1
alphaIsTransparency: 1
spriteTessellationDetail: -1
textureType: 8
textureShape: 1
singleChannelComponent: 0
flipbookRows: 1
flipbookColumns: 1
maxTextureSizeSet: 0
compressionQualitySet: 0
textureFormatSet: 0
ignorePngGamma: 0
applyGammaDecoding: 0
swizzle: 50462976
cookieLightType: 0
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
- serializedVersion: 4
buildTarget: Standalone
maxTextureSize: 2048
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
compressionQuality: 50
crunchedCompression: 0
allowsAlphaSplitting: 0
overridden: 0
ignorePlatformSupport: 0
androidETC2FallbackOverride: 0
forceMaximumCompressionQuality_BC6H_BC7: 0
spriteSheet:
serializedVersion: 2
sprites:
- serializedVersion: 2
name: Feather_0
rect:
serializedVersion: 2
x: 217
y: 40
width: 244
height: 601
alignment: 0
pivot: {x: 0, y: 0}
border: {x: 0, y: 0, z: 0, w: 0}
customData:
outline: []
physicsShape: []
tessellationDetail: -1
bones: []
spriteID: dde84e86a443f5200800000000000000
internalID: 170912805055401693
vertices: []
indices:
edges: []
weights: []
outline: []
customData:
physicsShape: []
bones: []
spriteID:
internalID: 0
vertices: []
indices:
edges: []
weights: []
secondaryTextures: []
spriteCustomMetadata:
entries: []
nameFileIdTable:
Feather_0: 170912805055401693
mipmapLimitGroupName:
pSDRemoveMatte: 0
userData:
assetBundleName:
assetBundleVariant:
@@ -72,7 +72,7 @@ TextureImporter:
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
maxTextureSize: 16384
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
@@ -72,7 +72,7 @@ TextureImporter:
platformSettings:
- serializedVersion: 4
buildTarget: DefaultTexturePlatform
maxTextureSize: 2048
maxTextureSize: 16384
resizeAlgorithm: 0
textureFormat: -1
textureCompression: 1
+33 -33
View File
@@ -100,42 +100,42 @@ MonoBehaviour:
obsoleteHasProbeVolumes:
m_Keys: []
m_Values:
m_PrefilteringModeMainLightShadows: 1
m_PrefilteringModeMainLightShadows: 4
m_PrefilteringModeAdditionalLight: 4
m_PrefilteringModeAdditionalLightShadows: 1
m_PrefilterXRKeywords: 0
m_PrefilteringModeForwardPlus: 1
m_PrefilteringModeDeferredRendering: 1
m_PrefilteringModeScreenSpaceOcclusion: 1
m_PrefilterDebugKeywords: 0
m_PrefilterWriteRenderingLayers: 0
m_PrefilterHDROutput: 0
m_PrefilterAlphaOutput: 0
m_PrefilterSSAODepthNormals: 0
m_PrefilterSSAOSourceDepthLow: 0
m_PrefilterSSAOSourceDepthMedium: 0
m_PrefilterSSAOSourceDepthHigh: 0
m_PrefilterSSAOInterleaved: 0
m_PrefilterSSAOBlueNoise: 0
m_PrefilterSSAOSampleCountLow: 0
m_PrefilterSSAOSampleCountMedium: 0
m_PrefilterSSAOSampleCountHigh: 0
m_PrefilterDBufferMRT1: 0
m_PrefilterDBufferMRT2: 0
m_PrefilterDBufferMRT3: 0
m_PrefilterSoftShadowsQualityLow: 0
m_PrefilterSoftShadowsQualityMedium: 0
m_PrefilterSoftShadowsQualityHigh: 0
m_PrefilteringModeAdditionalLightShadows: 0
m_PrefilterXRKeywords: 1
m_PrefilteringModeForwardPlus: 0
m_PrefilteringModeDeferredRendering: 0
m_PrefilteringModeScreenSpaceOcclusion: 0
m_PrefilterDebugKeywords: 1
m_PrefilterWriteRenderingLayers: 1
m_PrefilterHDROutput: 1
m_PrefilterAlphaOutput: 1
m_PrefilterSSAODepthNormals: 1
m_PrefilterSSAOSourceDepthLow: 1
m_PrefilterSSAOSourceDepthMedium: 1
m_PrefilterSSAOSourceDepthHigh: 1
m_PrefilterSSAOInterleaved: 1
m_PrefilterSSAOBlueNoise: 1
m_PrefilterSSAOSampleCountLow: 1
m_PrefilterSSAOSampleCountMedium: 1
m_PrefilterSSAOSampleCountHigh: 1
m_PrefilterDBufferMRT1: 1
m_PrefilterDBufferMRT2: 1
m_PrefilterDBufferMRT3: 1
m_PrefilterSoftShadowsQualityLow: 1
m_PrefilterSoftShadowsQualityMedium: 1
m_PrefilterSoftShadowsQualityHigh: 1
m_PrefilterSoftShadows: 0
m_PrefilterScreenCoord: 0
m_PrefilterScreenSpaceIrradiance: 0
m_PrefilterNativeRenderPass: 0
m_PrefilterScreenCoord: 1
m_PrefilterScreenSpaceIrradiance: 1
m_PrefilterNativeRenderPass: 1
m_PrefilterUseLegacyLightmaps: 0
m_PrefilterBicubicLightmapSampling: 0
m_PrefilterReflectionProbeRotation: 0
m_PrefilterReflectionProbeBlending: 0
m_PrefilterReflectionProbeBoxProjection: 0
m_PrefilterReflectionProbeAtlas: 0
m_PrefilterBicubicLightmapSampling: 1
m_PrefilterReflectionProbeRotation: 1
m_PrefilterReflectionProbeBlending: 1
m_PrefilterReflectionProbeBoxProjection: 1
m_PrefilterReflectionProbeAtlas: 1
m_ShaderVariantLogLevel: 0
m_ShadowCascades: 0
m_Textures:
@@ -66,7 +66,19 @@ MonoBehaviour:
- rid: 7106733680788242438
- rid: 7106733680788242439
m_RuntimeSettings:
m_List: []
m_List:
- rid: 7752762179098771456
- rid: 7752762179098771457
- rid: 7752762179098771459
- rid: 7752762179098771461
- rid: 7752762179098771462
- rid: 7752762179098771464
- rid: 7752762179098771466
- rid: 7752762179098771468
- rid: 7752762179098771472
- rid: 7752762179098771476
- rid: 3114554777721110529
- rid: 3114554777721110530
m_AssetVersion: 9
m_ObsoleteDefaultVolumeProfile: {fileID: 0}
m_RenderingLayerNames:
+1 -1
View File
@@ -10,7 +10,7 @@
"com.unity.2d.tilemap.extras": "6.0.1",
"com.unity.2d.tooling": "1.0.2",
"com.unity.ide.rider": "3.0.39",
"com.unity.ide.visualstudio": "2.0.26",
"com.unity.ide.visualstudio": "2.0.27",
"com.unity.inputsystem": "1.18.0",
"com.unity.multiplayer.center": "1.0.1",
"com.unity.render-pipelines.universal": "17.3.0",
+1 -1
View File
@@ -145,7 +145,7 @@
"url": "https://packages.unity.com"
},
"com.unity.ide.visualstudio": {
"version": "2.0.26",
"version": "2.0.27",
"depth": 0,
"source": "registry",
"dependencies": {
+24 -21
View File
@@ -12,7 +12,7 @@ PlayerSettings:
targetDevice: 2
useOnDemandResources: 0
accelerometerFrequency: 60
companyName: DefaultCompany
companyName: The MrTorex
productName: PGiZ2
defaultCursor: {fileID: 0}
cursorHotspot: {x: 0, y: 0}
@@ -143,7 +143,7 @@ PlayerSettings:
loadStoreDebugModeEnabled: 0
visionOSBundleVersion: 1.0
tvOSBundleVersion: 1.0
bundleVersion: 1.0
bundleVersion: 1.0.0
preloadedAssets: []
metroInputSource: 0
wsaTransparentSwapchain: 0
@@ -296,7 +296,10 @@ PlayerSettings:
androidSymbolsSizeThreshold: 800
m_BuildTargetIcons: []
m_BuildTargetPlatformIcons: []
m_BuildTargetBatching: []
m_BuildTargetBatching:
- m_BuildTarget: Standalone
m_StaticBatching: 1
m_DynamicBatching: 0
m_BuildTargetShaderSettings: []
m_BuildTargetGraphicsJobs: []
m_BuildTargetGraphicsJobMode: []
@@ -587,24 +590,24 @@ PlayerSettings:
webWasm2023: 0
webEnableSubmoduleStrippingCompatibility: 0
scriptingDefineSymbols:
Android: DOTWEEN
EmbeddedLinux: DOTWEEN
GameCoreScarlett: DOTWEEN
GameCoreXboxOne: DOTWEEN
Kepler: DOTWEEN
LinuxHeadlessSimulation: DOTWEEN
Nintendo Switch: DOTWEEN
Nintendo Switch 2: DOTWEEN
PS4: DOTWEEN
PS5: DOTWEEN
QNX: DOTWEEN
Standalone: DOTWEEN
VisionOS: DOTWEEN
WebGL: DOTWEEN
Windows Store Apps: DOTWEEN
XboxOne: DOTWEEN
iPhone: DOTWEEN
tvOS: DOTWEEN
Android: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
EmbeddedLinux: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
GameCoreScarlett: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
GameCoreXboxOne: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
Kepler: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
LinuxHeadlessSimulation: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
Nintendo Switch: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
Nintendo Switch 2: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
PS4: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
PS5: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
QNX: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
Standalone: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
VisionOS: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
WebGL: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
Windows Store Apps: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
XboxOne: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
iPhone: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
tvOS: DOTWEEN;DOTWEEN_NOPHYSICS;DOTWEEN_NOPHYSICS2D
additionalCompilerArguments: {}
platformArchitecture: {}
scriptingBackend:
+2 -2
View File
@@ -1,2 +1,2 @@
m_EditorVersion: 6000.3.6f1
m_EditorVersionWithRevision: 6000.3.6f1 (bbb010bdb8a3)
m_EditorVersion: 6000.3.7f1
m_EditorVersionWithRevision: 6000.3.7f1 (696ec25a53d1)