@quenty/conditions 10.20.3 → 10.20.4-canary.11a5dcf.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,17 @@
|
|
|
3
3
|
All notable changes to this project will be documented in this file.
|
|
4
4
|
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
|
|
5
5
|
|
|
6
|
+
## [10.20.4-canary.11a5dcf.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/conditions@10.20.3...@quenty/conditions@10.20.4-canary.11a5dcf.0) (2025-05-10)
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
### Bug Fixes
|
|
10
|
+
|
|
11
|
+
* Additional type checking updates ([05ba29a](https://github.com/Quenty/NevermoreEngine/commit/05ba29a03efc9f3feed74b34f1d9dfb237496214))
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
|
|
6
17
|
## [10.20.3](https://github.com/Quenty/NevermoreEngine/compare/@quenty/conditions@10.20.2...@quenty/conditions@10.20.3) (2025-04-10)
|
|
7
18
|
|
|
8
19
|
**Note:** Version bump only for package @quenty/conditions
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@quenty/conditions",
|
|
3
|
-
"version": "10.20.
|
|
3
|
+
"version": "10.20.4-canary.11a5dcf.0",
|
|
4
4
|
"description": "Adornee based conditional system that is sufficiently generic to script gameplay.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"Roblox",
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
},
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"dependencies": {
|
|
26
|
-
"@quenty/attributeutils": "
|
|
27
|
-
"@quenty/brio": "
|
|
28
|
-
"@quenty/instanceutils": "
|
|
29
|
-
"@quenty/loader": "
|
|
30
|
-
"@quenty/maid": "
|
|
31
|
-
"@quenty/rx": "
|
|
32
|
-
"@quenty/statestack": "
|
|
33
|
-
"@quenty/tie": "
|
|
26
|
+
"@quenty/attributeutils": "14.17.4-canary.11a5dcf.0",
|
|
27
|
+
"@quenty/brio": "14.17.4-canary.11a5dcf.0",
|
|
28
|
+
"@quenty/instanceutils": "13.17.4-canary.11a5dcf.0",
|
|
29
|
+
"@quenty/loader": "10.8.4-canary.11a5dcf.0",
|
|
30
|
+
"@quenty/maid": "3.4.4-canary.11a5dcf.0",
|
|
31
|
+
"@quenty/rx": "13.17.4-canary.11a5dcf.0",
|
|
32
|
+
"@quenty/statestack": "14.18.4-canary.11a5dcf.0",
|
|
33
|
+
"@quenty/tie": "10.20.4-canary.11a5dcf.0"
|
|
34
34
|
},
|
|
35
35
|
"contributors": [
|
|
36
36
|
"Quenty"
|
|
@@ -38,5 +38,5 @@
|
|
|
38
38
|
"publishConfig": {
|
|
39
39
|
"access": "public"
|
|
40
40
|
},
|
|
41
|
-
"gitHead": "
|
|
41
|
+
"gitHead": "11a5dcf7d4c7a0bfbf3337e97d30e8346ea09d3f"
|
|
42
42
|
}
|
|
@@ -44,6 +44,7 @@ local require = require(script.Parent.loader).load(script)
|
|
|
44
44
|
local CollectionService = game:GetService("CollectionService")
|
|
45
45
|
local RunService = game:GetService("RunService")
|
|
46
46
|
|
|
47
|
+
local AttributeUtils = require("AttributeUtils")
|
|
47
48
|
local Maid = require("Maid")
|
|
48
49
|
local Observable = require("Observable")
|
|
49
50
|
local Rx = require("Rx")
|
|
@@ -52,7 +53,6 @@ local RxBrioUtils = require("RxBrioUtils")
|
|
|
52
53
|
local RxInstanceUtils = require("RxInstanceUtils")
|
|
53
54
|
local StateStack = require("StateStack")
|
|
54
55
|
local TieUtils = require("TieUtils")
|
|
55
|
-
local AttributeUtils = require("AttributeUtils")
|
|
56
56
|
|
|
57
57
|
local VALUE_WHEN_EMPTY_ATTRIBUTE = "ValueWhenEmpty"
|
|
58
58
|
local DEFAULT_VALUE_WHEN_EMPTY_WHEN_UNDEFINED = true
|
|
@@ -501,17 +501,28 @@ function AdorneeConditionUtils._getObservableFromConditionObj(conditionObj: Inst
|
|
|
501
501
|
|
|
502
502
|
-- TODO: Allow yielding here
|
|
503
503
|
if coroutine.status(current) ~= "dead" then
|
|
504
|
-
warn(
|
|
504
|
+
warn(
|
|
505
|
+
string.format(
|
|
506
|
+
"[AdorneeConditionUtils.observeAllowed] - Getting condition yielded from %q",
|
|
507
|
+
conditionObj:GetFullName()
|
|
508
|
+
)
|
|
509
|
+
)
|
|
505
510
|
return Rx.EMPTY
|
|
506
511
|
end
|
|
507
512
|
|
|
508
513
|
-- TODO: Allow non-observables.
|
|
509
514
|
if not (observable and Observable.isObservable(observable)) then
|
|
510
|
-
warn(
|
|
515
|
+
warn(
|
|
516
|
+
string.format(
|
|
517
|
+
"[AdorneeConditionUtils.observeAllowed] - Failed to get observable from %q. Got %q",
|
|
518
|
+
conditionObj:GetFullName(),
|
|
519
|
+
tostring(observable)
|
|
520
|
+
)
|
|
521
|
+
)
|
|
511
522
|
return Rx.EMPTY
|
|
512
523
|
end
|
|
513
524
|
|
|
514
525
|
return observable
|
|
515
526
|
end
|
|
516
527
|
|
|
517
|
-
return AdorneeConditionUtils
|
|
528
|
+
return AdorneeConditionUtils
|
|
@@ -7,8 +7,8 @@ local loader = ServerScriptService:FindFirstChild("LoaderUtils", true).Parent
|
|
|
7
7
|
local require = require(loader).bootstrapGame(ServerScriptService.conditions)
|
|
8
8
|
|
|
9
9
|
local AdorneeConditionUtils = require("AdorneeConditionUtils")
|
|
10
|
-
local TieDefinition = require("TieDefinition")
|
|
11
10
|
local AttributeValue = require("AttributeValue")
|
|
11
|
+
local TieDefinition = require("TieDefinition")
|
|
12
12
|
|
|
13
13
|
do
|
|
14
14
|
local conditionFolder = AdorneeConditionUtils.createConditionContainer()
|
|
@@ -45,12 +45,11 @@ do
|
|
|
45
45
|
door.Name = "Door"
|
|
46
46
|
door.Parent = workspace
|
|
47
47
|
|
|
48
|
-
|
|
49
48
|
local openableInterface = TieDefinition.new("Openable", {
|
|
50
|
-
IsOpen = TieDefinition.Types.PROPERTY
|
|
49
|
+
IsOpen = TieDefinition.Types.PROPERTY,
|
|
51
50
|
})
|
|
52
51
|
openableInterface:Implement(door, {
|
|
53
|
-
IsOpen = AttributeValue.new(door, "IsOpen", false)
|
|
52
|
+
IsOpen = AttributeValue.new(door, "IsOpen", false),
|
|
54
53
|
})
|
|
55
54
|
|
|
56
55
|
local canOpenCondition = AdorneeConditionUtils.createConditionContainer()
|
|
@@ -63,4 +62,4 @@ do
|
|
|
63
62
|
AdorneeConditionUtils.observeConditionsMet(canOpenCondition, door):Subscribe(function(isAllowed)
|
|
64
63
|
print("Is door opening allowed", isAllowed)
|
|
65
64
|
end)
|
|
66
|
-
end
|
|
65
|
+
end
|