changeset 59:6b9f9dcfabf1 default tip

Monster cleanup
author Radomir Dopieralski <moindev@sheep.art.pl>
date Wed, 02 Jan 2008 03:54:40 +0100
parents 45deecf194a9
children
files data/image/gauge.png data/map.txt lib/monster/box.py lib/monster/brain.py lib/monster/jello.py lib/monster/player.py lib/monster/skeleton.py lib/monster/wrench.py lib/monster/zombie.py
diffstat 9 files changed, 13 insertions(+), 191 deletions(-) [+]
line wrap: on
line diff
Binary file data/image/gauge.png has changed
--- a/data/map.txt	Wed Jan 02 03:29:10 2008 +0100
+++ b/data/map.txt	Wed Jan 02 03:54:40 2008 +0100
@@ -3,30 +3,25 @@
 . <corridor.png>
 > <stairs.png>
 M <floor.png> <jello>
-S <floor.png> <skeleton>
-B <floor.png> <brain>
-Z <floor.png> <zombie>
-/ <floor.png> <wrench>
-& <floor.png> <box>
 @ <floor.png> <player>
 
 ::::::XXXXXXXXXXXXXX
 ::::::..::::XX::::::
-::M:::XX::::..::&:::
+::M:::XX::::..::M:::
 ::::::XXX.XXXX::::::
 XXX.XXXXX.XXXXXX.XXX
 XXX.XXX::::::XXX.XXX
 XXX.XXX::::::XXX.XXX
-XXX....::::Z:XXX.XXX
+XXX....::::M:XXX.XXX
 XXX.XXX::::::X:::::X
 XXX.XXX@:::::X:::::X
 XXX.XXXXXX.XXX::M::X
 XXX.XXXXXX.XXX:::::X
 X::::::XX:::XXXX.XXX
-X::>:::XX:S:.....XXX
+X::>:::XX:M:.....XXX
 XX.XXXXXX:::XXXX.XXX
 XX.XXXXXX.XXXXXX.XXX
-X:::::::::::::/::::X
-.::::B:::::::::::::.
+X:::::::::::::M::::X
+.::::M:::::::::::::.
 X::::::::::::::::::X
 XXXXXXXXXXXXXXXXXXXX
--- a/lib/monster/box.py	Wed Jan 02 03:29:10 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-import random
-import os
-
-import monster
-from util import *
-
-class Mob(monster.Monster):
-    name = "box"
-    frames = read_frames(os.path.join("data", "image", "box.png"))
-
-    def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
-        
-    def act(self):
-        direction = random.randint(1, 4)
-        try:
-            try:
-                self.walk(direction)
-            except monster.MoveBump, e:
-                self.attack(direction, e.monster)
-        except monster.MoveError:
-            pass
-    
-    def attack(self, direction, monster):
-        self.step = 8
-        self.anim = self.anim_attack
-        monster.hit()
-
-    def hit(self):
-        pass
--- a/lib/monster/brain.py	Wed Jan 02 03:29:10 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-import random
-import os
-
-import monster
-from util import *
-
-class Mob(monster.Monster):
-    name = "brain"
-    frames = read_frames(os.path.join("data", "image", "brain.png"))
-
-    def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
-        
-    def act(self):
-        direction = random.randint(1, 4)
-        try:
-            try:
-                self.walk(direction)
-            except monster.MoveBump, e:
-                self.attack(direction, e.monster)
-        except monster.MoveError:
-            pass
-    
-    def attack(self, direction, monster):
-        self.step = 8
-        self.anim = self.anim_attack
-        monster.hit()
-
-    def hit(self):
-        pass
--- a/lib/monster/jello.py	Wed Jan 02 03:29:10 2008 +0100
+++ b/lib/monster/jello.py	Wed Jan 02 03:54:40 2008 +0100
@@ -4,22 +4,19 @@
 import random
 import os
 
+import sprite
 import monster
 from util import *
 
-class Sprite(monster.Monster):
-    frames = read_frames(os.path.join("data", "image", "jello.png"))
-    def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
-
-
-class Mob(monster.Monster):
-    name = "jello"
-    Sprite = Sprite
+class Sprite(sprite.Monster):
     frames = read_frames(os.path.join("data", "image", "jello.png"))
 
+class Mob(monster.Actor):
+    name = "jello"
+
     def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
+        self.sprite = Sprite(pos, level)
+        monster.Actor.__init__(self, pos, level)
         
     def act(self):
         direction = random.randint(1, 4)
@@ -32,8 +29,7 @@
             pass
     
     def attack(self, direction, monster):
-        self.step = 8
-        self.anim = self.anim_attack
+        self.sprite.attack(direction)
         monster.hit()
 
     def hit(self):
--- a/lib/monster/player.py	Wed Jan 02 03:29:10 2008 +0100
+++ b/lib/monster/player.py	Wed Jan 02 03:54:40 2008 +0100
@@ -1,6 +1,5 @@
 import pygame
 from pygame.locals import *
-
 import os
 import sys
         
--- a/lib/monster/skeleton.py	Wed Jan 02 03:29:10 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-import random
-import os
-
-import monster
-from util import *
-
-class Mob(monster.Monster):
-    name = "skeleton"
-    frames = read_frames(os.path.join("data", "image", "skeleton.png"))
-
-    def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
-        
-    def act(self):
-        direction = random.randint(1, 4)
-        try:
-            try:
-                self.walk(direction)
-            except monster.MoveBump, e:
-                self.attack(direction, e.monster)
-        except monster.MoveError:
-            pass
-    
-    def attack(self, direction, monster):
-        self.step = 8
-        self.anim = self.anim_attack
-        monster.hit()
-
-    def hit(self):
-        pass
--- a/lib/monster/wrench.py	Wed Jan 02 03:29:10 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-import random
-import os
-
-import monster
-from util import *
-
-class Mob(monster.Monster):
-    name = "wrench"
-    frames = read_frames(os.path.join("data", "image", "wrench.png"))
-
-    def __init__(self, pos, level):
-        monster.Monster.__init__(self, pos, level)
-        
-    def act(self):
-        direction = random.randint(1, 4)
-        try:
-            try:
-                self.walk(direction)
-            except monster.MoveBump, e:
-                self.attack(direction, e.monster)
-        except monster.MoveError:
-            pass
-    
-    def attack(self, direction, monster):
-        self.step = 8
-        self.anim = self.anim_attack
-        monster.hit()
-
-    def hit(self):
-        pass
--- a/lib/monster/zombie.py	Wed Jan 02 03:29:10 2008 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,36 +0,0 @@
-#!/usr/bin/python
-# -*- coding: utf-8 -*-
-
-import random
-import os
-
-import monster
-import sprite
-from util import *
-
-class Sprite(sprite.Monster):
-    frames = read_frames(os.path.join("data", "image", "zombie.png"))
-
-class Mob(monster.Actor):
-    name = "zombie"
-
-    def __init__(self, pos, level):
-        self.sprite = Sprite(pos, level)
-        monster.Actor.__init__(self, pos, level)
-        
-    def act(self):
-        direction = random.randint(1, 4)
-        try:
-            try:
-                self.walk(direction)
-            except monster.MoveBump, e:
-                self.attack(direction, e.monster)
-        except monster.MoveError:
-            pass
-    
-    def attack(self, direction, monster):
-        self.sprite.attack(direction)
-        monster.hit()
-
-    def hit(self):
-        pass