jdolan / quetoo

Quetoo ("Q2") is a free first person shooter based on id Tech2. GPL v2 license.
http://quetoo.org
204 stars 28 forks source link

#546 Teams menu (previously "Join") #651

Closed jdolan closed 2 years ago

jdolan commented 2 years ago

This PR wires up the secondary menu button (bottom row) to allow the player to join a team once connected. The vast majority of the work here was actually to clean up and enhance the client's representation of other connected clients:

  1. cl_client_info_t is now cg_client_info_t and is implemented entirely in cgame.
  2. Player model sounds had to be migrated from sound to cgame, because they relied on cl_client_info_t. This is actually much cleaner and more flexible, anyway.
  3. This nudged me to also move all sound sending and receiving to game and cgame rather than server and client. Now mods can extend this packet to add more sound effects, whatever they like.
  4. The client info struct and client info strings have been expanded to include a team ID.
  5. Found and fixed a nasty issue with the bloom program, and improved framebuffer management in the process.
  6. Implemented the teams menu 😂
jdolan commented 2 years ago

The menu itself is not quite done. Some layout quirks, and I haven't wired up the team selection action. But the plumbing is all there, and there's so much else in this PR that I figured I'd open it up in case you'd like to review.