OpenTTD
Functions | Variables
news_func.h File Reference

Functions related to news. More...

#include "news_type.h"
#include "vehicle_type.h"
#include "station_type.h"
#include "industry_type.h"

Go to the source code of this file.

Functions

void AddNewsItem (StringID string, NewsType type, NewsFlag flags, NewsReferenceType reftype1=NR_NONE, uint32 ref1=UINT32_MAX, NewsReferenceType reftype2=NR_NONE, uint32 ref2=UINT32_MAX, void *free_data=NULL)
 Add a new newsitem to be shown. More...
 
static void AddCompanyNewsItem (StringID string, CompanyNewsInformation *cni)
 
static void AddVehicleNewsItem (StringID string, NewsType type, VehicleID vehicle, StationID station=INVALID_STATION)
 Adds a newsitem referencing a vehicle. More...
 
static void AddVehicleAdviceNewsItem (StringID string, VehicleID vehicle)
 Adds a vehicle-advice news item. More...
 
static void AddTileNewsItem (StringID string, NewsType type, TileIndex tile, void *free_data=NULL)
 
static void AddIndustryNewsItem (StringID string, NewsType type, IndustryID industry)
 
void NewsLoop ()
 
void InitNewsItemStructs ()
 Initialize the news-items data structures.
 
void DeleteInvalidEngineNews ()
 Remove engine announcements for invalid engines.
 
void DeleteVehicleNews (VehicleID vid, StringID news)
 Delete a news item type about a vehicle. More...
 
void DeleteStationNews (StationID sid)
 Remove news regarding given station so there are no 'unknown station now accepts Mail' or 'First train arrived at unknown station' news items. More...
 
void DeleteIndustryNews (IndustryID iid)
 Remove news regarding given industry. More...
 

Variables

const NewsItem_statusbar_news_item
 

Detailed Description

Functions related to news.

Definition in file news_func.h.

Function Documentation

◆ AddNewsItem()

void AddNewsItem ( StringID  string,
NewsType  type,
NewsFlag  flags,
NewsReferenceType  reftype1,
uint32  ref1,
NewsReferenceType  reftype2,
uint32  ref2,
void *  free_data 
)

Add a new newsitem to be shown.

Parameters
stringString to display
typenews category
flagsdisplay flags for the news
reftype1Type of ref1
ref1Reference 1 to some object: Used for a possible viewport, scrolling after clicking on the news, and for deleteing the news when the object is deleted.
reftype2Type of ref2
ref2Reference 2 to some object: Used for scrolling after clicking on the news, and for deleteing the news when the object is deleted.
free_dataPointer to data that must be freed once the news message is cleared
See also
NewsSubtype

Definition at line 645 of file news_gui.cpp.

Referenced by AddVehicleAdviceNewsItem(), CheckSwitchToEuro(), CreateSubsidy(), and ShowRejectOrAcceptNews().

◆ AddVehicleAdviceNewsItem()

static void AddVehicleAdviceNewsItem ( StringID  string,
VehicleID  vehicle 
)
inlinestatic

Adds a vehicle-advice news item.

Warning
DParam 0 must reference the vehicle!

Definition at line 42 of file news_func.h.

References AddNewsItem(), NF_INCOLOUR, NF_SMALL, NF_VEHICLE_PARAM0, NR_VEHICLE, and NT_ADVICE.

Referenced by AgeVehicle(), AircraftHandleDestTooFar(), and Vehicle::HandlePathfindingResult().

◆ AddVehicleNewsItem()

static void AddVehicleNewsItem ( StringID  string,
NewsType  type,
VehicleID  vehicle,
StationID  station = INVALID_STATION 
)
inlinestatic

Adds a newsitem referencing a vehicle.

Warning
The DParams may not reference the vehicle due to autoreplace stuff. See AddVehicleAdviceNewsItem for how that can be done.

Definition at line 32 of file news_func.h.

Referenced by CrashAirplane(), FloodVehicle(), RoadVehArrivesAt(), ShipArrivesAt(), and TrainEnterStation().

◆ DeleteIndustryNews()

void DeleteIndustryNews ( IndustryID  iid)

Remove news regarding given industry.

Parameters
iidindustry to remove news about

Definition at line 824 of file news_gui.cpp.

References _oldest_news, DeleteNewsItem(), NewsItem::next, NR_INDUSTRY, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, and NewsItem::reftype2.

◆ DeleteStationNews()

void DeleteStationNews ( StationID  sid)

Remove news regarding given station so there are no 'unknown station now accepts Mail' or 'First train arrived at unknown station' news items.

Parameters
sidstation to remove news about

Definition at line 807 of file news_gui.cpp.

References _oldest_news, DeleteNewsItem(), NewsItem::next, NR_STATION, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, and NewsItem::reftype2.

◆ DeleteVehicleNews()

void DeleteVehicleNews ( VehicleID  vid,
StringID  news 
)

Delete a news item type about a vehicle.

When the news item type is INVALID_STRING_ID all news about the vehicle gets deleted.

Parameters
vidThe vehicle to remove the news for.
newsThe news type to remove.

Definition at line 788 of file news_gui.cpp.

References _oldest_news, DeleteNewsItem(), INVALID_STRING_ID, NewsItem::next, NR_VEHICLE, NewsItem::ref1, NewsItem::ref2, NewsItem::reftype1, NewsItem::reftype2, and NewsItem::string_id.

Referenced by AircraftHandleDestTooFar(), CmdStartStopVehicle(), DeleteOrderWarnings(), and Vehicle::HandlePathfindingResult().