mirror of https://github.com/OpenTTD/OpenTTD
(svn r23403) [1.1] -Backport from trunk:
- Fix: [Network] Do not send chat messages to clients that have not joined yet [FS#4826] (r23337) - Fix: Assertion could be triggered in case a station was removed just after a vehicle delivered cargo to it [FS#4849] (r23312) - Fix: Pathfinders go haywire when you build a lock over a ship going perpendicular to the axis of the new lock [FS#4845] (r23284) - Fix: [NewGRF] Prevent against writing data for unknown fonts (r23283)release/1.1
parent
45e119deeb
commit
6fecd62cad
|
@ -86,7 +86,7 @@ Page custom SelectCDEnter SelectCDExit ": TTD folder"
|
||||||
!define MUI_FINISHPAGE_TITLE_3LINES
|
!define MUI_FINISHPAGE_TITLE_3LINES
|
||||||
!define MUI_FINISHPAGE_RUN_TEXT "Run ${APPNAMEANDVERSION} now!"
|
!define MUI_FINISHPAGE_RUN_TEXT "Run ${APPNAMEANDVERSION} now!"
|
||||||
!define MUI_FINISHPAGE_RUN "$INSTDIR\openttd.exe"
|
!define MUI_FINISHPAGE_RUN "$INSTDIR\openttd.exe"
|
||||||
!define MUI_FINISHPAGE_LINK "Visit the OpenTTD site for the latest news, FAQs and downloads"
|
!define MUI_FINISHPAGE_LINK "Visit the OpenTTD site for more information"
|
||||||
!define MUI_FINISHPAGE_LINK_LOCATION "${APPURLLINK}"
|
!define MUI_FINISHPAGE_LINK_LOCATION "${APPURLLINK}"
|
||||||
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
|
!define MUI_FINISHPAGE_NOREBOOTSUPPORT
|
||||||
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\readme.txt"
|
!define MUI_FINISHPAGE_SHOWREADME "$INSTDIR\readme.txt"
|
||||||
|
|
|
@ -669,6 +669,8 @@ NetworkRecvStatus ServerNetworkGameSocketHandler::SendCommand(const CommandPacke
|
||||||
|
|
||||||
NetworkRecvStatus ServerNetworkGameSocketHandler::SendChat(NetworkAction action, ClientID client_id, bool self_send, const char *msg, int64 data)
|
NetworkRecvStatus ServerNetworkGameSocketHandler::SendChat(NetworkAction action, ClientID client_id, bool self_send, const char *msg, int64 data)
|
||||||
{
|
{
|
||||||
|
if (this->status != STATUS_ACTIVE) return NETWORK_RECV_STATUS_OKAY;
|
||||||
|
|
||||||
Packet *p = new Packet(PACKET_SERVER_CHAT);
|
Packet *p = new Packet(PACKET_SERVER_CHAT);
|
||||||
|
|
||||||
p->Send_uint8 (action);
|
p->Send_uint8 (action);
|
||||||
|
|
|
@ -6405,10 +6405,14 @@ static void LoadFontGlyph(ByteReader *buf)
|
||||||
uint8 num_char = buf->ReadByte();
|
uint8 num_char = buf->ReadByte();
|
||||||
uint16 base_char = buf->ReadWord();
|
uint16 base_char = buf->ReadWord();
|
||||||
|
|
||||||
|
if (size >= FS_END) {
|
||||||
|
grfmsg(1, "LoadFontGlyph: Size %u is not supported, ignoring", size);
|
||||||
|
}
|
||||||
|
|
||||||
grfmsg(7, "LoadFontGlyph: Loading %u glyph(s) at 0x%04X for size %u", num_char, base_char, size);
|
grfmsg(7, "LoadFontGlyph: Loading %u glyph(s) at 0x%04X for size %u", num_char, base_char, size);
|
||||||
|
|
||||||
for (uint c = 0; c < num_char; c++) {
|
for (uint c = 0; c < num_char; c++) {
|
||||||
SetUnicodeGlyph(size, base_char + c, _cur_spriteid);
|
if (size < FS_END) SetUnicodeGlyph(size, base_char + c, _cur_spriteid);
|
||||||
_nfo_line++;
|
_nfo_line++;
|
||||||
LoadNextSprite(_cur_spriteid++, _file_index, _nfo_line);
|
LoadNextSprite(_cur_spriteid++, _file_index, _nfo_line);
|
||||||
}
|
}
|
||||||
|
|
|
@ -2949,8 +2949,8 @@ static VehicleEnterTileStatus VehicleEnter_Station(Vehicle *v, TileIndex tile, i
|
||||||
*/
|
*/
|
||||||
static bool StationHandleBigTick(BaseStation *st)
|
static bool StationHandleBigTick(BaseStation *st)
|
||||||
{
|
{
|
||||||
if (!st->IsInUse() && ++st->delete_ctr >= 8) {
|
if (!st->IsInUse()) {
|
||||||
delete st;
|
if (++st->delete_ctr >= 8) delete st;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -205,12 +205,17 @@ static CommandCost DoBuildLock(TileIndex tile, DiagDirection dir, DoCommandFlag
|
||||||
{
|
{
|
||||||
CommandCost cost(EXPENSES_CONSTRUCTION);
|
CommandCost cost(EXPENSES_CONSTRUCTION);
|
||||||
|
|
||||||
|
int delta = TileOffsByDiagDir(dir);
|
||||||
|
CommandCost ret = EnsureNoVehicleOnGround(tile);
|
||||||
|
if (ret.Succeeded()) ret = EnsureNoVehicleOnGround(tile + delta);
|
||||||
|
if (ret.Succeeded()) ret = EnsureNoVehicleOnGround(tile - delta);
|
||||||
|
if (ret.Failed()) return ret;
|
||||||
|
|
||||||
/* middle tile */
|
/* middle tile */
|
||||||
CommandCost ret = DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR);
|
ret = DoCommand(tile, 0, 0, flags, CMD_LANDSCAPE_CLEAR);
|
||||||
if (ret.Failed()) return ret;
|
if (ret.Failed()) return ret;
|
||||||
cost.AddCost(ret);
|
cost.AddCost(ret);
|
||||||
|
|
||||||
int delta = TileOffsByDiagDir(dir);
|
|
||||||
/* lower tile */
|
/* lower tile */
|
||||||
WaterClass wc_lower = IsWaterTile(tile - delta) ? GetWaterClass(tile - delta) : WATER_CLASS_CANAL;
|
WaterClass wc_lower = IsWaterTile(tile - delta) ? GetWaterClass(tile - delta) : WATER_CLASS_CANAL;
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue