merge with master

This commit is contained in:
mccarreon
2023-08-09 17:56:35 -07:00
25 changed files with 965 additions and 101 deletions

View File

@@ -1,15 +0,0 @@
using Sandbox;
namespace LuckerGame.EntityComponents.Lucker;
/// <summary>
/// A component for capturing and passing around a client's input for an attached Lucker
/// </summary>
public class LuckerClientInput : EntityComponent<Entities.Lucker>
{
[ClientInput]
public Vector3 InputDirection { get; set; }
[ClientInput]
public Angles ViewAngles { get; set; }
}

View File

@@ -0,0 +1,48 @@
using Sandbox;
using Sandbox.UI;
namespace LuckerGame.EntityComponents.Lucker;
/// <summary>
/// Handles the stats associated with a lucker during a lobby.
/// </summary>
public partial class LuckerStats : EntityComponent<Entities.Lucker>, ISingletonComponent
{
/// <summary>
/// The lucker's current score.
/// </summary>
[Net] private long Score { get; set; }
/// <summary>
/// Adds points to this lucker's score
/// </summary>
/// <param name="points">points to add (or remove if negative)</param>
public void AddScore( long points )
{
Score += points;
if ( points == 0 )
{
return;
}
var message = $"{Entity.Name} {(points > 0 ? "gained" : "lost")} {points} points!";
ChatBox.AddInformation( To.Everyone, message );
}
/// <summary>
/// Resets this lucker's score to zero
/// </summary>
public void ResetScore()
{
Score = 0;
}
/// <summary>
/// Gets this lucker's current score
/// </summary>
/// <returns>this lucker's current score</returns>
public long GetScore()
{
return Score;
}
}