Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/core/StarNetElement.hpp
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2024-09-11 18:22:44 +1000
committerKae <80987908+Novaenia@users.noreply.github.com>2024-09-11 18:22:44 +1000
commit7408981e131f7cdd897a3c5924ea14b272986e88 (patch)
tree4e99c67e587aa7c1e9b4dbd046177efbc4ba4011 /source/core/StarNetElement.hpp
parent5a75473e16afb8152aab943fd316d9820835f465 (diff)
use a version number rather than a bool
more flexible, allows for backwards compat with older OpenSB versions & not just vanilla Starbound
Diffstat (limited to 'source/core/StarNetElement.hpp')
-rw-r--r--source/core/StarNetElement.hpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/source/core/StarNetElement.hpp b/source/core/StarNetElement.hpp
index 393dd3d..7d73b85 100644
--- a/source/core/StarNetElement.hpp
+++ b/source/core/StarNetElement.hpp
@@ -55,23 +55,25 @@ public:
// received even if no deltas are produced, so no extrapolation takes place.
virtual void blankNetDelta(float interpolationTime);
- NetCompatibilityFilter netCompatibilityFilter() const;
- void setNetCompatibilityFilter(NetCompatibilityFilter netFilter);
+ VersionNumber compatibilityVersion() const;
+ void setCompatibilityVersion(VersionNumber version);
bool checkWithRules(NetCompatibilityRules const& rules) const;
private:
- NetCompatibilityFilter m_netCompatibilityFilter = NetCompatibilityFilter::None;
+ VersionNumber m_netCompatibilityVersion = AnyVersion;
};
-inline NetCompatibilityFilter NetElement::netCompatibilityFilter() const {
- return m_netCompatibilityFilter;
+inline VersionNumber NetElement::compatibilityVersion() const {
+ return m_netCompatibilityVersion;
}
-inline void NetElement::setNetCompatibilityFilter(NetCompatibilityFilter netFilter) {
- m_netCompatibilityFilter = netFilter;
+inline void NetElement::setCompatibilityVersion(VersionNumber version) {
+ m_netCompatibilityVersion = version;
}
inline bool NetElement::checkWithRules(NetCompatibilityRules const& rules) const {
- return rules.checkFilter(m_netCompatibilityFilter);
+ if (m_netCompatibilityVersion != AnyVersion)
+ return rules.version() >= m_netCompatibilityVersion;
+ return true;
}
}