From f33257521bf80dcef8575c4fc3ddaf4a40ff588a Mon Sep 17 00:00:00 2001 From: Stijn Buys Date: Sun, 7 Jun 2009 18:13:15 +0000 Subject: fixed a few widget order problems, changed map targetting behaviour --- src/client/targets.cc | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'src/client/targets.cc') diff --git a/src/client/targets.cc b/src/client/targets.cc index 0bec6c5..c634557 100644 --- a/src/client/targets.cc +++ b/src/client/targets.cc @@ -53,6 +53,21 @@ bool is_valid_hud_target(core::Entity *entity) } } +bool is_valid_map_target(core::Entity *entity) +{ + if (entity->serverside()) { + return false; + } else if (entity == core::localcontrol()) { + return false; + } else if (entity->flag_is_set(core::Entity::ShowOnMap)) { + return true; + } else if (entity == core::localplayer()->mission_target()) { + return true; + } else { + return false; + } +} + core::Entity* current() { return current_target; @@ -358,7 +373,7 @@ void frame() } // find the current target - if (!core::localplayer()->view() && core::localcontrol() && is_valid_hud_target(entity)) { + if (!core::localplayer()->view() && core::localcontrol() && (is_valid_hud_target(entity) || is_valid_map_target(entity))) { if (entity->id() == current_target_id) { current_target = entity; -- cgit v1.2.3