Localize the vector.distance function for performance

This commit is contained in:
Hugo Locurcio 2020-01-01 18:06:03 +01:00
parent c28b6a9f35
commit 7c3afd699c
No known key found for this signature in database
GPG Key ID: 39E8F8BE30B0A49C
2 changed files with 9 additions and 1 deletions

View File

@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
## [Unreleased] ## [Unreleased]
### Changed
- Improve performance by localizing the `vector.distance()` function.
## 1.0.0 - 2020-01-01 ## 1.0.0 - 2020-01-01
- Initial versioned release. - Initial versioned release.

View File

@ -7,6 +7,10 @@ if minetest.settings:get_bool("health_bars") == false or
not minetest.settings:get_bool("enable_damage") not minetest.settings:get_bool("enable_damage")
then return end then return end
-- Localize the vector distance function for better performance, as it's called
-- on every step
local vector_distance = vector.distance
minetest.register_entity("gauges:hp_bar", { minetest.register_entity("gauges:hp_bar", {
visual = "sprite", visual = "sprite",
visual_size = {x=1, y=1/16, z=1}, visual_size = {x=1, y=1/16, z=1},
@ -20,7 +24,7 @@ minetest.register_entity("gauges:hp_bar", {
if not player or if not player or
not minetest.is_player(player) or not minetest.is_player(player) or
vector.distance(player:get_pos(), self.object:get_pos()) > 3 vector_distance(player:get_pos(), self.object:get_pos()) > 3
then then
self.object:remove() self.object:remove()
return return