Files
@ r6873:011bb2269607
Branch filter:
Location: cpp/openttd-patchpack/source/src/newgrf.h - annotation
r6873:011bb2269607
2.7 KiB
text/x-c
(svn r10114) -Fix: Only load newgrf error messages if the language matches the current
language. Since only one error can be loaded anyway, if the language didn't
match you'd get "Undefined string". Also since we're only loading one language
there's no need to use AddGRFString any more.
language. Since only one error can be loaded anyway, if the language didn't
match you'd get "Undefined string". Also since we're only loading one language
there's no need to use AddGRFString any more.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 | r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6348:a905c3e6d8fa r6348:a905c3e6d8fa r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6332:7393965b5322 r5475:3f5cd13d1b63 r5587:034e5e185dc2 r6143:9ed364174dfd r6759:a9204a361fa6 r5475:3f5cd13d1b63 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6359:99cac4de410b r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5587:034e5e185dc2 r5587:034e5e185dc2 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r6541:639dad125026 r5587:034e5e185dc2 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6332:7393965b5322 r6759:a9204a361fa6 r6759:a9204a361fa6 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6348:a905c3e6d8fa r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6143:9ed364174dfd r6143:9ed364174dfd r6143:9ed364174dfd r6147:29bca9cbe66b r6248:b940b09d7ab8 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r6769:0e5b094df012 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6348:a905c3e6d8fa r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r5475:3f5cd13d1b63 r6541:639dad125026 r6541:639dad125026 r5475:3f5cd13d1b63 | /* $Id$ */
/** @file newgrf.h */
#ifndef NEWGRF_H
#define NEWGRF_H
#include "station.h"
#include "town.h"
#include "newgrf_config.h"
#include "helpers.hpp"
#include "cargotype.h"
#include "industry.h"
enum GrfLoadingStage {
GLS_FILESCAN,
GLS_SAFETYSCAN,
GLS_LABELSCAN,
GLS_INIT,
GLS_RESERVE,
GLS_ACTIVATION,
GLS_END,
};
DECLARE_POSTFIX_INCREMENT(GrfLoadingStage);
enum GrfMiscBit {
GMB_DESERT_TREES_FIELDS = 0, // Unsupported.
GMB_DESERT_PAVED_ROADS = 1,
GMB_FIELD_BOUNDING_BOX = 2, // Unsupported.
GMB_TRAIN_WIDTH_32_PIXELS = 3,
GMB_AMBIENT_SOUND_CALLBACK = 4, // Unsupported.
GMB_CATENARY_ON_3RD_TRACK = 5, // Unsupported.
};
struct GRFLabel {
byte label;
uint32 nfo_line;
uint32 pos;
struct GRFLabel *next;
};
struct GRFFile {
char *filename;
uint32 grfid;
uint16 sprite_offset;
byte grf_version;
GRFFile *next;
/* A sprite group contains all sprites of a given vehicle (or multiple
* vehicles) when carrying given cargo. It consists of several sprite
* sets. Group ids are refered as "cargo id"s by TTDPatch
* documentation, contributing to the global confusion.
*
* A sprite set contains all sprites of a given vehicle carrying given
* cargo at a given *stage* - that is usually its load stage. Ie. you
* can have a spriteset for an empty wagon, wagon full of coal,
* half-filled wagon etc. Each spriteset contains eight sprites (one
* per direction) or four sprites if the vehicle is symmetric. */
SpriteID spriteset_start;
int spriteset_numsets;
int spriteset_numents;
int spriteset_feature;
int spritegroups_count;
struct SpriteGroup **spritegroups;
uint sound_offset;
StationSpec **stations;
HouseSpec **housespec;
IndustrySpec **industryspec;
IndustryTileSpec **indtspec;
uint32 param[0x80];
uint param_end; ///< one more than the highest set parameter
GRFLabel *label; ///< Pointer to the first label. This is a linked list, not an array.
uint8 cargo_max;
CargoLabel *cargo_list;
uint8 cargo_map[NUM_CARGO];
};
extern GRFFile *_first_grffile;
extern SpriteID _signal_base;
extern SpriteID _coast_base;
enum GRFLoadedFeatures {
GRFLOADED_2CC, // Set if any vehicle is loaded which uses 2cc (two company colours).
GRFLOADED_NEWHOUSES, // Set if there are any newhouses loaded.
GRFLOADED_NEWINDUSTRIES, // Set if there are any newindustries loaded.
};
/* Indicates which are the newgrf features currently loaded ingame */
extern uint8 _loaded_newgrf_features;
void LoadNewGRFFile(GRFConfig *config, uint file_index, GrfLoadingStage stage);
void LoadNewGRF(uint load_index, uint file_index);
void ReloadNewGRFData(); // in openttd.cpp
void CDECL grfmsg(int severity, const char *str, ...);
bool HasGrfMiscBit(GrfMiscBit bit);
#endif /* NEWGRF_H */
|