first implementation of freeze
This commit is contained in:
parent
2b3a950208
commit
660569601d
|
@ -0,0 +1,18 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 0228856d50ce2a845abd7b3eda114390, type: 3}
|
||||||
|
m_Name: PA_Freeze
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
_artefactID: 12
|
||||||
|
_dialogueKey:
|
||||||
|
_name: Freeze
|
||||||
|
_power: {fileID: 0}
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: c2e37ff6639a22e4eacc5e95d8e13723
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -2538,11 +2538,11 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831318799747, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831318799747, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.y
|
propertyPath: m_LocalRotation.y
|
||||||
value: -0.017264403
|
value: -0.017264389
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831318799747, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831318799747, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.z
|
propertyPath: m_LocalRotation.z
|
||||||
value: 0.009297725
|
value: 0.009297717
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalPosition.x
|
propertyPath: m_LocalPosition.x
|
||||||
|
@ -2558,19 +2558,19 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.w
|
propertyPath: m_LocalRotation.w
|
||||||
value: 0.9680315
|
value: 0.9663801
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.x
|
propertyPath: m_LocalRotation.x
|
||||||
value: 0.24655113
|
value: 0.24613053
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.y
|
propertyPath: m_LocalRotation.y
|
||||||
value: 0.044697862
|
value: 0.07205816
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831388223341, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.z
|
propertyPath: m_LocalRotation.z
|
||||||
value: -0.011384245
|
value: -0.018352732
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633831414007564, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831414007564, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_Name
|
propertyPath: m_Name
|
||||||
|
@ -2624,6 +2624,10 @@ PrefabInstance:
|
||||||
propertyPath: m_LocalEulerAnglesHint.z
|
propertyPath: m_LocalEulerAnglesHint.z
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4676633831598614294, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
propertyPath: _freeze
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 11400000, guid: 0cd9cf6494bb6f54d9b97631010d780e, type: 2}
|
||||||
- target: {fileID: 4676633831598614294, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831598614294, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: _cheatBlink
|
propertyPath: _cheatBlink
|
||||||
value: 0
|
value: 0
|
||||||
|
@ -2632,6 +2636,22 @@ PrefabInstance:
|
||||||
propertyPath: _cheatBoost
|
propertyPath: _cheatBoost
|
||||||
value: 0
|
value: 0
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4676633831598614294, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
propertyPath: _cheatFreeze
|
||||||
|
value: 1
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4676633831945762665, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
propertyPath: m_DefaultControlScheme
|
||||||
|
value: PCMR
|
||||||
|
objectReference: {fileID: 0}
|
||||||
|
- target: {fileID: 4676633831945762666, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
propertyPath: playerTimeScale
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 11400000, guid: 39c05ba9d0743074b9eb0e561ba1fcb8, type: 2}
|
||||||
|
- target: {fileID: 4676633831945762667, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
propertyPath: playerTimeScale
|
||||||
|
value:
|
||||||
|
objectReference: {fileID: 11400000, guid: 39c05ba9d0743074b9eb0e561ba1fcb8, type: 2}
|
||||||
- target: {fileID: 4676633831945762708, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633831945762708, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_Height
|
propertyPath: m_Height
|
||||||
value: 1.5
|
value: 1.5
|
||||||
|
@ -2662,11 +2682,11 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832789495666, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832789495666, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.y
|
propertyPath: m_LocalRotation.y
|
||||||
value: -0.017264403
|
value: -0.017264389
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832789495666, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832789495666, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.z
|
propertyPath: m_LocalRotation.z
|
||||||
value: 0.009297725
|
value: 0.009297717
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832858914730, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832858914730, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_XAxis.m_InvertInput
|
propertyPath: m_XAxis.m_InvertInput
|
||||||
|
@ -2702,19 +2722,19 @@ PrefabInstance:
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.w
|
propertyPath: m_LocalRotation.w
|
||||||
value: 0.9996367
|
value: 0.9984866
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.x
|
propertyPath: m_LocalRotation.x
|
||||||
value: 0.0047711134
|
value: 0.0047656302
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.y
|
propertyPath: m_LocalRotation.y
|
||||||
value: 0.023356276
|
value: 0.048239034
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
- target: {fileID: 4676633832928372887, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
propertyPath: m_LocalRotation.z
|
propertyPath: m_LocalRotation.z
|
||||||
value: -0.0125784995
|
value: -0.02597908
|
||||||
objectReference: {fileID: 0}
|
objectReference: {fileID: 0}
|
||||||
m_RemovedComponents: []
|
m_RemovedComponents: []
|
||||||
m_SourcePrefab: {fileID: 100100000, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
m_SourcePrefab: {fileID: 100100000, guid: 8a918f60d084fbe468bf3b2c0a14fb52, type: 3}
|
||||||
|
@ -7364,6 +7384,7 @@ MonoBehaviour:
|
||||||
inputSettings: {fileID: 11400000, guid: 87faf39b6f22e524984c1680a88045ac, type: 2}
|
inputSettings: {fileID: 11400000, guid: 87faf39b6f22e524984c1680a88045ac, type: 2}
|
||||||
dialogue: {fileID: 11400000, guid: 56369c4e83cc59e44bf55cd16fafc4e8, type: 2}
|
dialogue: {fileID: 11400000, guid: 56369c4e83cc59e44bf55cd16fafc4e8, type: 2}
|
||||||
artefacts: {fileID: 11400000, guid: f523ac0d77530064b8b41c627b13fae0, type: 2}
|
artefacts: {fileID: 11400000, guid: f523ac0d77530064b8b41c627b13fae0, type: 2}
|
||||||
|
playerTimeScale: {fileID: 11400000, guid: 39c05ba9d0743074b9eb0e561ba1fcb8, type: 2}
|
||||||
--- !u!114 &2070784759
|
--- !u!114 &2070784759
|
||||||
MonoBehaviour:
|
MonoBehaviour:
|
||||||
m_ObjectHideFlags: 0
|
m_ObjectHideFlags: 0
|
||||||
|
|
|
@ -16,6 +16,7 @@ public class PickUpDisplay : MonoBehaviour
|
||||||
[SerializeField] private InputSettings inputSettings;
|
[SerializeField] private InputSettings inputSettings;
|
||||||
[SerializeField] private DialogueSystem dialogue;
|
[SerializeField] private DialogueSystem dialogue;
|
||||||
[SerializeField] private ArtefactSystem artefacts;
|
[SerializeField] private ArtefactSystem artefacts;
|
||||||
|
[SerializeField] private SerialFloat playerTimeScale;
|
||||||
|
|
||||||
private Artefact chosenArtefact;
|
private Artefact chosenArtefact;
|
||||||
|
|
||||||
|
@ -35,22 +36,24 @@ public class PickUpDisplay : MonoBehaviour
|
||||||
public void PopUpOn()
|
public void PopUpOn()
|
||||||
{
|
{
|
||||||
_paused = true;
|
_paused = true;
|
||||||
artefactUI.SetActive(true);
|
//artefactUI.SetActive(true);
|
||||||
Player.GetComponent<PlayerInput>().enabled = false;
|
//Player.GetComponent<PlayerInput>().enabled = false;
|
||||||
artefactText.text = "You have unlocked " + chosenArtefact.Name + "!";
|
artefactText.text = "You have unlocked " + chosenArtefact.Name + "!";
|
||||||
inputSettings.updateMode = (InputSettings.UpdateMode)1;
|
//inputSettings.updateMode = (InputSettings.UpdateMode)1;
|
||||||
Time.timeScale = 0f;
|
Time.timeScale = 0f;
|
||||||
|
//playerTimeScale.Value = 0f;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void PopUpOff()
|
public void PopUpOff()
|
||||||
{
|
{
|
||||||
_paused = false;
|
_paused = false;
|
||||||
artefactUI.SetActive(false);
|
//artefactUI.SetActive(false);
|
||||||
inputSettings.updateMode = (InputSettings.UpdateMode)2;
|
//inputSettings.updateMode = (InputSettings.UpdateMode)2;
|
||||||
Player.GetComponent<PlayerInput>().enabled = true;
|
//Player.GetComponent<PlayerInput>().enabled = true;
|
||||||
Time.timeScale = 1.0f;
|
Time.timeScale = 1.0f;
|
||||||
|
//playerTimeScale.Value = 1.0f;
|
||||||
|
|
||||||
dialogue.PlayLine(chosenArtefact.dialogueKey);
|
//dialogue.PlayLine(chosenArtefact.dialogueKey);
|
||||||
chosenArtefact = null;
|
chosenArtefact = null;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,6 +1,7 @@
|
||||||
using Extensions;
|
using Extensions;
|
||||||
using UnityEngine;
|
using UnityEngine;
|
||||||
using NaughtyAttributes;
|
using NaughtyAttributes;
|
||||||
|
using Ktyl.Util;
|
||||||
|
|
||||||
public class PlayerController : MonoBehaviour
|
public class PlayerController : MonoBehaviour
|
||||||
{
|
{
|
||||||
|
@ -68,6 +69,10 @@ public class PlayerController : MonoBehaviour
|
||||||
private const float TAU = Mathf.PI * 2f;
|
private const float TAU = Mathf.PI * 2f;
|
||||||
private const float HALF_PI = Mathf.PI / 2f;
|
private const float HALF_PI = Mathf.PI / 2f;
|
||||||
|
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private SerialFloat playerTimeScale;
|
||||||
|
|
||||||
private enum JumpState
|
private enum JumpState
|
||||||
{
|
{
|
||||||
None,
|
None,
|
||||||
|
@ -149,6 +154,17 @@ public class PlayerController : MonoBehaviour
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/*private void UpdateFreeze( float dt)
|
||||||
|
{
|
||||||
|
if( _powers.Freeze.CanConsume )
|
||||||
|
{
|
||||||
|
Time.timeScale = 0f;
|
||||||
|
_powers.Freeze.Consume();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
|
||||||
private void UpdateJump(float dt)
|
private void UpdateJump(float dt)
|
||||||
{
|
{
|
||||||
_fallTime = _grounded ? 0f : (_fallTime + dt);
|
_fallTime = _grounded ? 0f : (_fallTime + dt);
|
||||||
|
@ -257,7 +273,7 @@ public class PlayerController : MonoBehaviour
|
||||||
|
|
||||||
private void FixedUpdate()
|
private void FixedUpdate()
|
||||||
{
|
{
|
||||||
float dt = Time.fixedDeltaTime;
|
float dt = Time.fixedUnscaledDeltaTime * playerTimeScale;
|
||||||
|
|
||||||
_overrideDelta = Vector2.zero;
|
_overrideDelta = Vector2.zero;
|
||||||
|
|
||||||
|
@ -273,6 +289,7 @@ public class PlayerController : MonoBehaviour
|
||||||
UpdateJump( dt );
|
UpdateJump( dt );
|
||||||
UpdateLook( dt );
|
UpdateLook( dt );
|
||||||
UpdateBlink( dt );
|
UpdateBlink( dt );
|
||||||
|
//UpdateFreeze( dt );
|
||||||
UpdateGravity( dt );
|
UpdateGravity( dt );
|
||||||
UpdateDrag( dt );
|
UpdateDrag( dt );
|
||||||
UpdateMovement( dt );
|
UpdateMovement( dt );
|
||||||
|
|
|
@ -16,20 +16,25 @@ public class PlayerInputHandler : MonoBehaviour
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private Camera _camera;
|
private Camera _camera;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private SerialFloat playerTimeScale;
|
||||||
|
|
||||||
public class PlayerInputState
|
public class PlayerInputState
|
||||||
{
|
{
|
||||||
public BufferedInput Jump;
|
public BufferedInput Jump;
|
||||||
public BufferedInput Blink;
|
public BufferedInput Blink;
|
||||||
public BufferedInput Use;
|
public BufferedInput Use;
|
||||||
|
public BufferedInput Freeze;
|
||||||
public CameraRelativeInput Move;
|
public CameraRelativeInput Move;
|
||||||
public Vector2 Look;
|
public Vector2 Look;
|
||||||
public float MoveRotation;
|
public float MoveRotation;
|
||||||
|
|
||||||
public PlayerInputState( float jumpBuffer, float blinkBuffer, float useBuffer )
|
public PlayerInputState( float jumpBuffer, float blinkBuffer, float useBuffer , float freezeBuffer)
|
||||||
{
|
{
|
||||||
Jump = new BufferedInput( jumpBuffer );
|
Jump = new BufferedInput( jumpBuffer );
|
||||||
Blink = new BufferedInput( blinkBuffer );
|
Blink = new BufferedInput( blinkBuffer );
|
||||||
Use = new BufferedInput( useBuffer );
|
Use = new BufferedInput( useBuffer );
|
||||||
|
Freeze = new BufferedInput( freezeBuffer );
|
||||||
Move = new CameraRelativeInput();
|
Move = new CameraRelativeInput();
|
||||||
Look = Vector2.zero;
|
Look = Vector2.zero;
|
||||||
}
|
}
|
||||||
|
@ -39,6 +44,7 @@ public class PlayerInputHandler : MonoBehaviour
|
||||||
Jump.Update(deltaTime);
|
Jump.Update(deltaTime);
|
||||||
Blink.Update(deltaTime);
|
Blink.Update(deltaTime);
|
||||||
Use.Update(deltaTime);
|
Use.Update(deltaTime);
|
||||||
|
Freeze.Update(deltaTime);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,16 +54,17 @@ public class PlayerInputHandler : MonoBehaviour
|
||||||
|
|
||||||
private void Awake()
|
private void Awake()
|
||||||
{
|
{
|
||||||
_state = new PlayerInputState(
|
_state = new PlayerInputState(
|
||||||
_inputSettings.JumpBufferTime,
|
_inputSettings.JumpBufferTime,
|
||||||
_inputSettings.BlinkBufferTime,
|
_inputSettings.BlinkBufferTime,
|
||||||
_inputSettings.UseBufferTime
|
_inputSettings.UseBufferTime,
|
||||||
);
|
_inputSettings.FreezeBufferTime
|
||||||
|
) ;
|
||||||
}
|
}
|
||||||
|
|
||||||
private void FixedUpdate()
|
private void FixedUpdate()
|
||||||
{
|
{
|
||||||
_state.Update( Time.fixedDeltaTime );
|
_state.Update( Time.fixedDeltaTime);
|
||||||
|
|
||||||
float cameraRotation = _camera.transform.rotation.eulerAngles.y;
|
float cameraRotation = _camera.transform.rotation.eulerAngles.y;
|
||||||
_state.Move.SetAngle(-cameraRotation);
|
_state.Move.SetAngle(-cameraRotation);
|
||||||
|
@ -85,4 +92,10 @@ public class PlayerInputHandler : MonoBehaviour
|
||||||
if(context.started)
|
if(context.started)
|
||||||
EventHandler.current.ArtefactPickUp(_nearbyArtefactID.Value);
|
EventHandler.current.ArtefactPickUp(_nearbyArtefactID.Value);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void Freeze(InputAction.CallbackContext context)
|
||||||
|
{
|
||||||
|
_state.Freeze.Set( context.ReadValueAsButton() );
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
|
@ -8,6 +8,7 @@ public class PlayerInputSettings : ScriptableObject
|
||||||
public float JumpBufferTime => _jumpBufferTime;
|
public float JumpBufferTime => _jumpBufferTime;
|
||||||
public float BlinkBufferTime => _blinkBufferTime;
|
public float BlinkBufferTime => _blinkBufferTime;
|
||||||
public float UseBufferTime => _useBufferTime;
|
public float UseBufferTime => _useBufferTime;
|
||||||
|
public float FreezeBufferTime => _freezeBufferTime;
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private float _jumpBufferTime;
|
private float _jumpBufferTime;
|
||||||
|
@ -17,4 +18,7 @@ public class PlayerInputSettings : ScriptableObject
|
||||||
|
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private float _useBufferTime;
|
private float _useBufferTime;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private float _freezeBufferTime;
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,6 +12,9 @@ public class PlayerPowers : MonoBehaviour
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private bool _cheatBoost;
|
private bool _cheatBoost;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private bool _cheatFreeze;
|
||||||
|
|
||||||
[Header( "References" )]
|
[Header( "References" )]
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private PlayerPower _blink;
|
private PlayerPower _blink;
|
||||||
|
@ -19,12 +22,17 @@ public class PlayerPowers : MonoBehaviour
|
||||||
[SerializeField]
|
[SerializeField]
|
||||||
private PlayerPower _boost;
|
private PlayerPower _boost;
|
||||||
|
|
||||||
|
[SerializeField]
|
||||||
|
private PlayerPower _freeze;
|
||||||
|
|
||||||
public PlayerPower Blink => _blink;
|
public PlayerPower Blink => _blink;
|
||||||
public PlayerPower Boost => _boost;
|
public PlayerPower Boost => _boost;
|
||||||
|
public PlayerPower Freeze => _freeze;
|
||||||
|
|
||||||
public void UpdatePowers( float dt, bool grounded )
|
public void UpdatePowers( float dt, bool grounded )
|
||||||
{
|
{
|
||||||
_blink.UpdatePower( dt, _cheatBlink, grounded );
|
_blink.UpdatePower( dt, _cheatBlink, grounded );
|
||||||
_boost.UpdatePower( dt, _cheatBoost, grounded );
|
_boost.UpdatePower( dt, _cheatBoost, grounded );
|
||||||
|
_boost.UpdatePower(dt, _cheatFreeze, grounded);
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -44,6 +44,14 @@
|
||||||
"expectedControlType": "Button",
|
"expectedControlType": "Button",
|
||||||
"processors": "",
|
"processors": "",
|
||||||
"interactions": ""
|
"interactions": ""
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "Freeze",
|
||||||
|
"type": "Button",
|
||||||
|
"id": "29f1599e-fe43-47df-ad25-8e712263d0ab",
|
||||||
|
"expectedControlType": "Button",
|
||||||
|
"processors": "",
|
||||||
|
"interactions": ""
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"bindings": [
|
"bindings": [
|
||||||
|
@ -200,6 +208,17 @@
|
||||||
"action": "Blink",
|
"action": "Blink",
|
||||||
"isComposite": false,
|
"isComposite": false,
|
||||||
"isPartOfComposite": false
|
"isPartOfComposite": false
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"name": "",
|
||||||
|
"id": "8c9e09a3-477e-4760-bdba-f81beaec4988",
|
||||||
|
"path": "<Keyboard>/g",
|
||||||
|
"interactions": "",
|
||||||
|
"processors": "",
|
||||||
|
"groups": "PCMR",
|
||||||
|
"action": "Freeze",
|
||||||
|
"isComposite": false,
|
||||||
|
"isPartOfComposite": false
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,3 +15,4 @@ MonoBehaviour:
|
||||||
_jumpBufferTime: 0.1
|
_jumpBufferTime: 0.1
|
||||||
_blinkBufferTime: 0.1
|
_blinkBufferTime: 0.1
|
||||||
_useBufferTime: 0.1
|
_useBufferTime: 0.1
|
||||||
|
_freezeBufferTime: 2
|
||||||
|
|
|
@ -0,0 +1,17 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 24d28ac60e22b5547b2beb8679625039, type: 3}
|
||||||
|
m_Name: Freeze
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
_regenerateOnGround: 0
|
||||||
|
_regenerateInAir: 0
|
||||||
|
_regenerateTime: 0
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 0cd9cf6494bb6f54d9b97631010d780e
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
|
@ -0,0 +1,16 @@
|
||||||
|
%YAML 1.1
|
||||||
|
%TAG !u! tag:unity3d.com,2011:
|
||||||
|
--- !u!114 &11400000
|
||||||
|
MonoBehaviour:
|
||||||
|
m_ObjectHideFlags: 0
|
||||||
|
m_CorrespondingSourceObject: {fileID: 0}
|
||||||
|
m_PrefabInstance: {fileID: 0}
|
||||||
|
m_PrefabAsset: {fileID: 0}
|
||||||
|
m_GameObject: {fileID: 0}
|
||||||
|
m_Enabled: 1
|
||||||
|
m_EditorHideFlags: 0
|
||||||
|
m_Script: {fileID: 11500000, guid: 76553ada4233edc458c3fed9b69e128f, type: 3}
|
||||||
|
m_Name: playerTimeScale
|
||||||
|
m_EditorClassIdentifier:
|
||||||
|
_initialValue: 1
|
||||||
|
_readOnly: 0
|
|
@ -0,0 +1,8 @@
|
||||||
|
fileFormatVersion: 2
|
||||||
|
guid: 39c05ba9d0743074b9eb0e561ba1fcb8
|
||||||
|
NativeFormatImporter:
|
||||||
|
externalObjects: {}
|
||||||
|
mainObjectFileID: 11400000
|
||||||
|
userData:
|
||||||
|
assetBundleName:
|
||||||
|
assetBundleVariant:
|
Loading…
Reference in New Issue