Changeset 28138 for ps

Timestamp:
Jul 5, 2024, 6:55:33 PM (4 days ago)
Author:
phosit
Message:

Make the CSimContext constructor take a CTerrain and a CUnitManager

CSimulationImpl doesn't has to be a friend anymore.

Comments by: @Stan

Differential Revision: https://code.wildfiregames.com/D5296

Location:
ps/trunk/source/simulation2
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • ps/trunk/source/simulation2/Simulation2.cpp

    r28046 r28138  
    5555public:
    5656    CSimulation2Impl(CUnitManager* unitManager, ScriptContext& cx, CTerrain* terrain) :
     57
    5758        m_ComponentManager{m_SimContext, cx},
    5859        m_MapSettings{cx.GetGeneralJSContext()},
    5960        m_InitAttributes{cx.GetGeneralJSContext()}
    6061    {
    61         m_SimContext.m_UnitManager = unitManager;
    62         m_SimContext.m_Terrain = terrain;
    6362        m_ComponentManager.LoadComponentTypes();
    6463
     
    407406        m_SecondaryTerrain = std::make_unique<CTerrain>();
    408407
    409         m_SecondaryContext = std::make_unique<CSimContext>();
    410         m_SecondaryContext->m_Terrain = m_SecondaryTerrain.get();
     408        m_SecondaryContext = std::make_unique<CSimContext>(m_SecondaryTerrain.get());
    411409
    412410        m_SecondaryComponentManager = std::make_unique<CComponentManager>(*m_SecondaryContext, scriptInterface.GetContext());
  • ps/trunk/source/simulation2/system/SimContext.cpp

    r27965 r28138  
    1 /* Copyright (C) 2016 Wildfire Games.
     1/* Copyright (C) 20 Wildfire Games.
    22 * This file is part of 0 A.D.
    33 *
     
    2424#include "ps/Game.h"
    2525
    26 CSimContext::CSimContext() :
    27     m_ComponentManager(NULL), m_UnitManager(NULL), m_Terrain(NULL)
     26CSimContext::CSimContext(CTerrain* terrain /*= nullptr*/, CUnitManager* unitManager /*= nullptr*/) :
     27    m_UnitManager{unitManager},
     28    m_Terrain{terrain}
    2829{
    2930}
  • ps/trunk/source/simulation2/system/SimContext.h

    r27965 r28138  
    1 /* Copyright (C) 2016 Wildfire Games.
     1/* Copyright (C) 20 Wildfire Games.
    22 * This file is part of 0 A.D.
    33 *
     
    3333{
    3434public:
    35     CSimContext();
     35    CSimContext();
    3636    ~CSimContext();
    3737
     
    5656
    5757private:
    58     CComponentManager* m_ComponentManager;
     58    CComponentManager* m_ComponentManager;
    5959    CUnitManager* m_UnitManager;
    6060    CTerrain* m_Terrain;
    6161
    6262    CEntityHandle m_SystemEntity;
    63 
    64     friend class CSimulation2Impl;
    6563};
    6664
Note: See TracChangeset for help on using the changeset viewer.