speed dont augment while in pause + added speed management in playerdata

This commit is contained in:
GreenHal0 2025-01-09 11:00:29 +01:00
parent 8a94ce9de3
commit cbdfca5443
13 changed files with 19330 additions and 19561 deletions

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 74ec3c5b307a41c4eac0e62ddf7311a7
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,7 +0,0 @@
fileFormatVersion: 2
guid: 74ec3c5b307a41c4eac0e62ddf7311a7
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@ -1,6 +1,6 @@
fileFormatVersion: 2 fileFormatVersion: 2
<<<<<<<< HEAD:Assets/TextMesh Pro/Examples & Extras/Scenes/27 - Double Pass Shader Example.unity.meta <<<<<<<< HEAD:Assets/TextMesh Pro/Examples & Extras/Scenes/27 - Double Pass Shader Example.unity.meta
guid: 3b38a6ba32b869f48812e595baf39746 guid: 97f4ab700605cdb42a6814eff80fb25c
======== ========
guid: 9fc0d4010bbf28b4594072e72b8655ab guid: 9fc0d4010bbf28b4594072e72b8655ab
>>>>>>>> 4c350d16a4b31db0659a0e5146e5626a353b2200:Assets/Scenes/DeathScreen.unity.meta >>>>>>>> 4c350d16a4b31db0659a0e5146e5626a353b2200:Assets/Scenes/DeathScreen.unity.meta

View File

@ -1438,8 +1438,8 @@ MonoBehaviour:
m_Calls: [] m_Calls: []
m_text: Back m_text: Back
m_isRightToLeft: 0 m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 125cb55b44b24c4393181402bc6200e6, type: 2} m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2100000, guid: 125cb55b44b24c4393181402bc6200e6, type: 2} m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: [] m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0} m_fontMaterial: {fileID: 0}
m_fontMaterials: [] m_fontMaterials: []
@ -1463,7 +1463,7 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 37.6 m_fontSize: 35.8
m_fontSizeBase: 41 m_fontSizeBase: 41
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 1 m_enableAutoSizing: 1
@ -3632,8 +3632,8 @@ MonoBehaviour:
m_Calls: [] m_Calls: []
m_text: SCOREBOARD m_text: SCOREBOARD
m_isRightToLeft: 0 m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 125cb55b44b24c4393181402bc6200e6, type: 2} m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2100000, guid: 125cb55b44b24c4393181402bc6200e6, type: 2} m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_fontSharedMaterials: [] m_fontSharedMaterials: []
m_fontMaterial: {fileID: 0} m_fontMaterial: {fileID: 0}
m_fontMaterials: [] m_fontMaterials: []
@ -3657,7 +3657,7 @@ MonoBehaviour:
m_faceColor: m_faceColor:
serializedVersion: 2 serializedVersion: 2
rgba: 4294967295 rgba: 4294967295
m_fontSize: 36.9 m_fontSize: 27.95
m_fontSizeBase: 48 m_fontSizeBase: 48
m_fontWeight: 400 m_fontWeight: 400
m_enableAutoSizing: 1 m_enableAutoSizing: 1
@ -3820,6 +3820,10 @@ PrefabInstance:
propertyPath: laneSystem propertyPath: laneSystem
value: value:
objectReference: {fileID: 106057762} objectReference: {fileID: 106057762}
- target: {fileID: 7509186232753540492, guid: 01fa89ab9028c864b8560621b7d51f50, type: 3}
propertyPath: playerData
value:
objectReference: {fileID: 11400000, guid: 928d6efd735c3814d955e3f955a0264a, type: 2}
- target: {fileID: 7581911058254726377, guid: 01fa89ab9028c864b8560621b7d51f50, type: 3} - target: {fileID: 7581911058254726377, guid: 01fa89ab9028c864b8560621b7d51f50, type: 3}
propertyPath: m_Name propertyPath: m_Name
value: Player value: Player

View File

@ -7,5 +7,7 @@ public class PlayerData : ScriptableObject
[field: SerializeField] public int InvincibilityTime { get; private set; } [field: SerializeField] public int InvincibilityTime { get; private set; }
[field: SerializeField] public float JumpHeight { get; private set; } [field: SerializeField] public float JumpHeight { get; private set; }
[field: SerializeField] public float LaneSwitchSpeed { get; private set; } [field: SerializeField] public float LaneSwitchSpeed { get; private set; }
[field: SerializeField] public float Speed { get; set; } [field: SerializeField] public float InitialSpeed { get; private set; }
[field: SerializeField] public float SpeedAcceleration { get; private set; }
[field: SerializeField] public float CurrentSpeed { get; set; }
} }

View File

