# HG changeset patch # Parent cb1d86ca32223069b63734a860cc481d993428be diff --git a/src/person.cpp b/src/person.cpp --- a/src/person.cpp +++ b/src/person.cpp @@ -679,6 +679,18 @@ void Guest::DecideMoveDirection() } } + if (this->activity == GA_GO_HOME && this->happiness < 15) { + //! \todo Watch out for guards (and user watching?) + /* Really bad mood. */ + uint16 path_instance_data = v->GetInstanceData(); + if (!GetPathDemolished(path_instance_data) && IsPathDecorationVisible(path_instance_data) && + GetPathDecoration(path_instance_data) != PDEC_NONE) { + path_instance_data = SetPathDemolished(path_instance_data, true); + v->SetInstanceData(path_instance_data); + this->happiness++; // Yeah! + } + } + /* Find feasible exits and shops. */ bool seen_wanted_ride; exits = GetExitDirections(v, start_edge, &seen_wanted_ride, &queue_path);