Skip to content

Releases: obvEve/SecretAPI

2.0.3

18 Dec 11:56
0726fc8

Choose a tag to compare

What's Changed

  • MirrorExtensions.SendFakeCassieMessage has been obsoleted
  • Fixed a wrong number being shown within ExampleDropdownSetting
  • ExampleKeybindSetting now implements CanView - requiring RA access to use

Full Changelog: 2.0.2...2.0.3

2.0.2

25 Oct 19:58
2c07d6c

Choose a tag to compare

Obsoletes

  • All of RoleExtensions has been obsoleted, in favor of their basegame/labapi counterparts

Additions

  • IPriority interface - Used by CallOnLoadAttribute/CallOnUnloadAttribute

Changes

  • SecretAPI will now be considered Transparent (On its own should no longer add modded tag to a server)
  • RoomExtensions now considers HczWaysideIncinerator & Hcz096 as invalid rooms

2.0.1

26 Sep 15:57
719f00a

Choose a tag to compare

Additions

  • bool CollectionExtensions.TryGetRandomValue<T>(IEnumerable<T>, out T) - Will return false on empty collections or if value returned is null

Bug Fixes

  • CollectionExtensions.GetRandomValue - Fixed ArgumentOutOfRangeException - This will now return default (possibly null) when handling size 0 collections
  • CustomSetting - Fixed sending settings to npcs

Full Changelog: 2.0.0...2.0.1

2.0.0

21 Sep 14:10
e886b66

Choose a tag to compare

Whats Changed

License

MIT License has been applied to the project