@ -13,6 +13,7 @@ public class GameSession : MonoBehaviour,IResettable
private IInputTranslator inputTranslator; private IInputTranslator inputTranslator;
private bool isSessionPaused = false; private bool isSessionPaused = false;
private float speedAtPause;
private bool isInputAlreadyRestricted = false; private bool isInputAlreadyRestricted = false;
private void Awake() private void Awake()
@ -60,6 +61,15 @@ public class GameSession : MonoBehaviour,IResettable
public void PauseSession(bool isPaused) public void PauseSession(bool isPaused)
{ {
// Save the speed before pausing the game and restore it while the game resume
if (isPaused)
{
speedAtPause = currentPlayer.PlayerData.CurrentSpeed;
}else{
currentPlayer.PlayerData.CurrentSpeed = speedAtPause;
}
Time.timeScale = isPaused ? 0 : 1; Time.timeScale = isPaused ? 0 : 1;
if (!isSessionPaused && inputTranslator.IsTranslationResticted(InputConstants.InGameCommands)) if (!isSessionPaused && inputTranslator.IsTranslationResticted(InputConstants.InGameCommands))
{ {

View File

@ -29,7 +29,6 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
[SerializeField] private PlayerData playerData; [SerializeField] private PlayerData playerData;
private int initialSpeed;
public IDamageable PlayerHealth { get; private set; } public IDamageable PlayerHealth { get; private set; }
public Statistics PlayerStatictics { get; private set; } public Statistics PlayerStatictics { get; private set; }
public PlayerData PlayerData { get { return playerData; } } public PlayerData PlayerData { get { return playerData; } }
@ -60,7 +59,6 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
PlayerStatictics = GetComponent<Statistics>(); PlayerStatictics = GetComponent<Statistics>();
PlayerStateMachine = new PlayerStateMachine(this); PlayerStateMachine = new PlayerStateMachine(this);
InvincibilityTime = playerData.InvincibilityTime; InvincibilityTime = playerData.InvincibilityTime;
initialSpeed = (int)playerData.Speed;
} }
private void OnEnable() private void OnEnable()
{ {
@ -78,7 +76,7 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
private void Update() private void Update()
{ {
PlayerData.Speed += 0.0001f; playerData.CurrentSpeed += playerData.SpeedAcceleration / 100;
// Add smthg to manage the animator speed // Add smthg to manage the animator speed
PlayerStateMachine.Tick(); PlayerStateMachine.Tick();
} }
@ -113,7 +111,7 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
private void Die() private void Die()
{ {
PlayerData.Speed = initialSpeed; PlayerData.CurrentSpeed = PlayerData.InitialSpeed;
PlayerStateMachine.SetState(PlayerStateMachine.PlayerDeadState); PlayerStateMachine.SetState(PlayerStateMachine.PlayerDeadState);
GameSession.Instance.UpdateScoreboard(new ScoreboardEntry(name,PlayerStatictics.Score)); GameSession.Instance.UpdateScoreboard(new ScoreboardEntry(name,PlayerStatictics.Score));
@ -133,6 +131,7 @@ public class Player : MonoBehaviour,IResettable, ICommandTranslator
} }
public void ResetToDefault() public void ResetToDefault()
{ {
PlayerData.CurrentSpeed = PlayerData.InitialSpeed;
PlayerStateMachine.SetState(null); PlayerStateMachine.SetState(null);
PlayerStatictics.ResetToDefault(); PlayerStatictics.ResetToDefault();
LaneSystem.ResetToDefault(); LaneSystem.ResetToDefault();

View File

@ -12,7 +12,7 @@ public abstract class MovingState : PlayerState
public MovingState(PlayerStateMachine playerStateMachine) : base(playerStateMachine) public MovingState(PlayerStateMachine playerStateMachine) : base(playerStateMachine)
{ {
this.playerSM = playerStateMachine; this.playerSM = playerStateMachine;
speed = playerData.Speed; speed = playerData.CurrentSpeed;
laneSwitchSpeed = playerData.LaneSwitchSpeed; laneSwitchSpeed = playerData.LaneSwitchSpeed;
} }
public override void OnStateEnter(){} public override void OnStateEnter(){}
@ -21,7 +21,7 @@ public abstract class MovingState : PlayerState
public override void Tick() public override void Tick()
{ {
speed = playerData.Speed; speed = playerData.CurrentSpeed;
//HandleDirection(); //HandleDirection();
playerSM.HorizontalDeltaPosition = playerSM.PlayerTransform.forward * speed * Time.deltaTime ; playerSM.HorizontalDeltaPosition = playerSM.PlayerTransform.forward * speed * Time.deltaTime ;
playerSM.HorizontalDeltaPosition += playerSM.PlayerTransform.forward * speed * Time.deltaTime; playerSM.HorizontalDeltaPosition += playerSM.PlayerTransform.forward * speed * Time.deltaTime;

File diff suppressed because one or more lines are too long