mirror of
https://github.com/ddnet/ddnet.git
synced 2024-11-13 11:38:19 +00:00
47874fb57f
5085: New DDRace HUD r=def- a=C0D3D3V If you want to test this PR, you have to test it on a Server that includes this PR too. Textures are made by Ravie Here a showcase video with most parts shown: https://youtu.be/gPTVj-s3pgc Added to the new HUD - A display of the weapons available to the player - The weapon the player is carrying is highlighted - Indicators for the special abilities of the player (Endless Hook, Endless Jumps, Jetpack, Teleport Weapons) - Indicators for abilities taken away from the player (Deep/Life Freeze, No Hook, No Weapons collision, No Collision) - Control indicators for dummy controls (dummy hammer, dummy copy) (bottom right) - Jump indicator (max 10 jumps ar displayed, and greyed out as soon as a jump is used) - Ninja status bar that indicates how long a player is capable of using ninja (next to the ninja sword) - Freeze status bar that indicates the thawing time of a player (below player) - Movement Information can be displayed in a clean way above the mini score HUD (Position, Speed, Target Angle) - Indicator if you are in practice mode The complete HUD also works for players you spectate I Added a new NetObj since the predicted values are not perfect and would make the display of the information a lot less good: DDNetCharacterDisplayInfo that contains the following information ``` NetIntRange("m_JumpedTotal", -2, 255), NetTick("m_NinjaActivationTick"), NetTick("m_FreezeTick"), NetBool("m_IsInFreeze"), NetBool("m_IsInPracticeMode"), NetIntAny("m_TargetX"), # used for the Movement Information display NetIntAny("m_TargetY"), NetIntAny("m_RampValue"), ``` So if someone has an idea what data we could also need in the client for making the display more nice, now is the right moment to add more data to this network object. A few screenshots: Assets Tab: ![grafik](https://user-images.githubusercontent.com/14315968/167703792-f0fa86be-159d-4e11-baf4-9539cee38aae.png) HUD Settings: ![grafik](https://user-images.githubusercontent.com/14315968/167704336-dc7a314e-5603-40a2-98b4-9c03377906dd.png) Mini Debug HUD: ![grafik](https://user-images.githubusercontent.com/14315968/168302791-c377d93e-33a2-4eb2-9d8d-b78f0808a009.png) Speed.X is calculated using the players ramp vaule ## 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 - [x] 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> Co-authored-by: Jupeyy <jupjopjap@gmail.com> |
||
---|---|---|
.. | ||
assertion_logger.cpp | ||
assertion_logger.h | ||
compression.cpp | ||
compression.h | ||
config.cpp | ||
config.h | ||
config_variables.h | ||
console.cpp | ||
console.h | ||
csv.cpp | ||
csv.h | ||
datafile.cpp | ||
datafile.h | ||
demo.cpp | ||
demo.h | ||
econ.cpp | ||
econ.h | ||
engine.cpp | ||
fifo.cpp | ||
fifo.h | ||
filecollection.cpp | ||
filecollection.h | ||
global_uuid_manager.cpp | ||
http.cpp | ||
http.h | ||
huffman.cpp | ||
huffman.h | ||
image_manipulation.cpp | ||
image_manipulation.h | ||
jobs.cpp | ||
jobs.h | ||
json.cpp | ||
json.h | ||
kernel.cpp | ||
linereader.cpp | ||
linereader.h | ||
map.cpp | ||
map.h | ||
masterserver.cpp | ||
memheap.cpp | ||
memheap.h | ||
netban.cpp | ||
netban.h | ||
network.cpp | ||
network.h | ||
network_client.cpp | ||
network_conn.cpp | ||
network_console.cpp | ||
network_console_conn.cpp | ||
network_server.cpp | ||
packer.cpp | ||
packer.h | ||
protocol.h | ||
protocol_ex.cpp | ||
protocol_ex.h | ||
protocol_ex_msgs.h | ||
ringbuffer.cpp | ||
ringbuffer.h | ||
serverinfo.cpp | ||
serverinfo.h | ||
snapshot.cpp | ||
snapshot.h | ||
storage.cpp | ||
teehistorian_ex.cpp | ||
teehistorian_ex.h | ||
teehistorian_ex_chunks.h | ||
uuid_manager.cpp | ||
uuid_manager.h | ||
video.cpp | ||
video.h | ||
websockets.cpp | ||
websockets.h |