Additions

  • Added CallOnLoadAttribute & CallOnUnloadAttribute which you can use to enable/disable features
  • Added HarmonyExtensions.SafePatch(Harmony, Type)
  • Added PlayerExtensions.GetEffect(Player, string
  • Added CustomTickingPlayerEffect - Will tick every X seconds via OnTick(), rather than a constant Update
  • Added IsServerOnly, Label(Setter), DescriptionHint, Id(Init), CollectionId, IsShared properties to CustomSetting

Fixes

  • Fixed CustomSetting being overwritten by external plugins

Breaking Changes

  • Removed all previously obsoleted methods, classes, etc.
  • Removed PlayerExtensions.HasGamePermission
  • Removed IAttackDamageModifierEffect - You should make your own variant if its needed
  • DoorPermissionCheck.InventoryExludingCurrent renamed to InventoryExcludingCurrent
  • Reworked CustomSetting to allow per player setting values
    • Will now use Player? KnownOwner rather than Player method params - This is only null on the original setting created
    • CustomSetting.TryGet renamed to GetPlayerSetting
    • CustomSetting.PersonalizeSetting will be called before the setting is sent - should be used to set exclusive options
    • CustomSetting.HandleSettingUpdate no longer had Player overload

Full Changelog: 1.1.3...2.0.0

2.0.0-beta5

20 Sep 11:52

Choose a tag to compare

2.0.0-beta5 Pre-release
Pre-release

⚠️ You are recommended to begin updating as 1.x will no longer be maintained

2.0.0-beta5

Changes

  • Fixed some docs
  • Added CustomDropdownSetting::SyncedIndex
  • Renamed CustomSetting::UpdatePlayerSetting -> PersonalizeSetting

Full Changelog: 2.0.0-beta4...2.0.0-beta5

2.0.0

Additions

  • Added CallOnUnloadAttribute which you can use to disable your stuff (make sure to call from Plugin.Disable or equivalent)
  • Added HarmonyExtensions.SafePatch(Harmony, Type
  • Added PlayerExtensions.GetEffect(Player, string
  • Added CustomTickingPlayerEffect
  • Added IsServerOnly, Label(Setter), DescriptionHint, Id(Init), CollectionId, IsShared properties to CustomSetting

Breaking Changes

  • Removed all previously obsoleted methods, classes, etc.
  • Removed IAttackDamageModifierEffect - You should make your own variant if its needed
  • DoorPermissionCheck.InventoryExludingCurrent renamed to InventoryExcludingCurrent
  • Reworked CustomSetting to allow per player setting values
    • Will now use Player? KnownOwner rather than Player method params - This is only null on the original setting created
    • CustomSetting.TryGet renamed to GetPlayerSetting
    • CustomSetting.PersonalizeSetting will be called before the setting is sent - should be used to set exclusive options
    • CustomSetting.HandleSettingUpdate no longer had Player overload

1.1.3

04 Aug 15:57
a60d82b

Choose a tag to compare

⚠️ Version 1.x will no longer be maintained anymore

What's Changed

  • Fixed missing method exception

Full Changelog: 1.1.2...1.1.3

2.0.0-beta4

03 Aug 13:34

Choose a tag to compare

2.0.0-beta4 Pre-release
Pre-release

⚠️This is a release of SCP:SL 14.1.3 - Do not put on a server unless you have updated.

2.0.0-beta4

Changes

  • Removed AddRegeneration, GiveRandomCandy, GiveCandy and HasGamePermission from PlayerExtensions
  • Added IsServerOnly, Label(Setter), DescriptionHint, Id(Init), CollectionId, IsShared properties to CustomSetting

Full Changelog: 2.0.0-beta3...2.0.0-beta4

2.0.0

Additions

  • Added CallOnUnloadAttribute which you can use to disable your stuff (make sure to call from Plugin.Disable or equivalent)
  • Added HarmonyExtensions.SafePatch(Harmony, Type
  • Added PlayerExtensions.GetEffect(Player, string
  • Added CustomTickingPlayerEffect
  • Added IsServerOnly, Label(Setter), DescriptionHint, Id(Init), CollectionId, IsShared properties to CustomSetting

Breaking Changes

  • Removed all obsoletes
  • Removed IAttackDamageModifierEffect - You should make your own variant if its needed
  • Removed DoorPermissionCheck.InventoryExludingCurrent replaced by InventoryExcludingCurrent
  • Reworked CustomSetting to allow per player setting values
    • Will now use Player? KnownOwner rather than Player method params
    • CustomSetting.TryGet removed to GetPlayerSetting
    • CustomSetting.UpdatePlayerSetting will be called before the setting is sent - should be used to set exclusive options
    • CustomSetting.HandleSettingUpdate no longer had Player overload

2.0.0-beta3

29 Jul 15:33

Choose a tag to compare

2.0.0-beta3 Pre-release
Pre-release

2.0.0-beta3

The changelog will be equal to that of the entire beta and NOT beta 2 -> 3

Additions

  • Added CallOnUnloadAttribute which you can use to disable your stuff (make sure to call from Plugin.Disable or equivalent)
  • Added HarmonyExtensions.SafePatch(Harmony, Type
  • Added PlayerExtensions.AddRegeneration(Player, float, float)
  • Added PlayerExtensions.GetEffect(Player, string
  • Added PlayerExtensions.GiveRandomCandy(Player, ItemAddReason)
  • Added PlayerExtensions.GiveCandy(Player, CandyKindID, ItemAddReason)
  • Added CustomTickingPlayerEffect

Breaking Changes

  • Removed all obsoletes
  • Removed IAttackDamageModifierEffect - You should make your own variant if its needed
  • Removed DoorPermissionCheck.InventoryExludingCurrent replaced by InventoryExcludingCurrent
  • Reworked CustomSetting to allow per player setting values
    • Will now use Player? KnownOwner rather than Player method call
    • CustomSetting.TryGet removed to GetPlayerSetting
    • CustomSetting.UpdatePlayerSetting will be called before the setting is sent - should be used to set exclusive options
    • CustomSetting.HandleSettingUpdate no longer had Player overload

Changes

  • Changed PlayerExtensions.HasGamePermission to use ServerRoles.Permissions instead of UserGroup
  • Improved documentation on types and methods

2.0.0-beta2

01 Jul 20:42

Choose a tag to compare

2.0.0-beta2 Pre-release
Pre-release

What's Changed

  • Removed some obsoletes
  • MirrorExtensions.ProperWrite was made into an extension method
  • Improved some docs
  • Pooled the NetworkWriter used internally for CustomSetting

Full Changelog: 2.0.0-beta1...2.0.0-beta2

2.0.0-beta1

01 Jul 10:51

Choose a tag to compare

2.0.0-beta1 Pre-release
Pre-release

What's Changed

  • More player extensions by @Misfiy in #65
  • HarmonyExtensions.SafePatch by @Misfiy in #64
  • CustomTickingPlayerEffect by @Misfiy in #63
  • CallOnLoad & CallOnUnload by @Misfiy in #62
  • Player Specific settings by @Misfiy in #59

Full Changelog: 1.1.2...2.0.0-beta1