Skip to content

Commit

Permalink
feat: SFSE plugin version data update for 1.8.86 struct compat break (#…
Browse files Browse the repository at this point in the history
…230)

This updates the SFSE version data to work with
ianpatt/sfse@59a5bba.
Please do not merge until PR #229 is in.

Plugins releasing between taking this change and the next SFSE update
(will either release something with busted class definitions just so
plugins are OK, or fix that up and release depending on how long that
takes) can call `CompatibleVersions({RUNTIME_SF_1_8_86})` on their
version struct to explicitly specify compatibility with the current
version of the game.
  • Loading branch information
ianpatt authored Nov 23, 2023
1 parent 8b92099 commit 3e36b4c
Showing 1 changed file with 3 additions and 1 deletion.
4 changes: 3 additions & 1 deletion CommonLibSF/include/SFSE/Interfaces.h
Original file line number Diff line number Diff line change
Expand Up @@ -187,11 +187,13 @@ namespace SFSE

constexpr void UsesSigScanning(const bool a_value) noexcept { SetOrClearBit(addressIndependence, 1 << 0, a_value); }

// 1 << 1 is for address library v1
constexpr void UsesAddressLibrary(const bool a_value) noexcept { SetOrClearBit(addressIndependence, 1 << 1, a_value); }

constexpr void HasNoStructUse(const bool a_value) noexcept { SetOrClearBit(structureCompatibility, 1 << 0, a_value); }

constexpr void IsLayoutDependent(const bool a_value) noexcept { SetOrClearBit(structureCompatibility, 1 << 1, a_value); }
// 1 << 2 is for runtime 1.8.86 and later
constexpr void IsLayoutDependent(const bool a_value) noexcept { SetOrClearBit(structureCompatibility, 1 << 2, a_value); }

constexpr void CompatibleVersions(std::initializer_list<REL::Version> a_versions) noexcept
{
Expand Down

0 comments on commit 3e36b4c

Please sign in to comment.