Commit graph

15176 commits

Author SHA1 Message Date
bors[bot] fbfd938f32
Merge #5503
5503: Improve rendering of demo list icons, remove duplicate code r=Jupeyy a=Robyt3

I first tried adapting and using `CMenus::DoButton_Icon` like `DoIcon` on upstream to reduce duplicate code in the menus. Later I moved/renamed this method to `CRenderTools::RenderIcon`, to also use it in the editor.

Changes to demo list:
- Show the icons as part of the name column
- Improve spacing/centering of icons in columns
- Grey out icon if demo is not loaded or not valid
- Clamp the number of demo markers to valid range (I have an old version 3 demo that incorrectly shows more than a million markers otherwise, which would not fit the char buffer used for rendering the number)

The visual changes are mostly consistent with upstream. Upstream also renders demo icons in green when the demo has markers, but I don't see a good motivation for that especially with a separate markers column already existing.

Before:

![demo old](https://user-images.githubusercontent.com/23437060/175780176-edbd3d98-a257-4982-b590-f32cdb3b1cf3.png)

After:

![demo new](https://user-images.githubusercontent.com/23437060/175780178-64c694b4-d2ae-4b87-8601-47725355454f.png)

Closes #1576. There's likely more duplicate code but I don't think we need this issue open anymore to remind us of that, unless it list more actionable examples of duplicate code that should be refactored.

## Checklist

- [X] Tested the change ingame
- [X] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Robert Müller <robytemueller@gmail.com>
2022-06-25 16:49:14 +00:00
Robert Müller 42532f3149 Use CRenderTools::RenderIcon in editor file dialog 2022-06-25 17:16:20 +02:00
Robert Müller fb91881765 Move CMenus::DoIcon to CRenderTools::RenderIcon
As this method only renders and doesn't provide an interactive element, the naming `Render` as well as the placement in `CRenderTools` fits better.

This also allows the method to be used in the editor.
2022-06-25 17:15:55 +02:00
Robert Müller 25ad47bed2 Use DoIcon for ingame player GUI icons 2022-06-25 16:57:25 +02:00
Robert Müller 87cb948166 Clamp number of demo timeline markers to valid range 2022-06-25 16:57:25 +02:00
Robert Müller 5184cf5523 Add greyed out demo icon for invalid or not loaded demos 2022-06-25 16:57:24 +02:00
Robert Müller f727199060 Render demo file icon in name column, remove DoIcon centering 2022-06-25 16:36:09 +02:00
Jupeyy eb3406c4cf Add missing capability for GLES backend 2022-06-25 16:11:04 +02:00
c0d3d3v 706a06d4d4
clamp m_Armor, to prevent value correction on client side 2022-06-25 16:06:22 +02:00
c0d3d3v 4281df2429
Add new textures by ravie; Also add no gun hit for teleport gun 2022-06-25 16:05:38 +02:00
Chairn a50ddb75ff clang-format 2022-06-25 15:30:39 +02:00
Chairn 5f5b80ae57 Use [[fallthrough]] attribute rather than comment 2022-06-25 15:21:44 +02:00
Robert Müller 97e36fa4be Add optional color parameter to DoIcon 2022-06-25 13:43:40 +02:00
Robert Müller a530ce89d6 Rename DoButton_Icon to DoIcon and remove unused return value
As the function renders an icon and not a button.
2022-06-25 13:38:04 +02:00
c0d3d3v d78b3decd5
Revert to using conditions for the version check for capability chat messages; Remove ExcludeClientVersionAndHigher from CGameContext::SendChatTarget 2022-06-25 12:33:49 +02:00
c0d3d3v 6d098d866a
Remove ExcludeClientVersionAndHigher from CGameTeams::TeamMask; Add CGameContext::ClientsMaskExcludeClientVersionAndHigher 2022-06-25 11:16:59 +02:00
bors[bot] a62250792c
Merge #5490
5490: Try to fix dump_local_console (fixes #5488) r=heinrich5991 a=def-

Untested, but my hunch is that by not cutting off the last part the text
file will be correctly recognized as valid utf8

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-25 09:08:12 +00:00
bors[bot] 937a9cc0e2
Merge #5495
5495: Fix Android build r=heinrich5991 a=Jupeyy

- Video recorder off
- small fix in logger.cpp

Tested on Java-17

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Jupeyy <jupjopjap@gmail.com>
2022-06-25 08:54:11 +00:00
Jupeyy a22a8dce1c Fix Android build 2022-06-25 10:43:24 +02:00
c0d3d3v dd1cdfcf2c
Add to some of the Sprite Arrays the array prefix 2022-06-25 10:39:39 +02:00
c0d3d3v ed2c514aa7
Change help text of cl_asset_extras 2022-06-25 10:28:54 +02:00
bors[bot] fda0eccf37
Merge #5494
5494: Be upfront about completeness of the autogenerated code documentation r=def- a=heinrich5991

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: heinrich5991 <heinrich5991@gmail.com>
2022-06-25 07:37:28 +00:00
heinrich5991 d29b22a96e Be upfront about completeness of the autogenerated code documentation 2022-06-25 02:21:54 +02:00
bors[bot] a0cdefa3b5
Merge #5492 #5493
5492: Mention code browser in readme r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


5493: integration test: print log diff for easier result check r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-25 00:04:01 +00:00
Dennis Felsing 0081e99fc7 integration test: print log diff for easier result check 2022-06-25 01:39:59 +02:00
Dennis Felsing a6fa123532 Mention code browser in readme 2022-06-25 01:30:06 +02:00
bors[bot] 562962f843
Merge #5491
5491: Move twping to tools directory r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-24 23:29:42 +00:00
Dennis Felsing 4d43567948 Move twping to tools directory 2022-06-25 01:28:05 +02:00
Dennis Felsing 83267ed0a7
Update src/game/client/components/console.cpp
Co-authored-by: Robert Müller <robytemueller@gmail.com>
2022-06-25 01:19:40 +02:00
Dennis Felsing 5dd2e5083b
Update src/game/client/components/console.cpp
Co-authored-by: Robert Müller <robytemueller@gmail.com>
2022-06-25 01:19:32 +02:00
Dennis Felsing 8933ae8357 Try to fix dump_local_console (fixes #5488)
Untested, but my hunch is that by not cutting off the last part the text
file will be correctly recognized as valid utf8
2022-06-24 16:47:23 +02:00
bors[bot] 34da9f2282
Merge #5489
5489: Fix build with -DUPNP=ON r=def- a=ChillerDragon

We should have a CI that builds the same cmake settings as this arch package

https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=ddnet-git

Co-authored-by: ChillerDragon <ChillerDragon@gmail.com>
2022-06-24 13:58:00 +00:00
ChillerDragon 0163aa56ac Fix build with -DUPNP=ON 2022-06-24 14:16:29 +02:00
bors[bot] 911e5e1de2
Merge #5475
5475: Revert "Build our own drmingw with mingw" r=def- a=def-

Pastoer reported on Discord that this causes warnings when closing client:
![Screenshot 2022-06-22 at 18 04 01](https://user-images.githubusercontent.com/2335377/175079972-787ec943-f27d-49eb-af54-883e8668c5b5.png)

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-24 11:29:48 +00:00
Dennis Felsing 1efde9e4b2 Revert "Build our own drmingw with mingw" 2022-06-24 13:29:20 +02:00
bors[bot] 864bcc9a34
Merge #5484
5484: Move libpng libraries to expected name for macOS r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-24 10:44:04 +00:00
Dennis Felsing 805f6ac431 Fix win32 discord compilation
/home/deen/isos/ddnet/ddnet-source/src/engine/client/discord.cpp: In function ‘EDiscordResult (* GetDiscordCreate())(DiscordVersion, DiscordCreateParams*, IDiscordCore**)’:
/home/deen/isos/ddnet/ddnet-source/src/engine/client/discord.cpp:25:16: error: invalid conversion from ‘EDiscordResult (__attribute__((stdcall)) *)(DiscordVersion, DiscordCreateParams*, IDiscordCore**)’ {aka ‘EDiscordResult (__attribute__((stdcall)) *)(int, DiscordCreateParams*, IDiscordCore**)’} to ‘FDiscordCreate’ {aka ‘EDiscordResult (*)(int, DiscordCreateParams*, IDiscordCore**)’} [-fpermissive]
   25 |         return DiscordCreate;
      |                ^~~~~~~~~~~~~
      |                |
      |                EDiscordResult (__attribute__((stdcall)) *)(DiscordVersion, DiscordCreateParams*, IDiscordCore**) {aka EDiscordResult (__attribute__((stdcall)) *)(int, DiscordCreateParams*, IDiscordCore**)}
2022-06-24 10:06:04 +02:00
Dennis Felsing bd2f1b7812 Move libpng libraries to expected name for macOS
also fix windows.h include in discord game sdk
2022-06-24 10:06:04 +02:00
bors[bot] 5bf8c23b9a
Merge #5474
5474: pnglite -> libpng in readme r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-23 23:41:35 +00:00
bors[bot] 0aa12e6542
Merge #5485
5485: Fix memory leak of OpenGL 2 buffer object data r=def- a=Robyt3

```
Direct leak of 216320 byte(s) in 3 object(s) allocated from:
    #0 0x7f5e05924808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
    #1 0x559b8ca66278 in CCommandProcessorFragment_OpenGL2::Cmd_CreateBufferObject(CCommandBuffer::SCommand_CreateBufferObject const*) src/engine/client/backend/opengl/backend_opengl.cpp:1901
    #2 0x559b8ca47fe7 in CCommandProcessorFragment_OpenGL::RunCommand(CCommandBuffer::SCommand const*) src/engine/client/backend/opengl/backend_opengl.cpp:1107
    #3 0x559b8cdf811b in CCommandProcessor_SDL_GL::RunBuffer(CCommandBuffer*) src/engine/client/backend_sdl.cpp:248
    #4 0x559b8cdf4262 in CGraphicsBackend_Threaded::ThreadFunc(void*) src/engine/client/backend_sdl.cpp:77
    #5 0x559b8dfc58a5 in thread_run src/base/system.cpp:721
    #6 0x7f5e03bf6608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
```

## Checklist

- [X] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [X] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Robert Müller <robytemueller@gmail.com>
2022-06-23 21:40:02 +00:00
Robert Müller 52a78c45ef Fix memory leak of OpenGL 2 buffer object data
```
Direct leak of 216320 byte(s) in 3 object(s) allocated from:
    #0 0x7f5e05924808 in __interceptor_malloc ../../../../src/libsanitizer/asan/asan_malloc_linux.cc:144
    #1 0x559b8ca66278 in CCommandProcessorFragment_OpenGL2::Cmd_CreateBufferObject(CCommandBuffer::SCommand_CreateBufferObject const*) src/engine/client/backend/opengl/backend_opengl.cpp:1901
    #2 0x559b8ca47fe7 in CCommandProcessorFragment_OpenGL::RunCommand(CCommandBuffer::SCommand const*) src/engine/client/backend/opengl/backend_opengl.cpp:1107
    #3 0x559b8cdf811b in CCommandProcessor_SDL_GL::RunBuffer(CCommandBuffer*) src/engine/client/backend_sdl.cpp:248
    #4 0x559b8cdf4262 in CGraphicsBackend_Threaded::ThreadFunc(void*) src/engine/client/backend_sdl.cpp:77
    #5 0x559b8dfc58a5 in thread_run src/base/system.cpp:721
    #6 0x7f5e03bf6608 in start_thread /build/glibc-SzIz7B/glibc-2.31/nptl/pthread_create.c:477
```
2022-06-23 19:58:39 +02:00
bors[bot] 5ea22ab584
Merge #5482
5482: Add logfiles and map changes to integration test r=def- a=ChillerDragon

Cover map change
Cover logfiles
Ensure client1 always connects first


Co-authored-by: ChillerDragon <ChillerDragon@gmail.com>
2022-06-23 14:51:42 +00:00
bors[bot] 2ee254fa3e
Merge #5477
5477: Upgrade Discord SDK to version 3.2.1 (incldues macOS arm64) r=heinrich5991 a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [x] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-23 14:16:27 +00:00
ChillerDragon c951a3cb89 Add logfiles and map changes to integration test
Cover map change
Cover logfiles
Ensure client1 always connects first
2022-06-23 15:52:28 +02:00
bors[bot] 8253581430
Merge #5437
5437: Update Brazilian Portuguese translation (supersedes #5304) r=def- a=def-

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Dennis Felsing <dennis@felsin9.de>
2022-06-23 08:08:22 +00:00
bors[bot] 5dc5c6bddf
Merge #5480
5480: Update spanish.txt r=def- a=n0Ketchp

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: noKetchup <93238471+n0Ketchp@users.noreply.github.com>
2022-06-23 07:51:01 +00:00
noKetchup 72e0c19cd1
Update spanish.txt 2022-06-22 19:43:17 -04:00
bors[bot] 6055a7d972
Merge #5479
5479: Updated french translation r=def- a=Chairn



## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Chairn <chairn.nq@hotmail.fr>
2022-06-22 21:38:00 +00:00
bors[bot] 83479c8f51
Merge #5476
5476: Remove pnglite shift ubsan r=def- a=ardadem

<!-- What is the motivation for the changes of this pull request -->

## Checklist

- [ ] Tested the change ingame
- [ ] Provided screenshots if it is a visual change
- [ ] Tested in combination with possibly related configuration options
- [ ] Written a unit test if it works standalone, system.c especially
- [ ] Considered possible null pointers and out of bounds array indexing
- [ ] Changed no physics that affect existing maps
- [ ] Tested the change with [ASan+UBSan or valgrind's memcheck](https://github.com/ddnet/ddnet/#using-addresssanitizer--undefinedbehavioursanitizer-or-valgrinds-memcheck) (optional)


Co-authored-by: Arda Demir <ddmirarda@gmail.com>
2022-06-22 16:47:24 +00:00
Dennis Felsing a7492c1038 Upgrade Discord SDK to version 3.2.1 (incldues macOS arm64) 2022-06-22 18:43:22 +02:00