summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorpeter1138 <peter1138@openttd.org>2008-01-12 13:36:22 +0000
committerpeter1138 <peter1138@openttd.org>2008-01-12 13:36:22 +0000
commitcbbc53e8f84067cae60c6f2e8e00682c968430a7 (patch)
treea405fcaad08342d18ba27a5d2377927423987178
parented727f9a64965e41e9c04ef5ec10752400369f81 (diff)
downloadopenttd-cbbc53e8f84067cae60c6f2e8e00682c968430a7.tar.xz
(svn r11817) -Codechange: Base vehicle group validity on owner, not name.
-rw-r--r--src/group.h2
-rw-r--r--src/group_cmd.cpp11
2 files changed, 6 insertions, 7 deletions
diff --git a/src/group.h b/src/group.h
index 297b02b4d..08b354b00 100644
--- a/src/group.h
+++ b/src/group.h
@@ -26,7 +26,7 @@ struct Group : PoolItem<Group, GroupID, &_Group_pool> {
bool replace_protection; ///< If set to true, the global autoreplace have no effect on the group
uint16 num_engines[TOTAL_NUM_ENGINES]; ///< Caches the number of engines of each type the player owns (no need to save this)
- Group(StringID str = STR_NULL);
+ Group(PlayerID owner = INVALID_PLAYER);
virtual ~Group();
bool IsValid() const;
diff --git a/src/group_cmd.cpp b/src/group_cmd.cpp
index 42ac7b58b..967956b62 100644
--- a/src/group_cmd.cpp
+++ b/src/group_cmd.cpp
@@ -45,20 +45,20 @@ static inline void UpdateNumEngineGroup(EngineID i, GroupID old_g, GroupID new_g
DEFINE_OLD_POOL_GENERIC(Group, Group)
-Group::Group(StringID str)
+Group::Group(PlayerID owner)
{
- this->string_id = str;
+ this->owner = owner;
}
Group::~Group()
{
DeleteName(this->string_id);
- this->string_id = STR_NULL;
+ this->owner = INVALID_PLAYER;
}
bool Group::IsValid() const
{
- return this->string_id != STR_NULL;
+ return this->owner != INVALID_PLAYER;
}
void InitializeGroup(void)
@@ -93,13 +93,12 @@ CommandCost CmdCreateGroup(TileIndex tile, uint32 flags, uint32 p1, uint32 p2)
AutoPtrT<Group> g_auto_delete;
- Group *g = new Group(STR_EMPTY);
+ Group *g = new Group(_current_player);
if (g == NULL) return CMD_ERROR;
g_auto_delete = g;
if (flags & DC_EXEC) {
- g->owner = _current_player;
g->replace_protection = false;
g->vehicle_type = vt;