|
@@ -335,10 +335,15 @@ class LocationBot(ircbot.SingleServerIRCBot):
|
|
|
for channel in self.__channels.intersection(channels):
|
|
|
self.__locations.append((nick, channel, granularity, new_location, new_coordinates, new_accuracy, new_speed, new_heading, new_altitude, new_altitude_accuracy))
|
|
|
if channels:
|
|
|
- min_radius = min(old_accuracy, new_accuracy)
|
|
|
+ if new_location != old_location: # old method
|
|
|
+ make_update_noise()
|
|
|
distance = calc_distance(old_coordinates[0], old_coordinates[1],
|
|
|
new_coordinates[0], new_coordinates[1])
|
|
|
- if distance > min_radius or new_location != old_location:
|
|
|
+ avg_radius = (old_accuracy + new_accuracy) / 2
|
|
|
+ if distance > avg_radius:
|
|
|
+ make_update_noise()
|
|
|
+ min_radius = min(old_accuracy, new_accuracy)
|
|
|
+ if distance > min_radius and new_radius < old_radius:
|
|
|
make_update_noise()
|
|
|
|
|
|
def __login(self, connection, nickmask, nick, arguments = ''):
|