1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 import unittest
19 from parpg.objects.base import GameObject, Lockable, Container, Living, \
20 Scriptable, CharStats, Wearable, Usable, Weapon, \
21 Destructable, Trapable, Carryable
22
24
26 class Wildcard (GameObject, Lockable, Container, Living, Scriptable,
27 CharStats, Wearable, Usable, Weapon, Destructable,
28 Trapable, Carryable, ):
29 def __init__ (self, ID, *args, **kwargs):
30 self.name = 'All-purpose carry-all'
31 self.text = 'What is this? I dont know'
32 GameObject. __init__( self, ID, **kwargs )
33 Lockable. __init__( self, **kwargs )
34 Container. __init__( self, **kwargs )
35 Living. __init__( self, **kwargs )
36 Scriptable. __init__( self, **kwargs )
37 CharStats. __init__( self, **kwargs )
38 Wearable. __init__( self, "left_arm", **kwargs )
39 Usable. __init__( self, **kwargs )
40 Weapon. __init__( self, **kwargs )
41 Destructable.__init__( self, **kwargs )
42 Trapable. __init__( self, **kwargs )
43 Carryable. __init__( self, **kwargs )
44 wc = Wildcard (2)
45
46
47
48
49 attrs = dict(
50 openable = {"is_open":True},
51 lockable = {"locked":False},
52 carryable = {"weight":0.0, "bulk":0.0},
53 container = {"items":{}},
54 living = {"lives":True},
55 scriptable = {}
56 )
57
58 for attr in attrs:
59 assert(wc.trueAttr(attr))
60 for value in attrs[attr]:
61 self.assertEqual(getattr(wc, value), attrs[value])
62