mirror of
https://github.com/OpenRCT2/OpenRCT2
synced 2026-01-26 16:24:35 +01:00
Use the Date class in GameState.
This commit is contained in:
committed by
Aaron van Geffen
parent
f1ee5cad83
commit
d57867e722
@@ -20,6 +20,7 @@
|
||||
#include "Editor.h"
|
||||
#include "Input.h"
|
||||
#include "interface/Screenshot.h"
|
||||
#include "localisation/Date.h"
|
||||
#include "management/NewsItem.h"
|
||||
#include "network/network.h"
|
||||
#include "OpenRCT2.h"
|
||||
@@ -184,6 +185,10 @@ void GameState::UpdateLogic()
|
||||
}
|
||||
|
||||
sub_68B089();
|
||||
|
||||
date_update();
|
||||
_date = Date(gDateMonthTicks, gDateMonthTicks);
|
||||
|
||||
scenario_update();
|
||||
climate_update();
|
||||
map_update_tiles();
|
||||
@@ -198,7 +203,7 @@ void GameState::UpdateLogic()
|
||||
|
||||
if (!(gScreenFlags & (SCREEN_FLAGS_SCENARIO_EDITOR | SCREEN_FLAGS_TRACK_DESIGNER | SCREEN_FLAGS_TRACK_MANAGER)))
|
||||
{
|
||||
_park->Update();
|
||||
_park->Update(_date);
|
||||
}
|
||||
|
||||
research_update();
|
||||
|
||||
@@ -17,6 +17,7 @@
|
||||
#pragma once
|
||||
|
||||
#include <memory>
|
||||
#include "Date.h"
|
||||
|
||||
namespace OpenRCT2
|
||||
{
|
||||
@@ -29,10 +30,12 @@ namespace OpenRCT2
|
||||
{
|
||||
private:
|
||||
std::unique_ptr<Park> _park;
|
||||
Date _date;
|
||||
|
||||
public:
|
||||
GameState();
|
||||
|
||||
Date * GetDate() { return &_date; }
|
||||
Park * GetPark() { return _park.get(); }
|
||||
|
||||
void Update();
|
||||
|
||||
@@ -397,7 +397,6 @@ void scenario_update()
|
||||
{
|
||||
if (gScreenFlags == SCREEN_FLAGS_PLAYING)
|
||||
{
|
||||
date_update();
|
||||
if (date_is_day_start(gDateMonthTicks))
|
||||
{
|
||||
scenario_day_update();
|
||||
|
||||
@@ -20,6 +20,7 @@
|
||||
#include "../core/Math.hpp"
|
||||
#include "../core/Memory.hpp"
|
||||
#include "../core/Util.hpp"
|
||||
#include "../Date.h"
|
||||
#include "../Game.h"
|
||||
#include "../interface/Colour.h"
|
||||
#include "../interface/Window.h"
|
||||
@@ -577,7 +578,7 @@ void Park::Initialise()
|
||||
format_string(gS6Info.details, 256, STR_NO_DETAILS_YET, nullptr);
|
||||
}
|
||||
|
||||
void Park::Update()
|
||||
void Park::Update(const Date &date)
|
||||
{
|
||||
// Every 5 seconds approximately
|
||||
if (gCurrentTicks % 512 == 0)
|
||||
@@ -595,7 +596,7 @@ void Park::Update()
|
||||
}
|
||||
|
||||
// Every week
|
||||
if (date_is_week_start(gDateMonthTicks))
|
||||
if (date.IsWeekStart())
|
||||
{
|
||||
UpdateHistories();
|
||||
gParkSize = CalculateParkSize();
|
||||
|
||||
@@ -55,6 +55,8 @@ struct rct_ride;
|
||||
|
||||
namespace OpenRCT2
|
||||
{
|
||||
class Date;
|
||||
|
||||
class Park final
|
||||
{
|
||||
public:
|
||||
@@ -65,7 +67,7 @@ namespace OpenRCT2
|
||||
money32 GetCompanyValue() const;
|
||||
|
||||
void Initialise();
|
||||
void Update();
|
||||
void Update(const Date &date);
|
||||
|
||||
sint32 CalculateParkSize() const;
|
||||
sint32 CalculateParkRating() const;
|
||||
|
||||
Reference in New Issue
Block a user