diff --git a/Assets/Scripts/Game/Entities/PlayerEntity.cs b/Assets/Scripts/Game/Entities/PlayerEntity.cs index aac00f4b76..9081956bd4 100644 --- a/Assets/Scripts/Game/Entities/PlayerEntity.cs +++ b/Assets/Scripts/Game/Entities/PlayerEntity.cs @@ -2346,6 +2346,22 @@ void SetCrimeCommitted(Crimes crime) bool suppressCrime = racialOverride != null && racialOverride.SuppressCrime; crimeCommitted = (!suppressCrime) ? crime : Crimes.None; + + RaiseOnCrimeUpdateEvent(crimeCommitted); + } + + // Allows modders to easily detect if a crime has been committed + // This will raise when the player's crime is set to None! + // Make sure to account for that when necessary. + public delegate void OnCrimeUpdateHandler(Crimes crime); + public event OnCrimeUpdateHandler OnCrimeUpdate; + protected void RaiseOnCrimeUpdateEvent(Crimes crime) + { + if (SaveLoadManager.Instance.LoadInProgress) + return; + + if (OnCrimeUpdate != null) + OnCrimeUpdate(crime); } #endregion