Вообще так по мне - определение лучше не то, что даётся "наиболее авторитетным/официальным" источником, а то, что наиболее точно отражает понятие в данном контексте на сегодняшний день.
если А, то Б
Очевидно, что любая функция может использовать внешние переменные. Причём, это верно практически для любого ЯП.
Прям "практически для любого ЯП"? Навскидку, это не так для Cи, C++, Java, PHP.
Не отключаются пункты защитника виндовс 10?
При hp стремящимся к нулю (например, hp=0.0001) дамаг будет стремиться к бесконечности. А нужно, чтобы он стремился к константе. Плюс это не линейно.