rom24-quickmud-python 2.9.3__py3-none-any.whl → 2.9.5__py3-none-any.whl
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.
- mud/mob_cmds.py +8 -0
- mud/models/character.py +13 -0
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/METADATA +1 -1
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/RECORD +8 -8
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/WHEEL +0 -0
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/entry_points.txt +0 -0
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/licenses/LICENSE +0 -0
- {rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/top_level.txt +0 -0
mud/mob_cmds.py
CHANGED
|
@@ -648,11 +648,19 @@ def do_mpoload(ch: Character, argument: str) -> None:
|
|
|
648
648
|
if mode.startswith("r"):
|
|
649
649
|
room.add_object(obj)
|
|
650
650
|
return
|
|
651
|
+
# mirroring ROM src/mob_cmds.c:603-607 → src/handler.c:1626 obj_to_char.
|
|
652
|
+
# Route through Character.add_object so the INV-013 carrier field
|
|
653
|
+
# and INV-011 carry counters stay in lockstep with inventory.
|
|
654
|
+
add = getattr(ch, "add_object", None)
|
|
655
|
+
if callable(add):
|
|
656
|
+
add(obj)
|
|
657
|
+
return
|
|
651
658
|
inventory = getattr(ch, "inventory", None)
|
|
652
659
|
if inventory is None:
|
|
653
660
|
inventory = []
|
|
654
661
|
ch.inventory = inventory
|
|
655
662
|
inventory.append(obj)
|
|
663
|
+
obj.location = ch
|
|
656
664
|
|
|
657
665
|
|
|
658
666
|
def _resolve_transfer_location(ch: Character, token: str) -> Room | None:
|
mud/models/character.py
CHANGED
|
@@ -540,7 +540,12 @@ class Character:
|
|
|
540
540
|
return base_weight + silver // 10 + (gold * 2) // 5
|
|
541
541
|
|
|
542
542
|
def add_object(self, obj: Object) -> None:
|
|
543
|
+
# mirroring ROM src/handler.c:1626 obj_to_char — the carrier
|
|
544
|
+
# field is set atomically with the inventory append. Using the
|
|
545
|
+
# INV-013 `obj.location` property dispatch sets `carried_by`
|
|
546
|
+
# and clears `in_room` / `in_obj` per the property contract.
|
|
543
547
|
self.inventory.append(obj)
|
|
548
|
+
obj.location = self
|
|
544
549
|
self.carry_number += _object_carry_number(obj)
|
|
545
550
|
self._recalculate_carry_weight()
|
|
546
551
|
|
|
@@ -551,6 +556,10 @@ class Character:
|
|
|
551
556
|
else:
|
|
552
557
|
self.carry_number += carry_delta
|
|
553
558
|
self.equipment[slot] = obj
|
|
559
|
+
# mirroring ROM src/handler.c equip_char — equipped objs stay
|
|
560
|
+
# owned by the carrier (only wear_loc changes); INV-013 makes
|
|
561
|
+
# carried_by the canonical carrier field.
|
|
562
|
+
obj.carried_by = self
|
|
554
563
|
self._recalculate_carry_weight()
|
|
555
564
|
|
|
556
565
|
def remove_object(self, obj: Object) -> None:
|
|
@@ -563,6 +572,10 @@ class Character:
|
|
|
563
572
|
del self.equipment[slot]
|
|
564
573
|
break
|
|
565
574
|
self.carry_number = max(0, self.carry_number - carry_delta)
|
|
575
|
+
# mirroring ROM src/handler.c:1642 obj_from_char — extraction
|
|
576
|
+
# clears the carrier back-pointer atomically. INV-013.
|
|
577
|
+
if getattr(obj, "carried_by", None) is self:
|
|
578
|
+
obj.carried_by = None
|
|
566
579
|
self._recalculate_carry_weight()
|
|
567
580
|
|
|
568
581
|
# START affects_saves
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: rom24-quickmud-python
|
|
3
|
-
Version: 2.9.
|
|
3
|
+
Version: 2.9.5
|
|
4
4
|
Summary: A modern Python port of the ROM 2.4b6 MUD engine with full telnet server and JSON world loading
|
|
5
5
|
Author-email: Mark Jedrzejczyk <mark.jedrzejczyk@gmail.com>
|
|
6
6
|
Maintainer-email: Mark Jedrzejczyk <mark.jedrzejczyk@gmail.com>
|
|
@@ -7,7 +7,7 @@ mud/game_loop.py,sha256=nzGos1soW6oN3LCdl_XYlmB-k2QRI0mnpGn5JofbFXM,52109
|
|
|
7
7
|
mud/game_tick_scheduler.py,sha256=7ybo2ekDQQPGN82u6fhcrrg7tZ-JMtGy4UUrZv9_Umo,1539
|
|
8
8
|
mud/handler.py,sha256=UDX7lxaOUFvHBgIJrkxfgVjm0n7B_vD-9xCvvN2CdLM,51995
|
|
9
9
|
mud/logging.py,sha256=DoKcplYwEePAmXKE2CI_wNk4pF-pc_aouoxa5C6tXlc,582
|
|
10
|
-
mud/mob_cmds.py,sha256=
|
|
10
|
+
mud/mob_cmds.py,sha256=Hv7tFhABraQLRbQihHOHTDE4qgE0GSuue1_RQkchQW4,46158
|
|
11
11
|
mud/mobprog.py,sha256=TZiv4ZErFAlcO1TWaJryzZ5kwTZFe5DSqKVlo6qJcTc,59173
|
|
12
12
|
mud/notes.py,sha256=mJM_f1lQ-Y1us7MHzHkgfozYKQCBm84FKRjmKpgoiOE,11501
|
|
13
13
|
mud/registry.py,sha256=s8tGVKLZUU6-5c7HtBqhHQWLVxzFM4A9bpJ8avGt_0I,306
|
|
@@ -134,7 +134,7 @@ mud/models/area.py,sha256=RDn6e2N9AhoMW4d68-o8i1p1tNhuszaWjbOIkGTlW9I,835
|
|
|
134
134
|
mud/models/area_json.py,sha256=GUCWUgFf2s6DUWzcLLYhoxTP38P5cu1vrSD1W3i7D2c,731
|
|
135
135
|
mud/models/board.py,sha256=LDcNFHB7X3_BNJ9efTW_VJ-vOAQG1pPIByh1EsXseVA,6283
|
|
136
136
|
mud/models/board_json.py,sha256=XG8t7lLW7b_V3IjzbGF-o6Ym36CTgKiOiBVZb-M0BpA,472
|
|
137
|
-
mud/models/character.py,sha256=
|
|
137
|
+
mud/models/character.py,sha256=CpeRH0VIlaZanz_VnAEWH9bRMKEvatJgJ8Yk_tF3j4I,52652
|
|
138
138
|
mud/models/character_json.py,sha256=7rdI92S-JT38xb2iUyXTAJpLmFOIRy2pb6v1Yen8VQY,1046
|
|
139
139
|
mud/models/clans.py,sha256=vMeVpK4VbYBtGYxRFdg2lUmkrjkCvqEM_jCOTNiuG3g,2227
|
|
140
140
|
mud/models/classes.py,sha256=Fv0KjS339EBWqz5OBZu5TYSIDSRYpoalLTBJOf-6ThI,2602
|
|
@@ -216,9 +216,9 @@ mud/world/obj_find.py,sha256=tgnUkbFjnCl586Lzl6yRzCmllZSNEfQpQlrxCMVcUGU,5295
|
|
|
216
216
|
mud/world/time_persistence.py,sha256=K4uhRpu08IDHY5uReBYTvw4BHuqsSxWvbv-h1VsPvf8,1663
|
|
217
217
|
mud/world/vision.py,sha256=NRk3cvrGyyldU4W98qAVlYZp9wL-IUE1dTgk6DpM-NA,11609
|
|
218
218
|
mud/world/world_state.py,sha256=3KpiDP6v24sZDn9-g44UypXpegzgRShHo1XvektJzdU,8810
|
|
219
|
-
rom24_quickmud_python-2.9.
|
|
220
|
-
rom24_quickmud_python-2.9.
|
|
221
|
-
rom24_quickmud_python-2.9.
|
|
222
|
-
rom24_quickmud_python-2.9.
|
|
223
|
-
rom24_quickmud_python-2.9.
|
|
224
|
-
rom24_quickmud_python-2.9.
|
|
219
|
+
rom24_quickmud_python-2.9.5.dist-info/licenses/LICENSE,sha256=anQ2j9As6sIC8tZgQCXbo0-09JDH9vPiqhA9djnOvkY,1078
|
|
220
|
+
rom24_quickmud_python-2.9.5.dist-info/METADATA,sha256=LQqN5baUzzl00XWgEpzsZPXOLiBSynP78kGmcnzFlOw,15670
|
|
221
|
+
rom24_quickmud_python-2.9.5.dist-info/WHEEL,sha256=aeYiig01lYGDzBgS8HxWXOg3uV61G9ijOsup-k9o1sk,91
|
|
222
|
+
rom24_quickmud_python-2.9.5.dist-info/entry_points.txt,sha256=VFru08UQTXZA_CkK-NBjJmWHyEX5a3864fQHjhaojbw,41
|
|
223
|
+
rom24_quickmud_python-2.9.5.dist-info/top_level.txt,sha256=Fk1WPmabIIjp7_iZXLYpbAVqiq7lG7TeAHt30AsOKtQ,4
|
|
224
|
+
rom24_quickmud_python-2.9.5.dist-info/RECORD,,
|
|
File without changes
|
{rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/entry_points.txt
RENAMED
|
File without changes
|
{rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/licenses/LICENSE
RENAMED
|
File without changes
|
{rom24_quickmud_python-2.9.3.dist-info → rom24_quickmud_python-2.9.5.dist-info}/top_level.txt
RENAMED
|
File without changes
|