ScummVM API documentation
city.h
1/* ScummVM - Graphic Adventure Engine
2 *
3 * ScummVM is the legal property of its developers, whose names
4 * are too numerous to list here. Please refer to the COPYRIGHT
5 * file distributed with this source distribution.
6 *
7 * This program is free software: you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation, either version 3 of the License, or
10 * (at your option) any later version.
11 *
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
16 *
17 * You should have received a copy of the GNU General Public License
18 * along with this program. If not, see <http://www.gnu.org/licenses/>.
19 *
20 */
21
22#ifndef ULTIMA4_MAP_CITY_H
23#define ULTIMA4_MAP_CITY_H
24
25#include "ultima/ultima4/map/map.h"
26
27namespace Ultima {
28namespace Ultima4 {
29
30class Person;
31class Dialogue;
32
33struct PersonRole {
34 int _role;
35 int _id;
36};
37
40
41class City : public Map {
42public:
43 City();
44 ~City() override;
45
46 // Members
51
56
60 void addPeople();
61
66
71 Person *personAt(const Coords &coords);
72
73 // Properties
74 Common::String _name;
75 Common::String _type;
76 PersonList _persons;
77 Common::Path _tlkFname;
78 PersonRoleList _personRoles;
79 Common::Array<Dialogue *> _extraDialogues;
80};
81
86bool isCity(Map *punknown);
87
88} // End of namespace Ultima4
89} // End of namespace Ultima
90
91#endif
Definition: path.h:52
Definition: str.h:59
Definition: city.h:41
Person * personAt(const Coords &coords)
Common::String getName() override
Person * addPerson(Person *p)
Definition: coords.h:31
Definition: map.h:134
Definition: person.h:56
Definition: city.h:33