garbagemule / MobArena

MobArena plugin for Minecraft
GNU General Public License v3.0
196 stars 151 forks source link

Add configuration option for monster to glow after specified delay time. #716

Closed OreoKirby closed 9 months ago

OreoKirby commented 2 years ago

Summary

Problem

Depending on the map design and how a configuration file is set up, often players can find themselves spending a long time searching for mobs in larger arenas. Some map makers do not want to sacrifice the layout of the arena entirely for the sake of pathing or are always able to remedy monsters getting stuck on certain obstacles. When monsters are spawned in arenas like this, sometimes they can be very difficult to locate.

Solution

Added a HashMap waveMonsters to store monsters and ties them to the wave in which they were spawned. A BukkitRunnable runnable is created to run after the seconds defined in the monsterGlowDelay variable. This will apply a GLOWING potion effect using PotionEffectParserto any monster that is still alive from the wave for which the runnable task is called for. This method allows future use of modifying monsters on a per-wave basis and not every current living monster.

Action

This commit adds a new per-arena setting monster-glow-delay that can be used to give monsters a glowing effect after a specified time.

garbagemule commented 9 months ago

Closing this one to clear out stale PRs. The idea is fine, but as mentioned in #629, this is a highly specific feature that I think could be so much more with some extra flexibility in it. We might be able to something with effect delays in general, which could open up the possibility of "enrage" timers and the like without having to dive deep into the Mobs Rework domain.