rogueworld icon indicating copy to clipboard operation
rogueworld copied to clipboard

Anti-freeze fountain

Open Arcanorum opened this issue 2 years ago • 0 comments

Task description

Similar to #199, another "fountain" item should be added that when used would place down an interactive object on the ground and stay there for a set amount of time. Any player can then interact with the fountain to get the cold resistance status effect.

References/notes

Example fountain in the DawnLike tileset: image

Acceptance criteria

Code

  • A new item config should be added to Items.yml, called "AntiFreezeFountain".
  • When a player uses this item, a new "AntiFreezeFountain" entity should be added to the board tile the player is on. (Similar to the Trap item logic for adding a new entity.
  • When any player presses on the sprite of the fountain on the client, they should be given the ColdResistance status effect. (A new item class file should be added called "AntiFreezeFountain.js", that has a class that has a method to call when interacted with)
  • After several minutes (depending on testing), the AntiFreezeFountain entity should be removed from the game world. ("lifespan" config property)
  • Multiple fountains of any kind should not be able to be placed on the same board tile at once.
  • A new crafting recipe config should be added to CraftingRecipes.yml, that results in the new "AntiFreezeFountain" item type. Should include several anti-freeze potions and iron bars as ingredients.

Visual

  • A GUI icon that looks like a fountain, but flowing with with light-blue water (maybe with sparkles/flakes?) (like an anti-freeze potion). icon-anti-freeze-fountain.png
  • A similar entity sprite, for the thing that is placed on the ground when used. anti-freeze-fountain.png

Arcanorum avatar Sep 25 '21 15:09 Arcanorum