main #72
					 2 changed files with 36 additions and 13 deletions
				
			
		
							
								
								
									
										5
									
								
								main.py
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								main.py
									
										
									
									
									
								
							|  | @ -40,10 +40,11 @@ def genRooms(WIDTH, HEIGHT, type:str, objects:list): | |||
|          | ||||
| def play(screen, clock, running, background, isblack, WIDTH, HEIGHT): | ||||
|     main = [MainCharacter('Herbert', 100, 'people/oldman.png', 500, 500, 20, 5, 1, 1, 50)] | ||||
|     mobs = [Skeleton(i, random.randint(40, 60), 'people/reddy.png', random.randint(50, WIDTH-50), random.randint(50, HEIGHT-50), 5, 1, 1, 1, 200) for i in range(0,random.randint(2, 8))] | ||||
|     mobs = [Skeleton(i, random.randint(40, 60), random.randint(50, WIDTH-50), random.randint(50, HEIGHT-50), 5, 1, 1, 1, 200) for i in range(0,random.randint(2, 8))]+[Zombie(i, random.randint(40, 60), random.randint(50, WIDTH-50), random.randint(50, HEIGHT-50), 5, 1, 1, 1, 100) for i in range(0,random.randint(2, 8))] | ||||
|      | ||||
|     weapons = [] | ||||
|     others = [Fire('f1', 0, 200, 300)] | ||||
|     npcs = [NPC('name', 100, 'people/reddy.png', 1, 200, 200)] | ||||
|     npcs = [NPC('name', 100, 'people/oldlady.png', 1, 200, 200)] | ||||
|     objects = [main, mobs, npcs, weapons, others] | ||||
|     level = [] | ||||
|     rooms = genRooms(WIDTH, HEIGHT, 'background/grass', objects) | ||||
|  |  | |||
							
								
								
									
										40
									
								
								viecher.py
									
										
									
									
									
								
							
							
						
						
									
										40
									
								
								viecher.py
									
										
									
									
									
								
							|  | @ -317,10 +317,6 @@ class Mobs(Fighter): | |||
|         super().__init__(name, ms, sprite, x, y, health, damage, level, asp, atr) | ||||
|         self.drops = drops * (self.level / 2) | ||||
|      | ||||
| class Skeleton(Mobs): | ||||
|     def __init__(self, name, ms, sprite, x, y, health, damage, level, asp, atr, drops=0) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y, health, damage, level, asp, atr, drops) | ||||
|      | ||||
|     def chase(self, obj): | ||||
|         x = obj[0][0].x | ||||
|         y = obj[0][0].y | ||||
|  | @ -332,10 +328,6 @@ class Skeleton(Mobs): | |||
|         else: | ||||
|             self.attack(moveto, obj) | ||||
|      | ||||
|     def attack(self, moveto, obj): | ||||
|         if self.lastAttack + self.attack_speed * 1000 < pg.time.get_ticks(): | ||||
|             obj[3].append(Arrow("arrow", 200, self.x, self.y, moveto, self.damage)) | ||||
|             self.lastAttack = pg.time.get_ticks() | ||||
|      | ||||
|     def hurt(self, damage, objects): | ||||
|         self.health -= damage | ||||
|  | @ -343,10 +335,31 @@ class Skeleton(Mobs): | |||
|             self.hidden = True | ||||
|             objects[1].remove(self) | ||||
|      | ||||
|      | ||||
|     def update(self, obj): | ||||
|         self.chase(obj) | ||||
| 
 | ||||
| 
 | ||||
| class Skeleton(Mobs): | ||||
|     def __init__(self, name, ms, x, y, health, damage, level, asp, atr, sprite = 'people/skeleton.png', drops=0) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y, health, damage, level, asp, atr, drops) | ||||
|      | ||||
|     def attack(self, moveto, obj): | ||||
|         if self.lastAttack + self.attack_speed * 1000 < pg.time.get_ticks(): | ||||
|             obj[3].append(Arrow("arrow", 200, self.x, self.y, moveto, self.damage)) | ||||
|             self.lastAttack = pg.time.get_ticks() | ||||
|      | ||||
| 
 | ||||
| class Zombie(Mobs): | ||||
|     def __init__(self, name, ms, x, y, health, damage, level, asp, atr, sprite='people/zombie.png', drops=0) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y, health, damage, level, asp, atr, drops) | ||||
|      | ||||
|      | ||||
|     def attack(self, moveto, obj): | ||||
|         if self.lastAttack + self.attack_speed * 1000 < pg.time.get_ticks(): | ||||
|             obj[3].append(Punch('punch', 100, self.x, self.y, moveto, self.damage)) | ||||
|             self.lastAttack = pg.time.get_ticks() | ||||
| 
 | ||||
| class Weapons(Objects): | ||||
|     def __init__(self, name, ms, sprite, x, y, moveto, damage, life_ticks) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y) | ||||
|  | @ -387,7 +400,7 @@ class Fireball(Spells): | |||
|         self.die(objects, Mobs) | ||||
| 
 | ||||
| class Windslash(Spells): | ||||
|     def __init__(self, name, ms, x, y, moveto, damage, sprite = 'weapons/windslash.png', life_ticks=500) -> None: | ||||
|     def __init__(self, name, ms, x, y, moveto, damage, sprite = 'weapons/windslash.png', life_ticks=700) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y, moveto, damage, life_ticks) | ||||
|      | ||||
|     def update(self, objects): | ||||
|  | @ -407,6 +420,15 @@ class Arrow(Weapons): | |||
|         self.move(objects) | ||||
|         self.die(objects, MainCharacter) | ||||
| 
 | ||||
| 
 | ||||
| class Punch(Weapons): | ||||
|     def __init__(self, name, ms, x, y, moveto, damage, sprite = 'weapons/empty.png', life_ticks=100) -> None: | ||||
|         super().__init__(name, ms, sprite, x, y, moveto, damage, life_ticks) | ||||
|      | ||||
|     def update(self, objects): | ||||
|         self.move(objects) | ||||
|         self.die(objects, MainCharacter) | ||||
| 
 | ||||
| class Fire(Objects): | ||||
|     def __init__(self, name, ms, x, y, sprite='background/fireplace.png') -> None: | ||||
|         super().__init__(name, ms, sprite, x, y) | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue