DiseaseSpreader.cs
using Facepunch.BombRoyale;
namespace Sandbox;
public class DiseaseSpreader : Component, Component.ITriggerListener
{
[Property] public Player Player { get; set; }
public TimeUntil IsActive { get; set; }
void ITriggerListener.OnTriggerEnter( Collider other )
{
if ( !Networking.IsHost ) return;
if ( !IsActive ) return;
var otherPlayer = other.Components.GetInAncestorsOrSelf<Player>();
if ( !otherPlayer.IsValid() ) return;
if ( otherPlayer.Disease == DiseaseType.None )
return;
if ( Player.Disease != DiseaseType.None )
return;
otherPlayer.UnlockAchievement( "catch_disease" );
Player.GiveDisease( otherPlayer.Disease );
}
}