dominance is now expressed as a percentage

This commit is contained in:
Dawid Wysokiński 2020-06-23 18:18:56 +02:00 committed by Kichiyaki
parent 0f15d12daa
commit bf958c88b6
2 changed files with 23 additions and 1 deletions

View File

@ -72,6 +72,18 @@ const (
END;
$BODY$
LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION check_dominance()
RETURNS trigger AS
$BODY$
BEGIN
IF NEW.exist = false THEN
NEW.dominance = 0;
END IF;
RETURN NEW;
END;
$BODY$
LANGUAGE plpgsql;
CREATE OR REPLACE FUNCTION ?0.insert_to_player_to_servers()
RETURNS trigger AS
$BODY$
@ -98,6 +110,12 @@ const (
ON ?0.players
FOR EACH ROW
EXECUTE PROCEDURE check_daily_growth();
DROP TRIGGER IF EXISTS ?0_check_dominance ON ?0.tribes;
CREATE TRIGGER ?0_check_dominance
BEFORE UPDATE
ON ?0.tribes
FOR EACH ROW
EXECUTE PROCEDURE check_dominance();
DROP TRIGGER IF EXISTS ?0_update_ennoblement_old_and_new_owner_tribe_id ON ?0.ennoblements;
CREATE TRIGGER ?0_update_ennoblement_old_and_new_owner_tribe_id
BEFORE INSERT

View File

@ -244,7 +244,11 @@ func (h *updateServerDataHandler) getTribes(od map[int]*models.OpponentsDefeated
if ok {
tribe.OpponentsDefeated = *tribeOD
}
tribe.Dominance = float64(tribe.TotalVillages) / float64(numberOfVillages)
if tribe.TotalVillages > 0 && numberOfVillages > 0 {
tribe.Dominance = float64(tribe.TotalVillages) / float64(numberOfVillages) * 100
} else {
tribe.Dominance = 0
}
tribes = append(tribes, tribe)
}
return tribes, nil