ddnet/src/game
bors[bot] 03f95108b4
Merge #5063
5063: Reworked Draggers and Turrets AND show always hooks if they are in the field of view  r=def- a=C0D3D3V

Fixes #3622, #4723 #4798 and #5054

Here you can find a comparison video with 16.0.3: https://youtu.be/bYwLB1cEMI8

This now also includes the changes from https://github.com/ddnet/ddnet/pull/4980 
So please also see my monologue here: https://github.com/ddnet/ddnet/pull/4980

Physic that got changed by this PR:
- Solo players are not included in the calculation of the next team players to the dragger/turrets. This does not affect any map.
- Turrets get switched correctly if players are solo
- Plasma bullets fired by turrets on solo player only explode for solo players and the other way around (except if they unsolo)
- Plasma bullets can no longer be intercepted by other teams 
- Turrets can shot now independently at the speed of sv_plasma_per_sec for  every team and every solo player


This should be tested by some more players before it get merged!

This reduces the use of snap id's tested here: https://youtu.be/G3nVtdH0--Q 
from 16000 to 69
test with the new dragger: https://youtu.be/mzNrDHP7HQs
I did not add the terminal of the server because you basically see no change in the used snap ids 
The videos are with cl_predict off

Comparison of the new turrets: https://streamable.com/8us8lk
left old turrets, right the new ones

We should delete ranks on (that where made after 13 Jun 2019):
https://ddnet.tw/maps/Increase-32-Your-32-Speed
https://ddnet.tw/maps/Fall-32-into-32-the-32-Future
https://ddnet.tw/maps/turboSeks

## 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
- [x] Considered possible null pointers and out of bounds array indexing
- [only on 3 maps] 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: c0d3d3v <c0d3d3v@mag-keinen-spam.de>
2022-05-24 18:26:08 +00:00
..
client Merge #5063 2022-05-24 18:26:08 +00:00
editor Move MapScreenToGroup from 3 classes to render.cpp; Rename MapscreenToWorld to MapScreenToWorld 2022-05-22 21:59:43 +02:00
server mark virtual methods in dragger_beam as overwritten 2022-05-22 22:01:07 +02:00
bezier.cpp Run clang-format 2020-09-26 21:50:15 +02:00
bezier.h clang-format 2022-03-24 17:59:49 +01:00
collision.cpp Fix clang-format 2022-02-15 00:32:04 +01:00
collision.h Rename IsSwitch to GetSwitchType 2021-12-19 12:10:03 +01:00
ddracechat.h Add teleport/tp chat command to teleport yourself 2022-01-31 13:21:04 +01:00
ddracecommands.h put it above left up down 2022-04-19 08:58:26 +02:00
gamecore.cpp Add a set of Players that are attached to a Tee 2022-05-22 21:59:51 +02:00
gamecore.h Iterate over m_AttachedPlayers instead of MAX_CLIENTS 2022-05-22 21:59:52 +02:00
layers.cpp Improve code style of InitTilemapSkip 2022-01-19 22:27:59 +01:00
layers.h Remove unnecessary trailing semicolons 2022-01-19 22:44:20 +01:00
localization.cpp Store localized strings in a CHeap instead of using tl/string.h 2022-05-07 00:02:43 +02:00
localization.h Store localized strings in a CHeap instead of using tl/string.h 2022-05-07 00:02:43 +02:00
mapbugs.cpp Add more readability checks 2022-01-22 17:45:25 +01:00
mapbugs.h Remove code for CRC in most places, except where needed for net compat 2020-10-14 17:08:58 +02:00
mapbugs_list.h Revert "Add mapbug "stoppers-passthrough@ddnet.tw"" 2018-08-22 08:33:21 +02:00
mapitems.cpp Implement shields that remove specific weapon (fixes #4572) 2022-04-28 16:49:32 +02:00
mapitems.h Implement shields that remove specific weapon (fixes #4572) 2022-04-28 16:49:32 +02:00
mapitems_ex.cpp Run clang-format 2020-09-26 21:50:15 +02:00
mapitems_ex.h Run clang-format 2020-09-26 21:50:15 +02:00
mapitems_ex_types.h Run clang-format 2020-09-26 21:50:15 +02:00
prng.cpp uint64 -> uint64_t, int64 -> int64_t 2021-06-24 17:19:17 +02:00
prng.h uint64 -> uint64_t, int64 -> int64_t 2021-06-24 17:19:17 +02:00
teamscore.cpp Refactoring of g_Config.m_SvTeam, See #4601 2022-02-19 18:11:15 +01:00
teamscore.h Assert client id in SetSolo 2022-05-14 11:28:01 +02:00
tuning.h Add hammer_hit_fire_delay tune 2021-05-01 16:36:12 +02:00
variables.h Merge branch 'master' into New_HUD 2022-05-10 19:03:09 +02:00
version.h Version 16.1 2022-05-20 01:26:17 +02:00
voting.h Run clang-format 2020-09-26 21:50:15 +02:00