summaryrefslogtreecommitdiff
path: root/src/mmo/ids.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/mmo/ids.py')
-rw-r--r--src/mmo/ids.py30
1 files changed, 30 insertions, 0 deletions
diff --git a/src/mmo/ids.py b/src/mmo/ids.py
new file mode 100644
index 0000000..2d26215
--- /dev/null
+++ b/src/mmo/ids.py
@@ -0,0 +1,30 @@
+for s in [
+ 'Species',
+ 'AccountId',
+ 'CharId',
+ 'PartyId',
+ 'ItemNameId',
+ 'BlockId',
+]:
+ class OtherId(object):
+ __slots__ = ('_value')
+ name = 'tmwa::%s' % s
+ enabled = True
+
+ def __init__(self, value):
+ self._value = value
+
+ def to_string(self):
+ value = self._value
+ fields = value.type.fields()
+ field0 = fields[-1]
+ return '%s' % (value[field0])
+
+ tests = [
+ ('tmwa::wrap<tmwa::%s>(123)' % s, '123'),
+ ]
+ globals()[s] = OtherId
+ del OtherId
+
+class GmLevel(object):
+ pass