mirror of
https://github.com/OpenTTD/OpenTTD.git
synced 2025-03-09 15:41:15 +00:00
Codechange: [Script] Use std::unique_ptr for Company::ai_instance (#12544)
This commit is contained in:
parent
1dfd0c19f4
commit
c5ef47ee09
@ -60,7 +60,7 @@
|
||||
|
||||
c->ai_info = info;
|
||||
assert(c->ai_instance == nullptr);
|
||||
c->ai_instance = new AIInstance();
|
||||
c->ai_instance = std::make_unique<AIInstance>();
|
||||
c->ai_instance->Initialize(info);
|
||||
c->ai_instance->LoadOnStack(config->GetToLoadData());
|
||||
config->SetToLoadData(nullptr);
|
||||
@ -112,8 +112,7 @@
|
||||
Backup<CompanyID> cur_company(_current_company, company);
|
||||
Company *c = Company::Get(company);
|
||||
|
||||
delete c->ai_instance;
|
||||
c->ai_instance = nullptr;
|
||||
c->ai_instance.reset();
|
||||
c->ai_info = nullptr;
|
||||
c->ai_config.reset();
|
||||
|
||||
|
@ -134,7 +134,7 @@ struct Company : CompanyProperties, CompanyPool::PoolItem<&_company_pool> {
|
||||
RailTypes avail_railtypes; ///< Rail types available to this company.
|
||||
RoadTypes avail_roadtypes; ///< Road types available to this company.
|
||||
|
||||
class AIInstance *ai_instance;
|
||||
std::unique_ptr<class AIInstance> ai_instance;
|
||||
class AIInfo *ai_info;
|
||||
std::unique_ptr<class AIConfig> ai_config;
|
||||
|
||||
|
@ -20,6 +20,7 @@
|
||||
#include "network/network_base.h"
|
||||
#include "network/network_admin.h"
|
||||
#include "ai/ai.hpp"
|
||||
#include "ai/ai_instance.hpp"
|
||||
#include "ai/ai_config.hpp"
|
||||
#include "company_manager_face.h"
|
||||
#include "window_func.h"
|
||||
|
Loading…
Reference in New Issue
Block a user