Merge branch 'master' into jgrpp
# Conflicts: # source.list # src/blitter/32bpp_anim.cpp # src/linkgraph/linkgraphjob.cpp # src/order_cmd.cpp # src/vehicle.cpp # src/vehicle_type.h
This commit is contained in:
@@ -142,7 +142,7 @@ public:
|
||||
break;
|
||||
}
|
||||
Lex();
|
||||
return ret;
|
||||
return std::move(ret);
|
||||
}
|
||||
bool IsEndOfStatement() { return ((_lex._prevtoken == '\n') || (_token == SQUIRREL_EOB) || (_token == '}') || (_token == ';')); }
|
||||
void OptionalSemicolon()
|
||||
|
13
src/3rdparty/squirrel/squirrel/sqfuncproto.h
vendored
13
src/3rdparty/squirrel/squirrel/sqfuncproto.h
vendored
@@ -20,12 +20,6 @@ struct SQOuterVar
|
||||
_src=src;
|
||||
_type=t;
|
||||
}
|
||||
SQOuterVar(const SQOuterVar &ov)
|
||||
{
|
||||
_type=ov._type;
|
||||
_src=ov._src;
|
||||
_name=ov._name;
|
||||
}
|
||||
SQOuterType _type;
|
||||
SQObjectPtr _name;
|
||||
SQObjectPtr _src;
|
||||
@@ -34,13 +28,6 @@ struct SQOuterVar
|
||||
struct SQLocalVarInfo
|
||||
{
|
||||
SQLocalVarInfo():_start_op(0),_end_op(0), _pos(0){}
|
||||
SQLocalVarInfo(const SQLocalVarInfo &lvi)
|
||||
{
|
||||
_name=lvi._name;
|
||||
_start_op=lvi._start_op;
|
||||
_end_op=lvi._end_op;
|
||||
_pos=lvi._pos;
|
||||
}
|
||||
SQObjectPtr _name;
|
||||
SQUnsignedInteger _start_op;
|
||||
SQUnsignedInteger _end_op;
|
||||
|
@@ -502,14 +502,14 @@ SQObject SQFuncState::CreateString(const SQChar *s,SQInteger len)
|
||||
{
|
||||
SQObjectPtr ns(SQString::Create(_sharedstate,s,len));
|
||||
_table(_strings)->NewSlot(ns,(SQInteger)1);
|
||||
return ns;
|
||||
return std::move(ns);
|
||||
}
|
||||
|
||||
SQObject SQFuncState::CreateTable()
|
||||
{
|
||||
SQObjectPtr nt(SQTable::Create(_sharedstate,0));
|
||||
_table(_strings)->NewSlot(nt,(SQInteger)1);
|
||||
return nt;
|
||||
return std::move(nt);
|
||||
}
|
||||
|
||||
SQFunctionProto *SQFuncState::BuildProto()
|
||||
|
5
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
5
src/3rdparty/squirrel/squirrel/sqvm.h
vendored
@@ -12,9 +12,8 @@
|
||||
void sq_base_register(HSQUIRRELVM v);
|
||||
|
||||
struct SQExceptionTrap{
|
||||
SQExceptionTrap() {}
|
||||
SQExceptionTrap(SQInteger ss, SQInteger stackbase,SQInstruction *ip, SQInteger ex_target){ _stacksize = ss; _stackbase = stackbase; _ip = ip; _extarget = ex_target;}
|
||||
SQExceptionTrap(const SQExceptionTrap &et) { (*this) = et; }
|
||||
SQExceptionTrap(SQInteger ss, SQInteger stackbase,SQInstruction *ip, SQInteger ex_target)
|
||||
: _stackbase(stackbase), _stacksize(ss), _ip(ip), _extarget(ex_target) {}
|
||||
SQInteger _stackbase;
|
||||
SQInteger _stacksize;
|
||||
SQInstruction *_ip;
|
||||
|
@@ -1891,7 +1891,7 @@ static bool AirportHasBlock(Aircraft *v, const AirportFTA *current_pos, const Ai
|
||||
* "reserve" a block for the plane
|
||||
* @param v airplane that requires the operation
|
||||
* @param current_pos of the vehicle in the list of blocks
|
||||
* @param apc airport on which block is requsted to be set
|
||||
* @param apc airport on which block is requested to be set
|
||||
* @returns true on success. Eg, next block was free and we have occupied it
|
||||
*/
|
||||
static bool AirportSetBlocks(Aircraft *v, const AirportFTA *current_pos, const AirportFTAClass *apc)
|
||||
|
@@ -598,7 +598,7 @@ static CommandCost ReplaceChain(Vehicle **chain, DoCommandFlag flags, bool wagon
|
||||
if ((flags & DC_EXEC) != 0) TransferCargo(w, new_head, true);
|
||||
|
||||
/* Sell the vehicle.
|
||||
* Note: This might temporarly construct new trains, so use DC_AUTOREPLACE to prevent
|
||||
* Note: This might temporarily construct new trains, so use DC_AUTOREPLACE to prevent
|
||||
* it from failing due to engine limits. */
|
||||
cost.AddCost(DoCommand(0, w->index, 0, flags | DC_AUTOREPLACE, GetCmdSellVeh(w)));
|
||||
if ((flags & DC_EXEC) != 0) {
|
||||
|
@@ -44,7 +44,7 @@ inline void Blitter_32bppAnim::Draw(const Blitter::BlitterParams *bp, ZoomLevel
|
||||
Colour *dst = (Colour *)bp->dst + bp->top * bp->pitch + bp->left;
|
||||
uint16 *anim = this->anim_buf + this->ScreenToAnimOffset((uint32 *)bp->dst) + bp->top * this->anim_buf_pitch + bp->left;
|
||||
|
||||
const byte *remap = bp->remap; // store so we don't have to access it via bp everytime
|
||||
const byte *remap = bp->remap; // store so we don't have to access it via bp every time
|
||||
const int width = bp->width;
|
||||
const int pitch = bp->pitch;
|
||||
const int anim_pitch = this->anim_buf_pitch;
|
||||
|
@@ -48,7 +48,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL
|
||||
/* skip lines in dst */
|
||||
Colour *dst = (Colour *)bp->dst + bp->top * bp->pitch + bp->left;
|
||||
|
||||
/* store so we don't have to access it via bp everytime (compiler assumes pointer aliasing) */
|
||||
/* store so we don't have to access it via bp every time (compiler assumes pointer aliasing) */
|
||||
const byte *remap = bp->remap;
|
||||
|
||||
for (int y = 0; y < bp->height; y++) {
|
||||
@@ -66,7 +66,7 @@ inline void Blitter_32bppOptimized::Draw(const Blitter::BlitterParams *bp, ZoomL
|
||||
/* we will end this line when we reach this point */
|
||||
Colour *dst_end = dst + bp->skip_left;
|
||||
|
||||
/* number of pixels with the same aplha channel class */
|
||||
/* number of pixels with the same alpha channel class */
|
||||
uint n;
|
||||
|
||||
while (dst < dst_end) {
|
||||
|
@@ -15,7 +15,7 @@
|
||||
#include "gfx_type.h"
|
||||
|
||||
struct BmpInfo {
|
||||
uint32 offset; ///< offset of bitmap data from .bmp file begining
|
||||
uint32 offset; ///< offset of bitmap data from .bmp file beginning
|
||||
uint32 width; ///< bitmap width
|
||||
uint32 height; ///< bitmap height
|
||||
bool os2_bmp; ///< true if OS/2 1.x or windows 2.x bitmap
|
||||
|
@@ -162,7 +162,7 @@ bool CargoReturn::operator()(CargoPacket *cp)
|
||||
|
||||
/**
|
||||
* Transfers some cargo from a vehicle to a station.
|
||||
* @param cp Packet to be transfered.
|
||||
* @param cp Packet to be transferred.
|
||||
* @return True if the packet was completely reserved, false if part of it was.
|
||||
*/
|
||||
bool CargoTransfer::operator()(CargoPacket *cp)
|
||||
|
@@ -576,7 +576,7 @@ void VehicleCargoList::AgeCargo()
|
||||
}
|
||||
|
||||
/**
|
||||
* Sets loaded_at_xy to the current station for all cargo to be transfered.
|
||||
* Sets loaded_at_xy to the current station for all cargo to be transferred.
|
||||
* This is done when stopping or skipping while the vehicle is unloading. In
|
||||
* that case the vehicle will get part of its transfer credits early and it may
|
||||
* get more transfer credits than it's entitled to.
|
||||
|
@@ -299,7 +299,7 @@ protected:
|
||||
typedef CargoList<VehicleCargoList, CargoPacketList> Parent;
|
||||
|
||||
Money feeder_share; ///< Cache for the feeder share.
|
||||
uint action_counts[NUM_MOVE_TO_ACTION]; ///< Counts of cargo to be transfered, delivered, kept and loaded.
|
||||
uint action_counts[NUM_MOVE_TO_ACTION]; ///< Counts of cargo to be transferred, delivered, kept and loaded.
|
||||
|
||||
template<class Taction>
|
||||
void ShiftCargo(Taction action);
|
||||
|
@@ -781,7 +781,7 @@ bool DoCommandP(TileIndex tile, uint32 p1, uint32 p2, uint32 cmd, CommandCallbac
|
||||
tile, TileX(tile), TileY(tile), p1, p2, scope_dumper().CompanyInfo(_current_company), cmd, GetCommandName(cmd), my_cmd, cmd_text_info_dumper().CommandTextInfo(text, binary_length));
|
||||
|
||||
/* Cost estimation is generally only done when the
|
||||
* local user presses shift while doing somthing.
|
||||
* local user presses shift while doing something.
|
||||
* However, in case of incoming network commands,
|
||||
* map generation or the pause button we do want
|
||||
* to execute. */
|
||||
|
@@ -257,7 +257,7 @@ DEF_CONSOLE_CMD(ConResetTile)
|
||||
* Scroll to a tile on the map.
|
||||
* param x tile number or tile x coordinate.
|
||||
* param y optional y coordinate.
|
||||
* @note When only one argument is given it is intepreted as the tile number.
|
||||
* @note When only one argument is given it is interpreted as the tile number.
|
||||
* When two arguments are given, they are interpreted as the tile's x
|
||||
* and y coordinates.
|
||||
* @return True when either console help was shown or a proper amount of parameters given.
|
||||
|
@@ -281,7 +281,7 @@ struct IConsoleWindow : Window
|
||||
|
||||
case WKC_RETURN: case WKC_NUM_ENTER: {
|
||||
/* We always want the ] at the left side; we always force these strings to be left
|
||||
* aligned anyway. So enforce this in all cases by addding a left-to-right marker,
|
||||
* aligned anyway. So enforce this in all cases by adding a left-to-right marker,
|
||||
* otherwise it will be drawn at the wrong side with right-to-left texts. */
|
||||
IConsolePrintF(CC_COMMAND, LRM "] %s", _iconsole_cmdline.buf);
|
||||
const char *cmd = IConsoleHistoryAdd(_iconsole_cmdline.buf);
|
||||
|
@@ -7,7 +7,7 @@
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file pool_type.hpp Defintion of Pool, structure used to access PoolItems, and PoolItem, base structure for Vehicle, Town, and other indexed items. */
|
||||
/** @file pool_type.hpp Definition of Pool, structure used to access PoolItems, and PoolItem, base structure for Vehicle, Town, and other indexed items. */
|
||||
|
||||
#ifndef POOL_TYPE_HPP
|
||||
#define POOL_TYPE_HPP
|
||||
|
@@ -65,9 +65,9 @@
|
||||
#ifdef WITH_LZO
|
||||
#include <lzo/lzo1x.h>
|
||||
#endif
|
||||
#ifdef WITH_SDL
|
||||
#if defined(WITH_SDL) || defined(WITH_SDL2)
|
||||
# include <SDL.h>
|
||||
#endif /* WITH_SDL */
|
||||
#endif /* WITH_SDL || WITH_SDL2 */
|
||||
#ifdef WITH_ZLIB
|
||||
# include <zlib.h>
|
||||
#endif
|
||||
@@ -304,9 +304,13 @@ char *CrashLog::LogLibraries(char *buffer, const char *last) const
|
||||
#endif /* WITH_PNG */
|
||||
|
||||
#ifdef WITH_SDL
|
||||
const SDL_version *v = SDL_Linked_Version();
|
||||
buffer += seprintf(buffer, last, " SDL: %d.%d.%d\n", v->major, v->minor, v->patch);
|
||||
#endif /* WITH_SDL */
|
||||
const SDL_version *sdl_v = SDL_Linked_Version();
|
||||
buffer += seprintf(buffer, last, " SDL1: %d.%d.%d\n", sdl_v->major, sdl_v->minor, sdl_v->patch);
|
||||
#elif defined(WITH_SDL2)
|
||||
SDL_version sdl2_v;
|
||||
SDL_GetVersion(&sdl2_v);
|
||||
buffer += seprintf(buffer, last, " SDL2: %d.%d.%d\n", sdl2_v.major, sdl2_v.minor, sdl2_v.patch);
|
||||
#endif
|
||||
|
||||
#ifdef WITH_ZLIB
|
||||
buffer += seprintf(buffer, last, " Zlib: %s\n", zlibVersion());
|
||||
|
@@ -92,7 +92,7 @@ const char *GetDebugString();
|
||||
* TIC() / TOC() creates its own block, so make sure not the mangle
|
||||
* it with another block.
|
||||
*
|
||||
* The output is counted in CPU cycles, and not comparable accross
|
||||
* The output is counted in CPU cycles, and not comparable across
|
||||
* machines. Mainly useful for local optimisations.
|
||||
**/
|
||||
#define TIC() {\
|
||||
|
@@ -292,7 +292,7 @@ public:
|
||||
}
|
||||
|
||||
/**
|
||||
* Read the currenty processed string.
|
||||
* Read the currently processed string.
|
||||
* @return the string, can be nullptr.
|
||||
*/
|
||||
const char *GetString() const
|
||||
|
@@ -1916,7 +1916,7 @@ static void LoadUnloadVehicle(Vehicle *front)
|
||||
dirty_station = true;
|
||||
|
||||
if (!ge->HasRating()) {
|
||||
/* Upon transfering cargo, make sure the station has a rating. Fake a pickup for the
|
||||
/* Upon transferring cargo, make sure the station has a rating. Fake a pickup for the
|
||||
* first unload to prevent the cargo from quickly decaying after the initial drop. */
|
||||
ge->time_since_pickup = 0;
|
||||
SetBit(ge->status, GoodsEntry::GES_RATING);
|
||||
|
@@ -72,9 +72,11 @@ static WindowDesc _errmsg_face_desc(
|
||||
* Copy the given data into our instance.
|
||||
* @param data The data to copy.
|
||||
*/
|
||||
ErrorMessageData::ErrorMessageData(const ErrorMessageData &data)
|
||||
ErrorMessageData::ErrorMessageData(const ErrorMessageData &data) :
|
||||
duration(data.duration), textref_stack_grffile(data.textref_stack_grffile), textref_stack_size(data.textref_stack_size),
|
||||
summary_msg(data.summary_msg), detailed_msg(data.detailed_msg), position(data.position), face(data.face)
|
||||
{
|
||||
*this = data;
|
||||
memcpy(this->textref_stack, data.textref_stack, sizeof(this->textref_stack));
|
||||
for (size_t i = 0; i < lengthof(this->strings); i++) {
|
||||
if (this->strings[i] != nullptr) {
|
||||
this->strings[i] = stredup(this->strings[i]);
|
||||
|
@@ -986,7 +986,7 @@ static void LoadWin32Font(FontSize fs)
|
||||
|
||||
if (AddFontResourceEx(fontPath, FR_PRIVATE, 0) != 0) {
|
||||
/* Try a nice little undocumented function first for getting the internal font name.
|
||||
* Some documentation is fount at: http://www.undocprint.org/winspool/getfontresourceinfo */
|
||||
* Some documentation is found at: http://www.undocprint.org/winspool/getfontresourceinfo */
|
||||
typedef BOOL(WINAPI * PFNGETFONTRESOURCEINFO)(LPCTSTR, LPDWORD, LPVOID, DWORD);
|
||||
#ifdef UNICODE
|
||||
static PFNGETFONTRESOURCEINFO GetFontResourceInfo = (PFNGETFONTRESOURCEINFO)GetProcAddress(GetModuleHandle(_T("Gdi32")), "GetFontResourceInfoW");
|
||||
|
@@ -399,7 +399,7 @@ FT_Error GetFontByFaceName(const char *font_name, FT_Face *face)
|
||||
#if (MAC_OS_X_VERSION_MAX_ALLOWED >= MAC_OS_X_VERSION_10_6)
|
||||
if (MacOSVersionIsAtLeast(10, 6, 0)) {
|
||||
/* Simply creating the font using CTFontCreateWithNameAndSize will *always* return
|
||||
* something, no matter the name. As such, we can't use it to check for existance.
|
||||
* something, no matter the name. As such, we can't use it to check for existence.
|
||||
* We instead query the list of all font descriptors that match the given name which
|
||||
* does not do this stupid name fallback. */
|
||||
CTFontDescriptorRef name_desc = CTFontDescriptorCreateWithNameAndSize(name, 0.0);
|
||||
|
@@ -918,7 +918,7 @@ struct FrametimeGraphWindow : Window {
|
||||
}
|
||||
}
|
||||
}
|
||||
/* Draw divison lines and labels for the horizontal axis */
|
||||
/* Draw division lines and labels for the horizontal axis */
|
||||
for (uint division = horz_divisions; division > 0; division--) {
|
||||
int x = Scinterlate(x_zero, x_max, 0, (int)horz_divisions, (int)horz_divisions - (int)division);
|
||||
GfxDrawLine(x, y_max, x, y_zero, c_grid);
|
||||
|
@@ -214,7 +214,7 @@ static inline void GfxDoDrawLine(void *video, int x, int y, int x2, int y2, int
|
||||
* work the blitter has to do by shortening the effective line segment.
|
||||
* However, in order to get that right and prevent the flickering effects
|
||||
* of rounding errors so much additional code has to be run here that in
|
||||
* the general case the effect is not noticable. */
|
||||
* the general case the effect is not noticeable. */
|
||||
|
||||
blitter->DrawLine(video, x, y, x2, y2, screen_width, screen_height, colour, width, dash);
|
||||
}
|
||||
@@ -1674,7 +1674,7 @@ bool CursorVars::UpdateCursorPosition(int x, int y, bool queued_warp)
|
||||
if (this->delta.x != 0 || this->delta.y != 0) {
|
||||
/* Trigger warp.
|
||||
* Note: We also trigger warping again, if there is already a pending warp.
|
||||
* This makes it more tolerant about the OS or other software inbetween
|
||||
* This makes it more tolerant about the OS or other software in between
|
||||
* botchering the warp. */
|
||||
this->queued_warp = queued_warp;
|
||||
need_warp = true;
|
||||
|
@@ -31,7 +31,7 @@
|
||||
* VideoDriver::MakeDirty and it is truncated back to an empty rectangle. At some
|
||||
* later point (which is uninteresting, too) the video driver
|
||||
* repaints all these saved rectangle instead of the whole screen and drop the
|
||||
* rectangle informations. Then a new round begins by marking objects "dirty".
|
||||
* rectangle information. Then a new round begins by marking objects "dirty".
|
||||
*
|
||||
* @see VideoDriver::MakeDirty
|
||||
* @see _invalid_rect
|
||||
|
@@ -512,7 +512,7 @@ std::unique_ptr<const ParagraphLayouter::Line> FallbackParagraphLayout::NextLine
|
||||
/* Only a newline. */
|
||||
this->buffer = nullptr;
|
||||
l->emplace_back(this->runs.front().second, this->buffer, 0, 0);
|
||||
return std::move(l); // Not supposed to be needed, but clang-3.8 barfs otherwise.
|
||||
return l;
|
||||
}
|
||||
|
||||
int offset = this->buffer - this->buffer_begin;
|
||||
@@ -562,7 +562,7 @@ std::unique_ptr<const ParagraphLayouter::Line> FallbackParagraphLayout::NextLine
|
||||
/* The character is wider than allowed width; don't know
|
||||
* what to do with this case... bail out! */
|
||||
this->buffer = nullptr;
|
||||
return std::move(l); // Not supposed to be needed, but clang-3.8 barfs otherwise.
|
||||
return l;
|
||||
}
|
||||
|
||||
if (last_space == nullptr) {
|
||||
@@ -589,7 +589,7 @@ std::unique_ptr<const ParagraphLayouter::Line> FallbackParagraphLayout::NextLine
|
||||
int w = l->GetWidth();
|
||||
l->emplace_back(iter->second, begin, last_char - begin, w);
|
||||
}
|
||||
return std::move(l); // Not supposed to be needed, but clang-3.8 barfs otherwise.
|
||||
return l;
|
||||
}
|
||||
|
||||
/**
|
||||
|
@@ -140,7 +140,7 @@ int GroundVehicle<T, Type>::GetAcceleration()
|
||||
|
||||
/* Power is stored in HP, we need it in watts.
|
||||
* Each vehicle can have U16 power, 128 vehicles, HP -> watt
|
||||
* and km/h to m/s conversion below result in a maxium of
|
||||
* and km/h to m/s conversion below result in a maximum of
|
||||
* about 1.1E11, way more than 4.3E9 of int32. */
|
||||
int64 power = this->gcache.cached_power * 746ll;
|
||||
|
||||
|
@@ -356,8 +356,8 @@ int GetSlopePixelZ(int x, int y)
|
||||
* Return world \c z coordinate of a given point of a tile,
|
||||
* also for tiles outside the map (virtual "black" tiles).
|
||||
*
|
||||
* @param x World X coordinate in tile "units", may be ouside the map.
|
||||
* @param y World Y coordinate in tile "units", may be ouside the map.
|
||||
* @param x World X coordinate in tile "units", may be outside the map.
|
||||
* @param y World Y coordinate in tile "units", may be outside the map.
|
||||
* @return World Z coordinate at tile ground level, including slopes and foundations.
|
||||
*/
|
||||
int GetSlopePixelZOutsideMap(int x, int y)
|
||||
|
@@ -265,6 +265,7 @@ STR_COLOUR_BROWN :Hnědá
|
||||
STR_COLOUR_GREY :Šedá
|
||||
STR_COLOUR_WHITE :Bílá
|
||||
STR_COLOUR_RANDOM :Náhodná
|
||||
STR_COLOUR_DEFAULT :Výchozí
|
||||
|
||||
# Units used in OpenTTD
|
||||
STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}m{P íle íle il}/h
|
||||
@@ -312,6 +313,7 @@ STR_BUTTON_SORT_BY :{BLACK}Řadit p
|
||||
STR_BUTTON_LOCATION :{BLACK}Umístění
|
||||
STR_BUTTON_RENAME :{BLACK}Přejmenovat
|
||||
STR_BUTTON_CATCHMENT :{BLACK}Pokrytí
|
||||
STR_TOOLTIP_CATCHMENT :{BLACK}Zapnout/vypnout zvýrazňování oblasti pokrytí
|
||||
|
||||
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Zavřít okno
|
||||
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Titulek okna - tahej pro posun okna
|
||||
@@ -340,6 +342,7 @@ STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}Zapnutí
|
||||
STR_BUTTON_DEFAULT :{BLACK}Původní
|
||||
STR_BUTTON_CANCEL :{BLACK}Zrušit
|
||||
STR_BUTTON_OK :{BLACK}OK
|
||||
STR_WARNING_PASSWORD_SECURITY :{YELLOW}Upozornění: Administrátor serveru může zjistit a přečíst jakýkoliv text sem vložený.
|
||||
|
||||
# On screen keyboard window
|
||||
STR_OSK_KEYBOARD_LAYOUT :"+ěščřžýáíé=-\qwertyuiopú)asdfghjklů' zxcvbnm,./ .
|
||||
@@ -434,6 +437,7 @@ STR_SCENEDIT_TOOLBAR_LANDSCAPE_GENERATION :{BLACK}Generov
|
||||
STR_SCENEDIT_TOOLBAR_TOWN_GENERATION :{BLACK}Generování měst
|
||||
STR_SCENEDIT_TOOLBAR_INDUSTRY_GENERATION :{BLACK}Generování průmyslu
|
||||
STR_SCENEDIT_TOOLBAR_ROAD_CONSTRUCTION :{BLACK}Výstavba silniční sítě
|
||||
STR_SCENEDIT_TOOLBAR_TRAM_CONSTRUCTION :{BLACK}Výstavba tramvajové tratě
|
||||
STR_SCENEDIT_TOOLBAR_PLANT_TREES :{BLACK}Vysadit stromy. Shift zobrazí odhad ceny
|
||||
STR_SCENEDIT_TOOLBAR_PLACE_SIGN :{BLACK}Umístit popisek
|
||||
STR_SCENEDIT_TOOLBAR_PLACE_OBJECT :{BLACK}Umisťte objekt. Shift zobrazí odhad ceny
|
||||
@@ -763,10 +767,12 @@ STR_MUSIC_TOOLTIP_TOGGLE_PROGRAM_SHUFFLE :{BLACK}Zapnout/
|
||||
STR_MUSIC_TOOLTIP_SHOW_MUSIC_TRACK_SELECTION :{BLACK}Ukaž skladbu ve výběrovém okně
|
||||
|
||||
# Playlist window
|
||||
STR_PLAYLIST_MUSIC_SELECTION_SETNAME :{WHITE}Hudební program - '{STRING}'
|
||||
STR_PLAYLIST_TRACK_NAME :{TINY_FONT}{LTBLUE}{ZEROFILL_NUM} "{STRING}"
|
||||
STR_PLAYLIST_TRACK_INDEX :{TINY_FONT}{BLACK}Index skladeb
|
||||
STR_PLAYLIST_PROGRAM :{TINY_FONT}{BLACK}Program - '{STRING}'
|
||||
STR_PLAYLIST_CLEAR :{TINY_FONT}{BLACK}Vymazat
|
||||
STR_PLAYLIST_CHANGE_SET :{BLACK}Změnit program
|
||||
STR_PLAYLIST_TOOLTIP_CLEAR_CURRENT_PROGRAM_CUSTOM1 :{BLACK}Vyprázdnit současný program (jen u Voleb 1 a 2)
|
||||
STR_PLAYLIST_TOOLTIP_CHANGE_SET :{BLACK}Změnit výběr hudby na jinou nainstalovanou sadu.
|
||||
STR_PLAYLIST_TOOLTIP_CLICK_TO_ADD_TRACK :{BLACK}Skladba se přidá do zvoleného programu (Volba 1 nebo 2) klepnutím na její název
|
||||
@@ -1018,7 +1024,9 @@ STR_GAME_OPTIONS_CURRENCY_CUSTOM :Vlastní...
|
||||
STR_GAME_OPTIONS_CURRENCY_GEL :Georgijské Lari (GEL)
|
||||
STR_GAME_OPTIONS_CURRENCY_IRR :Íránský Riál (IRR)
|
||||
STR_GAME_OPTIONS_CURRENCY_RUB :Ruský rubl (RUB)
|
||||
STR_GAME_OPTIONS_CURRENCY_MXN :Mexické peso (MXN)
|
||||
STR_GAME_OPTIONS_CURRENCY_NTD :Nový taiwanský dolar (NTD)
|
||||
STR_GAME_OPTIONS_CURRENCY_CNY :Čínský renminbi (CNY)
|
||||
STR_GAME_OPTIONS_CURRENCY_HKD :Hongkongský dolar (HKD)
|
||||
############ end of currency region
|
||||
|
||||
@@ -1076,14 +1084,18 @@ STR_GAME_OPTIONS_RESOLUTION_TOOLTIP :{BLACK}Zvolit r
|
||||
STR_GAME_OPTIONS_RESOLUTION_OTHER :jiné
|
||||
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_FRAME :{BLACK}Velikost rozhraní
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Zvolil velikost prvků uživatelského rozhraní
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Zvolit velikost prvků uživatelského rozhraní
|
||||
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :Normální
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná velikost
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :Čtyřnásobná velikost
|
||||
|
||||
STR_GAME_OPTIONS_FONT_ZOOM :{BLACK}Velikost písma
|
||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}Zvolit velikost písma
|
||||
|
||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_NORMAL :Běžné
|
||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_2X_ZOOM :Dvojnásobná velikost
|
||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_4X_ZOOM :Čtyřnásobná velikost
|
||||
|
||||
STR_GAME_OPTIONS_BASE_GRF :{BLACK}Základní sada grafiky
|
||||
STR_GAME_OPTIONS_BASE_GRF_TOOLTIP :{BLACK}Zvol základní sadu grafiky
|
||||
@@ -1267,6 +1279,7 @@ STR_CONFIG_SETTING_AUTOSLOPE :Povolit srovná
|
||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Povoluje změnu terénu pod budovami a tratěmi bez jejich odstranění
|
||||
STR_CONFIG_SETTING_CATCHMENT :Povolit u oblasti pokrytí realističtější velikost: {STRING}
|
||||
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Rozdílná velikost oblasti pokrytí u různých stanic a letišť
|
||||
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Obsluhovat průmysl s vlastní stanicí i prostřednictvím jiných stanic: {STRING}
|
||||
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Pokud je zapnuto, průmysl s vlastní stanicí (např. ropné plošiny) může být obsluhován i prostřednictvím společnostmi vlastněných stanic v okolí. Pokud je vypnuto, tento průmysl může být obsluhován pouze prostřednictvím vlastní stanice. Společnostmi vlastněné stanice v okolí nebudou moci tento průmysl obsluhovat a vlastní stanice tohoto průmyslu nebude moci obsluhovat žádný jiný průmysl ani domy v okolí.
|
||||
STR_CONFIG_SETTING_EXTRADYNAMITE :Povolit bourání více městských silnic, mostů a tunelů: {STRING}
|
||||
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Usnadňuje odstranění městských staveb a silnic
|
||||
@@ -1284,8 +1297,8 @@ STR_CONFIG_SETTING_TRAIN_SLOPE_STEEPNESS_HELPTEXT :Strnost svahů
|
||||
STR_CONFIG_SETTING_PERCENTAGE :{COMMA}%
|
||||
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS :Strmost svahu pro silniční vozidla: {STRING}
|
||||
STR_CONFIG_SETTING_ROAD_VEHICLE_SLOPE_STEEPNESS_HELPTEXT :Vyšší hodnoty ztěžují vozidlům výjezd do kopce
|
||||
STR_CONFIG_SETTING_FORBID_90_DEG :Zakázat vlakům a lodím otáčení o 90 stupňů: {STRING}
|
||||
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90° zatočení nastane ve chvíli, kdy vodorovná kolej přímo navazuje na svislou kolej na vedlejším políčku. Vlak tak zatáčí o 90° místo klasických 45° u jiných kombinací kolejí. Ovlivní i zatáčení lodí.
|
||||
STR_CONFIG_SETTING_FORBID_90_DEG :Zakázat vlakům otáčení o 90 stupňů: {STRING}
|
||||
STR_CONFIG_SETTING_FORBID_90_DEG_HELPTEXT :90° zatočení nastane ve chvíli, kdy vodorovná kolej přímo navazuje na svislou kolej na vedlejším políčku. Vlak tak zatáčí o 90° místo klasických 45° u jiných kombinací kolejí.
|
||||
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS :Umožnit spojení nesousedících stanic: {STRING}
|
||||
STR_CONFIG_SETTING_DISTANT_JOIN_STATIONS_HELPTEXT :Povolit přidávání částí stanice, které se nedotýkají již existujících částí. Je potřeba stisknout Ctrl při přidávání nových částí.
|
||||
STR_CONFIG_SETTING_INFLATION :Inflace: {STRING}
|
||||
@@ -1341,8 +1354,8 @@ STR_CONFIG_SETTING_PLANE_SPEED :Poměr rychlost
|
||||
STR_CONFIG_SETTING_PLANE_SPEED_HELPTEXT :Nastavit poměr rychlostí letadel ku ostatním dopravním prostředům, pro snížení zisku z nákladu převáženého letadly.
|
||||
STR_CONFIG_SETTING_PLANE_SPEED_VALUE :1 / {COMMA}
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES :Počet leteckých havárií: {STRING}
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Určuje šanci na havárii letadel
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Žádný
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_HELPTEXT :Určuje pravděpodobnost leteckých neštěstí.{}* Při přistávání velkých letadel na malých letištích hrozí zvýšené nebezpeší havárie vždy.
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_NONE :Žádná*
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_REDUCED :Redukovaný
|
||||
STR_CONFIG_SETTING_PLANE_CRASHES_NORMAL :Obvyklý
|
||||
STR_CONFIG_SETTING_STOP_ON_TOWN_ROAD :Stavba průjezdných zastávek na obecních silnicích: {STRING}
|
||||
@@ -1353,6 +1366,8 @@ STR_CONFIG_SETTING_DYNAMIC_ENGINES_EXISTING_VEHICLES :{WHITE}Toto nas
|
||||
STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE :Udržování infrastruktury: {STRING}
|
||||
STR_CONFIG_SETTING_INFRASTRUCTURE_MAINTENANCE_HELPTEXT :Pokud je zapnuto, je třeba platit za údržbu infrastruktury. Náklady vzrůstají společně s velikostí dopravní sítě, takže velké společnosti platí více než malé.
|
||||
|
||||
STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR :Počáteční barva společnosti: {STRING}
|
||||
STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT :Vyberte počáteční barvu společnosti
|
||||
|
||||
STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS :Žádný druh letiště nezastará: {STRING}
|
||||
STR_CONFIG_SETTING_NEVER_EXPIRE_AIRPORTS_HELPTEXT :Povolení této možnosti způsobí, že všechny druhy letišť zůstanou po uvedení dostupné napořád. (nezastarají).
|
||||
@@ -1398,8 +1413,8 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :Druh terénu: {
|
||||
STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(pouze TerraGenesis) Hornatost terénu
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY :Množství průmyslu: {STRING}
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Nastavuje množství průmyslu, které bude nyní vytvořeno a udržováno v průběhu hry
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximální vzdálenost rafinerie od okraje mapy: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Ropné rafinerie jsou stavěny pouze blízko okrajům mapy. Pokud je mapa ostrov, pak je to pobřeží.
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Maximální vzdálenost ropného průmyslu od okraje mapy: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Omezení, jak daleko od okrajů mapy mohou být postaveny rafinerie a ropné vrty. Je-li při okraji mapy voda, toto omezení zajišťuje, že se rafinerie a ropné vrty vyskytují poblíž pobřeží. Na mapách větších než 256 polí je toto omezení úměrně přizpůsobeno.
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Výška sněhové čáry: {STRING}
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Určuje o jaké výšky se vyskytuje sníh u subarktického klimatu. Sníh rovněž ovlivňuje vytváření průmyslu a požadavky na růst měst
|
||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Členitost krajiny: {STRING}
|
||||
@@ -1437,7 +1452,12 @@ STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT :Barva terénu n
|
||||
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN :zelená
|
||||
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_DARK_GREEN :tmavě zelená
|
||||
STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_VIOLET :fialová
|
||||
STR_CONFIG_SETTING_SCROLLMODE :Reakce pohledů na scrollování: {STRING}
|
||||
STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT :Reakce na scrollování v mapě
|
||||
STR_CONFIG_SETTING_SCROLLMODE_DEFAULT :Pohyb v pohledu pomocí pravého tlačítka myši, poloha myši uzamčena
|
||||
STR_CONFIG_SETTING_SCROLLMODE_RMB_LOCKED :Pohyb v mapě pomocí pravého tlačítka myši, poloha myši uzamčena
|
||||
STR_CONFIG_SETTING_SCROLLMODE_RMB :Pohyb v mapě pomocí pravého tlačítka myši
|
||||
STR_CONFIG_SETTING_SCROLLMODE_LMB :Pohyb v mapě pomocí levého tlačítka myši
|
||||
STR_CONFIG_SETTING_SMOOTH_SCROLLING :Plynulé posouvání po mapě: {STRING}
|
||||
STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT :Ovládá jak se hlavní pohled posouvá na specifické místo na mapě, kliknutím na minimapu nebo spuštěním příkazu na posun na specifický objekt na mapě. Pokud zapnuto, pohled se posouvá plynule, pokud vypnuto, skáče pohled přímo na cílové místo
|
||||
STR_CONFIG_SETTING_MEASURE_TOOLTIP :Ukázat rozměry při použití stavebních nástrojů: {STRING}
|
||||
@@ -1558,6 +1578,8 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :Povolit AI v s
|
||||
STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :Umožňuje AI počítačem řízeným hráčům připojit se do hry s více hráči
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :#opcodes před skripty než budou pozastaveny: {STRING}
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :Maximální počet výpočetních kroků, které může skript vykonat za jeden tah
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :Max. využití paměti skriptem: {STRING}
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_HELPTEXT :Určuje, kolik paměti může každý skript využít. Při překročení bude okamžitě ukončen. Pro větší mapy bude možná třeba tuto hodnotu zvýšit.
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY_VALUE :{COMMA} MiB
|
||||
|
||||
STR_CONFIG_SETTING_SERVINT_ISPERCENT :Intervaly servisů v procentech: {STRING}
|
||||
@@ -1661,7 +1683,10 @@ STR_CONFIG_SETTING_TOWN_FOUNDING_HELPTEXT :Povoluje hráč
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_FORBIDDEN :Zakázáno
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED :Povoleno
|
||||
STR_CONFIG_SETTING_TOWN_FOUNDING_ALLOWED_CUSTOM_LAYOUT :Povoleno s výběrem rozložení a velikosti města
|
||||
STR_CONFIG_SETTING_TOWN_CARGOGENMODE :Produkce nákladu městy: {STRING}
|
||||
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_HELPTEXT :Určuje, kolik nákladu je produkováno domy ve městě relativně k celkovému počtu obyvatel města.{}Kvadratická závislost: Dvakrát větší město produkuje čtyřikrát více cestujících.{}Lineární závislost: Dvakrát větší město produkuje dvakrát více cestujících.
|
||||
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_ORIGINAL :Kvadratický (původní)
|
||||
STR_CONFIG_SETTING_TOWN_CARGOGENMODE_BITCOUNT :Lineární
|
||||
|
||||
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT :Umístění stromů ve hře: {STRING}
|
||||
STR_CONFIG_SETTING_EXTRA_TREE_PLACEMENT_HELPTEXT :Náhodné umisťování stromů během hry. Může ovlivnit průmysl závisející na růstu stromů, například pily.
|
||||
@@ -1903,6 +1928,7 @@ STR_CHEAT_CHANGE_DATE_QUERY_CAPT :{WHITE}Změnit
|
||||
STR_CHEAT_SETUP_PROD :{LTBLUE}Povolit změnu produkce průmyslu: {ORANGE}{STRING}
|
||||
|
||||
# Livery window
|
||||
STR_LIVERY_CAPTION :{WHITE}{COMPANY} - barevné schéma
|
||||
|
||||
STR_LIVERY_GENERAL_TOOLTIP :{BLACK}Zobrazit všeobecná barevná schémata
|
||||
STR_LIVERY_TRAIN_TOOLTIP :{BLACK}Zobrazit barevná schémata pro vlaky
|
||||
@@ -2162,6 +2188,7 @@ STR_NETWORK_CONNECTION_DISCONNECT :{BLACK}Odpojit
|
||||
|
||||
STR_NETWORK_NEED_GAME_PASSWORD_CAPTION :{WHITE}Server je chráněný. Napiš heslo
|
||||
STR_NETWORK_NEED_COMPANY_PASSWORD_CAPTION :{WHITE}Společnost je chráněná. Napiš heslo
|
||||
STR_NETWORK_COMPANY_LIST_CLIENT_LIST_CAPTION :Seznam klientů
|
||||
|
||||
# Network company list added strings
|
||||
STR_NETWORK_COMPANY_LIST_CLIENT_LIST :Seznam hráčů
|
||||
@@ -2207,7 +2234,7 @@ STR_NETWORK_CHAT_ALL :[Všichni] {STR
|
||||
STR_NETWORK_CHAT_OSKTITLE :{BLACK}Zadej zprávu
|
||||
|
||||
# Network messages
|
||||
STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Žádná síťová zařízení nebyla nalezena (nebo je hra zkompilována bez ENABLE_NETWORK)
|
||||
STR_NETWORK_ERROR_NOTAVAILABLE :{WHITE}Žádná síťová zařízení nebyla nalezena
|
||||
STR_NETWORK_ERROR_NOSERVER :{WHITE}Nenalezena žádná síťová hra
|
||||
STR_NETWORK_ERROR_NOCONNECTION :{WHITE}Server neodpověděl na požadavek
|
||||
STR_NETWORK_ERROR_NEWGRF_MISMATCH :{WHITE}Nelze se připojit kvůli rozdílným grafikám
|
||||
@@ -2500,7 +2527,10 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}Postavit
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}Stavět nebo bourat silnici nebo zastávku
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}Přepínání mezi výstavbou a bouráním tramvajové tratě
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_ROAD :{BLACK}Změnit nebo vylepšit typ silnice (na tento). Stisknutý Shift pro zobrazení odhadu ceny
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_CONVERT_TRAM :{BLACK}Změnit nebo vylepšit druh tramvajové tratě (na tento). Stisknutý Shift pro zobrazení odhadu ceny
|
||||
|
||||
STR_ROAD_NAME_ROAD :Silnice
|
||||
STR_ROAD_NAME_TRAM :Tramvajová trať
|
||||
|
||||
# Road depot construction window
|
||||
STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}Orientace garáže
|
||||
@@ -2695,6 +2725,7 @@ STR_LANG_AREA_INFORMATION_ROAD_TYPE :{BLACK}Typ siln
|
||||
STR_LANG_AREA_INFORMATION_TRAM_TYPE :{BLACK}Typ tramvaje: {LTBLUE}{STRING}
|
||||
STR_LANG_AREA_INFORMATION_RAIL_SPEED_LIMIT :{BLACK}Rychlostní omezení tratě: {LTBLUE}{VELOCITY}
|
||||
STR_LANG_AREA_INFORMATION_ROAD_SPEED_LIMIT :{BLACK}Rychlostní omezení silnice: {LTBLUE}{VELOCITY}
|
||||
STR_LANG_AREA_INFORMATION_TRAM_SPEED_LIMIT :{BLACK}Omezení rychlosti pro tramvaje: {LTBLUE}{VELOCITY}
|
||||
|
||||
# Description of land area of different tiles
|
||||
STR_LAI_CLEAR_DESCRIPTION_ROCKS :Kamení
|
||||
@@ -2795,34 +2826,59 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD
|
||||
|
||||
# Framerate display window
|
||||
STR_FRAMERATE_CAPTION :{WHITE}Počet snímků za sekundu
|
||||
STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x)
|
||||
STR_FRAMERATE_RATE_GAMELOOP :{BLACK}Rychlost simulace: {STRING}
|
||||
STR_FRAMERATE_RATE_GAMELOOP_TOOLTIP :{BLACK}Počet kroků hry simulovaných za 1 sekundu.
|
||||
STR_FRAMERATE_RATE_BLITTER :{BLACK}Počet snímků za sekundu: {STRING}
|
||||
STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}Počet snímků videa vykreslovaných za sekundu.
|
||||
STR_FRAMERATE_SPEED_FACTOR :{WHITE}Aktuální činitel rychlosti hry: {DECIMAL}x
|
||||
STR_FRAMERATE_SPEED_FACTOR :{BLACK}Aktuální činitel rychlosti hry: {DECIMAL}x
|
||||
STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}Rychlost, kterou hra právě běží, v porovnání s očekávanou rychlostí při běžné rychlosti simulace.
|
||||
STR_FRAMERATE_CURRENT :{WHITE}Aktuální
|
||||
STR_FRAMERATE_AVERAGE :{WHITE}Průměr
|
||||
STR_FRAMERATE_MEMORYUSE :{WHITE}Paměť
|
||||
STR_FRAMERATE_DATA_POINTS :{BLACK}Podle {COMMA} měření
|
||||
STR_FRAMERATE_MS_GOOD :{LTBLUE}{DECIMAL} ms
|
||||
STR_FRAMERATE_MS_BAD :{RED}{DECIMAL}{WHITE} ms
|
||||
STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL}{WHITE} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL}{WHITE} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_MS_WARN :{YELLOW}{DECIMAL} ms
|
||||
STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} ms
|
||||
STR_FRAMERATE_FPS_GOOD :{LTBLUE}{DECIMAL} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL} sním{P "ek" "ky" "ků"}/s
|
||||
STR_FRAMERATE_BYTES_GOOD :{LTBLUE}{BYTES}
|
||||
STR_FRAMERATE_BYTES_WARN :{YELLOW}{BYTES}
|
||||
STR_FRAMERATE_BYTES_BAD :{RED}{BYTES}
|
||||
STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} ms
|
||||
STR_FRAMERATE_GRAPH_SECONDS :{TINY_FONT}{COMMA} s
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMERATE_GL_ECONOMY :{WHITE} Manipulace s nákladem:
|
||||
STR_FRAMERATE_GAMELOOP :{BLACK}Herní smyčka celkem:
|
||||
STR_FRAMERATE_GL_ECONOMY :{BLACK} Manipulace s nákladem:
|
||||
STR_FRAMERATE_GL_TRAINS :{BLACK} Kroky vlaků:
|
||||
STR_FRAMERATE_GL_ROADVEHS :{BLACK} Kroky silničních vozidel:
|
||||
STR_FRAMERATE_GL_SHIPS :{BLACK} Kroky lodí:
|
||||
STR_FRAMERATE_GL_AIRCRAFT :{BLACK} Kroky letadel:
|
||||
STR_FRAMERATE_GL_LANDSCAPE :{BLACK} Kroky terénu:
|
||||
STR_FRAMERATE_GL_LINKGRAPH :{BLACK} Zpoždění grafu spojení:
|
||||
STR_FRAMERATE_DRAWING :{WHITE}Vykreslování grafiky:
|
||||
STR_FRAMERATE_DRAWING :{BLACK}Vykreslování grafiky:
|
||||
STR_FRAMERATE_DRAWING_VIEWPORTS :{BLACK} Pohledy:
|
||||
STR_FRAMERATE_VIDEO :{BLACK}Video:
|
||||
STR_FRAMERATE_SOUND :{BLACK}Míchání zvuků:
|
||||
STR_FRAMERATE_ALLSCRIPTS :{BLACK} Skripty/AI celkem:
|
||||
STR_FRAMERATE_GAMESCRIPT :{BLACK} Herní skript:
|
||||
STR_FRAMERATE_AI :{BLACK} AI {NUM} {STRING}
|
||||
############ End of leave-in-this-order
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMETIME_CAPTION_GAMELOOP :Herní smyčka
|
||||
STR_FRAMETIME_CAPTION_GL_ECONOMY :Manipulace s nákladem
|
||||
STR_FRAMETIME_CAPTION_GL_TRAINS :Kroky vlaků
|
||||
STR_FRAMETIME_CAPTION_GL_ROADVEHS :Kroky silničních vozidel
|
||||
STR_FRAMETIME_CAPTION_GL_SHIPS :Kroky lodí
|
||||
STR_FRAMETIME_CAPTION_GL_AIRCRAFT :Kroky letadel
|
||||
STR_FRAMETIME_CAPTION_GL_LANDSCAPE :Kroky terénu
|
||||
STR_FRAMETIME_CAPTION_GL_LINKGRAPH :Zpoždění grafu spojení
|
||||
STR_FRAMETIME_CAPTION_DRAWING :Vykreslování grafiky
|
||||
STR_FRAMETIME_CAPTION_DRAWING_VIEWPORTS :Vykreslování pohledů
|
||||
STR_FRAMETIME_CAPTION_VIDEO :Video
|
||||
STR_FRAMETIME_CAPTION_SOUND :Míchání zvuků
|
||||
STR_FRAMETIME_CAPTION_ALLSCRIPTS :Herní skripty/AI celkem
|
||||
STR_FRAMETIME_CAPTION_GAMESCRIPT :Herní skript
|
||||
STR_FRAMETIME_CAPTION_AI :AI {NUM} {STRING}
|
||||
############ End of leave-in-this-order
|
||||
@@ -2852,6 +2908,7 @@ STR_SAVELOAD_DETAIL_COMPANY_INDEX :{SILVER}{COMMA}
|
||||
STR_SAVELOAD_DETAIL_GRFSTATUS :{SILVER}Grafiky: {WHITE}{STRING}
|
||||
STR_SAVELOAD_FILTER_TITLE :{BLACK}Filtr:
|
||||
STR_SAVELOAD_OVERWRITE_TITLE :{WHITE}Přepsat soubor
|
||||
STR_SAVELOAD_OVERWRITE_WARNING :{YELLOW}Opravdu chcete přepsat existující soubor?
|
||||
|
||||
STR_SAVELOAD_OSKTITLE :{BLACK}Zadej jméno pro uloženou hru
|
||||
|
||||
@@ -2969,6 +3026,10 @@ STR_NEWGRF_SETTINGS_VERSION :{BLACK}Verze: {
|
||||
STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}Minimální kompatibilní verze: {SILVER}{NUM}
|
||||
STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5sum: {SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PALETTE :{BLACK}Paleta: {SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PALETTE_DEFAULT :Výchozí (D)
|
||||
STR_NEWGRF_SETTINGS_PALETTE_DEFAULT_32BPP :32 bpp
|
||||
STR_NEWGRF_SETTINGS_PALETTE_LEGACY :Originální (W)
|
||||
STR_NEWGRF_SETTINGS_PALETTE_LEGACY_32BPP :Originální (W) / 32 bpp
|
||||
STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}Parametry: {SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PARAMETER_NONE :Žádný
|
||||
|
||||
@@ -3148,6 +3209,8 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Přejmenovat m
|
||||
|
||||
# Town local authority window
|
||||
STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Místní správa města {TOWN}
|
||||
STR_LOCAL_AUTHORITY_ZONE :{BLACK}Oblast
|
||||
STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Zobrazit oblast působnosti místní správy
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Hodnocení společností:
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
|
||||
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Možné činnosti:
|
||||
@@ -3176,6 +3239,7 @@ STR_LOCAL_AUTHORITY_ACTION_TOOLTIP_BRIBE :{YELLOW}Podplat
|
||||
# Goal window
|
||||
STR_GOALS_CAPTION :{WHITE}{COMPANY} Cíle
|
||||
STR_GOALS_SPECTATOR_CAPTION :{WHITE}Globální cíle
|
||||
STR_GOALS_SPECTATOR :Globální cíle
|
||||
STR_GOALS_GLOBAL_TITLE :{BLACK}Globální cíle:
|
||||
STR_GOALS_TEXT :{ORANGE}{STRING}
|
||||
STR_GOALS_NONE :{ORANGE}- Žádné -
|
||||
@@ -3430,6 +3494,8 @@ STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}Produkce
|
||||
STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}Průmysl oznámila blížící se uzavření!
|
||||
|
||||
STR_INDUSTRY_VIEW_REQUIRES_N_CARGO :{BLACK}Vyžaduje: {YELLOW}{STRING}{STRING}
|
||||
STR_INDUSTRY_VIEW_PRODUCES_N_CARGO :{BLACK}Produkuje: {YELLOW}{STRING}{STRING}
|
||||
STR_INDUSTRY_VIEW_CARGO_LIST_EXTENSION :, {STRING}{STRING}
|
||||
|
||||
STR_INDUSTRY_VIEW_REQUIRES :{BLACK}Vyžaduje:
|
||||
STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING}
|
||||
@@ -3489,6 +3555,7 @@ STR_GROUPS_CLICK_ON_GROUP_FOR_TOOLTIP :{BLACK}Skupiny
|
||||
STR_GROUP_CREATE_TOOLTIP :{BLACK}Kliknutím vytvoříš skupinu
|
||||
STR_GROUP_DELETE_TOOLTIP :{BLACK}Vymazat vybranou skupinu
|
||||
STR_GROUP_RENAME_TOOLTIP :{BLACK}Přejmenovat vybranou skupinu
|
||||
STR_GROUP_LIVERY_TOOLTIP :{BLACK}Změnit nátěr vozidel vybrané skupiny
|
||||
STR_GROUP_REPLACE_PROTECTION_TOOLTIP :{BLACK}Kliknutím nebude na tuto skupinu mít vliv automatická výměna vozidel
|
||||
|
||||
STR_QUERY_GROUP_DELETE_CAPTION :{WHITE}Smazat Skupinu
|
||||
@@ -3515,11 +3582,13 @@ STR_BUY_VEHICLE_TRAM_VEHICLE_CAPTION :Nové tramvaje
|
||||
|
||||
############ range for vehicle availability starts
|
||||
STR_BUY_VEHICLE_TRAIN_ALL_CAPTION :Nová železniční vozidla
|
||||
STR_BUY_VEHICLE_ROAD_VEHICLE_ALL_CAPTION :Nová silniční vozidla
|
||||
STR_BUY_VEHICLE_SHIP_CAPTION :Nové lodě
|
||||
STR_BUY_VEHICLE_AIRCRAFT_CAPTION :Nové letadlo
|
||||
############ range for vehicle availability ends
|
||||
|
||||
STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}Cena: {GOLD}{CURRENCY_LONG}{BLACK} Hmotnost: {GOLD}{WEIGHT_SHORT}
|
||||
STR_PURCHASE_INFO_COST_REFIT_WEIGHT :{BLACK}Cena: {GOLD}{CURRENCY_LONG}{BLACK} (Cena přestavby: {GOLD}{CURRENCY_LONG}{BLACK}) Hmotnost: {GOLD}{WEIGHT_SHORT}
|
||||
STR_PURCHASE_INFO_SPEED_POWER :{BLACK}Rychlost: {GOLD}{VELOCITY}{BLACK} Výkon: {GOLD}{POWER}
|
||||
STR_PURCHASE_INFO_SPEED :{BLACK}Rychlost: {GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}Rychlost na moři: {GOLD}{VELOCITY}
|
||||
@@ -3530,6 +3599,7 @@ STR_PURCHASE_INFO_REFITTABLE :(lze přestavě
|
||||
STR_PURCHASE_INFO_DESIGNED_LIFE :{BLACK}Vyvinuto: {GOLD}{NUM}{BLACK} Životnost: {GOLD}{COMMA} {P rok roky let}
|
||||
STR_PURCHASE_INFO_RELIABILITY :{BLACK}Max. spolehlivost: {GOLD}{COMMA}%
|
||||
STR_PURCHASE_INFO_COST :{BLACK}Cena: {GOLD}{CURRENCY_LONG}
|
||||
STR_PURCHASE_INFO_COST_REFIT :{BLACK}Náklady: {GOLD}{CURRENCY_LONG}{BLACK} (Náklady na přestavbu: {GOLD}{CURRENCY_LONG}{BLACK})
|
||||
STR_PURCHASE_INFO_WEIGHT_CWEIGHT :{BLACK}Hmotnost: {GOLD}{WEIGHT_SHORT} ({WEIGHT_SHORT})
|
||||
STR_PURCHASE_INFO_COST_SPEED :{BLACK}Cena: {GOLD}{CURRENCY_LONG}{BLACK} Rychlost: {GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_COST_REFIT_SPEED :{BLACK}Cena: {GOLD}{CURRENCY_LONG}{BLACK} (Cena přestavby: {GOLD}{CURRENCY_LONG}{BLACK}) Rychlost: {GOLD}{VELOCITY}
|
||||
@@ -3537,6 +3607,7 @@ STR_PURCHASE_INFO_AIRCRAFT_CAPACITY :{BLACK}Kapacita
|
||||
STR_PURCHASE_INFO_PWAGPOWER_PWAGWEIGHT :{BLACK}Poháněné vagony: {GOLD}+{POWER}{BLACK} Hmotnost: {GOLD}+{WEIGHT_SHORT}
|
||||
STR_PURCHASE_INFO_REFITTABLE_TO :{BLACK}Refitovatelné na: {GOLD}{STRING}
|
||||
STR_PURCHASE_INFO_ALL_TYPES :Všechny druhy nákladu
|
||||
STR_PURCHASE_INFO_NONE :Žádné
|
||||
STR_PURCHASE_INFO_ALL_BUT :Všechny kromě {CARGO_LIST}
|
||||
STR_PURCHASE_INFO_MAX_TE :{BLACK}Max. tažná síla: {GOLD}{FORCE}
|
||||
STR_PURCHASE_INFO_AIRCRAFT_RANGE :{BLACK}Dosah: {GOLD}{COMMA} polí
|
||||
@@ -3552,7 +3623,10 @@ STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_BUTTON :{BLACK}Koupit v
|
||||
STR_BUY_VEHICLE_SHIP_BUY_VEHICLE_BUTTON :{BLACK}Koupit loď
|
||||
STR_BUY_VEHICLE_AIRCRAFT_BUY_VEHICLE_BUTTON :{BLACK}Koupit letadlo
|
||||
|
||||
STR_BUY_VEHICLE_TRAIN_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koupit a přestavět vozy
|
||||
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koupit a přestavět vozidlo
|
||||
STR_BUY_VEHICLE_SHIP_BUY_REFIT_VEHICLE_BUTTON :{BLACK}Koupit a přestavět loď
|
||||
STR_BUY_VEHICLE_AIRCRAFT_BUY_REFIT_VEHICLE_BUTTON :Koupit a přestavět letadlo
|
||||
|
||||
STR_BUY_VEHICLE_TRAIN_BUY_VEHICLE_TOOLTIP :{BLACK}Kup označený vagon/lokomotivu. Stisknutý Shift pro zobrazení odhadu ceny
|
||||
STR_BUY_VEHICLE_ROAD_VEHICLE_BUY_VEHICLE_TOOLTIP :{BLACK}Koupit označené vozidlo. Stisknutý Shift pro zobrazení odhadu ceny
|
||||
@@ -3727,6 +3801,7 @@ STR_REPLACE_ALL_RAILTYPE :Všechna dráž
|
||||
STR_REPLACE_ALL_ROADTYPE :Všechna silniční vozidla
|
||||
|
||||
STR_REPLACE_HELP_RAILTYPE :{BLACK}Vyber typ kolejí, pro které chceš měnit lokomotivy
|
||||
STR_REPLACE_HELP_ROADTYPE :{BLACK}Vyber typ silnice, pro které chceš nahrazovat vozidla
|
||||
STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}Tady je zobrazeno, za jakou lokomotivu se ta v levém seznamu vyměňuje
|
||||
STR_REPLACE_RAIL_VEHICLES :Železniční lokomotivy
|
||||
STR_REPLACE_ELRAIL_VEHICLES :Elektrické lokomotivy
|
||||
@@ -3879,7 +3954,7 @@ STR_REFIT_CAPTION :{WHITE}{VEHICLE
|
||||
STR_REFIT_TITLE :{GOLD}Zvolit druh nákladu:
|
||||
STR_REFIT_NEW_CAPACITY_COST_OF_REFIT :{BLACK}Nová kapacita: {GOLD}{CARGO_LONG}{}{BLACK}Cena přestavby: {RED}{CURRENCY_LONG}
|
||||
STR_REFIT_NEW_CAPACITY_INCOME_FROM_REFIT :{BLACK}Nová kapacita: {GOLD}{CARGO_LONG}{}{BLACK}Příjem za přestavbu: {GREEN}{CURRENCY_LONG}
|
||||
STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nová kapacita: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Cena za předělání: {RED}{CURRENCY_LONG}
|
||||
STR_REFIT_NEW_CAPACITY_COST_OF_AIRCRAFT_REFIT :{BLACK}Nová kapacita: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Cena přestavby: {RED}{CURRENCY_LONG}
|
||||
STR_REFIT_NEW_CAPACITY_INCOME_FROM_AIRCRAFT_REFIT :{BLACK}Nová kapacita: {GOLD}{CARGO_LONG}, {GOLD}{CARGO_LONG}{}{BLACK}Výnos z přestavby: {GREEN}{CURRENCY_LONG}
|
||||
STR_REFIT_SELECT_VEHICLES_TOOLTIP :{BLACK}Vybere vozidla k obnově. Tažení myší vybere více vozidel. Kliknutí na prázdné místo vybere celé vozidlo. Ctrl+Click vybere vozidlo a následující řetěz
|
||||
|
||||
@@ -3955,6 +4030,7 @@ STR_ORDER_CONDITIONAL_AGE :Stáří vozidl
|
||||
STR_ORDER_CONDITIONAL_REQUIRES_SERVICE :Vyžaduje údržbu
|
||||
STR_ORDER_CONDITIONAL_UNCONDITIONALLY :Vždy
|
||||
STR_ORDER_CONDITIONAL_REMAINING_LIFETIME :Zbývající životnost (v letech)
|
||||
STR_ORDER_CONDITIONAL_MAX_RELIABILITY :Nejvyšší dosažitelná spolehlivost
|
||||
|
||||
STR_ORDER_CONDITIONAL_COMPARATOR_TOOLTIP :{BLACK}Jak porovnat vlastnost vozidla se zadanou hodnotou
|
||||
STR_ORDER_CONDITIONAL_COMPARATOR_EQUALS :se rovná
|
||||
@@ -4478,6 +4554,11 @@ STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}Odsud ne
|
||||
STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... není zde žádná silnice
|
||||
STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... není zde žádná tramvajová trať
|
||||
STR_ERROR_CAN_T_CONVERT_ROAD :{WHITE}Zde nelze změnit typ silnice...
|
||||
STR_ERROR_CAN_T_CONVERT_TRAMWAY :{WHITE}Zde nelze změnit druh tramvajové tratě...
|
||||
STR_ERROR_NO_SUITABLE_ROAD :{WHITE}Neexistuje vhodná silnice
|
||||
STR_ERROR_NO_SUITABLE_TRAMWAY :{WHITE}Neexistuje vhodná tramvajová trať
|
||||
STR_ERROR_INCOMPATIBLE_ROAD :{WHITE}... nevhodný druh silnice
|
||||
STR_ERROR_INCOMPATIBLE_TRAMWAY :{WHITE}... nevhodný typ tramvajové tratě
|
||||
|
||||
# Waterway construction errors
|
||||
STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}Zde nelze postavit průplav...
|
||||
@@ -4537,6 +4618,7 @@ STR_ERROR_GROUP_CAN_T_CREATE :{WHITE}Nelze vy
|
||||
STR_ERROR_GROUP_CAN_T_DELETE :{WHITE}Nelze vymazat skupinu...
|
||||
STR_ERROR_GROUP_CAN_T_RENAME :{WHITE}Nelze přejmenovat skupinu...
|
||||
STR_ERROR_GROUP_CAN_T_SET_PARENT :{WHITE}Nelze nastavit nadřazenou skupinu
|
||||
STR_ERROR_GROUP_CAN_T_SET_PARENT_RECURSION :{WHITE}... skupina nemůže patřit do skupiny, která patří pod ní
|
||||
STR_ERROR_GROUP_CAN_T_REMOVE_ALL_VEHICLES :{WHITE}Nelze odstranit všechna vozidla ze skupiny...
|
||||
STR_ERROR_GROUP_CAN_T_ADD_VEHICLE :{WHITE}Nelze přidat vozidlo do skupiny...
|
||||
STR_ERROR_GROUP_CAN_T_ADD_SHARED_VEHICLE :{WHITE}Nelze přidat sdílená vozidla do skupiny...
|
||||
|
@@ -39,7 +39,7 @@ STR_CARGO_PLURAL_WOOD :Bois
|
||||
STR_CARGO_PLURAL_IRON_ORE :Minerai de fer
|
||||
STR_CARGO_PLURAL_STEEL :Acier
|
||||
STR_CARGO_PLURAL_VALUABLES :Objets de valeur
|
||||
STR_CARGO_PLURAL_COPPER_ORE :Cuivre
|
||||
STR_CARGO_PLURAL_COPPER_ORE :Minerai de cuivre
|
||||
STR_CARGO_PLURAL_MAIZE :Maïs
|
||||
STR_CARGO_PLURAL_FRUIT :Fruits
|
||||
STR_CARGO_PLURAL_DIAMONDS :Diamants
|
||||
@@ -73,7 +73,7 @@ STR_CARGO_SINGULAR_WOOD :Bois
|
||||
STR_CARGO_SINGULAR_IRON_ORE :Minerai de fer
|
||||
STR_CARGO_SINGULAR_STEEL :Acier
|
||||
STR_CARGO_SINGULAR_VALUABLES :Objets de valeur
|
||||
STR_CARGO_SINGULAR_COPPER_ORE :Cuivre
|
||||
STR_CARGO_SINGULAR_COPPER_ORE :Minerai de cuivre
|
||||
STR_CARGO_SINGULAR_MAIZE :Maïs
|
||||
STR_CARGO_SINGULAR_FRUIT :Fruit
|
||||
STR_CARGO_SINGULAR_DIAMOND :Diamant
|
||||
@@ -107,7 +107,7 @@ STR_QUANTITY_WOOD :{WEIGHT_LONG} d
|
||||
STR_QUANTITY_IRON_ORE :{WEIGHT_LONG} de minerai de fer
|
||||
STR_QUANTITY_STEEL :{WEIGHT_LONG} d'acier
|
||||
STR_QUANTITY_VALUABLES :{COMMA}{NBSP}sac{P "" s} d'objets de valeur
|
||||
STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de cuivre
|
||||
STR_QUANTITY_COPPER_ORE :{WEIGHT_LONG} de minerai de cuivre
|
||||
STR_QUANTITY_MAIZE :{WEIGHT_LONG} de maïs
|
||||
STR_QUANTITY_FRUIT :{WEIGHT_LONG} de fruits
|
||||
STR_QUANTITY_DIAMONDS :{COMMA}{NBSP}sac{P "" s} de diamants
|
||||
|
@@ -1390,8 +1390,8 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :Tereptípus: {S
|
||||
STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :A térkép domborzata
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY :Gazdasági épületek száma: {STRING}
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Mennyi gazdasági épület legyen, és mennyire legyenek fenntartva a játék folyamán
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Olajfúró tornyok maximális távolsága a térkép szélétől: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Olajfinomítók csak a térkép határaihoz közel építhetőek, ami sziget jellegű térképeknél a partvidék
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Olajfinomítók és olajfúró tornyok maximális távolsága a térkép szélétől: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Megadhatod, hogy a térkép szélétől milyen messze épülhetnek olajfinomítók és olajfúró tornyok. Sziget jellegű térképek esetén így a part közelében fognak épülni. 256 mezőnél szélesebb, ill. hosszabb térképek esetén ez az érték felszorzódik.
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Hóhatár magassága: {STRING}
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :Ezzel a beállítással szabályozhatod a szub-arktikus táj hóhatárát. A hó befolyással lehet a gazdasági épületek generálására és a települések növekedésére.
|
||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :A terep durvasága: {STRING}
|
||||
@@ -3183,6 +3183,8 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Város átnevez
|
||||
|
||||
# Town local authority window
|
||||
STR_LOCAL_AUTHORITY_CAPTION :{WHITE}{TOWN} önkormányzata
|
||||
STR_LOCAL_AUTHORITY_ZONE :{BLACK}Terület
|
||||
STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}A helyi önkormányzathoz tartozó terület mutatása
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Vélemény a szállítási vállalatokról:
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
|
||||
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Lehetséges intézkedések:
|
||||
|
@@ -235,6 +235,7 @@ STR_TOOLTIP_FILTER_CRITERIA :{BLACK}Pilih kr
|
||||
STR_BUTTON_SORT_BY :{BLACK}Urutkan
|
||||
STR_BUTTON_LOCATION :{BLACK}Lokasi
|
||||
STR_BUTTON_RENAME :{BLACK}Ubah nama
|
||||
STR_BUTTON_CATCHMENT :{BLACK}Jangkauan
|
||||
|
||||
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}Tutup window
|
||||
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}Judul Jendela - klik dan tahan disini untuk memindahkan jendela
|
||||
@@ -2716,6 +2717,7 @@ STR_FRAMERATE_GL_ROADVEHS :{WHITE} Titik k
|
||||
STR_FRAMERATE_GL_SHIPS :{WHITE} Titik kapal:
|
||||
STR_FRAMERATE_GL_AIRCRAFT :{WHITE} Titik pesawat:
|
||||
STR_FRAMERATE_GL_LANDSCAPE :{WHITE} Titik dunia:
|
||||
STR_FRAMERATE_DRAWING :{BLACK}Render grafis:
|
||||
STR_FRAMERATE_DRAWING_VIEWPORTS :{WHITE} Viewport dunia:
|
||||
STR_FRAMERATE_VIDEO :{BLACK}Keluaran Video:
|
||||
STR_FRAMERATE_SOUND :{WHITE}Mixing suara:
|
||||
|
@@ -189,6 +189,7 @@ STR_COLOUR_ORANGE :橘黄色
|
||||
STR_COLOUR_BROWN :棕 色
|
||||
STR_COLOUR_GREY :浅灰色
|
||||
STR_COLOUR_WHITE :白 色
|
||||
STR_COLOUR_DEFAULT :默认
|
||||
|
||||
# Units used in OpenTTD
|
||||
STR_UNITS_VELOCITY_IMPERIAL :{COMMA}{NBSP}英里/小时
|
||||
@@ -235,6 +236,8 @@ STR_TOOLTIP_FILTER_CRITERIA :{BLACK}选择
|
||||
STR_BUTTON_SORT_BY :{BLACK}排序
|
||||
STR_BUTTON_LOCATION :{BLACK}定位
|
||||
STR_BUTTON_RENAME :{BLACK}重命名
|
||||
STR_BUTTON_CATCHMENT :{BLACK}覆盖范围
|
||||
STR_TOOLTIP_CATCHMENT :{BLACK}显示覆盖范围
|
||||
|
||||
STR_TOOLTIP_CLOSE_WINDOW :{BLACK}关闭窗口
|
||||
STR_TOOLTIP_WINDOW_TITLE_DRAG_THIS :{BLACK}窗口标题 - 拖动这里可以移动该窗口
|
||||
@@ -263,6 +266,7 @@ STR_SHOW_HIDDEN_ENGINES_VEHICLE_AIRCRAFT_TOOLTIP :{BLACK}如启
|
||||
STR_BUTTON_DEFAULT :{BLACK}默认
|
||||
STR_BUTTON_CANCEL :{BLACK}取消
|
||||
STR_BUTTON_OK :{BLACK}确定
|
||||
STR_WARNING_PASSWORD_SECURITY :{YELLOW}注意:服务器管理员可以看到你所输入的文字
|
||||
|
||||
# On screen keyboard window
|
||||
STR_OSK_KEYBOARD_LAYOUT :`1234567890-=\qwertyuiop[]asdfghjkl;' zxcvbnm,./ .
|
||||
@@ -927,6 +931,7 @@ STR_GAME_OPTIONS_CURRENCY_ZAR :南非兰特(
|
||||
STR_GAME_OPTIONS_CURRENCY_CUSTOM :自定义…
|
||||
STR_GAME_OPTIONS_CURRENCY_GEL :格鲁吉亚拉里(GEL)
|
||||
STR_GAME_OPTIONS_CURRENCY_IRR :伊朗里亚尔(IRR)
|
||||
STR_GAME_OPTIONS_CURRENCY_NTD :新台币 (NTD)
|
||||
############ end of currency region
|
||||
|
||||
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}汽车行驶
|
||||
@@ -989,6 +994,7 @@ STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_NORMAL :正常大小
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_2X_ZOOM :两倍大小
|
||||
STR_GAME_OPTIONS_GUI_ZOOM_DROPDOWN_4X_ZOOM :四倍大小
|
||||
|
||||
STR_GAME_OPTIONS_FONT_ZOOM_DROPDOWN_TOOLTIP :{BLACK}选择此字体大小
|
||||
|
||||
|
||||
STR_GAME_OPTIONS_BASE_GRF :{BLACK}基础图形组
|
||||
@@ -1465,6 +1471,7 @@ STR_CONFIG_SETTING_AI_IN_MULTIPLAYER :联机游戏时
|
||||
STR_CONFIG_SETTING_AI_IN_MULTIPLAYER_HELPTEXT :“打开”时联机游戏允许电脑玩家
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES :可允许的最大的代码量(如超过则会令脚本被禁用):{STRING}
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_OPCODES_HELPTEXT :脚本在一个回合中可进行计算步数的最大值
|
||||
STR_CONFIG_SETTING_SCRIPT_MAX_MEMORY :每个脚本的内存上限: {STRING}
|
||||
|
||||
STR_CONFIG_SETTING_SERVINT_ISPERCENT :保养周期(百分数): {STRING}
|
||||
STR_CONFIG_SETTING_SERVINT_ISPERCENT_HELPTEXT :选择触发车辆保养的条件,距离上一次保养的时间或者与最高可靠性的百分比
|
||||
@@ -2403,6 +2410,7 @@ STR_ROAD_TOOLBAR_TOOLTIP_BUILD_TRAMWAY_TUNNEL :{BLACK}建设
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_ROAD :{BLACK}建设/拆除 公路
|
||||
STR_ROAD_TOOLBAR_TOOLTIP_TOGGLE_BUILD_REMOVE_FOR_TRAMWAYS :{BLACK}建设/拆除 电车轨道
|
||||
|
||||
STR_ROAD_NAME_TRAM :电车轨道
|
||||
|
||||
# Road depot construction window
|
||||
STR_BUILD_DEPOT_ROAD_ORIENTATION_CAPTION :{WHITE}汽车车库的方向……
|
||||
@@ -2690,14 +2698,18 @@ STR_ABOUT_COPYRIGHT_OPENTTD :{BLACK}OpenTTD
|
||||
# Framerate display window
|
||||
STR_FRAMERATE_CAPTION :{WHITE}帧率
|
||||
STR_FRAMERATE_CAPTION_SMALL :{STRING}{WHITE} ({DECIMAL}x)
|
||||
STR_FRAMERATE_RATE_GAMELOOP :{BLACK}模拟速率: {STRING}
|
||||
STR_FRAMERATE_RATE_BLITTER :{BLACK}帧率:{STRING}
|
||||
STR_FRAMERATE_RATE_BLITTER_TOOLTIP :{BLACK}每秒渲染更新的图像帧。
|
||||
STR_FRAMERATE_SPEED_FACTOR :{BLACK}当前游戏速度:{DECIMAL}x
|
||||
STR_FRAMERATE_SPEED_FACTOR_TOOLTIP :{BLACK}当前游戏运行速度,与正常速度之比率
|
||||
STR_FRAMERATE_MS_GOOD :{LTBLUE}{DECIMAL} ms
|
||||
STR_FRAMERATE_MS_BAD :{RED}{DECIMAL} ms
|
||||
STR_FRAMERATE_FPS_GOOD :{LTBLUE}{DECIMAL} fps
|
||||
STR_FRAMERATE_FPS_WARN :{YELLOW}{DECIMAL} fps
|
||||
STR_FRAMERATE_FPS_BAD :{RED}{DECIMAL} fps
|
||||
STR_FRAMERATE_BYTES_GOOD :{LTBLUE}{BYTES}
|
||||
STR_FRAMERATE_BYTES_BAD :{RED}{BYTES}
|
||||
STR_FRAMERATE_GRAPH_MILLISECONDS :{TINY_FONT}{COMMA} ms
|
||||
############ Leave those lines in this order!!
|
||||
STR_FRAMERATE_VIDEO :{BLACK}视频输出:
|
||||
@@ -2848,6 +2860,7 @@ STR_NEWGRF_SETTINGS_MIN_VERSION :{BLACK}最低
|
||||
STR_NEWGRF_SETTINGS_MD5SUM :{BLACK}MD5 码:{SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PALETTE :{BLACK}调色板: {SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PARAMETER :{BLACK}参数:{SILVER}{STRING}
|
||||
STR_NEWGRF_SETTINGS_PARAMETER_NONE :无
|
||||
|
||||
STR_NEWGRF_SETTINGS_NO_INFO :{BLACK}没有可用的信息
|
||||
STR_NEWGRF_SETTINGS_NOT_FOUND :{RED}没有找到对应的文件
|
||||
@@ -3303,6 +3316,7 @@ STR_INDUSTRY_VIEW_LOCATION_TOOLTIP :{BLACK}将屏
|
||||
STR_INDUSTRY_VIEW_PRODUCTION_LEVEL :{BLACK}生产程度: {YELLOW}{COMMA}%
|
||||
STR_INDUSTRY_VIEW_INDUSTRY_ANNOUNCED_CLOSURE :{YELLOW}此工业已经宣布即刻停业倒闭!
|
||||
|
||||
STR_INDUSTRY_VIEW_REQUIRES_N_CARGO :{BLACK}需要: {YELLOW}{STRING}{STRING}
|
||||
|
||||
STR_INDUSTRY_VIEW_ACCEPT_CARGO :{YELLOW}{STRING}{BLACK}{3:STRING}
|
||||
STR_INDUSTRY_VIEW_ACCEPT_CARGO_AMOUNT :{YELLOW}{STRING}{BLACK}: {CARGO_SHORT} 等待中{STRING}
|
||||
@@ -3390,6 +3404,7 @@ STR_BUY_VEHICLE_AIRCRAFT_CAPTION :购买飞机
|
||||
############ range for vehicle availability ends
|
||||
|
||||
STR_PURCHASE_INFO_COST_WEIGHT :{BLACK}售价:{GOLD}{CURRENCY_LONG}{BLACK} 重量:{GOLD}{WEIGHT_SHORT}
|
||||
STR_PURCHASE_INFO_COST_REFIT_WEIGHT :{BLACK}售价: {GOLD}{CURRENCY_LONG}{BLACK} (改装花费: {GOLD}{CURRENCY_LONG}{BLACK}) 重量: {GOLD}{WEIGHT_SHORT}
|
||||
STR_PURCHASE_INFO_SPEED_POWER :{BLACK}速度:{GOLD}{VELOCITY}{BLACK} 功率:{GOLD}{POWER}
|
||||
STR_PURCHASE_INFO_SPEED :{BLACK}速度:{GOLD}{VELOCITY}
|
||||
STR_PURCHASE_INFO_SPEED_OCEAN :{BLACK}在海洋上的速度: {GOLD}{VELOCITY}
|
||||
@@ -3583,6 +3598,7 @@ STR_REPLACE_ENGINE_WAGON_SELECT_HELP :{BLACK}可以
|
||||
STR_REPLACE_ENGINES :机车
|
||||
STR_REPLACE_WAGONS :挂车
|
||||
STR_REPLACE_ALL_RAILTYPE :所有铁路车辆
|
||||
STR_REPLACE_ALL_ROADTYPE :所有道路载具
|
||||
|
||||
STR_REPLACE_HELP_RAILTYPE :{BLACK}选择要更新的车辆对应的铁路类型
|
||||
STR_REPLACE_HELP_REPLACE_INFO_TAB :{BLACK}显示用来替换左侧被选定车辆的新车辆
|
||||
@@ -3677,6 +3693,7 @@ STR_VEHICLE_INFO_AGE_RED :{RED}{COMMA}
|
||||
|
||||
STR_VEHICLE_INFO_MAX_SPEED :{BLACK}最大速度:{LTBLUE}{VELOCITY}
|
||||
STR_VEHICLE_INFO_MAX_SPEED_TYPE :{BLACK}最高速度: {LTBLUE}{VELOCITY} {BLACK}飞机种类: {LTBLUE}{STRING}
|
||||
STR_VEHICLE_INFO_MAX_SPEED_TYPE_RANGE :{BLACK}最大速度: {LTBLUE}{VELOCITY} {BLACK}飞机类型: {LTBLUE}{STRING} {BLACK}续航里程: {LTBLUE}{COMMA} 格
|
||||
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED :{BLACK}重量:{LTBLUE}{WEIGHT_SHORT} {BLACK}功率:{LTBLUE}{POWER}{BLACK} 最大速度:{LTBLUE}{VELOCITY}
|
||||
STR_VEHICLE_INFO_WEIGHT_POWER_MAX_SPEED_MAX_TE :{BLACK}重量:{LTBLUE}{WEIGHT_SHORT} {BLACK}功率:{LTBLUE}{POWER}{BLACK} 最大速度:{LTBLUE}{VELOCITY} {BLACK}最大牵引力:{LTBLUE}{FORCE}
|
||||
|
||||
@@ -4331,6 +4348,7 @@ STR_ERROR_CAN_T_REMOVE_ROAD_FROM :{WHITE}不能
|
||||
STR_ERROR_CAN_T_REMOVE_TRAMWAY_FROM :{WHITE}无法移除此处的电车道...
|
||||
STR_ERROR_THERE_IS_NO_ROAD :{WHITE}... 这里没有道路
|
||||
STR_ERROR_THERE_IS_NO_TRAMWAY :{WHITE}... 这里没有电车轨道
|
||||
STR_ERROR_CAN_T_CONVERT_ROAD :{WHITE}无法转换道路类型
|
||||
|
||||
# Waterway construction errors
|
||||
STR_ERROR_CAN_T_BUILD_CANALS :{WHITE}不能在这里兴建运河……
|
||||
|
@@ -485,7 +485,7 @@ STR_ABOUT_MENU_ZOOMIN_SCREENSHOT :Captura con ace
|
||||
STR_ABOUT_MENU_DEFAULTZOOM_SCREENSHOT :Captura con acercamiento predeterminado
|
||||
STR_ABOUT_MENU_GIANT_SCREENSHOT :Captura de mapa completo
|
||||
STR_ABOUT_MENU_SHOW_FRAMERATE :Mostrar FPS
|
||||
STR_ABOUT_MENU_ABOUT_OPENTTD :Acerca de 'OpenTTD'
|
||||
STR_ABOUT_MENU_ABOUT_OPENTTD :Acerca de OpenTTD
|
||||
STR_ABOUT_MENU_SPRITE_ALIGNER :Alineador de sprites
|
||||
STR_ABOUT_MENU_TOGGLE_BOUNDING_BOXES :Activar cajas delimitadoras
|
||||
STR_ABOUT_MENU_TOGGLE_DIRTY_BLOCKS :Activar coloreado de bloques modificados
|
||||
@@ -939,6 +939,9 @@ STR_GAME_OPTIONS_CURRENCY_GEL :Lari georgiano
|
||||
STR_GAME_OPTIONS_CURRENCY_IRR :Rial iraní (IRR)
|
||||
STR_GAME_OPTIONS_CURRENCY_RUB :Nuevo rublo ruso (RUR)
|
||||
STR_GAME_OPTIONS_CURRENCY_MXN :Peso mexicano (MXN)
|
||||
STR_GAME_OPTIONS_CURRENCY_NTD :Nuevo dólar taiwanés (NTD)
|
||||
STR_GAME_OPTIONS_CURRENCY_CNY :Yuan chino (CNY)
|
||||
STR_GAME_OPTIONS_CURRENCY_HKD :Dólar honkonés (HKD)
|
||||
############ end of currency region
|
||||
|
||||
STR_GAME_OPTIONS_ROAD_VEHICLES_FRAME :{BLACK}Vehículos de carretera
|
||||
@@ -1190,6 +1193,8 @@ STR_CONFIG_SETTING_AUTOSLOPE :Permitir modifi
|
||||
STR_CONFIG_SETTING_AUTOSLOPE_HELPTEXT :Modificar el terreno debajo de edificios y vías de tren sin quitarlos
|
||||
STR_CONFIG_SETTING_CATCHMENT :Permitir cambiar el tamaño del área de recolección a una forma más real: {STRING}
|
||||
STR_CONFIG_SETTING_CATCHMENT_HELPTEXT :Las áreas de recolección se adecúan a diferentes tamaños, según los tipos de estaciones y aeropuertos
|
||||
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES :Las estaciones privadas pueden dar servicio a industrias con estaciones neutrales: {STRING}
|
||||
STR_CONFIG_SETTING_SERVE_NEUTRAL_INDUSTRIES_HELPTEXT :Si se activa, las industrias con estaciones integradas (ej. plataformas petrolíferas) podrán aceptar cargamento de estaciones privadas construidas cerca. Si se desactiva, tales industrias solo recibirán cargamento en sus propias estaciones. No aceptarán cargamento de estaciones de compañías, y la estación integrada no brindará servicio a nada más que su industria
|
||||
STR_CONFIG_SETTING_EXTRADYNAMITE :Permitir quitar mayor cantidad de carreteras, puentes y túneles de los pueblos: {STRING}
|
||||
STR_CONFIG_SETTING_EXTRADYNAMITE_HELPTEXT :Hacer más fácil eliminar infraestructura y edificios que sean propiedad de los pueblos
|
||||
STR_CONFIG_SETTING_TRAIN_LENGTH :Longitud máxima de trenes: {STRING}
|
||||
@@ -1322,8 +1327,8 @@ STR_CONFIG_SETTING_TERRAIN_TYPE :Tipo de terreno
|
||||
STR_CONFIG_SETTING_TERRAIN_TYPE_HELPTEXT :(Solo TerraGenesis) Colinas del terreno
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY :Densidad industrial: {STRING}
|
||||
STR_CONFIG_SETTING_INDUSTRY_DENSITY_HELPTEXT :Número de industrias a generar y nivel a mantener durante el juego
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distancia máxima de refinerías de petróleo con los bordes del mapa: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Las refinerías de petróleo se construyen cerca del borde del mapa, el cual es costa en mapas con borde marítimo
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE :Distancia máxima de industrias petrolíferas al borde del mapa: {STRING}
|
||||
STR_CONFIG_SETTING_OIL_REF_EDGE_DISTANCE_HELPTEXT :Distancia límite desde el borde del mapa a partir del cual se pueden construir refinerías y plataformas de petróleo. En mapas con forma de isla esto garantiza que se ubiquen cerca de la costa. En mapas de más de 256 casillas el valor se amplía.
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT :Nivel de inicio de nieve: {STRING}
|
||||
STR_CONFIG_SETTING_SNOWLINE_HEIGHT_HELPTEXT :En los mapas de clima Subártico, la elevación a la cual la nieve comienza. La nieve también afecta la generación de industrias y los requisitos de crecimiento de los pueblos
|
||||
STR_CONFIG_SETTING_ROUGHNESS_OF_TERRAIN :Irregularidad del terreno: {STRING}
|
||||
@@ -3042,7 +3047,7 @@ STR_NEWGRF_BROKEN :{WHITE}Es posib
|
||||
STR_NEWGRF_BROKEN_POWERED_WAGON :{WHITE}Cambió el estado 'vagón con motor' para '{1:ENGINE}' cuando no estaba dentro de un depósito
|
||||
STR_NEWGRF_BROKEN_VEHICLE_LENGTH :{WHITE}cambió la longitud del vehículo para '{1:ENGINE}' cuando no estaba dentro de un depósito
|
||||
STR_NEWGRF_BROKEN_CAPACITY :{WHITE}Cambió la capacidad del vehículo para '{1:ENGINE}' cuando no estaba dentro de un depósito o mientras no se estaba reformando
|
||||
STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tren '{VEHICLE}' perteneciente a '{COMPANY}' tiene una longitud no válida. Puede ser debido a problemas con los NewGRF. El juego puede fallar
|
||||
STR_BROKEN_VEHICLE_LENGTH :{WHITE}Tren {VEHICLE} de {COMPANY} tiene una longitud no válida. Quizá es por problemas de los NewGRF, y puede provocar que el juego falle
|
||||
|
||||
STR_NEWGRF_BUGGY :{WHITE}El NewGRF '{0:STRING}' da información incorrecta
|
||||
STR_NEWGRF_BUGGY_ARTICULATED_CARGO :{WHITE}La información de cargamento o reequipamiento para '{1:ENGINE}' difiere de la lista de compra después de la construcción. Esto puede causar que la renovación y el reemplazo automático no haga el reequipamiento correcta
|
||||
@@ -3115,6 +3120,8 @@ STR_TOWN_VIEW_RENAME_TOWN_BUTTON :Cambiar nombre
|
||||
|
||||
# Town local authority window
|
||||
STR_LOCAL_AUTHORITY_CAPTION :{WHITE}Ayuntamiento de {TOWN}
|
||||
STR_LOCAL_AUTHORITY_ZONE :{BLACK}Jurisdicción
|
||||
STR_LOCAL_AUTHORITY_ZONE_TOOLTIP :{BLACK}Mostrar área dentro de jurisdicción local
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATINGS :{BLACK}Evaluación de empresas de transporte:
|
||||
STR_LOCAL_AUTHORITY_COMPANY_RATING :{YELLOW}{COMPANY} {COMPANY_NUM}: {ORANGE}{STRING}
|
||||
STR_LOCAL_AUTHORITY_ACTIONS_TITLE :{BLACK}Acciones disponibles:
|
||||
|
@@ -26,7 +26,7 @@ private:
|
||||
};
|
||||
|
||||
/**
|
||||
* Stateless, thread safe demand hander. Doesn't do anything but call DemandCalculator.
|
||||
* Stateless, thread safe demand handler. Doesn't do anything but call DemandCalculator.
|
||||
*/
|
||||
class DemandHandler : public ComponentHandler {
|
||||
public:
|
||||
|
@@ -6,7 +6,7 @@
|
||||
#include "linkgraphjob_base.h"
|
||||
|
||||
/**
|
||||
* Stateless, thread safe initialization hander. Initializes node and edge
|
||||
* Stateless, thread safe initialization handler. Initializes node and edge
|
||||
* annotations.
|
||||
*/
|
||||
class InitHandler : public ComponentHandler {
|
||||
|
@@ -457,7 +457,7 @@ public:
|
||||
protected:
|
||||
|
||||
/**
|
||||
* Some boundaries to clamp agains in order to avoid integer overflows.
|
||||
* Some boundaries to clamp against in order to avoid integer overflows.
|
||||
*/
|
||||
enum PathCapacityBoundaries {
|
||||
PATH_CAP_MULTIPLIER = 16,
|
||||
|
@@ -280,7 +280,7 @@ void LinkRefresher::RefreshStats(const Order *cur, const Order *next)
|
||||
/**
|
||||
* Iterate over orders starting at \a cur and \a next and refresh links
|
||||
* associated with them. \a cur and \a next can be equal. If they're not they
|
||||
* must be "neigbours" in their order list, which means \a next must be directly
|
||||
* must be "neighbours" in their order list, which means \a next must be directly
|
||||
* reachable from \a cur without passing any further OT_GOTO_STATION or
|
||||
* OT_IMPLICIT orders in between.
|
||||
* @param cur Current order being evaluated.
|
||||
|
@@ -154,13 +154,13 @@ protected:
|
||||
header = &src[1];
|
||||
}
|
||||
|
||||
/** blob header accessor - use it rather than using the pointer arithmetics directly - non-const version */
|
||||
/** blob header accessor - use it rather than using the pointer arithmetic directly - non-const version */
|
||||
inline BlobHeader& Hdr()
|
||||
{
|
||||
return *(header - 1);
|
||||
}
|
||||
|
||||
/** blob header accessor - use it rather than using the pointer arithmetics directly - const version */
|
||||
/** blob header accessor - use it rather than using the pointer arithmetic directly - const version */
|
||||
inline const BlobHeader& Hdr() const
|
||||
{
|
||||
return *(header - 1);
|
||||
|
@@ -53,7 +53,7 @@ public:
|
||||
}
|
||||
|
||||
protected:
|
||||
/** add one ref to the underlaying object */
|
||||
/** add one ref to the underlying object */
|
||||
inline void AddRef()
|
||||
{
|
||||
if (m_pT != nullptr) m_pT->AddRef();
|
||||
|
@@ -7,7 +7,7 @@
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file str.hpp String formating? */
|
||||
/** @file str.hpp String formatting? */
|
||||
|
||||
#ifndef STR_HPP
|
||||
#define STR_HPP
|
||||
@@ -91,7 +91,7 @@ struct CStrA : public CBlobT<char>
|
||||
return strcmp(base::Data(), other.Data()) < 0;
|
||||
}
|
||||
|
||||
/** Add formated string (like vsprintf) at the end of existing contents. */
|
||||
/** Add formatted string (like vsprintf) at the end of existing contents. */
|
||||
int AddFormatL(const char *format, va_list args)
|
||||
{
|
||||
size_t addSize = max<size_t>(strlen(format), 16);
|
||||
@@ -126,7 +126,7 @@ struct CStrA : public CBlobT<char>
|
||||
return ret;
|
||||
}
|
||||
|
||||
/** Add formated string (like sprintf) at the end of existing contents. */
|
||||
/** Add formatted string (like sprintf) at the end of existing contents. */
|
||||
int CDECL WARN_FORMAT(2, 3) AddFormat(const char *format, ...)
|
||||
{
|
||||
va_list args;
|
||||
@@ -136,7 +136,7 @@ struct CStrA : public CBlobT<char>
|
||||
return ret;
|
||||
}
|
||||
|
||||
/** Assign formated string (like sprintf). */
|
||||
/** Assign formatted string (like sprintf). */
|
||||
int CDECL WARN_FORMAT(2, 3) Format(const char *format, ...)
|
||||
{
|
||||
base::Free();
|
||||
|
@@ -229,7 +229,7 @@ CommandCost CmdChangeBankBalance(TileIndex tile, DoCommandFlag flags, uint32 p1,
|
||||
cur_company.Restore();
|
||||
}
|
||||
|
||||
/* This command doesn't cost anyting for deity. */
|
||||
/* This command doesn't cost anything for deity. */
|
||||
CommandCost zero_cost(expenses_type, 0);
|
||||
return zero_cost;
|
||||
}
|
||||
|
@@ -114,7 +114,7 @@ const char *MusicDriver_Cocoa::Start(const char * const *parm)
|
||||
|
||||
|
||||
/**
|
||||
* Checks wether the player is active.
|
||||
* Checks whether the player is active.
|
||||
*/
|
||||
bool MusicDriver_Cocoa::IsSongPlaying()
|
||||
{
|
||||
|
@@ -237,7 +237,7 @@ bool DLSFile::ReadDLSRegion(FILE *f, DWORD list_length, std::vector<DLSRegion> &
|
||||
break;
|
||||
|
||||
default:
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length, SEEK_CUR);
|
||||
break;
|
||||
}
|
||||
@@ -260,7 +260,7 @@ bool DLSFile::ReadDLSRegionList(FILE *f, DWORD list_length, DLSInstrument &instr
|
||||
if (list_type == FOURCC_RGN) {
|
||||
this->ReadDLSRegion(f, chunk.length - sizeof(list_type), instrument.regions);
|
||||
} else {
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length - sizeof(list_type), SEEK_CUR);
|
||||
}
|
||||
} else {
|
||||
@@ -307,7 +307,7 @@ bool DLSFile::ReadDLSInstrument(FILE *f, DWORD list_length)
|
||||
break;
|
||||
|
||||
default:
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length, SEEK_CUR);
|
||||
break;
|
||||
}
|
||||
@@ -332,7 +332,7 @@ bool DLSFile::ReadDLSInstrumentList(FILE *f, DWORD list_length)
|
||||
|
||||
if (!this->ReadDLSInstrument(f, chunk.length - sizeof(list_type))) return false;
|
||||
} else {
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length - sizeof(list_type), SEEK_CUR);
|
||||
}
|
||||
} else {
|
||||
@@ -395,7 +395,7 @@ bool DLSFile::ReadDLSWave(FILE *f, DWORD list_length, long offset)
|
||||
break;
|
||||
|
||||
default:
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length, SEEK_CUR);
|
||||
break;
|
||||
}
|
||||
@@ -424,7 +424,7 @@ bool DLSFile::ReadDLSWaveList(FILE *f, DWORD list_length)
|
||||
|
||||
if (!this->ReadDLSWave(f, chunk.length - sizeof(list_type), chunk_offset - base_offset)) return false;
|
||||
} else {
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown list chunk of type %c%c%c%c", (char)(list_type & 0xFF), (char)((list_type >> 8) & 0xFF), (char)((list_type >> 16) & 0xFF), (char)((list_type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length - sizeof(list_type), SEEK_CUR);
|
||||
}
|
||||
} else {
|
||||
@@ -503,7 +503,7 @@ bool DLSFile::LoadFile(const TCHAR *file)
|
||||
break;
|
||||
|
||||
default:
|
||||
DEBUG(driver, 7, "DLS: Ignoring unkown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
DEBUG(driver, 7, "DLS: Ignoring unknown chunk %c%c%c%c", (char)(chunk.type & 0xFF), (char)((chunk.type >> 8) & 0xFF), (char)((chunk.type >> 16) & 0xFF), (char)((chunk.type >> 24) & 0xFF));
|
||||
fseek(f, chunk.length, SEEK_CUR);
|
||||
break;
|
||||
}
|
||||
|
@@ -34,11 +34,13 @@
|
||||
#include "../debug.h"
|
||||
#include "../base_media_base.h"
|
||||
|
||||
#define Rect OTTDRect
|
||||
#define Point OTTDPoint
|
||||
#define Rect OTTD_Rect
|
||||
#define Point OTTD_Point
|
||||
#define WindowClass OTTD_WindowClass
|
||||
#include <QuickTime/QuickTime.h>
|
||||
#undef Rect
|
||||
#undef Point
|
||||
#undef WindowClass
|
||||
|
||||
#include "../safeguards.h"
|
||||
|
||||
@@ -154,7 +156,7 @@ static void InitQuickTimeIfNeeded()
|
||||
if (_quicktime_started) return;
|
||||
|
||||
DEBUG(driver, 2, "qtmidi: initializing Quicktime");
|
||||
/* Be polite: check wether QuickTime is available and initialize it. */
|
||||
/* Be polite: check whether QuickTime is available and initialize it. */
|
||||
_quicktime_started =
|
||||
(noErr == Gestalt(gestaltQuickTime, &dummy)) &&
|
||||
(noErr == EnterMovies());
|
||||
@@ -213,7 +215,7 @@ bool MusicDriver_QtMidi::IsSongPlaying()
|
||||
|
||||
case QT_STATE_PLAY:
|
||||
MoviesTask(_quicktime_movie, 0);
|
||||
/* Check wether movie ended. */
|
||||
/* Check whether movie ended. */
|
||||
if (IsMovieDone(_quicktime_movie) ||
|
||||
(GetMovieTime(_quicktime_movie, nullptr) >=
|
||||
GetMovieDuration(_quicktime_movie))) {
|
||||
|
@@ -87,7 +87,7 @@ static void TransmitSysex(const byte *&msg_start, size_t &remaining)
|
||||
|
||||
/* prepare header */
|
||||
MIDIHDR *hdr = CallocT<MIDIHDR>(1);
|
||||
hdr->lpData = (LPSTR)msg_start;
|
||||
hdr->lpData = reinterpret_cast<LPSTR>(const_cast<byte *>(msg_start));
|
||||
hdr->dwBufferLength = msg_end - msg_start;
|
||||
if (midiOutPrepareHeader(_midi.midi_out, hdr, sizeof(*hdr)) == MMSYSERR_NOERROR) {
|
||||
/* transmit - just point directly into the data buffer */
|
||||
@@ -373,7 +373,7 @@ const char *MusicDriver_Win32::Start(const char * const *parm)
|
||||
DEBUG(driver, 2, "Win32-MIDI: Start: initializing");
|
||||
|
||||
int resolution = GetDriverParamInt(parm, "resolution", 5);
|
||||
int port = GetDriverParamInt(parm, "port", -1);
|
||||
uint port = (uint)GetDriverParamInt(parm, "port", UINT_MAX);
|
||||
const char *portname = GetDriverParam(parm, "portname");
|
||||
|
||||
/* Enumerate ports either for selecting port by name, or for debug output */
|
||||
@@ -396,7 +396,7 @@ const char *MusicDriver_Win32::Start(const char * const *parm)
|
||||
}
|
||||
|
||||
UINT devid;
|
||||
if (port < 0) {
|
||||
if (port == UINT_MAX) {
|
||||
devid = MIDI_MAPPER;
|
||||
} else {
|
||||
devid = (UINT)port;
|
||||
|
@@ -91,15 +91,6 @@ public:
|
||||
this->SetPort(port);
|
||||
}
|
||||
|
||||
/**
|
||||
* Make a clone of another address
|
||||
* @param address the address to clone
|
||||
*/
|
||||
NetworkAddress(const NetworkAddress &address)
|
||||
{
|
||||
memcpy(this, &address, sizeof(*this));
|
||||
}
|
||||
|
||||
const char *GetHostname();
|
||||
void GetAddressAsString(char *buffer, const char *last, bool with_family = true);
|
||||
const char *GetAddressAsString(bool with_family = true);
|
||||
|
@@ -133,7 +133,7 @@ bool ClientNetworkContentSocketHandler::Receive_SERVER_INFO(Packet *p)
|
||||
ci->state = ContentInfo::UNSELECTED;
|
||||
}
|
||||
|
||||
/* Something we don't have and has filesize 0 does not exist in te system */
|
||||
/* Something we don't have and has filesize 0 does not exist in the system */
|
||||
if (ci->state == ContentInfo::UNSELECTED && ci->filesize == 0) ci->state = ContentInfo::DOES_NOT_EXIST;
|
||||
|
||||
/* Do we already have a stub for this? */
|
||||
@@ -781,7 +781,7 @@ void ClientNetworkContentSocketHandler::SendReceive()
|
||||
|
||||
if (this->CanSendReceive()) {
|
||||
if (this->ReceivePackets()) {
|
||||
/* Only update activity once a packet is received, instead of everytime we try it. */
|
||||
/* Only update activity once a packet is received, instead of every time we try it. */
|
||||
this->lastActivity = _realtime_tick;
|
||||
}
|
||||
}
|
||||
|
@@ -289,7 +289,7 @@ struct ContentListFilterData {
|
||||
std::bitset<CONTENT_TYPE_END> types; ///< Content types displayed
|
||||
};
|
||||
|
||||
/** Filter criterias for NetworkContentListWindow. */
|
||||
/** Filter criteria for NetworkContentListWindow. */
|
||||
enum ContentListFilterCriteria {
|
||||
CONTENT_FILTER_TEXT = 0, ///< Filter by query sting
|
||||
CONTENT_FILTER_TYPE_OR_SELECTED,///< Filter by being of displayed type or selected for download
|
||||
|
@@ -240,7 +240,7 @@ protected:
|
||||
|
||||
int lock_offset; ///< Left offset for lock icon.
|
||||
int blot_offset; ///< Left offset for green/yellow/red compatibility icon.
|
||||
int flag_offset; ///< Left offset for langauge flag icon.
|
||||
int flag_offset; ///< Left offset for language flag icon.
|
||||
|
||||
/**
|
||||
* (Re)build the GUI network game list (a.k.a. this->servers) as some
|
||||
|
@@ -1302,7 +1302,7 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::Receive_CLIENT_ACK(Packet *p)
|
||||
|
||||
/* The client is trying to catch up with the server */
|
||||
if (this->status == STATUS_PRE_ACTIVE) {
|
||||
/* The client is not yet catched up? */
|
||||
/* The client is not yet caught up? */
|
||||
if (frame + DAY_TICKS < _frame_counter) return NETWORK_RECV_STATUS_OKAY;
|
||||
|
||||
/* Now he is! Unpause the game */
|
||||
|
@@ -38,7 +38,7 @@ enum NetworkVehicleType {
|
||||
};
|
||||
|
||||
/** 'Unique' identifier to be given to clients */
|
||||
enum ClientID {
|
||||
enum ClientID : uint32 {
|
||||
INVALID_CLIENT_ID = 0, ///< Client is not part of anything
|
||||
CLIENT_ID_SERVER = 1, ///< Servers always have this ID
|
||||
CLIENT_ID_FIRST = 2, ///< The first client ID
|
||||
|
@@ -108,7 +108,7 @@ public:
|
||||
byte grf_container_ver; ///< Container format of the current GRF file.
|
||||
|
||||
/* Kind of return values when processing certain actions */
|
||||
int skip_sprites; ///< Number of psuedo sprites to skip before processing the next one. (-1 to skip to end of file)
|
||||
int skip_sprites; ///< Number of pseudo sprites to skip before processing the next one. (-1 to skip to end of file)
|
||||
|
||||
/* Currently referenceable spritegroups */
|
||||
SpriteGroup *spritegroups[MAX_SPRITEGROUP + 1];
|
||||
@@ -555,7 +555,7 @@ StringID MapGRFStringID(uint32 grfid, StringID str)
|
||||
{
|
||||
if (IsInsideMM(str, 0xD800, 0xE000)) {
|
||||
/* General text provided by NewGRF.
|
||||
* In the specs this is called the 0xDCxx range (misc presistent texts),
|
||||
* In the specs this is called the 0xDCxx range (misc persistent texts),
|
||||
* but we meanwhile extended the range to 0xD800-0xDFFF.
|
||||
* Note: We are not involved in the "persistent" business, since we do not store
|
||||
* any NewGRF strings in savegames. */
|
||||
@@ -848,7 +848,7 @@ static void ReadSpriteLayoutRegisters(ByteReader *buf, TileLayoutFlags flags, bo
|
||||
* @param num_building_sprites Number of building sprites to read
|
||||
* @param use_cur_spritesets Whether to use currently referenceable action 1 sets.
|
||||
* @param feature GrfSpecFeature to use spritesets from.
|
||||
* @param allow_var10 Whether the spritelayout may specifiy var10 values for resolving multiple action-1-2-3 chains
|
||||
* @param allow_var10 Whether the spritelayout may specify var10 values for resolving multiple action-1-2-3 chains
|
||||
* @param no_z_position Whether bounding boxes have no Z offset
|
||||
* @param dts Layout container to output into
|
||||
* @return True on error (GRF was disabled).
|
||||
@@ -3531,7 +3531,7 @@ static ChangeInfoResult IndustriesChangeInfo(uint indid, int numinfo, int prop,
|
||||
indsp->grf_prop.local_id = indid + i;
|
||||
indsp->grf_prop.subst_id = subs_id;
|
||||
indsp->grf_prop.grffile = _cur.grffile;
|
||||
/* If the grf industry needs to check its surounding upon creation, it should
|
||||
/* If the grf industry needs to check its surrounding upon creation, it should
|
||||
* rely on callbacks, not on the original placement functions */
|
||||
indsp->check_proc = CHECK_NOTHING;
|
||||
}
|
||||
@@ -6318,7 +6318,7 @@ static void GraphicsNew(ByteReader *buf)
|
||||
return;
|
||||
}
|
||||
|
||||
/* Load at most max_sprites sprites. Skip remaining sprites. (for compatibility with TTDP and future extentions) */
|
||||
/* Load at most max_sprites sprites. Skip remaining sprites. (for compatibility with TTDP and future extensions) */
|
||||
uint16 skip_num = SanitizeSpriteOffset(num, offset, action5_type->max_sprites, action5_type->name);
|
||||
SpriteID replace = action5_type->sprite_base + offset;
|
||||
|
||||
@@ -6944,7 +6944,7 @@ static void GRFLoadError(ByteReader *buf)
|
||||
{
|
||||
/* <0B> <severity> <language-id> <message-id> [<message...> 00] [<data...>] 00 [<parnum>]
|
||||
*
|
||||
* B severity 00: notice, contine loading grf file
|
||||
* B severity 00: notice, continue loading grf file
|
||||
* 01: warning, continue loading grf file
|
||||
* 02: error, but continue loading grf file, and attempt
|
||||
* loading grf again when loading or starting next game
|
||||
@@ -7123,7 +7123,7 @@ static uint32 GetPatchVariable(uint8 param)
|
||||
*/
|
||||
case 0x13: {
|
||||
byte map_bits = 0;
|
||||
byte log_X = MapLogX() - 6; // substraction is required to make the minimal size (64) zero based
|
||||
byte log_X = MapLogX() - 6; // subtraction is required to make the minimal size (64) zero based
|
||||
byte log_Y = MapLogY() - 6;
|
||||
byte max_edge = max(log_X, log_Y);
|
||||
|
||||
@@ -7416,7 +7416,7 @@ static void ParamSet(ByteReader *buf)
|
||||
}
|
||||
break;
|
||||
|
||||
case 0x0A: // Signed divison
|
||||
case 0x0A: // Signed division
|
||||
if (src2 == 0) {
|
||||
res = src1;
|
||||
} else {
|
||||
@@ -10364,7 +10364,7 @@ void LoadNewGRF(uint load_index, uint file_index, uint num_baseset)
|
||||
/*
|
||||
* Reset the status of all files, so we can 'retry' to load them.
|
||||
* This is needed when one for example rearranges the NewGRFs in-game
|
||||
* and a previously disabled NewGRF becomes useable. If it would not
|
||||
* and a previously disabled NewGRF becomes usable. If it would not
|
||||
* be reset, the NewGRF would remain disabled even though it should
|
||||
* have been enabled.
|
||||
*/
|
||||
|
@@ -253,7 +253,7 @@ struct GRFFile : ZeroedMemoryAllocator {
|
||||
|
||||
struct LanguageMap *language_map; ///< Mappings related to the languages.
|
||||
|
||||
int traininfo_vehicle_pitch; ///< Vertical offset for draing train images in depot GUI and vehicle details
|
||||
int traininfo_vehicle_pitch; ///< Vertical offset for drawing train images in depot GUI and vehicle details
|
||||
uint traininfo_vehicle_width; ///< Width (in pixels) of a 8/8 train vehicle in depot GUI and vehicle details
|
||||
|
||||
uint32 grf_features; ///< Bitset of GrfSpecFeature the grf uses
|
||||
|
@@ -132,7 +132,7 @@ bool AirportSpec::IsAvailable() const
|
||||
|
||||
/**
|
||||
* Check if the airport would be within the map bounds at the given tile.
|
||||
* @param table Selected layout table. This affects airport rotation, and therefore dimenions.
|
||||
* @param table Selected layout table. This affects airport rotation, and therefore dimensions.
|
||||
* @param tile Top corner of the airport.
|
||||
* @return true iff the airport would be within the map bounds at the given tile.
|
||||
*/
|
||||
|
@@ -650,7 +650,7 @@ void NewGRFSpriteLayout::AllocateRegisters()
|
||||
/**
|
||||
* Prepares a sprite layout before resolving action-1-2-3 chains.
|
||||
* Integrates offsets into the layout and determines which chains to resolve.
|
||||
* @note The function uses statically allocated temporary storage, which is reused everytime when calling the function.
|
||||
* @note The function uses statically allocated temporary storage, which is reused every time when calling the function.
|
||||
* That means, you have to use the sprite layout before calling #PrepareLayout() the next time.
|
||||
* @param orig_offset Offset to apply to non-action-1 sprites.
|
||||
* @param newgrf_ground_offset Offset to apply to action-1 ground sprites.
|
||||
|
@@ -248,7 +248,7 @@ static byte MapAircraftMovementState(const Aircraft *v)
|
||||
return AMS_TTDP_TO_INWAY;
|
||||
|
||||
case HELILANDING:
|
||||
case HELIENDLANDING: // Helicoptor is decending.
|
||||
case HELIENDLANDING: // Helicoptor is descending.
|
||||
if (amdflag & AMED_HELI_LOWER) {
|
||||
return afc->delta_z == 0 ?
|
||||
AMS_TTDP_HELI_LAND_AIRPORT : AMS_TTDP_HELI_LAND_HELIPORT;
|
||||
@@ -1078,7 +1078,7 @@ bool UsesWagonOverride(const Vehicle *v)
|
||||
* @param param1 First parameter of the callback
|
||||
* @param param2 Second parameter of the callback
|
||||
* @param engine Engine type of the vehicle to evaluate the callback for
|
||||
* @param v The vehicle to evaluate the callback for, or nullptr if it doesnt exist yet
|
||||
* @param v The vehicle to evaluate the callback for, or nullptr if it doesn't exist yet
|
||||
* @return The value the callback returned, or CALLBACK_FAILED if it failed
|
||||
*/
|
||||
uint16 GetVehicleCallback(CallbackID callback, uint32 param1, uint32 param2, EngineID engine, const Vehicle *v)
|
||||
|
@@ -14,10 +14,14 @@
|
||||
* holding everything that the newgrf action 04 will send over to OpenTTD.
|
||||
* One of the biggest problems is that Dynamic lang Array uses ISO codes
|
||||
* as way to identifying current user lang, while newgrf uses bit shift codes
|
||||
* not related to ISO. So equivalence functionnality had to be set.
|
||||
* not related to ISO. So equivalence functionality had to be set.
|
||||
*/
|
||||
|
||||
#include "stdafx.h"
|
||||
|
||||
#include <algorithm>
|
||||
#include <array>
|
||||
|
||||
#include "newgrf.h"
|
||||
#include "strings_func.h"
|
||||
#include "newgrf_storage.h"
|
||||
@@ -831,22 +835,14 @@ void CleanUpStrings()
|
||||
}
|
||||
|
||||
struct TextRefStack {
|
||||
byte stack[0x30];
|
||||
std::array<byte, 0x30> stack;
|
||||
byte position;
|
||||
const GRFFile *grffile;
|
||||
bool used;
|
||||
|
||||
TextRefStack() : position(0), grffile(nullptr), used(false) {}
|
||||
|
||||
TextRefStack(const TextRefStack &stack) :
|
||||
position(stack.position),
|
||||
grffile(stack.grffile),
|
||||
used(stack.used)
|
||||
{
|
||||
memcpy(this->stack, stack.stack, sizeof(this->stack));
|
||||
}
|
||||
|
||||
uint8 PopUnsignedByte() { assert(this->position < lengthof(this->stack)); return this->stack[this->position++]; }
|
||||
uint8 PopUnsignedByte() { assert(this->position < this->stack.size()); return this->stack[this->position++]; }
|
||||
int8 PopSignedByte() { return (int8)this->PopUnsignedByte(); }
|
||||
|
||||
uint16 PopUnsignedWord()
|
||||
@@ -884,9 +880,8 @@ struct TextRefStack {
|
||||
if (this->position >= 2) {
|
||||
this->position -= 2;
|
||||
} else {
|
||||
for (int i = lengthof(stack) - 1; i >= this->position + 2; i--) {
|
||||
this->stack[i] = this->stack[i - 2];
|
||||
}
|
||||
// Rotate right 2 positions
|
||||
std::rotate(this->stack.rbegin(), this->stack.rbegin() + 2, this->stack.rend());
|
||||
}
|
||||
this->stack[this->position] = GB(word, 0, 8);
|
||||
this->stack[this->position + 1] = GB(word, 8, 8);
|
||||
@@ -958,12 +953,12 @@ void StartTextRefStackUsage(const GRFFile *grffile, byte numEntries, const uint3
|
||||
|
||||
_newgrf_textrefstack.ResetStack(grffile);
|
||||
|
||||
byte *p = _newgrf_textrefstack.stack;
|
||||
auto stack_it = _newgrf_textrefstack.stack.begin();
|
||||
for (uint i = 0; i < numEntries; i++) {
|
||||
uint32 value = values != nullptr ? values[i] : _temp_store.GetValue(0x100 + i);
|
||||
for (uint j = 0; j < 32; j += 8) {
|
||||
*p = GB(value, j, 8);
|
||||
p++;
|
||||
*stack_it = GB(value, j, 8);
|
||||
stack_it++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -688,9 +688,9 @@ static void MoveToNextNewsItem()
|
||||
* @param type news category
|
||||
* @param flags display flags for the news
|
||||
* @param reftype1 Type of ref1
|
||||
* @param ref1 Reference 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.
|
||||
* @param ref1 Reference 1 to some object: Used for a possible viewport, scrolling after clicking on the news, and for deleting the news when the object is deleted.
|
||||
* @param reftype2 Type of ref2
|
||||
* @param ref2 Reference 2 to some object: Used for scrolling after clicking on the news, and for deleteing the news when the object is deleted.
|
||||
* @param ref2 Reference 2 to some object: Used for scrolling after clicking on the news, and for deleting the news when the object is deleted.
|
||||
* @param free_data Pointer to data that must be freed once the news message is cleared
|
||||
*
|
||||
* @see NewsSubtype
|
||||
|
@@ -128,8 +128,8 @@ struct NewsItem {
|
||||
|
||||
NewsReferenceType reftype1; ///< Type of ref1
|
||||
NewsReferenceType reftype2; ///< Type of ref2
|
||||
uint32 ref1; ///< Reference 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.
|
||||
uint32 ref2; ///< Reference 2 to some object: Used for scrolling after clicking on the news, and for deleteing the news when the object is deleted.
|
||||
uint32 ref1; ///< Reference 1 to some object: Used for a possible viewport, scrolling after clicking on the news, and for deleting the news when the object is deleted.
|
||||
uint32 ref2; ///< Reference 2 to some object: Used for scrolling after clicking on the news, and for deleting the news when the object is deleted.
|
||||
|
||||
void *free_data; ///< Data to be freed when the news item has reached its end.
|
||||
|
||||
|
@@ -855,7 +855,7 @@ static void ChangeTileOwner_Object(TileIndex tile, Owner old_owner, Owner new_ow
|
||||
|
||||
if (do_clear) {
|
||||
ReallyClearObjectTile(Object::GetByTile(tile));
|
||||
/* When clearing objects, they may turn into canal, which may require transfering ownership. */
|
||||
/* When clearing objects, they may turn into canal, which may require transferring ownership. */
|
||||
ChangeTileOwner(tile, old_owner, new_owner);
|
||||
}
|
||||
}
|
||||
|
@@ -575,7 +575,7 @@ const Order *OrderList::GetNextDecisionNode(const Order *next, uint hops, CargoT
|
||||
* @param CargoTypes cargo_mask Bit-set of the cargo IDs of interest.
|
||||
* @param first Order to start searching at or nullptr to start at cur_implicit_order_index + 1.
|
||||
* @param hops Number of orders we have already looked at.
|
||||
* @return A CargoMaskedStationIDStack of the cargo mask the result is valid for, and the next stoppping station or INVALID_STATION.
|
||||
* @return A CargoMaskedStationIDStack of the cargo mask the result is valid for, and the next stopping station or INVALID_STATION.
|
||||
* @pre The vehicle is currently loading and v->last_station_visited is meaningful.
|
||||
* @note This function may draw a random number. Don't use it from the GUI.
|
||||
*/
|
||||
|
@@ -25,7 +25,7 @@
|
||||
#define HAVE_OSX_1011_SDK
|
||||
#endif
|
||||
|
||||
/* It would seem that to ensure backward compability we have to ensure that we have defined MAC_OS_X_VERSION_10_x everywhere */
|
||||
/* It would seem that to ensure backward compatibility we have to ensure that we have defined MAC_OS_X_VERSION_10_x everywhere */
|
||||
#ifndef MAC_OS_X_VERSION_10_3
|
||||
#define MAC_OS_X_VERSION_10_3 1030
|
||||
#endif
|
||||
|
@@ -285,7 +285,7 @@ void MacOSSetCurrentLocaleName(const char *iso_code)
|
||||
|
||||
if (_osx_locale != nullptr) CFRelease(_osx_locale);
|
||||
|
||||
CFStringRef iso = CFStringCreateWithCString(kCFAllocatorNull, iso_code, kCFStringEncodingUTF8);
|
||||
CFStringRef iso = CFStringCreateWithCString(kCFAllocatorDefault, iso_code, kCFStringEncodingUTF8);
|
||||
_osx_locale = CFLocaleCreate(kCFAllocatorDefault, iso);
|
||||
CFRelease(iso);
|
||||
}
|
||||
|
@@ -421,7 +421,7 @@ void ShowOnScreenKeyboard(Window *parent, int button)
|
||||
* Updates the original text of the OSK so when the 'parent' changes the
|
||||
* original and you press on cancel you won't get the 'old' original text
|
||||
* but the updated one.
|
||||
* @param parent window that just updated its orignal text
|
||||
* @param parent window that just updated its original text
|
||||
* @param button widget number of parent's textbox to update
|
||||
*/
|
||||
void UpdateOSKOriginalText(const Window *parent, int button)
|
||||
|
@@ -1009,7 +1009,7 @@ static void NPFFollowTrack(AyStar *aystar, OpenListNode *current)
|
||||
* When we are looking for one specific target (optionally multiple tiles), we
|
||||
* should use a good heuristic to perform aystar search. When we search for
|
||||
* multiple targets that are spread around, we should perform a breadth first
|
||||
* search by specifiying CalcZero as our heuristic.
|
||||
* search by specifying CalcZero as our heuristic.
|
||||
*/
|
||||
static NPFFoundTargetData NPFRouteInternal(AyStarNode *start1, bool ignore_start_tile1, AyStarNode *start2, bool ignore_start_tile2, NPFFindStationOrTileData *target, AyStar_EndNodeCheck target_proc, AyStar_CalculateH heuristic_proc, AyStarUserData *user, uint reverse_penalty, bool ignore_reserved = false, int max_penalty = 0)
|
||||
{
|
||||
|
@@ -48,14 +48,6 @@ protected:
|
||||
this->tile_type = GetTileType(tile);
|
||||
this->rail_type = GetTileRailTypeByTrack(tile, TrackdirToTrack(td));
|
||||
}
|
||||
|
||||
TILE(const TILE &src)
|
||||
{
|
||||
tile = src.tile;
|
||||
td = src.td;
|
||||
tile_type = src.tile_type;
|
||||
rail_type = src.rail_type;
|
||||
}
|
||||
};
|
||||
|
||||
protected:
|
||||
|
@@ -79,7 +79,7 @@ public:
|
||||
/**
|
||||
* Get the currently marked text.
|
||||
* @param[out] length Length of the marked text.
|
||||
* @return Begining of the marked area or nullptr if no text is marked.
|
||||
* @return Beginning of the marked area or nullptr if no text is marked.
|
||||
*/
|
||||
const char *GetMarkedText(size_t *length) const
|
||||
{
|
||||
|
@@ -43,9 +43,9 @@ static bool IsPossibleCrossing(const TileIndex tile, Axis ax)
|
||||
}
|
||||
|
||||
/**
|
||||
* Clean up unnecessary RoadBits of a planed tile.
|
||||
* Clean up unnecessary RoadBits of a planned tile.
|
||||
* @param tile current tile
|
||||
* @param org_rb planed RoadBits
|
||||
* @param org_rb planned RoadBits
|
||||
* @return optimised RoadBits
|
||||
*/
|
||||
RoadBits CleanUpRoadBits(const TileIndex tile, RoadBits org_rb)
|
||||
@@ -104,7 +104,7 @@ RoadBits CleanUpRoadBits(const TileIndex tile, RoadBits org_rb)
|
||||
}
|
||||
}
|
||||
|
||||
/* If the neighbor tile is inconnective, remove the planed road connection to it */
|
||||
/* If the neighbor tile is inconnective, remove the planned road connection to it */
|
||||
if (!connective) org_rb ^= target_rb;
|
||||
}
|
||||
}
|
||||
|
@@ -271,7 +271,7 @@ static bool RoadToolbar_CtrlChanged(Window *w)
|
||||
/** Road toolbar window handler. */
|
||||
struct BuildRoadToolbarWindow : Window {
|
||||
RoadType roadtype; ///< Road type to build.
|
||||
const RoadTypeInfo *rti; ///< Informations about current road type
|
||||
const RoadTypeInfo *rti; ///< Information about current road type
|
||||
int last_started_action; ///< Last started user action.
|
||||
|
||||
BuildRoadToolbarWindow(WindowDesc *desc, WindowNumber window_number) : Window(desc)
|
||||
|
@@ -244,7 +244,7 @@ void ClearAllCachedNames()
|
||||
* This is not done directly in AfterLoadGame because these
|
||||
* functions require that all saveload conversions have been
|
||||
* done. As people tend to add savegame conversion stuff after
|
||||
* the intialization of the windows and caches quite some bugs
|
||||
* the initialization of the windows and caches quite some bugs
|
||||
* had been made.
|
||||
* Moving this out of there is both cleaner and less bug-prone.
|
||||
*/
|
||||
|
@@ -1848,7 +1848,7 @@ bool SlObjectMemberGeneric(void *ptr, const SaveLoad *sld)
|
||||
break;
|
||||
|
||||
/* SL_WRITEBYTE writes a value to the savegame to identify the type of an object.
|
||||
* When loading, the value is read explictly with SlReadByte() to determine which
|
||||
* When loading, the value is read explicitly with SlReadByte() to determine which
|
||||
* object description to use. */
|
||||
case SL_WRITEBYTE:
|
||||
switch (action) {
|
||||
|
@@ -271,7 +271,7 @@ enum SaveLoadVersion : uint16 {
|
||||
SLV_186, ///< 186 25833 Objects storage
|
||||
SLV_187, ///< 187 25899 Linkgraph - restricted flows
|
||||
SLV_188, ///< 188 26169 v1.4 FS#5831 Unify RV travel time
|
||||
SLV_189, ///< 189 26450 Heirarchical vehicle subgroups
|
||||
SLV_189, ///< 189 26450 Hierarchical vehicle subgroups
|
||||
|
||||
SLV_190, ///< 190 26547 Separate order travel and wait times
|
||||
SLV_191, ///< 191 26636 FS#6026 Fix disaster vehicle storage (No bump)
|
||||
@@ -287,7 +287,7 @@ enum SaveLoadVersion : uint16 {
|
||||
SLV_EXTEND_CARGOTYPES, ///< 199 PR#6802 Extend cargotypes to 64
|
||||
|
||||
SLV_EXTEND_RAILTYPES, ///< 200 PR#6805 Extend railtypes to 64, adding uint16 to map array.
|
||||
SLV_EXTEND_PERSISTENT_STORAGE, ///< 201 PR#6885 Extend NewGRF persistant storages.
|
||||
SLV_EXTEND_PERSISTENT_STORAGE, ///< 201 PR#6885 Extend NewGRF persistent storages.
|
||||
SLV_EXTEND_INDUSTRY_CARGO_SLOTS, ///< 202 PR#6867 Increase industry cargo slots to 16 in, 16 out
|
||||
SLV_SHIP_PATH_CACHE, ///< 203 PR#7072 Add path cache for ships
|
||||
SLV_SHIP_ROTATION, ///< 204 PR#7065 Add extra rotation stages for ships.
|
||||
|
@@ -82,7 +82,7 @@ char *CopyFromOldName(StringID id)
|
||||
case 0xB8: c = 0x017E; break; // z with caron
|
||||
case 0xBC: c = 0x0152; break; // OE ligature
|
||||
case 0xBD: c = 0x0153; break; // oe ligature
|
||||
case 0xBE: c = 0x0178; break; // Y with diaresis
|
||||
case 0xBE: c = 0x0178; break; // Y with diaeresis
|
||||
default: break;
|
||||
}
|
||||
|
||||
|
@@ -313,7 +313,7 @@
|
||||
* destination it its catchment area. One industry tile or one town house
|
||||
* is enough as long as station accepts the cargo. Awarded subsidies are no
|
||||
* longer bound to stations used for first delivery, any station can be
|
||||
* used for loading and unloading as long as cargo is transfered from
|
||||
* used for loading and unloading as long as cargo is transferred from
|
||||
* source to destination.
|
||||
* \li Make AIEngine:CanRefitCargo() not report refittability to mail by
|
||||
* default for aircraft. It is not necessarily true. This means that even
|
||||
|
@@ -36,7 +36,7 @@ public:
|
||||
CC_LIQUID = ::CC_LIQUID, ///< Liquids (Oil, Water, Rubber)
|
||||
CC_REFRIGERATED = ::CC_REFRIGERATED, ///< Refrigerated cargo (Food, Fruit)
|
||||
CC_HAZARDOUS = ::CC_HAZARDOUS, ///< Hazardous cargo (Nuclear Fuel, Explosives, etc.)
|
||||
CC_COVERED = ::CC_COVERED, ///< Covered/Sheltered Freight (Transporation in Box Vans, Silo Wagons, etc.)
|
||||
CC_COVERED = ::CC_COVERED, ///< Covered/Sheltered Freight (Transportation in Box Vans, Silo Wagons, etc.)
|
||||
};
|
||||
|
||||
/**
|
||||
|
@@ -26,7 +26,7 @@ class ScriptClient : public ScriptObject {
|
||||
public:
|
||||
|
||||
/** Different constants related to ClientID. */
|
||||
enum ClientID {
|
||||
enum ClientID : uint32 {
|
||||
CLIENT_INVALID = 0, ///< Client is not part of anything
|
||||
CLIENT_SERVER = 1, ///< Servers always have this ID
|
||||
CLIENT_FIRST = 2, ///< The first client ID
|
||||
|
@@ -799,8 +799,8 @@ private:
|
||||
|
||||
/**
|
||||
* Event AircraftDestTooFar, indicating the next destination of an aircraft is too far away.
|
||||
* This event can be trigger when the current oder of an aircraft changes, usually either when
|
||||
* loading is done or when switch manually.
|
||||
* This event can be triggered when the current order of an aircraft changes, usually either when
|
||||
* loading is done or when switched manually.
|
||||
* @api ai
|
||||
*/
|
||||
class ScriptEventAircraftDestTooFar : public ScriptEvent {
|
||||
|
@@ -84,7 +84,7 @@
|
||||
EnforcePrecondition(false, IsValidGoal(goal_id));
|
||||
EnforcePrecondition(false, ScriptObject::GetCompany() == OWNER_DEITY);
|
||||
|
||||
/* Ensure null as used for emtpy string. */
|
||||
/* Ensure null as used for empty string. */
|
||||
if (progress != nullptr && StrEmpty(progress->GetEncodedText())) {
|
||||
progress = nullptr;
|
||||
}
|
||||
|
@@ -219,7 +219,7 @@ public:
|
||||
static bool AreRoadTilesConnected(TileIndex tile_from, TileIndex tile_to);
|
||||
|
||||
/**
|
||||
* Lookup function for building road parts independend on whether the
|
||||
* Lookup function for building road parts independent of whether the
|
||||
* "building on slopes" setting is enabled or not.
|
||||
* This implementation can be used for abstract reasoning about a tile as
|
||||
* it needs the slope and existing road parts of the tile as information.
|
||||
@@ -250,10 +250,10 @@ public:
|
||||
static int32 CanBuildConnectedRoadParts(ScriptTile::Slope slope, struct Array *existing, TileIndex start, TileIndex end);
|
||||
|
||||
/**
|
||||
* Lookup function for building road parts independend on whether the
|
||||
* Lookup function for building road parts independent of whether the
|
||||
* "building on slopes" setting is enabled or not.
|
||||
* This implementation can be used for reasoning about an existing tile.
|
||||
* @param tile The the tile to examine.
|
||||
* @param tile The tile to examine.
|
||||
* @param start The tile from where "tile" will be entered.
|
||||
* @param end The tile from where "tile" will be exited.
|
||||
* @pre start != end.
|
||||
|
@@ -92,7 +92,7 @@ public:
|
||||
* Create a new story page element.
|
||||
* @param story_page_id The page id of the story page which the page element should be appended to.
|
||||
* @param type Which page element type to create.
|
||||
* @param reference A reference value to the object that is refered to by some page element types. When type is SPET_GOAL, this is the goal ID. When type is SPET_LOCATION, this is the TileIndex.
|
||||
* @param reference A reference value to the object that is referred to by some page element types. When type is SPET_GOAL, this is the goal ID. When type is SPET_LOCATION, this is the TileIndex.
|
||||
* @param text The body text of page elements that allow custom text. (SPET_TEXT and SPET_LOCATION)
|
||||
* @return The new StoryPageElementID, or STORY_PAGE_ELEMENT_INVALID if it failed.
|
||||
* @pre No ScriptCompanyMode may be in scope.
|
||||
@@ -107,7 +107,7 @@ public:
|
||||
/**
|
||||
* Update the content of a page element
|
||||
* @param story_page_element_id The page id of the story page which the page element should be appended to.
|
||||
* @param reference A reference value to the object that is refered to by some page element types. See also NewElement.
|
||||
* @param reference A reference value to the object that is referred to by some page element types. See also NewElement.
|
||||
* @param text The body text of page elements that allow custom text. See also NewElement.
|
||||
* @return True if the action succeeded.
|
||||
* @pre No ScriptCompanyMode may be in scope.
|
||||
|
@@ -1896,7 +1896,7 @@ void LoadFromConfig(bool minimal)
|
||||
|
||||
ValidateSettings();
|
||||
|
||||
/* Display sheduled errors */
|
||||
/* Display scheduled errors */
|
||||
extern void ScheduleErrorMessage(ErrorList &datas);
|
||||
ScheduleErrorMessage(_settings_error_list);
|
||||
if (FindWindowById(WC_ERRMSG, 0) == nullptr) ShowFirstError();
|
||||
|
@@ -231,7 +231,7 @@ struct SoundSettings {
|
||||
bool news_ticker; ///< Play a ticker sound when a news item is published.
|
||||
bool news_full; ///< Play sound effects associated to certain news types.
|
||||
bool new_year; ///< Play sound on new year, summarising the performance during the last year.
|
||||
bool confirm; ///< Play sound effect on succesful constructions or other actions.
|
||||
bool confirm; ///< Play sound effect on successful constructions or other actions.
|
||||
bool click_beep; ///< Beep on a random selection of buttons.
|
||||
bool disaster; ///< Play disaster and accident sounds.
|
||||
bool vehicle; ///< Play vehicle sound effects.
|
||||
|
@@ -872,7 +872,7 @@ static void ShipController(Ship *v)
|
||||
if (st->facilities & FACIL_DOCK) { // ugly, ugly workaround for problem with ships able to drop off cargo at wrong stations
|
||||
ShipArrivesAt(v, st);
|
||||
v->BeginLoading();
|
||||
} else { // leave stations without docks right aways
|
||||
} else { // leave stations without docks right away
|
||||
v->current_order.MakeLeaveStation();
|
||||
v->IncrementRealOrderIndex();
|
||||
}
|
||||
@@ -948,7 +948,7 @@ static void ShipController(Ship *v)
|
||||
/* Bridge exit */
|
||||
if (_settings_game.vehicle.ship_collision_avoidance && gp.new_tile != TileVirtXY(v->x_pos, v->y_pos)) HandleSpeedOnAqueduct(v, gp.new_tile, v->tile);
|
||||
|
||||
/* Ship is back on the bridge head, we need to comsume its path
|
||||
/* Ship is back on the bridge head, we need to consume its path
|
||||
* cache entry here as we didn't have to choose a ship track. */
|
||||
if (!v->path.empty()) v->path.pop_front();
|
||||
}
|
||||
|
@@ -7,7 +7,7 @@
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file allegro_s.h Base fo playing sound via Allegro. */
|
||||
/** @file allegro_s.h Base for playing sound via Allegro. */
|
||||
|
||||
#ifndef SOUND_ALLEGRO_H
|
||||
#define SOUND_ALLEGRO_H
|
||||
|
70
src/sound/sdl2_s.cpp
Normal file
70
src/sound/sdl2_s.cpp
Normal file
@@ -0,0 +1,70 @@
|
||||
/* $Id$ */
|
||||
|
||||
/*
|
||||
* This file is part of OpenTTD.
|
||||
* OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2.
|
||||
* OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file sdl2_s.cpp Playing sound via SDL2. */
|
||||
|
||||
#ifdef WITH_SDL2
|
||||
|
||||
#include "../stdafx.h"
|
||||
|
||||
#include "../mixer.h"
|
||||
#include "sdl_s.h"
|
||||
#include <SDL.h>
|
||||
|
||||
#include "../safeguards.h"
|
||||
|
||||
/** Factory for the SDL sound driver. */
|
||||
static FSoundDriver_SDL iFSoundDriver_SDL;
|
||||
|
||||
/**
|
||||
* Callback that fills the sound buffer.
|
||||
* @param userdata Ignored.
|
||||
* @param stream The stream to put data into.
|
||||
* @param len The length of the stream in bytes.
|
||||
*/
|
||||
static void CDECL fill_sound_buffer(void *userdata, Uint8 *stream, int len)
|
||||
{
|
||||
MxMixSamples(stream, len / 4);
|
||||
}
|
||||
|
||||
const char *SoundDriver_SDL::Start(const char * const *parm)
|
||||
{
|
||||
SDL_AudioSpec spec;
|
||||
SDL_AudioSpec spec_actual;
|
||||
|
||||
/* Only initialise SDL if the video driver hasn't done it already */
|
||||
int ret_code = 0;
|
||||
if (SDL_WasInit(SDL_INIT_EVERYTHING) == 0) {
|
||||
ret_code = SDL_Init(SDL_INIT_AUDIO);
|
||||
} else if (SDL_WasInit(SDL_INIT_AUDIO) == 0) {
|
||||
ret_code = SDL_InitSubSystem(SDL_INIT_AUDIO);
|
||||
}
|
||||
if (ret_code == -1) return SDL_GetError();
|
||||
|
||||
spec.freq = GetDriverParamInt(parm, "hz", 44100);
|
||||
spec.format = AUDIO_S16SYS;
|
||||
spec.channels = 2;
|
||||
spec.samples = GetDriverParamInt(parm, "samples", 1024);
|
||||
spec.callback = fill_sound_buffer;
|
||||
SDL_AudioDeviceID dev = SDL_OpenAudioDevice(nullptr, 0, &spec, &spec_actual, SDL_AUDIO_ALLOW_FREQUENCY_CHANGE);
|
||||
MxInitialize(spec_actual.freq);
|
||||
SDL_PauseAudioDevice(dev, 0);
|
||||
return nullptr;
|
||||
}
|
||||
|
||||
void SoundDriver_SDL::Stop()
|
||||
{
|
||||
SDL_CloseAudio();
|
||||
SDL_QuitSubSystem(SDL_INIT_AUDIO);
|
||||
if (SDL_WasInit(SDL_INIT_EVERYTHING) == 0) {
|
||||
SDL_Quit(); // If there's nothing left, quit SDL
|
||||
}
|
||||
}
|
||||
|
||||
#endif /* WITH_SDL2 */
|
@@ -7,7 +7,7 @@
|
||||
* See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
/** @file sdl_s.h Base fo playing sound via SDL. */
|
||||
/** @file sdl_s.h Base for playing sound via SDL. */
|
||||
|
||||
#ifndef SOUND_SDL_H
|
||||
#define SOUND_SDL_H
|
||||
|
@@ -3305,7 +3305,7 @@ void StationPickerDrawSprite(int x, int y, StationType st, RailType railtype, Ro
|
||||
/* Drive-through stop */
|
||||
uint sprite_offset = 5 - image;
|
||||
|
||||
/* Road underlay takes precendence over tram */
|
||||
/* Road underlay takes precedence over tram */
|
||||
if (rti->UsesOverlay()) {
|
||||
SpriteID ground = GetCustomRoadSprite(rti, INVALID_TILE, ROTSG_GROUND);
|
||||
DrawSprite(ground + sprite_offset, PAL_NONE, x, y);
|
||||
|
@@ -45,7 +45,7 @@ INSTANTIATE_POOL_METHODS(StoryPage)
|
||||
* @param tile The tile parameter of the DoCommand proc
|
||||
* @param reference The reference parameter of the DoCommand proc (p2)
|
||||
* @param text The text parameter of the DoCommand proc
|
||||
* @return true, if and only if the given parameters are valid for the given page elment type and page id.
|
||||
* @return true, if and only if the given parameters are valid for the given page element type and page id.
|
||||
*/
|
||||
static bool VerifyElementContentParameters(StoryPageID page_id, StoryPageElementType type, TileIndex tile, uint32 reference, const char *text)
|
||||
{
|
||||
|
@@ -263,7 +263,7 @@ protected:
|
||||
/**
|
||||
* Counts how many pixels of height that are used by Date and Title
|
||||
* (excluding marginal after Title, as each body element has
|
||||
* an empty row before the elment).
|
||||
* an empty row before the element).
|
||||
* @param max_width Available width to display content.
|
||||
* @return the height in pixels.
|
||||
*/
|
||||
@@ -412,7 +412,7 @@ public:
|
||||
this->vscroll = this->GetScrollbar(WID_SB_SCROLLBAR);
|
||||
this->vscroll->SetStepSize(FONT_HEIGHT_NORMAL);
|
||||
|
||||
/* Initalize page sort. */
|
||||
/* Initialize page sort. */
|
||||
this->story_pages.SetSortFuncs(StoryBookWindow::page_sorter_funcs);
|
||||
this->story_pages.ForceRebuild();
|
||||
this->BuildStoryPageList();
|
||||
|
@@ -412,7 +412,7 @@ static const SortableSpriteStruct RailCatenarySpriteData_Tunnel[] = {
|
||||
* Identifiers for Wires:
|
||||
* <ol><li>Direction of the wire</li>
|
||||
* <li>Slope of the tile for diagonals, placement inside the track for horiz/vertical pieces</li>
|
||||
* <li>Place where a pylon shoule be</li></ol>
|
||||
* <li>Place where a pylon should be</li></ol>
|
||||
* Identifiers for Pylons:
|
||||
* <ol><li>Direction of the wire</li>
|
||||
* <li>Slope of the tile</li>
|
||||
|
@@ -12,7 +12,7 @@ static uint16 _old_diff_custom[GAME_DIFFICULTY_NUM];
|
||||
uint8 _old_diff_level; ///< Old difficulty level from old savegames
|
||||
uint8 _old_units; ///< Old units from old savegames
|
||||
|
||||
/* Most of these strings are used both for gameopt-backward compatability
|
||||
/* Most of these strings are used both for gameopt-backward compatibility
|
||||
* and the settings tables. The rest is here for consistency. */
|
||||
static const char *_locale_currencies = "GBP|USD|EUR|YEN|ATS|BEF|CHF|CZK|DEM|DKK|ESP|FIM|FRF|GRD|HUF|ISK|ITL|NLG|NOK|PLN|RON|RUR|SIT|SEK|YTL|SKK|BRL|EEK|custom";
|
||||
static const char *_locale_units = "imperial|metric|si";
|
||||
|
@@ -33,7 +33,7 @@ static size_t ConvertLandscape(const char *value);
|
||||
* Thse are for members in the struct described by the current
|
||||
* #SettingDesc list / .ini file. Here, 'base' specifies type of the
|
||||
* struct while 'var' points out the member of the struct (the actual
|
||||
* struct to store it in is implicitely defined by the #SettingDesc
|
||||
* struct to store it in is implicitly defined by the #SettingDesc
|
||||
* list / .ini file preamble the entry is in).
|
||||
*
|
||||
* The something part defines the type of variable to store. There are a
|
||||
|
@@ -146,7 +146,7 @@ enumlist = <this parameter must be set>
|
||||
|
||||
|
||||
; Saved settings variables.
|
||||
; Do not ADD or REMOVE something in this "difficulty.XXX" table or before it. It breaks savegame compatability.
|
||||
; Do not ADD or REMOVE something in this "difficulty.XXX" table or before it. It breaks savegame compatibility.
|
||||
[SDT_VAR]
|
||||
base = GameSettings
|
||||
var = difficulty.max_no_competitors
|
||||
@@ -5256,7 +5256,7 @@ cat = SC_EXPERT
|
||||
; Since the network code (CmdChangeSetting and friends) use the index in this array to decide
|
||||
; which setting the server is talking about all conditional compilation of this array must be at the
|
||||
; end. This isn't really the best solution, the settings the server can tell the client about should
|
||||
; either use a seperate array or some other form of identifier.
|
||||
; either use a separate array or some other form of identifier.
|
||||
|
||||
;
|
||||
; We might need to emulate a right mouse button on mac
|
||||
|
@@ -27,10 +27,10 @@
|
||||
* All sprites which are described here are referenced only one to a handful of times
|
||||
* throughout the code. When introducing new sprite enums, use meaningful names.
|
||||
* Don't be lazy and typing, and only use abbreviations when their meaning is clear or
|
||||
* the length of the enum would get out of hand. In that case EXPLAIN THE ABBREVATION
|
||||
* the length of the enum would get out of hand. In that case EXPLAIN THE ABBREVIATION
|
||||
* IN THIS FILE, and perhaps add some comments in the code where it is used.
|
||||
* Now, don't whine about this being too much typing work if the enums are like
|
||||
* 30 characters in length. If your editor doen't help you simplifying your work,
|
||||
* 30 characters in length. If your editor doesn't help you simplifying your work,
|
||||
* get a proper editor. If your Operating Systems don't have any decent editors,
|
||||
* get a proper Operating System.
|
||||
*
|
||||
|
@@ -76,8 +76,8 @@ Slope GetTileSlope(TileIndex tile, int *h)
|
||||
/**
|
||||
* Return the slope of a given tile, also for tiles outside the map (virtual "black" tiles).
|
||||
*
|
||||
* @param x X coordinate of the tile to compute slope of, may be ouside the map.
|
||||
* @param y Y coordinate of the tile to compute slope of, may be ouside the map.
|
||||
* @param x X coordinate of the tile to compute slope of, may be outside the map.
|
||||
* @param y Y coordinate of the tile to compute slope of, may be outside the map.
|
||||
* @param h If not \c nullptr, pointer to storage of z height.
|
||||
* @return Slope of the tile, except for the HALFTILE part.
|
||||
*/
|
||||
|
@@ -40,8 +40,8 @@ static inline uint TileHeight(TileIndex tile)
|
||||
/**
|
||||
* Returns the height of a tile, also for tiles outside the map (virtual "black" tiles).
|
||||
*
|
||||
* @param x X coordinate of the tile, may be ouside the map.
|
||||
* @param y Y coordinate of the tile, may be ouside the map.
|
||||
* @param x X coordinate of the tile, may be outside the map.
|
||||
* @param y Y coordinate of the tile, may be outside the map.
|
||||
* @return The height in the same unit as TileHeight.
|
||||
*/
|
||||
static inline uint TileHeightOutsideMap(int x, int y)
|
||||
@@ -82,8 +82,8 @@ static inline uint TilePixelHeight(TileIndex tile)
|
||||
/**
|
||||
* Returns the height of a tile in pixels, also for tiles outside the map (virtual "black" tiles).
|
||||
*
|
||||
* @param x X coordinate of the tile, may be ouside the map.
|
||||
* @param y Y coordinate of the tile, may be ouside the map.
|
||||
* @param x X coordinate of the tile, may be outside the map.
|
||||
* @param y Y coordinate of the tile, may be outside the map.
|
||||
* @return The height in pixels in the same unit as TilePixelHeight.
|
||||
*/
|
||||
static inline uint TilePixelHeightOutsideMap(int x, int y)
|
||||
|
@@ -41,7 +41,7 @@ static const TownID INVALID_TOWN = 0xFFFF;
|
||||
static const uint TOWN_GROWTH_WINTER = 0xFFFFFFFE; ///< The town only needs this cargo in the winter (any amount)
|
||||
static const uint TOWN_GROWTH_DESERT = 0xFFFFFFFF; ///< The town needs the cargo for growth when on desert (any amount)
|
||||
static const uint16 TOWN_GROWTH_RATE_NONE = 0xFFFF; ///< Special value for Town::growth_rate to disable town growth.
|
||||
static const uint16 MAX_TOWN_GROWTH_TICKS = 930; ///< Max amount of original town ticks that still fit into uint16, about equal to UINT16_MAX / TOWN_GROWTH_TICKS but sligtly less to simplify calculations
|
||||
static const uint16 MAX_TOWN_GROWTH_TICKS = 930; ///< Max amount of original town ticks that still fit into uint16, about equal to UINT16_MAX / TOWN_GROWTH_TICKS but slightly less to simplify calculations
|
||||
|
||||
typedef Pool<Town, TownID, 64, 64000> TownPool;
|
||||
extern TownPool _town_pool;
|
||||
|
@@ -966,7 +966,7 @@ public:
|
||||
this->vscroll->SetCapacityFromWidget(this, WID_TD_LIST);
|
||||
}
|
||||
|
||||
virtual void OnEditboxChanged(int wid)
|
||||
void OnEditboxChanged(int wid) override
|
||||
{
|
||||
if (wid == WID_TD_FILTER) {
|
||||
this->string_filter.SetFilterTerm(this->townname_editbox.text.buf);
|
||||
@@ -1011,7 +1011,7 @@ public:
|
||||
this->towns.Sort();
|
||||
this->towns.shrink_to_fit();
|
||||
this->towns.RebuildDone();
|
||||
this->vscroll->SetCount(this->towns.size()); // Update scrollbar as well.
|
||||
this->vscroll->SetCount((int)this->towns.size()); // Update scrollbar as well.
|
||||
}
|
||||
break;
|
||||
default:
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user