diff skaapsteker/sprites/player.py @ 490:0eade58a71b9

Support item dropping (specifically tails). Have monk drop tail.
author Simon Cross <hodgestar@gmail.com>
date Sat, 09 Apr 2011 22:28:03 +0200
parents 14cab059bf39
children 6f110e347f30
line wrap: on
line diff
--- a/skaapsteker/sprites/player.py	Sat Apr 09 22:25:43 2011 +0200
+++ b/skaapsteker/sprites/player.py	Sat Apr 09 22:28:03 2011 +0200
@@ -519,15 +519,15 @@
         my_item = self._me.item
         if my_item is None:
             return None
-        world_item = getattr(self.the_world.items, my_item)
+
         if set_level:
-            world_item.level = self._me.level
-            world_item.pos = self.get_tile_pos()
-        sprite_dict = world_item.copy()
-        sprite_dict.pop('level')
-        sprite_dict['name'] = my_item
-        sprite_dict['world'] = self.the_world
-        return find_sprite(sprite_dict, 'items')
+            to_level = self._me.level
+            to_pos = self._me.get_tile_pos()
+        else:
+            to_level, to_pos = None, None
+
+        return self.the_world.create_item_sprite(
+            my_item, to_level=to_level, to_pos=to_pos)
 
 
     def drop_item(self):