diff options
-rw-r--r-- | src/engine.cpp | 7 | ||||
-rw-r--r-- | src/group_cmd.cpp | 5 | ||||
-rw-r--r-- | src/misc_cmd.cpp | 10 | ||||
-rw-r--r-- | src/station_cmd.cpp | 5 | ||||
-rw-r--r-- | src/town_cmd.cpp | 5 | ||||
-rw-r--r-- | src/vehicle.cpp | 25 | ||||
-rw-r--r-- | src/waypoint.cpp | 5 |
7 files changed, 9 insertions, 53 deletions
diff --git a/src/engine.cpp b/src/engine.cpp index dfe24168b..7e7959e26 100644 --- a/src/engine.cpp +++ b/src/engine.cpp @@ -493,13 +493,10 @@ void EnginesMonthlyLoop() static bool IsUniqueEngineName(const char *name) { - char buf[512]; - const Engine *e; + FOR_ALL_ENGINES(e) { - SetDParam(0, e->index); - GetString(buf, STR_ENGINE_NAME, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (e->name != NULL && strcmp(e->name, name) == 0) return false; } return true; diff --git a/src/group_cmd.cpp b/src/group_cmd.cpp index 44e3b6bb3..cea7d33ac 100644 --- a/src/group_cmd.cpp +++ b/src/group_cmd.cpp @@ -149,12 +149,9 @@ CommandCost CmdDeleteGroup(TileIndex tile, uint32 flags, uint32 p1, uint32 p2, c static bool IsUniqueGroupName(const char *name) { const Group *g; - char buf[512]; FOR_ALL_GROUPS(g) { - SetDParam(0, g->index); - GetString(buf, STR_GROUP_NAME, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (g->name != NULL && strcmp(g->name, name) == 0) return false; } return true; diff --git a/src/misc_cmd.cpp b/src/misc_cmd.cpp index 0d6ebf143..dadc73a6d 100644 --- a/src/misc_cmd.cpp +++ b/src/misc_cmd.cpp @@ -205,12 +205,9 @@ CommandCost CmdDecreaseLoan(TileIndex tile, uint32 flags, uint32 p1, uint32 p2, static bool IsUniqueCompanyName(const char *name) { const Company *c; - char buf[512]; FOR_ALL_COMPANIES(c) { - SetDParam(0, c->index); - GetString(buf, STR_COMPANY_NAME, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (c->name != NULL && strcmp(c->name, name) == 0) return false; } return true; @@ -244,12 +241,9 @@ CommandCost CmdRenameCompany(TileIndex tile, uint32 flags, uint32 p1, uint32 p2, static bool IsUniquePresidentName(const char *name) { const Company *c; - char buf[512]; FOR_ALL_COMPANIES(c) { - SetDParam(0, c->index); - GetString(buf, STR_PRESIDENT_NAME, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (c->president_name != NULL && strcmp(c->president_name, name) == 0) return false; } return true; diff --git a/src/station_cmd.cpp b/src/station_cmd.cpp index ca641577b..f9d8d2bdd 100644 --- a/src/station_cmd.cpp +++ b/src/station_cmd.cpp @@ -2895,12 +2895,9 @@ static void UpdateStationWaiting(Station *st, CargoID type, uint amount) static bool IsUniqueStationName(const char *name) { const Station *st; - char buf[512]; FOR_ALL_STATIONS(st) { - SetDParam(0, st->index); - GetString(buf, STR_STATION, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (st->name != NULL && strcmp(st->name, name) == 0) return false; } return true; diff --git a/src/town_cmd.cpp b/src/town_cmd.cpp index 4b9de5618..1546f8cb3 100644 --- a/src/town_cmd.cpp +++ b/src/town_cmd.cpp @@ -2103,12 +2103,9 @@ void ClearTownHouse(Town *t, TileIndex tile) static bool IsUniqueTownName(const char *name) { const Town *t; - char buf[512]; FOR_ALL_TOWNS(t) { - SetDParam(0, t->index); - GetString(buf, STR_TOWN, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (t->name != NULL && strcmp(t->name, name) == 0) return false; } return true; diff --git a/src/vehicle.cpp b/src/vehicle.cpp index 591bfc8e9..37fd1dd2a 100644 --- a/src/vehicle.cpp +++ b/src/vehicle.cpp @@ -1525,32 +1525,9 @@ void VehicleEnterDepot(Vehicle *v) static bool IsUniqueVehicleName(const char *name) { const Vehicle *v; - char buf[512]; FOR_ALL_VEHICLES(v) { - switch (v->type) { - case VEH_TRAIN: - if (!IsTrainEngine(v)) continue; - break; - - case VEH_ROAD: - if (!IsRoadVehFront(v)) continue; - break; - - case VEH_AIRCRAFT: - if (!IsNormalAircraft(v)) continue; - break; - - case VEH_SHIP: - break; - - default: - continue; - } - - SetDParam(0, v->index); - GetString(buf, STR_VEHICLE_NAME, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (v->name != NULL && strcmp(v->name, name) == 0) return false; } return true; diff --git a/src/waypoint.cpp b/src/waypoint.cpp index 061eca795..6ae6aa6b1 100644 --- a/src/waypoint.cpp +++ b/src/waypoint.cpp @@ -336,12 +336,9 @@ CommandCost CmdRemoveTrainWaypoint(TileIndex tile, uint32 flags, uint32 p1, uint static bool IsUniqueWaypointName(const char *name) { const Waypoint *wp; - char buf[512]; FOR_ALL_WAYPOINTS(wp) { - SetDParam(0, wp->index); - GetString(buf, STR_WAYPOINT_RAW, lastof(buf)); - if (strcmp(buf, name) == 0) return false; + if (wp->name != NULL && strcmp(wp->name, name) == 0) return false; } return true; |