Mercurial > pyntnclick
comparison gamelib/state.py @ 491:9f488671c02e engine_refactor
No more state in Item interacts.
author | Jeremy Thurgood <firxen@gmail.com> |
---|---|
date | Sun, 29 Aug 2010 19:58:35 +0200 |
parents | 2e784f978d1a |
children | c1f4f9149349 |
comparison
equal
deleted
inserted
replaced
490:2e784f978d1a | 491:9f488671c02e |
---|---|
530 self.state = state | 530 self.state = state |
531 | 531 |
532 def get_inventory_image(self): | 532 def get_inventory_image(self): |
533 return self.inventory_image | 533 return self.inventory_image |
534 | 534 |
535 def interact(self, tool, state): | 535 def interact(self, tool): |
536 if tool is None: | 536 if tool is None: |
537 return self.interact_without(state) | 537 return self.interact_without(state) |
538 handler = getattr(self, 'interact_with_' + tool.name, None) | 538 handler = getattr(self, 'interact_with_' + tool.name, None) |
539 inverse_handler = getattr(tool, 'interact_with_' + self.tool_name, None) | 539 inverse_handler = getattr(tool, 'interact_with_' + self.tool_name, None) |
540 if handler is not None: | 540 if handler is not None: |
541 return handler(tool, state) | 541 return handler(tool) |
542 elif inverse_handler is not None: | 542 elif inverse_handler is not None: |
543 return inverse_handler(self, state) | 543 return inverse_handler(self) |
544 else: | 544 else: |
545 return self.interact_default(tool, state) | 545 return self.interact_default(tool) |
546 | |
547 def interact_default(self, tool, state): | |
548 return Result("That doesn't do anything useful") | |
549 | 546 |
550 | 547 |
551 class CloneableItem(Item): | 548 class CloneableItem(Item): |
552 _counter = 0 | 549 _counter = 0 |
553 | 550 |