v1.0.3
This commit is contained in:
parent
68776c3382
commit
576cee8cfb
87 changed files with 4957 additions and 1558 deletions
82
jRandomSkills - SRC Files/src/player/PlayerOnTick.cs
Normal file
82
jRandomSkills - SRC Files/src/player/PlayerOnTick.cs
Normal file
|
|
@ -0,0 +1,82 @@
|
|||
using CounterStrikeSharp.API;
|
||||
using CounterStrikeSharp.API.Core;
|
||||
using jRandomSkills.src.utils;
|
||||
using static CounterStrikeSharp.API.Core.Listeners;
|
||||
using static jRandomSkills.jRandomSkills;
|
||||
|
||||
namespace jRandomSkills
|
||||
{
|
||||
public static class PlayerOnTick
|
||||
{
|
||||
public static void Load()
|
||||
{
|
||||
Instance.RegisterListener<OnTick>(() =>
|
||||
{
|
||||
foreach (var player in Utilities.GetPlayers())
|
||||
{
|
||||
if (player != null && player.IsValid)
|
||||
{
|
||||
UpdatePlayerHud(player);
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
private static void UpdatePlayerHud(CCSPlayerController player)
|
||||
{
|
||||
if (player == null) return;
|
||||
|
||||
var skillPlayer = Instance.skillPlayer.FirstOrDefault(p => p.SteamID == player.SteamID);
|
||||
if (skillPlayer == null) return;
|
||||
|
||||
string infoLine = "";
|
||||
string skillLine = "";
|
||||
|
||||
if (SkillData.Skills.Count == 0)
|
||||
{
|
||||
infoLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='#FFFFFF'>{Localization.GetTranslation("your_skill")}:</font> <br>";
|
||||
skillLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='#FFFFFF'>{Localization.GetTranslation("none")}</font> <br>";
|
||||
}
|
||||
else if (skillPlayer.IsDrawing)
|
||||
{
|
||||
var randomSkill = SkillData.Skills[Instance.Random.Next(SkillData.Skills.Count)];
|
||||
infoLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='#FFFFFF'>{Localization.GetTranslation("drawing_skill")}:</font> <br>";
|
||||
skillLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='{randomSkill.Color}'>{randomSkill.Name}</font> <br>";
|
||||
}
|
||||
else if (!skillPlayer.IsDrawing)
|
||||
{
|
||||
if (player?.IsValid == true && player?.PawnIsAlive == true)
|
||||
{
|
||||
var skillInfo = SkillData.Skills.FirstOrDefault(s => s.Skill == skillPlayer.Skill);
|
||||
if (skillInfo != null)
|
||||
{
|
||||
infoLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='#FFFFFF'>{Localization.GetTranslation("your_skill")}:</font> <br>";
|
||||
skillLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='{skillInfo.Color}'>{skillInfo.Name}</font> <br>";
|
||||
}
|
||||
} else if (player?.IsValid == true)
|
||||
{
|
||||
var pawn = player.Pawn.Value;
|
||||
if (pawn == null) return;
|
||||
|
||||
var observedPlayer = Utilities.GetPlayers().FirstOrDefault(p => p?.Pawn?.Value?.Handle == pawn?.ObserverServices?.ObserverTarget?.Value?.Handle);
|
||||
if (observedPlayer == null) return;
|
||||
|
||||
var observeredPlayerSkill = Instance.skillPlayer.FirstOrDefault(p => p.SteamID == observedPlayer.SteamID);
|
||||
if (observeredPlayerSkill == null) return;
|
||||
|
||||
var observeredPlayerSkillInfo = SkillData.Skills.FirstOrDefault(s => s.Skill == observeredPlayerSkill.Skill);
|
||||
if (observeredPlayerSkillInfo == null) return;
|
||||
|
||||
infoLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='#FFFFFF'>{Localization.GetTranslation("observer_skill")} {observeredPlayerSkill.PlayerName}:</font> <br>";
|
||||
skillLine = $"<font class='fontSize-l' class='fontWeight-Bold' color='{observeredPlayerSkillInfo.Color}'>{observeredPlayerSkillInfo.Name}</font> <br>";
|
||||
}
|
||||
}
|
||||
|
||||
if (string.IsNullOrEmpty(infoLine) && string.IsNullOrEmpty(skillLine))
|
||||
return;
|
||||
|
||||
var hudContent = infoLine + skillLine;
|
||||
player.PrintToCenterHtml(hudContent);
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue