wip: HouseOfLeaves & BodiesInWater Blocking
This commit is contained in:
@@ -310,7 +310,7 @@ namespace OctoCore.Components
|
||||
else
|
||||
moveDelta.y -= _settings.Gravity * Time.deltaTime;
|
||||
|
||||
if (_references.Controller)
|
||||
if (_references.Controller && _references.Controller.enabled)
|
||||
_references.Controller.Move(moveDelta);
|
||||
else
|
||||
transform.position += moveDelta;
|
||||
|
||||
@@ -48,11 +48,14 @@ namespace OctoCore.Components
|
||||
[Tooltip("Play on Awake")]
|
||||
public bool PlayOnAwake = true;
|
||||
|
||||
[Tooltip("Random Time Offset")]
|
||||
public bool RandomOffset = true;
|
||||
|
||||
[Tooltip("Animation speed multiplier")]
|
||||
public float Duration = 4;
|
||||
|
||||
[Tooltip("Time offset to desynchronize multiple animations")]
|
||||
public float TimeOffset = 0;
|
||||
[Tooltip("Cycle offset to desynchronize multiple animations")]
|
||||
[Range(0, 1)] public float CycleOffset = 0;
|
||||
|
||||
[Tooltip("Translation amount in local space (meters)")]
|
||||
public Vector3 Translation = Vector3.zero;
|
||||
@@ -97,11 +100,14 @@ namespace OctoCore.Components
|
||||
|
||||
void Start()
|
||||
{
|
||||
Debug.Log("Start");
|
||||
_state.InitialPosition = transform.localPosition;
|
||||
_state.InitialRotation = transform.localRotation;
|
||||
_state.InitialScale = transform.localScale;
|
||||
_state.CurrentTime = _settings.TimeOffset;
|
||||
_state.CurrentTime = _settings.CycleOffset;
|
||||
_state.IsFinished = false;
|
||||
|
||||
_timeOffset = Time.timeSinceLevelLoad;
|
||||
}
|
||||
|
||||
void Update()
|
||||
@@ -109,7 +115,7 @@ namespace OctoCore.Components
|
||||
if (_state.IsFinished || !_started)
|
||||
return;
|
||||
|
||||
_state.CurrentTime = Time.timeSinceLevelLoad + _settings.TimeOffset * _settings.Duration - _timeOffset;
|
||||
_state.CurrentTime = Time.timeSinceLevelLoad + _settings.CycleOffset * _settings.Duration - _timeOffset + (_settings.RandomOffset ? transform.GetSiblingIndex() * 6.7f : 0);
|
||||
|
||||
float normalizedTime = GetNormalizedTime(_state.CurrentTime);
|
||||
float easedTime = ApplyEasing(normalizedTime);
|
||||
@@ -136,7 +142,7 @@ namespace OctoCore.Components
|
||||
/// </summary>
|
||||
public void ResetAnimation()
|
||||
{
|
||||
_state.CurrentTime = _settings.TimeOffset;
|
||||
_state.CurrentTime = _settings.CycleOffset;
|
||||
_state.IsFinished = false;
|
||||
transform.localPosition = _state.InitialPosition;
|
||||
transform.localRotation = _state.InitialRotation;
|
||||
|
||||
Reference in New Issue
Block a user