Skip to content

Commit aade807

Browse files
committed
fix: fixed ClockTime reading (writing to ClockTime does not work)
1 parent 500c709 commit aade807

3 files changed

Lines changed: 13 additions & 13 deletions

File tree

‎pyproject.toml‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
44

55
[project]
66
name = "robloxmemoryapi"
7-
version = "0.2.0"
7+
version = "0.2.1"
88
description = "Python Library that abstracts reading and writing data from the Roblox DataModel"
99
readme = { file = "README.md", content-type = "text/markdown" }
1010
requires-python = ">=3.9"

‎src/robloxmemoryapi/utils/memory.py‎

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -292,6 +292,10 @@ def read_int(self, address: int, offset: int = 0) -> int:
292292
buffer = self.read(address + offset, 4)
293293
return int.from_bytes(buffer, 'little') if len(buffer) == 4 else 0
294294

295+
def read_int64(self, address: int, offset: int = 0) -> int:
296+
buffer = self.read(address + offset, 8)
297+
return int.from_bytes(buffer, 'little') if len(buffer) == 8 else 0
298+
295299
def read_long(self, address: int, offset: int = 0) -> int:
296300
buffer = self.read(address + offset, 8)
297301
return int.from_bytes(buffer, 'little') if len(buffer) == 8 else 0
@@ -330,6 +334,9 @@ def read_floats(self, address: int, amount: int):
330334
def write_int(self, address: int, value: int) -> None:
331335
self.write(address, struct.pack('<I', value & 0xFFFFFFFF))
332336

337+
def write_int64(self, address: int, value: int) -> None:
338+
self.write(address, struct.pack('<Q', value & 0xFFFFFFFFFFFFFFFF))
339+
333340
def write_long(self, address: int, value: int) -> None:
334341
self.write(address, struct.pack('<Q', value & 0xFFFFFFFFFFFFFFFF))
335342

‎src/robloxmemoryapi/utils/rbx/instance.py‎

Lines changed: 5 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -2283,23 +2283,16 @@ def __init__(self, memory_module, game: DataModel):
22832283
except (KeyError, OSError):
22842284
self.failed = True
22852285

2286-
# props #
2286+
# props #
22872287
@property
22882288
def ClockTime(self):
22892289
if self.failed: return 0.0
2290-
return self.memory_module.read_float(
2290+
2291+
# clocktime is in milliseconds
2292+
return self.memory_module.read_int64(
22912293
self.instance.raw_address,
22922294
self.offset_base["ClockTime"]
2293-
)
2294-
2295-
@ClockTime.setter
2296-
def ClockTime(self, value: float):
2297-
if self.failed: return
2298-
self._ensure_writable()
2299-
self.memory_module.write_float(
2300-
self.instance.raw_address + self.offset_base["ClockTime"],
2301-
float(value)
2302-
)
2295+
) / 3600000000
23032296

23042297
@property
23052298
def Brightness(self):

0 commit comments

Comments
 (0)