add dialogs

This commit is contained in:
2026-03-07 20:13:07 +07:00
parent 856f12f2e3
commit edd3db35ae
3 changed files with 181 additions and 2 deletions
+12 -1
View File
@@ -79,7 +79,7 @@ func (s *StoryService) GetPlace(code string) *models.Place {
func (s *StoryService) GetPlaces(codes []string) []*models.Place {
places := make([]*models.Place, 0, 100)
m := map[string]any{}
for _, code := range codes {
for i, code := range codes {
place := s.GetPlace(code)
_, ok := m[place.Code]
if place.Hidden && !ok {
@@ -89,6 +89,17 @@ func (s *StoryService) GetPlaces(codes []string) []*models.Place {
for _, door := range place.Doors {
m[door.Code] = struct{}{}
}
if i > 0 {
for j := range places[i-1].Doors {
if places[i-1].Doors[j].Code != place.Code {
if places[i-1].Doors[j].Show {
places[i-1].Doors[j].Show = false
delete(m, places[i-1].Doors[j].Code)
}
}
}
}
}
return places
}