v1.2.4.b1

This commit is contained in:
ByDexter 2026-09-02 01:44:59 +03:00
parent dcf4020981
commit 12d04191f3
8 changed files with 48 additions and 7 deletions

View file

@ -183,8 +183,8 @@ namespace src.player.skills
Vector newPos = new(playerPawn.AbsOrigin.X, playerPawn.AbsOrigin.Y, playerPawn.AbsOrigin.Z + 30);
QAngle newAngle = new(playerPawn.AbsRotation.X, playerPawn.AbsRotation.Y, playerPawn.AbsRotation.Z);
emptyProp.Teleport(newPos, newAngle);
emptyProp.DispatchSpawn();
emptyProp.Teleport(newPos, newAngle);
Utilities.SetStateChanged(emptyProp, "CBaseEntity", "m_CBodyComponent");

View file

@ -127,8 +127,8 @@ namespace src.player.skills
Vector newPos = new(playerPawn.AbsOrigin.X, playerPawn.AbsOrigin.Y, playerPawn.AbsOrigin.Z + 30);
QAngle newAngle = new(playerPawn.AbsRotation.X, playerPawn.AbsRotation.Y, playerPawn.AbsRotation.Z);
emptyProp.Teleport(newPos, newAngle);
emptyProp.DispatchSpawn();
emptyProp.Teleport(newPos, newAngle);
Utilities.SetStateChanged(emptyProp, "CBaseEntity", "m_CBodyComponent");

View file

@ -156,8 +156,8 @@ namespace src.player.skills
Vector newPos = new(playerPawn.AbsOrigin.X, playerPawn.AbsOrigin.Y, playerPawn.AbsOrigin.Z + 30);
QAngle newAngle = new(playerPawn.AbsRotation.X, playerPawn.AbsRotation.Y, playerPawn.AbsRotation.Z);
emptyProp.Teleport(newPos, newAngle);
emptyProp.DispatchSpawn();
emptyProp.Teleport(newPos, newAngle);
Utilities.SetStateChanged(emptyProp, "CBaseEntity", "m_CBodyComponent");

View file

@ -114,7 +114,8 @@ namespace src.player.skills
(WeaponInfo[]? playerWeapon, bool playerC4) = GetWeapons(player);
(WeaponInfo[]? enemyWeapon, bool enemyC4) = GetWeapons(enemy);
if (playerWeapon == null || !playerWeapon.Any(w => weapons.Contains(w.Name)))
if (playerWeapon == null || !playerWeapon.Any(w => weapons.Contains(w.Name))
|| enemyWeapon == null || !enemyWeapon.Any(w => weapons.Contains(w.Name)))
{
skillInfo.FindedEnemy = true;
skillInfo.HaveWeapon = false;
@ -268,7 +269,12 @@ namespace src.player.skills
private static CCSPlayerController? GetRandomEnemy(CCSPlayerController player)
{
CCSPlayerController[] enemies = [.. PlayerManager.GetTickPlayers().FindAll(e => e.Team != player.Team && e.PlayerPawn?.Value?.Health > 0)];
CCSPlayerController[] enemies = [.. PlayerManager.GetTickPlayers().FindAll(e =>
e != null && e.IsValid
&& e.Team != player.Team && e.Team != CsTeam.Spectator && e.Team != CsTeam.None
&& e.LifeState == (byte)LifeState_t.LIFE_ALIVE
&& e.PlayerPawn?.Value != null && e.PlayerPawn.Value.IsValid
&& e.PlayerPawn.Value.Health > 0)];
if (enemies.Length == 0) return null;
return enemies[Instance.Random.Next(enemies.Length)];
}