changeset 551:40a104ca0a69

Tear kimono
author Neil Muller <drnlmuller@gmail.com>
date Sun, 10 Apr 2011 01:28:03 +0200
parents ebd51cb1d672
children 0216b5012411
files data/npcs/kumiko.json skaapsteker/sprites/base.py skaapsteker/sprites/items.py skaapsteker/sprites/npcs.py
diffstat 4 files changed, 16 insertions(+), 7 deletions(-) [+]
line wrap: on
line diff
--- a/data/npcs/kumiko.json	Sun Apr 10 01:07:32 2011 +0200
+++ b/data/npcs/kumiko.json	Sun Apr 10 01:28:03 2011 +0200
@@ -22,7 +22,7 @@
         ]
     },
     "torn" : {
-        "text" : "Shoo, dirty fox! Oh, look what you’ve done – you’ve made a great big tear in my finest silk kimono. What will the businessman think of a ragged dress like this?",
+        "text" : "What will the businessman think of a ragged dress like this?",
         "events" : [
             { "matches" : "npcs.kaneda.state == 'kumiko'", "next": "state.kaneda" }
         ]
--- a/skaapsteker/sprites/base.py	Sun Apr 10 01:07:32 2011 +0200
+++ b/skaapsteker/sprites/base.py	Sun Apr 10 01:28:03 2011 +0200
@@ -8,7 +8,7 @@
 
 from ..physics import Sprite
 from ..constants import Layers
-from ..engine import OpenDialog, AddSpriteEvent
+from ..engine import OpenDialog, AddSpriteEvent, OpenNotification
 from .. import data
 from .. import dialogue
 from .. import sound
@@ -22,6 +22,9 @@
 NPC_LAYER = 2
 PROJECTILE_LAYER = 3
 
+def notify(text):
+    OpenNotification.post(text=text)
+
 
 class GameSprite(Sprite):
     image_dir = 'sprites/'
--- a/skaapsteker/sprites/items.py	Sun Apr 10 01:07:32 2011 +0200
+++ b/skaapsteker/sprites/items.py	Sun Apr 10 01:28:03 2011 +0200
@@ -1,13 +1,10 @@
 from .. import engine, data, sound
-from .base import Item, PC_LAYER, PROJECTILE_LAYER
+from .base import Item, PC_LAYER, PROJECTILE_LAYER, notify
 
 import time
 
 
 
-def notify(text):
-    engine.OpenNotification.post(text=text)
-
 
 class BreakableItem(Item):
     whole_image_file = None
--- a/skaapsteker/sprites/npcs.py	Sun Apr 10 01:07:32 2011 +0200
+++ b/skaapsteker/sprites/npcs.py	Sun Apr 10 01:28:03 2011 +0200
@@ -1,4 +1,4 @@
-from .base import NPC, BlockingNPC
+from .base import NPC, BlockingNPC, PC_LAYER, notify
 from pygame import transform
 
 
@@ -101,6 +101,15 @@
         ("standing", r"^.*_01.png$"),
     ]
 
+    collides_with = set([PC_LAYER])
+
+    def damage(self, damage):
+        """Destroy the kimono"""
+        if not self.world.missions.kumikos_kimono_torn:
+            self.world.missions.kumikos_kimono_torn = True
+            notify("Shoo, dirty fox! Oh, look what you've done"
+                    "- you've made a great big tear in my finest silk kimono")
+
 
 class FishMonger(NPC):
     image_dir = 'sprites/fishmonger'