Peter Nelson
9aa64b7885
Codechange: Use new widget features on chat message box.
2021-04-22 16:42:04 +01:00
Rubidium
bf4fe19a66
Codechange: merge duplicated logic to scroll in lists by key into a single function
2021-04-21 21:12:08 +02:00
Patric Stout
ce6a744278
Doc: server name doesn't need to be advertised to be valid
...
Strictly seen the comment is true, as it says 'e.g.', but it is
misleading. The server name is just that: the name of the server
as configured. No need to mention advertising.
2021-04-20 17:34:04 +02:00
Patric Stout
cd757d53ca
Codechange: remove always-empty "address" from NetworkContentSocketHandler
...
When ever you saw this debug lines (which you never should), they
showed an empty address. It is also not very useful to have, as it
always points to a known server anyway.
2021-04-20 17:34:04 +02:00
Patric Stout
31897eaa7d
Codechange: split ParseConnectionString into two functions
...
One also looks for a company, the other doesn't. There were more
uses of the latter than the first, leaving very weird code all
over the place.
2021-04-20 17:34:04 +02:00
Patric Stout
05612d60ae
Remove: "language" field from server/client
...
The original idea was that people could find a server they could
talk in their native language on. This isn't really used in that
way. There are several reasons for removing this:
- the client also sends his "language" to the server, but nothing
is doing anything with this.
- flags are a bad way to represent languages, and over the years
we had several (rightfully) complaints about this.
- most servers have their language set to "All", and prefix the
servername with the language it is about. This is a much more
efficient way to do the same.
All in all, this feature should go back to the drawing board.
Maybe it could work in another form, but this form is not it.
2021-04-20 17:24:38 +02:00
Patric Stout
f4bd3fff5e
Remove: "map_name" from server announcements / listing
...
The idea back in the days was nice, but it never resulted in
anything useful. Most servers either read "(loaded game)" or
"Random Map", neither being useful. It was meant for heightmaps,
so you could find a server that was using a specific one .. but
there are many things wrong with that idea. Mostly, servers tend
to save and load savegames from time to time, after which the
original heightmap used was lost.
All in all, removing map_name all together is just better.
2021-04-20 17:24:38 +02:00
Peter Nelson
3248a6c12b
Fix #9042 : Make multiplayer server list height auto-fill window.
...
#9042 did not fix all combinations of scaling options. This additional
change makes the server list automatically fill available height.
2021-04-17 22:23:43 +02:00
Peter Nelson
cb9f56df0c
Feature: Show previous chat history when the chat message box is open
2021-04-16 20:25:46 +02:00
Peter Nelson
fbef63822c
Codechange: Use std::deque for chat history instead of fixed array
2021-04-16 20:25:46 +02:00
Peter Nelson
837994034d
Fix: Sizing of Multiplayer server list incorrect when GUI zoom doesn't match Font zoom.
...
The server information panel was scaled by GUI scale, which could result in a panel that is longer than the server list. This height difference is then maintained when the window is resized to fill the screen.
Instead, specify the minimum size by number of text lines and (summed total) padding.
2021-04-16 20:24:08 +02:00
Rubidium
d2fe8c2842
Change: warn the user about the resolving of an address being extra very slow
2021-04-12 21:10:21 +02:00
Rubidium
7597740bff
Fix: split the UDP blocking of sockets to only the socket involved, and when another thread is busy do not attempt to process the packets of that socket
2021-04-12 21:10:21 +02:00
Rubidium
ca6b9ad8b0
Change: move some things only relevant to UDP from network.cpp to network_udp.cpp
2021-04-12 21:10:21 +02:00
Niels Martin Hansen
e0561dbded
Fix #8713 : Change OTTD2FS and FS2OTTD to return string objects instead of static buffers
2021-04-07 09:31:47 +02:00
Jonathan G Rennison
825867f2c5
Fix: [Network] State conditions for sending client info/quit packets ( #8959 )
...
Use status >= STATUS_AUTHORIZED as the state criteria for all cases
where updates about other clients are sent.
This avoids the case where a client is informed that another client
has joined but not informed when it later quits, resulting in
stale entries in the client list window.
2021-04-06 19:31:52 +01:00
Patric Stout
970fedd78c
Add: make modal windows update more smooth
...
Basically, modal windows had their own thread-locking for what
drawing was possible. This is a bit nonsense now we have a
game-thread. And it makes much more sense to do things like
NewGRFScan and GenerateWorld in the game-thread, and not in a
thread next to the game-thread.
This commit changes that: it removes the threads for NewGRFScan
and GenerateWorld, and just runs the code in the game-thread.
On regular intervals it allows the draw-thread to do a tick,
which gives a much smoother look and feel.
It does slow down NewGRFScan and GenerateWorld ever so slightly
as it spends more time on drawing. But the slowdown is not
measureable on my machines (with 700+ NewGRFs / 4kx4k map and
a Debug build).
Running without a game-thread means NewGRFScan and GenerateWorld
are now blocking.
2021-03-10 13:41:18 +01:00
Patric Stout
0243ae4654
Fix #8799 : NGameAllowedSorter() is not imposing strict weak ordering relation ( #8801 )
...
In other words, it should only (!) return true if A comes for B.
This promise was broken for the situation where two values are
identical. It would return true in these cases too. This is of
course not possible: if two values are identical, neither come
before the other. As such, the sorter was not imposing strict
weak ordering relations.
libstdc++ handled this scenario just fine, but libc++ crashes
badly on this, as it allowed comparing of [begin, end] instead
of [begin, end).
libc++ considered this not a bug (and by specs, they are correct;
just this way of crashing is of course a bit harsh):
https://bugs.llvm.org/show_bug.cgi?id=47903
2021-03-03 12:12:29 +00:00
dP
73fd634209
Fix #6266 : Ugly lists in network lobby windows on double/quad interface sizes with custom fonts
2021-02-28 17:43:30 +00:00
Patric Stout
13889b6554
Fix: [Network] don't show "server doesn't respond" while in queue
...
Send all clients in the queue every game-day a packet that they
are still in the queue.
2021-02-28 12:27:04 +01:00
Patric Stout
8d199b1bbc
Fix: [Network] send map to next client if current client disconnects
...
Also terminate creating of the savegame, as the client is gone,
there really is no need for that anymore.
2021-02-28 12:27:04 +01:00
Patric Stout
3677418225
Fix: [Network] also count the person downloading the map in the queue
...
Strictly seen, there are "N" people -waiting- in front of you
in the queue, but it is nicer to show "N + 1" for the person that
is currently downloading the map. Avoids it showing:
"0 clients in front of you". That just feels a bit off.
2021-02-28 12:27:04 +01:00
Pavel Stupnikov
4fd2eecb8b
Change: Improve console warnings on invalid network commands ( #8753 )
2021-02-27 20:26:51 +01:00
Patric Stout
53c28a8ec9
Codechange: [Network] replace _realtime_tick with std::chrono
2021-02-27 00:36:14 +01:00
Patric Stout
d068d61f3c
Fix bddfcaef: don't tell twice that a client left because of a timeout etc ( #8746 )
...
SendError() notifies all clients of the disconnect. This calls
CloseConnection() at the end, which also notified the clients
of the disconnect. Really no need to do it twice.
The status NETWORK_RECV_STATUS_SERVER_ERROR is only set by
SendError(), so in case that is the status, don't let
ClientConnection() send another notification.
2021-02-27 00:32:51 +01:00
frosch
d9b4413bc9
Codechange: rename sound ids to make more sense. ( #8701 )
2021-02-20 19:01:04 +01:00
Patric Stout
ac2b5e57cf
Fix: mention our websites with https:// (instead of http://) ( #8657 )
...
It is 2021. Nobody should advertise http anymore. Not even us.
2021-02-08 19:07:34 +01:00
SamuXarick
a4035af337
Codechange: Apply coding style ( #8640 )
...
* Fix: Missing or needed spaces
* Codechange: Remove space
* Codechange: Remove space
* Codechange: More missing spaces
* Codechange: Missing spaces
* Codechange: Remove space
* Codechange: Remove space
2021-02-05 11:00:36 +01:00
Patric Stout
7fbf705c41
Fix 2db88953: default Network Server List sorter put compatible servers in wrong order ( #8626 )
...
If a server is compatible, it falls back to sorting by clients.
This used to be in reverse, so full servers are on top. With
the codechange commit, this was removed by accident, and as
such empty servers were on top. This is silly.
2021-01-31 10:36:07 +01:00
glx22
6b8ad5a9b1
Change: Apply some consistency to singleplayer related comments
2021-01-22 22:19:55 +01:00
frosch
31d1968004
Fix: Start the inactivity-timeout for the content server only after the connection has been established. ( #8530 )
...
When connecting took long due to the first N resolve-addresses timing out, OpenTTD would immediately close the connection, without sending anything.
2021-01-08 20:20:54 +01:00
Charles Pigott
9b800a96ed
Codechange: Remove min/max functions in favour of STL variants ( #8502 )
2021-01-08 11:16:18 +01:00
Patric Stout
62cdadb582
Change: move "give money" from client-list to company window
...
This is a much better location for this button, as you send
money from one company to another company, not from player
to player.
This is based on work done by JGRPP in:
f820543391
and surrounding commits, which took the work from estys:
https://www.tt-forums.net/viewtopic.php?p=1183311#p1183311
We did modify it to fix several bugs and clean up the code while
here anyway.
The callback was removed, as it meant a modified client could
prevent anyone from seeing money was transfered. The message
is now generated in the command itself, making that impossible.
2021-01-05 21:56:24 +01:00
Patric Stout
c288eba813
Fix: prevent clients making emergency saves twice if server disconnects ( #8477 )
...
This was clearly overlooked during the initial implementation.
2021-01-02 20:34:55 +01:00
Charles Pigott
e0161cf8da
Fix b408fe7: Don't try to construct a std::string from nullptr
2020-12-27 18:30:53 +00:00
Michael Lutz
5cbb2da794
Codechange: Even more std::string usage in file IO.
2020-12-27 13:19:25 +01:00
Michael Lutz
65f65ad2ad
Codechange: Convert some more FIO functions to take std::string.
2020-12-27 13:19:25 +01:00
Michael Lutz
f3326d34e7
Codechange: Use std::string in FIO search path handling.
2020-12-27 13:19:25 +01:00
Charles Pigott
860c270c73
Codechange: Replace assert_compile macro with static_assert
2020-12-27 10:55:42 +00:00
frosch
ba49fa3b82
Codechange: Rename strings to match their usage.
2020-12-25 00:40:35 +01:00
frosch
2bb691f50e
Change: Remove the LAN/Internet combobox from the server list in favour of adding two separate search buttons.
2020-12-25 00:40:35 +01:00
Jonathan G Rennison
0c5dc5d41e
Change: [Linkgraph] Pause the game when linkgraph jobs lag ( #6470 )
...
Check if the job is still running two date fract ticks before it is due
to join, and if so pause the game until its done.
When loading a game, check if the game would block immediately due to
a job which is scheduled to be joined within two date fract ticks,
and if so pause the game until its done.
This avoids the main thread being blocked on a thread join, which appears
to the user as if the game is unresponsive, as the UI does not repaint
and cannot be interacted with.
Show if pause is due to link graph job in status bar, update network
messages.
This does not apply for network clients.
2020-12-22 15:17:57 +01:00
Pavel Stupnikov
d989fb516b
Change: send network error to the server before making an emergency save ( #8387 )
2020-12-16 21:23:12 +01:00
Byoungchan Lee
0471de2d92
Fix: Remove unnessary reference to suppress warning ( #8337 )
...
Apple Clang version 12 (bundled with Xcode 12) complaints about copying
small objects in range loop (-Wrange-loop-analysis introduced by -Wall).
This warning can be easily avoided by removing the reference from
the const pointer type.
2020-12-15 22:39:51 +01:00
Patric Stout
8fbf5bef60
Fix: workarounds for two emscripten bugs in the network stack
2020-12-15 15:46:39 +01:00
Patric Stout
d15dc9f40f
Add: support for emscripten (play-OpenTTD-in-the-browser)
...
Emscripten compiles to WASM, which can be loaded via
HTML / JavaScript. This allows you to play OpenTTD inside a
browser.
Co-authored-by: milek7 <me@milek7.pl>
2020-12-15 15:46:39 +01:00
Jonathan G Rennison
053d4f3bff
Fix: Thread unsafe use of SendPacket for PACKET_SERVER_MAP_SIZE
...
NetworkTCPSocketHandler::SendPacket is not thread safe and may not
be used concurrently from multiple threads without suitable locking
2020-07-09 16:08:01 +01:00
duck
1bc7047af7
Doc: Acknowledge integer type mismatch in certain admin packets using AdminUpdateType ( #8238 )
2020-06-27 18:21:17 +02:00
Charles Pigott
224acb78b0
Fix: Compiler warnings about memsetting non-trivial classes
2020-06-27 14:51:14 +01:00
Jonathan G Rennison
1ac0d4a5b2
Fix: Thread unsafe use of NetworkAddress::GetAddressAsString
...
Remove static buffer form of NetworkAddress::GetAddressAsString.
This is used in multiple threads concurrently, and is not thread-safe.
Replace it with a form returning std::string.
2020-06-21 11:47:56 +01:00
Jonathan G Rennison
b0f192abc4
Fix: Racy use of flags in TCPConnecter::CheckCallbacks
...
conected and aborted flags are used concurrently from multiple threads.
2020-06-18 19:57:34 +02:00
Patric Stout
56d54cf60e
Add: introduce CMake for project management
...
CMake works on all our supported platforms, like MSVC, Mingw, GCC,
Clang, and many more. It allows for a single way of doing things,
so no longer we need shell scripts and vbs scripts to work on all
our supported platforms.
Additionally, CMake allows to generate project files for like MSVC,
KDevelop, etc.
This heavily reduces the lines of code we need to support multiple
platforms from a project perspective.
Addtiionally, this heavily improves our detection of libraries, etc.
2020-06-05 19:36:05 +02:00
Yexo
a9b3312d1a
Fix #8024 : make online content gui more responsive while loading
...
Previously the internal content list was invalidated and sorted for
every new item added. Now the sorting is delayed until the GUI is
drawn, which means we only sort once per GUI tick.
Since the amount of incoming items per GUI tick is not controlled by
the GUI but rather by network speed, we were previously doing a lot
of duplicate work per tick, causing the mouse cursor to lag while
the list was initialized.
2020-06-01 10:59:11 +02:00
Michael Lutz
43cd892e0c
Codechange: Replace custom linked list for GRF texts with STL vectors and strings.
2020-05-21 20:02:34 +02:00
glx22
82573a5e73
Fix #8117 : Memory leak in admin port ( #8122 )
2020-05-07 02:00:53 +02:00
frosch
7fe291667f
Fix #8060 , 5880f14: Restore admin network API compatibility.
2020-04-05 18:36:21 +01:00
Quipyowert2
d1b7eb2de1
Codechange: Limit field width to avoid sscanf crash
2020-02-23 19:04:34 +00:00
glx
2b1a7ceb4e
Fix #7976 : Don't kick the client doing the rcon
2020-02-08 09:03:14 +01:00
Bjarni Thor
5880f1479f
Feature #7756 : Allow server to supply a reason to kicked/banned clients
...
This commit adds the missing feature of allowing the server owner to
provide a reason for kicking/banning a client, which the client sees in
a pop-up window after being kicked. The implementation extends the
network protocol by adding a new network action called
NETWORK_ACTION_KICKED that is capable of having an error string, unlike
the other network error packages. Additionally, the kick function
broadcasts a message to all clients about the kicked client and the
reason for the kick.
2020-02-04 22:17:39 +00:00
Berbe
2fc2058b3b
Feature: Auto-restart loads the original resources again
...
If the game was started loading a savegame or scenario, auto-restart will load a new random map.
This is inconsistent with the case in which a heightmap was loaded, as in that case the heightmap is kept as a basis for a new game.
This proposal solves this heterogeneity be considering the originally loaded resource shall be kept, hence savegames & scenarios shall be reloaded
2020-01-12 23:47:19 +01:00
Jonathan G Rennison
150dfba95b
Codechange: Remove std::function from Pool iteration wrapper
...
Add a separate template wrapper for filtered iteration
2020-01-07 09:00:45 +00:00
glx
e3c75a30ba
Fix: unused variable warnings
2019-12-21 20:13:03 +01:00
glx
ee7a8eebca
Codechange: Replace FOR_ALL_TOWNS with range-based for loops
2019-12-21 20:13:03 +01:00
glx
d8a1be48cd
Codechange: Replace vehicle related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
41232f18c1
Codechange: Replace network related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
ddabfed1cd
Codechange: Replace station related FOR_ALL with range-based for loops
2019-12-21 20:13:03 +01:00
glx
3a14cea068
Codechange: Replace FOR_ALL_COMPANIES with range-based for loops
2019-12-21 20:13:03 +01:00
S. D. Cloudt
13cc8a0cee
Cleanup: Removed SVN headers
2019-11-10 17:59:20 +00:00
Joe Stringer
b4f1056097
Fix: [Cygwin] Fix missing AI_ADDRCONFIG declaration
...
Fixes the following complaints:
src/network/core/address.cpp: In member function 'const sockaddr_storage* NetworkAddress::GetAddress()':
src/network/core/address.cpp:134:55: error: 'AI_ADDRCONFIG' was not declared in this scope
this->Resolve(this->address.ss_family, SOCK_STREAM, AI_ADDRCONFIG, nullptr, ResolveLoopProc);
Signed-off-by: Joe Stringer <joe@wand.net.nz>
2019-10-07 21:36:00 +02:00
Charles Pigott
fe9731d32c
Fix: clang and MSVC warnings (glx)
2019-09-30 14:00:06 +01:00
Charles Pigott
71a3e83468
Fix: GCC9's warnings about deprecated implicit assignment operators
2019-09-30 14:00:06 +01:00
JMcKiern
04f659e768
Fix: Some typos found using codespell
2019-09-29 21:27:32 +01:00
glx
212140b88b
Codechange: replace grow() usage in ClientNetworkContentSocketHandler::OnReceiveData()
2019-05-04 19:50:53 +01:00
Charles Pigott
5b34c8019f
Codechange: Remove Company/OwnerByte types
2019-04-29 17:40:22 +01:00
PeterN
0ab6244f6b
Fix #7165 : Missed another 'Append() --> push_back()' replacement ( #7548 )
2019-04-27 20:47:32 +01:00
Niels Martin Hansen
d5841109f0
Fix dcb2571: Missing override keywords
2019-04-25 17:45:00 +02:00
Niels Martin Hansen
a64bd6e22c
Fix: Also breaking for warning text in set company password
2019-04-24 17:40:11 +02:00
Niels Martin Hansen
dcb2571888
Add: Warn players that company passwords are not truly secure
2019-04-24 17:40:11 +02:00
glx
8899272614
Codechange: use std::vector for _language_dropdown
2019-04-18 21:49:34 +02:00
glx
2db88953e7
Codechange: use std::sort() in GUIList
2019-04-13 12:49:18 +01:00
Henry Wilson
7c8e7c6b6e
Codechange: Use null pointer literal instead of the NULL macro
2019-04-10 23:22:20 +02:00
Jonathan G Rennison
01f957c51f
Fix: Crash due to use of invalid iterator in ClientNetworkContentSocketHandler
...
In particular this crash can be observed when using the
bootstrap GUI to download the base graphics.
In ClientNetworkContentSocketHandler::OnReceiveContentInfo
ClientNetworkContentSocketHandler::callbacks is iterated, using an iterator
cb->OnReceiveContentInfo() is called (cb is of type BootstrapAskForDownloadWindow)
This calls new BootstrapContentDownloadStatusWindow()
This inherits from BaseNetworkContentDownloadStatusWindow
The constructor of which calls _network_content_client.AddCallback(this)
This reallocates the std::vector which is being iterated in ClientNetworkContentSocketHandler::OnReceiveContentInfo
This results in iter being invalid, and an assertion failure occurs shortly
afterwards due to its use in the next iteration of cb->OnReceiveContentInfo()
Adjust all locations where ClientNetworkContentSocketHandler::callbacks
is iterated to avoid problematic behaviour
2019-04-09 22:56:23 +02:00
Michael Lutz
8b1880187a
Remove: AutoFreeSmallVector.
...
The last use was for storing a list of memory blocks. As the way these lists are accessed is very
specific, it is easier to just write an explicit destructor instead of trying to exactly match the behaviour.
2019-04-09 22:45:15 +02:00
Michael Lutz
e804173595
Codechange: If something is a vector of strings, use a vector of strings instead of an AutoFreeSmallVector.
2019-04-09 22:45:15 +02:00
Michael Lutz
ae748166d0
Codechange: Use platform independent C++11 function for sleeping on a thread.
2019-04-06 11:27:39 +02:00
Michael Lutz
94c5269fa7
Codechange: Use atomic variables for thread synchronization where useful.
2019-04-06 11:27:39 +02:00
Michael Lutz
05bc2ed7cb
Codechange: Replace custom thread code with C++11 thread objects.
...
We assume a conforming C++11 compiler environment that has a valid <thread>-header.
Failure to run a real thread is handled gracefully.
2019-04-06 11:27:39 +02:00
Michael Lutz
05f4e73608
Codechange: Replace custom mutex code with C++11 mutex'es.
...
A conforming compiler with a valid <mutex>-header is expected.
Most parts of the code assume that locking a mutex will never fail unexpectedly,
which is generally true on all common platforms that don't just pretend to
be C++11. The use of condition variables in driver code is checked.
2019-04-06 11:27:39 +02:00
glx22
a1e492d0d8
Fix #7439 : don't overwrite CompanyRemoveReason with ClientID ( #7465 )
2019-04-05 15:11:52 +02:00
PeterN
9244dad3f1
Fix #7434 : Incorrect use of vector iterator. ( #7437 )
2019-03-29 17:42:32 +00:00
glx22
66dd7c3879
Fix: MSVC warnings ( #7423 )
2019-03-28 00:09:33 +01:00
stormcone
b913c92aa7
Fix #7165 : Missed 'Append() --> push_back()' replacement
2019-03-26 22:20:56 +00:00
Henry Wilson
cc62f4163f
Cleanup: Remove unused size template parameters from SmallMap and Auto[Free|Delete]SmallVector
2019-03-26 20:15:57 +00:00
Henry Wilson
c01a2e2a81
Codechange: Removed SmallVector completely
2019-03-26 20:15:57 +00:00
Henry Wilson
ab711e6942
Codechange: Replaced SmallVector::[Begin|End]() with std alternatives
2019-03-26 20:15:57 +00:00
Henry Wilson
297fd3dda3
Codechange: Replaced SmallVector::Include() with include()
2019-03-26 20:15:57 +00:00
Henry Wilson
2bc2de9034
Codechange: Replaced SmallVector::Find() with std::find()
2019-03-26 20:15:57 +00:00
Henry Wilson
a0f36a50e6
Codechange: Replaced SmallVector::Append() with std::vector::[push|emplace]_back()
2019-03-26 20:15:57 +00:00
Henry Wilson
ca2f33c6d0
Codechange: Replaced SmallVector::Erase() with std::vector::erase()
2019-03-26 20:15:57 +00:00
Henry Wilson
097328c3d7
Codechange: Replaced SmallVector::Get() const with std alternatives
2019-03-26 20:15:57 +00:00
Henry Wilson
5795f66d2e
Codechange: Replaced SmallVector::Contains() with std::find() pattern
2019-03-26 20:15:57 +00:00
Henry Wilson
8460952240
Codechange: Replaced SmallVector::Find() const with suitable alternatives
...
The use of std::none_of in network/core/host.cpp is driven by the non-const
comparison operator use by NetworkAddress. A future commit should address
the const_casts in that class to ensure const-correctness.
2019-03-26 20:15:57 +00:00
Henry Wilson
81315939b9
Codechange: Replaced SmallVector::Find() non-const with std::find()
2019-03-26 20:15:57 +00:00
Henry Wilson
f3938fdb83
Codechange: Replaced SmallVector::Reset() with std::vector::clear() + shrink_to_fit()
2019-03-26 20:15:57 +00:00
Henry Wilson
a690936ed7
Codechange: Replace SmallVector::Length() with std::vector::size()
2019-03-26 20:15:57 +00:00
Henry Wilson
9cba6f7193
Codechange: Replaced SmallVector::Compact() with std::vector::shrink_to_fit()
2019-03-26 20:15:57 +00:00
Henry Wilson
bfd79e59dc
Codechange: Replace SmallVector::Clear() with std::vector::clear()
2019-03-26 20:15:57 +00:00
peter1138
07de9d6c3f
Codechange: Use override keyword in networking classes.
2019-03-24 17:38:42 +00:00
peter1138
317f69c152
Codechange: Use override specifier in Window-derived classes.
2019-03-24 16:10:04 +01:00
Henry Wilson
af7d9020a1
Codechange: Use override specifer for overriding member declarations
...
This is a C++11 feature that allows the compiler to check that a virtual
member declaration overrides a base-class member with the same signature.
Also src/blitter/32bpp_anim_sse4.hpp +38 is no longer erroneously marked
as virtual despite being a template.
2019-03-24 16:10:04 +01:00
Patric Stout
e3c639a09f
Remove: ENABLE_NETWORK switch
...
This switch has been a pain for years. Often disabling broke
compilation, as no developer compiles OpenTTD without, neither do
any of our official binaries.
Additionaly, it has grown so hugely in our codebase, that it
clearly shows that the current solution was a poor one. 350+
instances of "#ifdef ENABLE_NETWORK" were in the code, of which
only ~30 in the networking code itself. The rest were all around
the code to do the right thing, from GUI to NewGRF.
A more proper solution would be to stub all the functions, and
make sure the rest of the code can simply assume network is
available. This was also partially done, and most variables were
correct if networking was disabled. Despite that, often the #ifdefs
were still used.
With the recent removal of DOS, there is also no platform anymore
which we support where networking isn't working out-of-the-box.
All in all, it is time to remove the ENABLE_NETWORK switch. No
replacement is planned, but if you feel we really need this option,
we welcome any Pull Request which implements this in a way that
doesn't crawl through the code like this diff shows we used to.
2019-03-20 19:24:55 +01:00
SamuXarick
cdb6dbad85
Cleanup: Remove repeated network error message on connection timeout. ( #7327 )
2019-03-07 18:16:52 +00:00
Patric Stout
1c5ea33099
Fix: warnings when compiling for a recent version of Haiku
...
This might break older Haiku versions, but it is hard to tell.
2019-03-05 22:22:00 +01:00
Patric Stout
f58db44ff2
Remove: BeOS support (deprecated by Haiku)
...
In 10 years there is no commit to change how BeOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).
With the arrival of SDL2 (and removal of SDL), BeOS is no longer
support. SDL2 suggests to use Haiku instead of BeOS.
2019-03-05 22:03:00 +01:00
Patric Stout
7784d77713
Remove: MorphOS / AmigaOS support
...
In 10 years there is no commit to change how MorphOS works, and we
have no active maintainer for it. It is unlikely it works in its
current state (but not impossible).
With the arrival of SDL2 (and removal of SDL), MorphOS is no longer
support. There is an SDL2 port for MorphOS, but it is not maintained
by upstream SDL2, and nobody can currently test it out.
If anyone wants to re-add MorphOS, please do (revert this patch,
fix the problems, and create a Pull Request). If you need any help
doing so, let us know! It is not that we don't like MorphOS, it is
that we don't have anyone fixing the problems :(
2019-03-05 22:03:00 +01:00
Niels Martin Hansen
c61acc7fc1
Fix #7280 : Save in the right location on desync and server timeout
2019-03-03 12:12:32 +01:00
glx
7c31a32c2b
Fix: colour of network specific strings in company dropdown menus
2019-02-16 22:19:16 +01:00
Niels Martin Hansen
830ed6be61
Fix: Do not mangle tagged revision strings for network revision strings
2019-02-12 21:32:43 +00:00
Thomas den Hollander
412e6132b6
Fix: CompanyEconomy documentation
...
Company income was described as an unsigned integer, but it should be signed.
2019-02-12 19:26:21 +00:00
Niels Martin Hansen
db2c0ccae0
Fix fdc2e85: Double close of file handles
...
When unpacking downloaded content, the downloaded .gz file was being opened with `fopen`, the OS file handle given to zlib, and then afterwards zlib told to close the file.
But the `FILE *` object was never closed with `fclose`, meaning the stdio library would have a hanging file object, whose file handle was now invalid or referred to a different file. This caused asserts during shutdown with Microsoft's C library in debug mode.
Fix this by properly duplicating the OS handle and `fclose`ing the `FILE *` object, before giving the handle to zlib.
2019-02-06 21:09:02 +01:00
glx
8e7fe3973f
Add: CompanyCtrlAction enum for CMD_COMPANY_CTRL actions
2019-02-04 21:08:36 +01:00
Niels Martin Hansen
5f8354f358
Change: Make a shortened network revision string for use in server queries
2019-02-03 18:00:16 +01:00
Niels Martin Hansen
c511b0e801
Change: Increase NETWORK_REVISION_LENGTH to 33 bytes
2019-02-03 18:00:16 +01:00
glx
b22fbfbe3d
Add: allow opening of one TextfileWindow per type
2019-01-28 23:43:18 +00:00
Charles Pigott
fe8c24e081
Codechange: Remove unnecessarily defined functions under MinGW
2019-01-17 21:55:15 +00:00
PeterN
5ff0c24993
Fix #6780 : Some windows didn't get updated from OnTick() ( #7048 )
2019-01-12 23:23:23 +00:00
glx
c540d72445
Fix: [Win32] WIN32 may not be defined, always prefer the compiler predefined macro _WIN32
2018-12-27 18:09:16 +01:00
Charles Pigott
f5b1115039
Doc: Lots and lots of doxymentation fixes
2018-10-31 12:35:54 +01:00
Niels Martin Hansen
4fb76db42f
Feature #986 : Automatic save when losing connection to a network game
2018-06-23 15:22:31 +02:00
J0an Josep
cfb8092397
Fix b4b98e5165: Use FALLTHROUGH attribute with correct indentation.
2018-04-30 21:52:40 +02:00
Matthijs Kooijman
fa87212a76
Fix: Some spelling errors in printed messages
2018-04-30 13:38:58 +02:00
Patric Stout
85adde7485
Remove: PSP support
2018-04-29 15:32:16 +02:00
frosch
b4b98e5165
(svn r27893) -Codechange: Use fallthrough attribute. (LordAro)
2017-08-13 18:38:42 +00:00
peter1138
ed01e81c42
(svn r27794) -Fix [FS#6526]: Chat text background overflowed due to missing padding.
2017-03-14 00:57:52 +00:00
frosch
ec9a920aab
(svn r27729) -Codechange: Do not count static NewGRF when checking for the maximum number of NewGRFs in a game.
...
-Codechange: Remove LAST_GRF_SLOT and MAX_NEWGRFS. Now NETWORK_MAX_GRF_COUNT is the only constant to specify the maximum number of non-static NewGRF.
-Codechange: Increase the number of file slots, effectively increasing the maximum number of static NewGRF and baseset GRFs.
2017-01-14 13:12:49 +00:00
frosch
31f046bd9b
(svn r27670) -Add: [FS#6471] Assign descriptive names to (GNU pthread) threads. (JGR)
2016-10-30 17:29:33 +00:00
alberth
0adfb1ac6f
(svn r27653) -Fix(r27647): Rename FileOperation enum and values to SaveLoadOperation to avoid nameclash with windows compiler toolkit.
2016-09-04 16:06:50 +00:00
alberth
597380e099
(svn r27650) -Codechange: Replace SaveOrLoadMode by FileOperation and DetailedFileType.
2016-09-04 12:57:43 +00:00
alberth
88bdf482c0
(svn r27648) -Codechange: Remove remaining _saveload_mode usage.
2016-09-04 12:56:56 +00:00
frosch
8084f39bf3
(svn r27577) -Fix [FS#6386]: Dock and roadstop picker, client list and town authority window did not auto-resize according to their content when they were positioned at the bottom of the screen. (Eearslya)
2016-05-22 10:52:02 +00:00
frosch
4fc43b510d
(svn r27576) -Fix (r27570): Compilation failure with all compilers but mine.
2016-05-22 10:45:46 +00:00
frosch
9aa33862a7
(svn r27571) -Codechange: Consistent naming for command callbacks which play a sound effect.
2016-05-22 10:07:48 +00:00
frosch
97e6981e39
(svn r27570) -Fix [FS#6449]: Various incorrect but uncritical size computations in the content client.
2016-05-22 10:04:41 +00:00
zuu
b22d6715cd
(svn r27469) -Fix (r27468): Don't fetch all content info from content server when showing a online content window with exactly one type of content.
2015-12-10 19:58:33 +00:00
zuu
aabc46712a
(svn r27468) -Fix (r27444): Game Scripts were not displayed in the content download window when opened from the AI/GS settings window.
2015-12-10 18:28:01 +00:00
zuu
c9f1d82345
(svn r27444) -Add: When viewing online content of a particular type, hide content of other types unless they have been (auto)selected for download.
2015-11-14 15:57:15 +00:00
zuu
4fcaee1fee
(svn r27443) -Fix: Negoation in comment was wrong.
2015-11-14 13:06:26 +00:00
frosch
2c9117fbdd
(svn r27421) -Fix [FS#6265]: Consider text and icon sizes when drawing the client list. (_dp_)
2015-10-30 16:19:33 +00:00
rubidium
ff5c05c1b4
(svn r27400) -Fix [FS#6368] (r26449): when a dedicated server was paused with no clients the tick length was increased significantly, making any assumptions about the tick length used further down in the code are not true anymore. One of such assumptions was that one should readvertise every 15 minutes worth of original ticks, but due to the lengthening this timeframe would be more like 45-60 minutes. Now we'll take the operating system's millisecond counter instead
2015-09-19 16:49:46 +00:00
frosch
fc50ff6531
(svn r27304) -Fix [FS#6321-ish]: Improve password window layout for big font sizes.
2015-06-20 12:30:10 +00:00
michi_cc
95cb7c8692
(svn r27288) -Fix: Slow network content GUI in MSVC Debug builds due to repeated string resolving.
2015-05-17 19:49:35 +00:00
frosch
e113f5e4a1
(svn r27146) -Fix: Make statusbar and chat-entry window use the same width as the toolbar. Otherwise they lack a size definition.
2015-02-13 21:13:45 +00:00
frosch
2f7de4fd99
(svn r27144) -Change: The chatbox-width setting now uses percent of screen width instead of pixels.
2015-02-12 20:00:23 +00:00
frosch
396dde1636
(svn r27092) -Fix/Add [FS#6186]: Compilation on OS/2 (smedles)
2014-12-24 17:17:18 +00:00
rubidium
d534c80e94
(svn r27020) -Cleanup: some coding style consistency improvements (mostly spaces)
2014-10-15 18:31:37 +00:00
rubidium
f28ff446e9
(svn r26975) -Fix: reading too many bits when determining the client index for desync debug message
2014-10-07 17:32:29 +00:00
peter1138
0877f892c5
(svn r26960) -Codechange: Draw sort button symbols as sprites, and pad sort buttons with non-static width.
2014-10-05 11:20:02 +00:00
peter1138
59076ee32b
(svn r26923) -Codechange: Make multiplayer lobby fit to icon size.
2014-09-26 16:05:42 +00:00
peter1138
d9179d518e
(svn r26921) -Codechange: Adjust content window listing to fit icon size.
2014-09-25 19:27:07 +00:00
frosch
e2f5081f40
(svn r26788) -Add: Desync replay option to skip/replay failed commands
2014-09-07 14:21:16 +00:00
frosch
937265d6d6
(svn r26786) -Fix: Also replay failed commands.
2014-09-07 13:36:18 +00:00
planetmaker
105306609f
(svn r26616) -Fix (r26576) [FS#6025]: First send packages about new company, then clients joining it to admin port (Taede)
2014-05-25 19:01:30 +00:00
rubidium
e64249446d
(svn r26577) -Fix [FS#6001]: [Network] Client of non-dedicated server was not correctly put into the first company for all state variables
2014-05-11 13:07:36 +00:00
rubidium
4a52300838
(svn r26576) -Fix [FS#6003]: [Network] AIs would not reset certain network state information upon creation of their company
2014-05-11 12:52:21 +00:00
rubidium
b476086c39
(svn r26538) -Codechange: remove double accounting of the drivers
2014-04-28 21:06:51 +00:00
rubidium
9ed12b0f07
(svn r26509) -Codechange: replace strdup with stredup (the latter ensures the return is not NULL)
2014-04-25 15:40:32 +00:00
rubidium
e61fe21237
(svn r26506) -Codechange: replace most of vsnprintf with vseprintf
2014-04-24 19:51:45 +00:00
rubidium
21f991e235
(svn r26489) -Codechange: properly account for the end of buffers in the file io code instead of assuming MAX_PATH is okay
2014-04-23 21:23:21 +00:00
rubidium
160ad31028
(svn r26488) -Codechange: perform the appropriate length checks when getting a client name
2014-04-23 21:19:54 +00:00
rubidium
5b82822c12
(svn r26486) -Codechange: replace a number of snprintfs with seprintf
2014-04-23 21:12:09 +00:00
frosch
ef4c2ce031
(svn r26485) -Codechange: Replace ttd_strlcpy and ttd_strlcat with strecpy and strecat.
2014-04-23 20:44:42 +00:00
rubidium
0463dbdc9e
(svn r26482) -Codechange: add an include that allows us to undefine/redefine "unsafe" functions to prevent them from being used, and thus having to care about certain aspects of their return values
2014-04-23 20:13:33 +00:00
planetmaker
3e9c10f9e1
(svn r26449) -Add: Allow more sound sleep for dedicated servers when there's nothing to do and nobody paying attention
2014-04-08 20:19:41 +00:00
frosch
c6ce57e8a7
(svn r26370) -Doc: Desync debugging and command replaying.
2014-02-23 19:32:32 +00:00
rubidium
2618d960e3
(svn r26209) -Codechange: remove some template magic and simplify some code
2014-01-02 22:41:58 +00:00
frosch
62c0d42f92
(svn r26167) -Fix [FS#5834]: Certain hotkeys crashed the content GUI when the list was empty.
2013-12-20 18:29:53 +00:00
rubidium
b3e93d6520
(svn r26057) -Fix: a number of possibly uninitialised variables
2013-11-23 13:12:19 +00:00
rubidium
2e54c8fdfa
(svn r26056) -Fix: a number of possibly uninitialised variables
2013-11-22 21:50:43 +00:00
rubidium
bdd62a4b3e
(svn r26055) -Codechange: mark switch default as really not triggerable, as technically it's dead code
2013-11-22 21:47:03 +00:00
rubidium
ed4e14dc20
(svn r26047) -Fix: possible, but very unlikely, null pointer dereference when gunziping just downloaded files
2013-11-22 21:41:49 +00:00
rubidium
fad4fa09ba
(svn r26046) -Fix: handle a number of failure conditions from methods called in the network code
2013-11-22 21:41:19 +00:00
rubidium
1a043202d1
(svn r26043) -Fix [FS#5811]: occasional hanging when client joins
2013-11-21 18:35:31 +00:00
rubidium
18a3a569fb
(svn r26005) -Fix [FS#5478]: crash when transferring savegame from server to client
2013-11-15 22:22:01 +00:00
rubidium
c40f281545
(svn r25997) -Codechange: make it slightly more clear what ports are coming from where in the debug output when listening
2013-11-14 19:31:10 +00:00
planetmaker
189dd2dcce
(svn r25845) -Add [FS#5756]: [Admin] Send info on bankruptcy quarters also in ADMIN_PACKET_SERVER_COMPANY_INFO (zydeco)
2013-10-12 17:03:15 +00:00
rubidium
7adc453473
(svn r25770) -Fix [Admin]: the frame of a command packet wasn't set for the packets that were sent via de admin interface
2013-09-14 11:34:09 +00:00
michi_cc
b911f4a452
(svn r25668) -Codechange: Pass proper Unicode UCS-4 characters instead of just UCS-2 to the window key press handlers.
2013-08-05 20:36:24 +00:00
rubidium
5eac3a77d2
(svn r25597) -Fix [FS#5635]: [Content] When the server closed the connection, the client would for eternity try to read a packet and never timeout making it impossible to reconnect
2013-07-13 09:26:11 +00:00
rubidium
e6ae8cf420
(svn r25593) -Cleanup: remove a few stale #defines
2013-07-13 06:18:16 +00:00
planetmaker
bb7f08f8db
(svn r25590) -Codechange: Align doxygen comments again
2013-07-12 17:15:13 +00:00
planetmaker
2e390613a6
(svn r25589) -Fix [FS#5646]: Ensure that sent and received length of json strings are the same (based on patch by Xaroth)
2013-07-12 17:11:16 +00:00
planetmaker
7686587f02
(svn r25588) -Feature [FS#5643]: PING and PONG packets for admin port (Xaroth)
2013-07-11 20:31:39 +00:00
planetmaker
4a1bf704ee
(svn r25587) -Add FS#5643: Conclude rcon output sent to admin clients with an RCON_END packet (Xaroth)
2013-07-11 19:57:40 +00:00
rubidium
51f0d11ee3
(svn r25573) -Change: make content list appear faster by allowing some window redraws in between
2013-07-07 10:37:16 +00:00
frosch
43ec0bf0c1
(svn r25537) -Codechange: Optionally make WWT_MATRIX compute the number of rows and columns from the resize step size.
2013-06-30 14:36:31 +00:00
frosch
df732f2bae
(svn r25534) -Codechange: FinishInitNested calls OnResize, no need to setup scrollbar capacity before that.
2013-06-30 14:34:23 +00:00
frosch
98fdd20f84
(svn r25531) -Codechange: Use separate function to set data of WWT_MATRIX widgets.
2013-06-30 14:32:31 +00:00
rubidium
ed36aa0458
(svn r25452) -Codechange: let the chat messages be drawn like the console messages; drawing complete multiline strings from the bottom, instead of manually breaking the strings and drawing those
2013-06-23 20:44:18 +00:00
frosch
4e4e635916
(svn r25294) -Feature: Add another button to window title bars to resize the window to its default size.
2013-05-26 19:30:07 +00:00
frosch
8157a8afd8
(svn r25290) -Add: Assign string names to notable windows.
2013-05-26 19:25:01 +00:00
frosch
56e4a8c4d6
(svn r25287) -Codechange: Keep a reference to the WindowDesc in the Window after construction.
2013-05-26 19:23:42 +00:00
planetmaker
7e4f68d275
(svn r25253) -Codechange: Rename the strings of the advertisement settings to better reflect what they do
2013-05-19 09:07:43 +00:00
frosch
579ee7a592
(svn r25089) -Codechange: Move CharSetFilter from QueryString to Textbuf.
2013-03-17 13:04:10 +00:00
frosch
1b10910af6
(svn r25024) -Feature: Searching of (missing) content via GrfCrawler.
2013-02-18 19:30:24 +00:00
frosch
41cc06a83c
(svn r25023) -Change: Regroup buttons in content download GUI to put item-specifc stuff next to each other.
2013-02-18 19:23:09 +00:00
frosch
3e02890b73
(svn r24983) -Change: Apply the same name sorting rules to content and NewGRF list as for the server list.
2013-02-09 17:31:07 +00:00
planetmaker
c24374f99c
(svn r24900) -Fix [FS#5389]: Comments with typos (most fixes supplied by Eagle_rainbow)
2013-01-08 22:46:42 +00:00
frosch
b533523258
(svn r24801) -Codechange: Add functions to set integral DParams to suitable values for size computations.
2012-12-08 17:18:51 +00:00
alberth
732e073261
(svn r24776) -Doc: Typo fixes, additions, and additional dots collected from various sources (including Eagle_rainbow, MinchinWeb)
2012-12-01 13:12:39 +00:00
frosch
4e8f3f7a99
(svn r24770) -Fix-ish: Calling GUIList::Sort repeatedly has no use without GUIList::NeedResort since the latter has the sideeffects.
2012-11-27 21:54:11 +00:00
frosch
507de921c2
(svn r24769) -Feature [FS#3852]: Add a string filter to the server list. (Eagle_rainbow)
2012-11-27 21:35:52 +00:00
frosch
b884195400
(svn r24768) -Fix: Adjust a comment to reflect some more truth.
2012-11-27 21:30:44 +00:00
frosch
9aeeb5acb9
(svn r24767) -Codechange: Remove some fragile hacks from the multiplayer list who tried to disguised themself as optimisations.
2012-11-27 21:21:01 +00:00
frosch
c283a41248
(svn r24743) -Change: Unify the behaviour of ESC in filter editboxes.
2012-11-14 22:50:39 +00:00
frosch
f5d8ba5d7f
(svn r24742) -Codechange: Remove QueryStringBaseWindow and store QueryStrings per widget instead.
2012-11-14 22:50:35 +00:00
frosch
6e6d94a2d1
(svn r24740) -Codechange: Remove duplicate members from QueryStringBaseWindow and directly use QueryString.
2012-11-14 22:50:26 +00:00
frosch
6653ac6b36
(svn r24739) -Codechange: Simplify some code by using Textbuf::Assign.
2012-11-14 22:50:21 +00:00
frosch
f6d4200f86
(svn r24738) -Codechange: Remove Textbuf::Initialize in favour of a constructor.
2012-11-14 22:50:17 +00:00
frosch
f2221e8b89
(svn r24736) -Cleanup: The third parameter of Textbuf::Initialize only makes sense if it is smaller than the second one, also its unit is not pixels.
2012-11-14 22:46:49 +00:00
frosch
2c22fe98dd
(svn r24734) -Codechange: Move QueryStringBaseWindow::OnOSKInput to Window::OnEditboxChanged.
2012-11-13 21:47:07 +00:00
frosch
c4d7c8dd42
(svn r24733) -Codechange: Move handling of editbox keys to window class.
2012-11-13 21:47:02 +00:00
frosch
7699a7dc06
(svn r24732) -Codechange: Unify handling of OK and CANCEL actions for editboxes.
2012-11-13 21:46:58 +00:00
frosch
fd55399167
(svn r24731) -Codechange: Remove OnOpenOSKWindow and instead specify OK and CANCEL buttons via QueryString members.
2012-11-13 21:46:54 +00:00
frosch
6d1fe626f5
(svn r24729) -Codechange: Unify the handling of HEBR_EDITING.
2012-11-13 21:46:46 +00:00
frosch
336fcbc50e
(svn r24728) -Codechange: Unify usage of OnOSKInput.
2012-11-13 21:46:40 +00:00
frosch
1071d51508
(svn r24727) -Fix: In various windows the OSK looked shiny but using it had no effect whatsoever.
2012-11-13 21:46:37 +00:00
frosch
137adb3496
(svn r24726) -Codechange: Move editbox mouseloop handling to Window class.
2012-11-13 21:46:33 +00:00
frosch
2614ed18f9
(svn r24725) -Cleanup: Remove old editbox focus code which is already handled more generally.
2012-11-13 21:46:22 +00:00
frosch
17025fa6ea
(svn r24724) -Codechange: Move drawing of editboxes to the widget drawing code.
2012-11-13 21:46:19 +00:00
frosch
03736af2ae
(svn r24700) -Cleanup: Remove WDF_UNCLICK_BUTTONS and make it the default.
2012-11-11 16:10:43 +00:00
frosch
a443375d44
(svn r24674) -Fix (r24466, r23234) [FS#5358]: Downloaded heightmaps could not be used anymore. (sbr)
2012-11-08 21:41:00 +00:00
rubidium
6247bdbdb4
(svn r24642) -Codechange: add helper function to see if there is anything in the send queue
2012-10-28 21:26:57 +00:00
rubidium
9db98f3b14
(svn r24638) -Codechange: add some #ifndefs so MSU code doesn't need to compile it, and doesn't need all the required dependencies
2012-10-28 19:16:58 +00:00
frosch
50806b5b3c
(svn r24620) -Fix (r24619): Keep admin port API compatibility.
2012-10-21 09:15:57 +00:00
planetmaker
f2e94237fc
(svn r24619) -Change: Check for bankruptcy on a monthly basis (ZxBioHazardZx)
2012-10-20 22:05:26 +00:00
frosch
de770d7563
(svn r24580) -Fix [FS#5308]: Do not add duplicates to the ban list. (alechz)
2012-10-09 20:36:31 +00:00
rubidium
0856668f44
(svn r24571) -Fix: do not cast away const
2012-10-04 15:25:57 +00:00
rubidium
7251fbb514
(svn r24532) -Change: try to read more UDP packets per game loop
2012-09-19 15:15:49 +00:00
frosch
e84cf93c98
(svn r24508) -Fix [FS#5281] (24488): Content GUI crashed after downloading a NewGRF while it is selected.
2012-09-02 10:04:28 +00:00
rubidium
4563c50c91
(svn r24491) -Fix: compilation error with networking disabled
2012-08-21 19:03:21 +00:00
yexo
053770d4a6
(svn r24488) -Feature [FS#5236]: add buttons to view textfiles from the online content window (LordAro)
2012-08-20 21:03:50 +00:00
yexo
483d878d5f
(svn r24466) -Codechange [FS#5236]: add general function for ContentType -> Subdirectory conversion (LordAro)
2012-08-13 18:49:38 +00:00
frosch
03046f614f
(svn r24337) -Feature: Allow filtering for multiple words (separated by whitespace resp. quoted) in the sign list, content- and NewGRF-guis.
2012-06-09 19:54:16 +00:00
frosch
7e57e8692a
(svn r24335) -Fix: The cursor in the company password window was not blinking due to wrong magic constants (same as r17539).
2012-06-09 14:49:49 +00:00
frosch
d58eee1e79
(svn r24324) -Codechange: Turn functions dealing with Textbufs into member functions.
2012-06-04 15:30:29 +00:00
rubidium
a961276b6f
(svn r24221) -Fix [FS#5166]: Lag counters were not properly reset when switching states making it possible to get disconnected for lagging when you weren't lagging
2012-05-09 19:14:36 +00:00
michi_cc
37e321044a
(svn r24139) -Add: Creating a new vehicle group by drag and drop. (Based on patch by Juanjo)
2012-04-17 19:44:16 +00:00
rubidium
1adb9a5c85
(svn r24070) -Fix [FS#5098]: the 'last joined' server was not properly selected anymore (adf88)
2012-03-25 19:46:59 +00:00
rubidium
f2f939906e
(svn r24069) -Fix (r24062): crash when not having a valid last joined address
2012-03-25 19:43:17 +00:00
rubidium
357843378f
(svn r24062) -Fix [FS#5097]: immediately start querying the last joined server instead of waiting for the requery loop (adf88)
2012-03-25 18:17:41 +00:00
rubidium
ea2f19d4f2
(svn r23958) -Fix: don't allow chat messages from pre-active clients. As they haven't got the savegame yet, they won't have the interface to send them either (dihedral)
2012-02-16 20:45:03 +00:00
rubidium
c5f7a0f69d
(svn r23957) -Fix [FS#4990]: allow sending chat to pre-active clients as the clients start accepting once they send 'map ok' to the server, which is the same moment we change their status to pre-active
2012-02-16 20:44:03 +00:00
smatz
b5525fd33d
(svn r23941) -Add: support for clang
2012-02-12 21:17:32 +00:00
rubidium
446758872c
(svn r23906) -Codechange: replace magic numbers with named constants (adf88)
2012-02-06 20:47:47 +00:00
rubidium
b888027ddd
(svn r23843) -Fix: minor issue with replaying ;)
2012-01-22 21:27:15 +00:00
rubidium
70c7fbd90e
(svn r23826) -Fix [FS#4972]: the detailed performance rating window showed the cargo count of the current quarter instead of the last quarter like the tooltip says
2012-01-20 20:18:19 +00:00
rubidium
a66debfadd
(svn r23822) -Fix-ish: when replaying make sure companies get created even if their creating client doesn't exist during the replay
2012-01-17 21:13:02 +00:00
rubidium
ede8c86f77
(svn r23821) -Fix-ish: when replaying a command log, ignore the command limit
2012-01-17 21:12:19 +00:00
rubidium
4f62472fd9
(svn r23817) -Fix [FS#4962]: desync due to different NewGRF version. So reduce the chance that it happens significantly with betas/RCs/nightlies by doing the same as is done for stable releases: check the NewGRF version of server vs client.
...
Previously this check was not done for nightlies/betas/RCs due to missing versioning information in the source tarballs, but they have that for a while now. So just force the NewGRF version check for all versions, and remove the broken --revision configure option
2012-01-17 17:27:38 +00:00
yexo
5535261e13
(svn r23802) -Fix [FS#4968] (r23601): game lobby gui not updated when new company information becomes available
2012-01-15 12:56:13 +00:00
rubidium
89ab59f0cb
(svn r23787) -Fix: add some missing spaces
2012-01-11 18:47:32 +00:00
truebrain
6c7c02eb14
(svn r23780) -Fix [FS#4963] (r23764): also name the two new errors server-side. As extra, split up one of the errors in 3 errors, to be more specific what goes wrong. As cherry on top, make sure on all sides we can never again forget to add such entries on both sides, by introducing an assert_compile()
2012-01-09 21:22:48 +00:00
rubidium
182969f531
(svn r23769) -Codechange: make the lag/join start timeouts configurable as well
2012-01-07 14:43:45 +00:00
rubidium
bddfcaef95
(svn r23764) -Fix [FS#4955]: make default timeouts for certain states lower and configurable
2012-01-06 21:49:06 +00:00
rubidium
d2c643df63
(svn r23754) -Fix (r23752): the locks aren't reentrant
2012-01-05 17:08:49 +00:00
rubidium
c530450193
(svn r23752) -Fix [FS#4938]: missing locking causing crash is extreme case when being in the MP lobby
2012-01-04 22:11:26 +00:00
rubidium
531e501b5a
(svn r23751) -Codechange: rename NetworkUDPGameLoop to a more descriptive name, and move the UDP specific bits to network_udp
2012-01-04 22:08:43 +00:00
rubidium
6d6be50ae0
(svn r23740) -Codechange: remove some 300 unneeded includes from the .cpp files
2012-01-03 21:32:51 +00:00
rubidium
8371ecc922
(svn r23719) -Fix [FS#4930]: extraction of music packs failed
2012-01-02 21:57:29 +00:00
rubidium
6ed84aff8d
(svn r23710) -Change: make the default secondary sort method for the server list the number of clients instead of the name
2012-01-01 22:35:19 +00:00
rubidium
9a921fd0ae
(svn r23709) -Feature-ish: try harder to sort text instead of fancy characters in the server names
2012-01-01 22:32:26 +00:00
rubidium
1a6d352b92
(svn r23692) -Fix: use smallest_x of your children only when you let the children update it
2011-12-31 11:14:03 +00:00
truebrain
f27b7e2a78
(svn r23691) -Fix: signed/unsigned issues, causing asserts for some languages in relation to the serverlist
2011-12-31 10:55:00 +00:00
truebrain
da8777d4e5
(svn r23646) -Fix [FS#4901]: rescan the Game Scripts when done downloading one.
2011-12-21 12:25:10 +00:00
truebrain
3a535690d4
(svn r23623) -Add: allow bi-directional communication with the AdminPort and GameScript
2011-12-19 21:00:32 +00:00
truebrain
55de5d336c
(svn r23618) -Add: ScriptGame::Pause, ScriptGame::Unpause, and ScriptGame::GetLandscape (GameScript only)
2011-12-19 20:58:59 +00:00
truebrain
963802e9a7
(svn r23612) -Add: allow importing libraries in the same way as AI does, only with GS prefix (and in game/library)
2011-12-19 20:56:59 +00:00
truebrain
b4f832f29f
(svn r23605) -Add: GAME_DIR and CONTENT_TYPE_GAME, and read gamescript from that directory
2011-12-19 20:54:37 +00:00
truebrain
12aa5b6a58
(svn r23604) -Add: initial support for GameScripts
2011-12-19 20:50:54 +00:00
truebrain
5cda1d7c90
(svn r23603) -Add: support for control commands in strings, in both network and safe/load (Rubidium)
2011-12-19 20:50:44 +00:00
truebrain
561b25d031
(svn r23601) -Fix: fix the conflict in window number
2011-12-19 20:50:21 +00:00
rubidium
df16ebd730
(svn r23595) -Codechange: add comma after last enum to get a more uniform coding style
2011-12-19 17:48:04 +00:00
rubidium
fefe22b4aa
(svn r23590) -Codechange: make the string validation settings better expandable
2011-12-18 18:37:54 +00:00
frosch
4e4a87bd3c
(svn r23579) -Fix (r23525): Most up/down arrows stopped working.
2011-12-17 20:52:07 +00:00
truebrain
e2d8abeec5
(svn r23544) -Codechange: document and rename widgets to be consistent and understandable
2011-12-16 18:02:27 +00:00
truebrain
2aa774e831
(svn r23528) -Codechange: move widget enums to widgets/NNN_type.h
2011-12-15 22:22:55 +00:00
truebrain
df0afdf0dc
(svn r23525) -Codechange: make Window::flags4 WindowFlags instead of uint16, with only values known in WindowFlags (and move out 2 timers to their own variable)
...
-Codechange: rename Window::flags4 to Window::flags
-Codechange: move some non-inline functions from .hpp to .cpp
2011-12-15 19:54:23 +00:00
yexo
7a7d9a7b6b
(svn r23494) -Feature: [NewGRF] action14 node INFO->URL_ to add an url
2011-12-11 12:55:04 +00:00
yexo
e0e5e51e2a
(svn r23492) -Feature: add 'view website' button to the online content window
2011-12-11 11:57:52 +00:00
rubidium
2bf0fc3c5c
(svn r23476) -Codechange: use the error queue to replace switch mode error strings, again making it possible to return multiple errors
2011-12-10 15:16:58 +00:00
rubidium
420d358fef
(svn r23475) -Codechange: queue critical error messages, so when multiple happen you won't miss any
2011-12-10 15:14:11 +00:00
rubidium
58423b26d1
(svn r23474) -Codechange: move the declaration error related functions to error.h
2011-12-10 13:54:10 +00:00
rubidium
b231e80125
(svn r23470) -Codechange: move declaration of SwitchToMode to a header instead of declaring it in 6 other files
2011-12-10 08:31:14 +00:00
yexo
1db365d0e2
(svn r23469) -Fix (r23468): gcc warning about initialization order
2011-12-10 01:49:50 +00:00
yexo
e2a9dd1b0a
(svn r23468) -Feature [FS#4827]: when looking for missing content, automatically select it so you can easily start the download
2011-12-10 00:01:28 +00:00
yexo
e31ed7db25
(svn r23467) -Feature [FS#4827]: automatically close the online content window after confirming the download with 'ok'
2011-12-09 22:44:06 +00:00
yexo
dcba6c25ea
(svn r23465) -Feature [FS#4827]: add 'find missing content online' button to 'load savegame' and 'find network game' windows
2011-12-09 21:49:52 +00:00
truebrain
cc12942d70
(svn r23384) -Remove: no longer allow a binary to be without AI support; the parts some compilers failed at, are integrated in other parts of the code now too
2011-12-01 12:03:34 +00:00
truebrain
e37149a1de
(svn r23362) -Codechange: refactor AIScanner, splitting it in AIScannerInfo and AIScannerLibrary
2011-11-29 23:21:52 +00:00
rubidium
104adbdb3a
(svn r23337) -Fix [FS#4826]: don't send chat messages to clients that haven't joined yet
2011-11-26 17:28:18 +00:00