Fixed item crazy sound mismatch. Updated instructions, probably not final version, but at least a place holder.
This commit is contained in:
		| @@ -17,28 +17,43 @@ Control: attack | |||||||
| Space: hold to run. | Space: hold to run. | ||||||
| f: throw jack O'lantern | f: throw jack O'lantern | ||||||
| c: check bone dust | c: check bone dust | ||||||
|  | e: Check currently wielded weapon. | ||||||
| h check health | h check health | ||||||
| j: check jack O'lanterns | j: check jack O'lanterns | ||||||
| l: check lives remaining | l: check lives remaining | ||||||
|  | Alt+PageDown: Master volume decrease | ||||||
|  | Alt+PageUp: Master volume increase | ||||||
|  | Alt+End: Ambience volume decrease | ||||||
|  | Alt+Home: Game volume increase | ||||||
|  | Alt+Delete: Game sounds volume decrease | ||||||
|  | Alt+Insert: Game sounds volume increase | ||||||
|  |  | ||||||
| Notes | Notes | ||||||
|  |  | ||||||
| Each 5 bone dust restores 1 health. | Coffins must be broken with your weapon. Jump and attack to shatter them. | ||||||
| Each 100 bone dust gains an extra unlife. |  | ||||||
| Just because you leave catapult range doesn't mean you are safe from already fired pumpkins. | Just because you leave catapult range doesn't mean you are safe from already fired pumpkins. | ||||||
|  | Spider webs can be passed by ducking as you move by them. | ||||||
|  | Spider web affect lasts even after death. Your speed is reduced to half for 15 seconds. | ||||||
|  | Running and jumping both move you at 1.5 your normal speed. | ||||||
|  |  | ||||||
| Enemies | Enemies | ||||||
|  |  | ||||||
| Goblin: Walks back and forth in his area trying to break your bones. | Goblin: Walks back and forth in his area trying to break your bones. | ||||||
| Ghoul: Same behavior as goblin, but if you enter his area he will actively chase you, staying close. | Ghoul: Same behavior as goblin, but if you enter his area he will actively chase you, staying close. | ||||||
|  | Boogie man: A stronger goblin. | ||||||
|  | Witch: Like boogie man, but drops broom if you do not have one, else drops her cauldron. | ||||||
| Pumpkin Catapult: Fires pumpkins at you in hopes of smashing you into bone dust. | Pumpkin Catapult: Fires pumpkins at you in hopes of smashing you into bone dust. | ||||||
| Skull Storm: Screaming skulls rain down causing damage if they hit you. | Skull Storm: Screaming skulls rain down causing damage if they hit you. | ||||||
|  | Spider: Very dangerous fast enemy. | ||||||
| Zombie: Slow moving creatures that have a chance to climb out of the open grave. They are slow moving but deadly. If they hit you you lose a life. | Zombie: Slow moving creatures that have a chance to climb out of the open grave. They are slow moving but deadly. If they hit you you lose a life. | ||||||
|  |  | ||||||
| Bonuses and items | Bonuses and items | ||||||
|  |  | ||||||
| Bone dust: Currency of the game. Collect it to gain health and extra lives. | Bone dust: Currency of the game. Collect it to gain health and extra lives. | ||||||
|  | Witch's broom: A weapon gained from witches. Stronger than the graver digger's rusty shovel. | ||||||
| Coffin: Contains items. Be quick, they try to escape. | Coffin: Contains items. Be quick, they try to escape. | ||||||
| Guts: Adds 2 health to your maximum unlife. | Guts: Adds 2 health to your maximum unlife. | ||||||
| Hand of Glory: Grants invincibility for a short time. | Hand of Glory: Grants invincibility for a short time. | ||||||
| Jack O'lantern: Throw these at your enemies to hit them from a distance. | Jack O'lantern: Throw these at your enemies to hit them from a distance. | ||||||
|  | Shin bone: Worth 5 bone dust. | ||||||
|  | Skeletal nunchucks: Only a rumer. If it exists, it probably has to be crafted by obtaining the correct items. It is said to be the most powerful weapon in the game. | ||||||
|   | |||||||
| @@ -231,14 +231,14 @@ class Level: | |||||||
|  |  | ||||||
|         # Update bouncing items |         # Update bouncing items | ||||||
|         for item in self.bouncing_items[:]:  # Copy list to allow removal |         for item in self.bouncing_items[:]:  # Copy list to allow removal | ||||||
|             if not item.update(currentTime): |             if not item.update(currentTime, self.player.xPos): | ||||||
|                 self.bouncing_items.remove(item) |                 self.bouncing_items.remove(item) | ||||||
|                 if not item.isActive: |                 if not item.isActive: | ||||||
|                     speak(f"{item.soundName} got away!") |                     speak(f"{item.soundName} got away!") | ||||||
|                 continue |                 continue | ||||||
|                  |                  | ||||||
|             # Check for item collection |             # Check for item collection | ||||||
|             if abs(item.xPos - self.player.xPos) < 1 and self.player.isJumping: |             if abs(item._currentX - self.player.xPos) < 1 and self.player.isJumping: | ||||||
|                 play_sound(self.sounds[f'get_{item.soundName}']) |                 play_sound(self.sounds[f'get_{item.soundName}']) | ||||||
|                 item.apply_effect(self.player) |                 item.apply_effect(self.player) | ||||||
|                 item.isActive = False |                 item.isActive = False | ||||||
|   | |||||||
| @@ -12,33 +12,38 @@ class PowerUp(Object): | |||||||
|         ) |         ) | ||||||
|         self.sounds = sounds |         self.sounds = sounds | ||||||
|         self.direction = direction |         self.direction = direction | ||||||
|         self.speed = 0.05  # Base movement speed |         self.speed = 0.055  # Base movement speed | ||||||
|         self.item_type = item_type |         self.item_type = item_type | ||||||
|         self.channel = None |         self.channel = None | ||||||
|         self._currentX = x  # Initialize the current x position |         self._currentX = x  # Initialize the current x position | ||||||
|          |          | ||||||
|     def update(self, current_time): |     def update(self, current_time, player_pos): | ||||||
|         """Update item position""" |         """Update item position | ||||||
|  |      | ||||||
|  |         Args: | ||||||
|  |             current_time: Current game time in milliseconds | ||||||
|  |             player_pos: Current player x position | ||||||
|  |         """ | ||||||
|         if not self.isActive: |         if not self.isActive: | ||||||
|             return False |             return False | ||||||
|              |          | ||||||
|         # Update position |         # Update position | ||||||
|         self._currentX += self.direction * self.speed |         self._currentX += self.direction * self.speed | ||||||
|          |      | ||||||
|         # Update positional audio |         # Update positional audio | ||||||
|         if self.channel is None or not self.channel.get_busy(): |         if self.channel is None or not self.channel.get_busy(): | ||||||
|             self.channel = obj_play(self.sounds, "item_bounce", self.xPos, self._currentX) |             self.channel = obj_play(self.sounds, "item_bounce", player_pos, self._currentX) | ||||||
|         else: |         else: | ||||||
|             self.channel = obj_update(self.channel, self.xPos, self._currentX) |             self.channel = obj_update(self.channel, player_pos, self._currentX) | ||||||
|              |          | ||||||
|         # Check if item has gone too far (20 tiles) |         # Check if item has gone too far (12 tiles) | ||||||
|         if abs(self._currentX - self.xRange[0]) > 20: |         if abs(self._currentX - player_pos) > 12: | ||||||
|             self.isActive = False |             self.isActive = False | ||||||
|             if self.channel: |             if self.channel: | ||||||
|                 self.channel.stop() |                 self.channel.stop() | ||||||
|                 self.channel = None |                 self.channel = None | ||||||
|             return False |             return False | ||||||
|              |          | ||||||
|         return True |         return True | ||||||
|          |          | ||||||
|     def apply_effect(self, player): |     def apply_effect(self, player): | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user