refactored dart, attack, explode