@quenty/rogue-humanoid 10.44.0 → 10.45.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,22 @@
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.45.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/rogue-humanoid@10.44.0...@quenty/rogue-humanoid@10.45.0) (2026-04-22)
7
+
8
+
9
+ ### Bug Fixes
10
+
11
+ * Dependency ([15b55c8](https://github.com/Quenty/NevermoreEngine/commit/15b55c8ec0bbad7bb650684fd496545e77c665c3))
12
+
13
+
14
+ ### Features
15
+
16
+ * RogueHumanoidInterface ([d5caa44](https://github.com/Quenty/NevermoreEngine/commit/d5caa4446e69b132626f1094f17400666a5380bc))
17
+
18
+
19
+
20
+
21
+
6
22
  # [10.44.0](https://github.com/Quenty/NevermoreEngine/compare/@quenty/rogue-humanoid@10.43.0...@quenty/rogue-humanoid@10.44.0) (2026-04-14)
7
23
 
8
24
  **Note:** Version bump only for package @quenty/rogue-humanoid
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@quenty/rogue-humanoid",
3
- "version": "10.44.0",
3
+ "version": "10.45.0",
4
4
  "description": "Roguelike humanoid properties which can be modified",
5
5
  "keywords": [
6
6
  "Roblox",
@@ -42,10 +42,11 @@
42
42
  "@quenty/rx": "13.27.0",
43
43
  "@quenty/servicebag": "11.16.0",
44
44
  "@quenty/table": "3.9.2",
45
+ "@quenty/tie": "10.37.0",
45
46
  "@quenty/valueobject": "13.29.0"
46
47
  },
47
48
  "publishConfig": {
48
49
  "access": "public"
49
50
  },
50
- "gitHead": "f8273b1b201921976953174e30958440e44e64cb"
51
+ "gitHead": "3c8ddf4d333cab1454581719a6c804773110993f"
51
52
  }
@@ -7,6 +7,7 @@ local require = require(script.Parent.loader).load(script)
7
7
 
8
8
  local Binder = require("Binder")
9
9
  local RogueHumanoidBase = require("RogueHumanoidBase")
10
+ local RogueHumanoidInterface = require("RogueHumanoidInterface")
10
11
  local ServiceBag = require("ServiceBag")
11
12
 
12
13
  local RogueHumanoidClient = setmetatable({}, RogueHumanoidBase)
@@ -16,6 +17,8 @@ RogueHumanoidClient.__index = RogueHumanoidClient
16
17
  function RogueHumanoidClient.new(humanoid: Humanoid, serviceBag: ServiceBag.ServiceBag)
17
18
  local self = setmetatable(RogueHumanoidBase.new(humanoid, serviceBag), RogueHumanoidClient)
18
19
 
20
+ self._maid:GiveTask(RogueHumanoidInterface.Client:Implement(self._obj, self))
21
+
19
22
  return self
20
23
  end
21
24
 
@@ -7,6 +7,7 @@ local require = require(script.Parent.loader).load(script)
7
7
 
8
8
  local PlayerHumanoidBinder = require("PlayerHumanoidBinder")
9
9
  local RogueHumanoidBase = require("RogueHumanoidBase")
10
+ local RogueHumanoidInterface = require("RogueHumanoidInterface")
10
11
  local ServiceBag = require("ServiceBag")
11
12
 
12
13
  local RogueHumanoid = setmetatable({}, RogueHumanoidBase)
@@ -16,6 +17,8 @@ RogueHumanoid.__index = RogueHumanoid
16
17
  function RogueHumanoid.new(humanoid: Humanoid, serviceBag: ServiceBag.ServiceBag)
17
18
  local self = setmetatable(RogueHumanoidBase.new(humanoid, serviceBag), RogueHumanoid)
18
19
 
20
+ self._maid:GiveTask(RogueHumanoidInterface.Server:Implement(self._obj, self))
21
+
19
22
  return self
20
23
  end
21
24
 
@@ -86,6 +86,20 @@ function RogueHumanoidBase.new(humanoid: Humanoid, serviceBag: ServiceBag.Servic
86
86
  return self
87
87
  end
88
88
 
89
+ function RogueHumanoidBase:CreateMultiplier(property: string, amount: number, source: Instance?): ValueBase
90
+ local rogueProperty = assert(self._properties:GetRogueProperty(property), "Bad property")
91
+ assert(type(rogueProperty.Value) == "number", "Incompatible property")
92
+
93
+ return rogueProperty:CreateMultiplier(amount, source)
94
+ end
95
+
96
+ function RogueHumanoidBase:CreateAdditive(property: string, amount: number, source: Instance?): ValueBase
97
+ local rogueProperty = assert(self._properties:GetRogueProperty(property), "Bad property")
98
+ assert(type(rogueProperty.Value) == "number", "Incompatible property")
99
+
100
+ return rogueProperty:CreateAdditive(amount, source)
101
+ end
102
+
89
103
  function RogueHumanoidBase:_setupScaling()
90
104
  self._maid:GiveTask(self._scaleState
91
105
  :Observe()
@@ -0,0 +1,13 @@
1
+ --!strict
2
+ --[=[
3
+ @class RogueHumanoidInterface
4
+ ]=]
5
+
6
+ local require = require(script.Parent.loader).load(script)
7
+
8
+ local TieDefinition = require("TieDefinition")
9
+
10
+ return TieDefinition.new("RogueHumanoid", {
11
+ CreateMultiplier = TieDefinition.Types.METHOD,
12
+ CreateAdditive = TieDefinition.Types.METHOD,
13
+ })