Aadhavan Srinivasan
c3f6ae0ae9
Added .gitignore
10 months ago
Aadhavan Srinivasan
21c864da60
Created script to copy DLLs into application fodler on mingw
10 months ago
Aadhavan Srinivasan
a2fed8e4b0
Updated meson.build to include additional DLLs needed on Windows
10 months ago
Aadhavan Srinivasan
1196ebd228
Updated README
10 months ago
Aadhavan Srinivasan
3a9a32d7e3
Updated README
10 months ago
Aadhavan Srinivasan
a5202ad85a
Add support for building a statically linked version of the game, by specifying a command-line flag
10 months ago
Aadhavan Srinivasan
61a856e88f
Added raylib submodule, under subprojects directory
10 months ago
Aadhavan Srinivasan
6170c95666
Delete raylib submodule and move it inside 'subprojects'
10 months ago
Aadhavan Srinivasan
d6f597d8c0
Added raylib submodule
10 months ago
Aadhavan Srinivasan
591c3b16a2
Fixed stupid error (using 'meson' instead of 'compiler')
10 months ago
Aadhavan Srinivasan
2ea5bb4fe2
Find raylib even if pkg-config is not found
10 months ago
Aadhavan Srinivasan
f961db5e58
Added code to send quit message only if game is not in single player mode
10 months ago
Aadhavan Srinivasan
64aa4b1850
Replaced 'linux' with '__unix__' because the same header files are included on macOS as well.
10 months ago
Aadhavan Srinivasan
0e504060cf
Modified README
10 months ago
Aadhavan Srinivasan
d69b627bb1
Added README
10 months ago
Aadhavan Srinivasan
91bf5e2ce1
Fixed some commenting issues; Added code to detect if game was quit by peer and, if so, quit the game locally
10 months ago
Aadhavan Srinivasan
50c090cd88
Added a boolean field to the struct, to indicate whether the game should be quit or not
10 months ago
Aadhavan Srinivasan
2c735896df
Used unsigned int instead of int when converting to base-10
10 months ago
Aadhavan Srinivasan
24c1dd6391
Removed unnecessary variable, and added a (optional) dependency for the ws2_32 library, which is required on Windows
10 months ago
Aadhavan Srinivasan
8e3488b904
Added a virtual destructor to the Sock class, which would allow Server and Client to override it
10 months ago
Aadhavan Srinivasan
c2c095dfa7
Added code to get a non-const char* from a std::string
10 months ago
Aadhavan Srinivasan
047ff602ed
Changed 'char*' to 'const char*' because that's what the underlying functions use
10 months ago
Aadhavan Srinivasan
ff8dc1f1f7
Removed files related to cross-compilation.
...
I had a ton of issues related to cross-compilation (libraries not found, clashing function
names with raylib, improper linking), and I realized that it's too much work to cross-compile,
_and_ I'm using a build system. Instead, I'm probably just going to use my Windows VM to compile for Windows.
I still haven't decided what to do for Mac, though.
10 months ago
Aadhavan Srinivasan
4b3d5387a1
Changed code to support Windows libraries and functions as well
10 months ago
Aadhavan Srinivasan
ddbbc322a6
Deleted Makefile, switched over fully to meson build system
10 months ago
Aadhavan Srinivasan
b90d37c73f
Added relevant files for cross-compilation to windows
10 months ago
Aadhavan Srinivasan
69e70eb206
Changed the recvAll return type from std::string to char pointer, and created a non-blocking version of the function
10 months ago
Aadhavan Srinivasan
349b0b78db
Created method to set position of paddle
10 months ago
Aadhavan Srinivasan
a37ec79f09
Changed 'recvAll' return type from std::string to char pointer, and created a non-blocking version of the function
10 months ago
Aadhavan Srinivasan
ba667d020d
Game is mostly finished, added a ton of code for reading and applying peer position.
...
The most important addition is that the program now parses data in the
Serial_Data struct, and updates the positions accordingly. I also removed
the old implementation with strings, and fixed a bunch of bugs along the way.
10 months ago
Aadhavan Srinivasan
effeea73b9
Made the serialization code cleaner, and fixed a bug where data was overwritten by the null pointer
10 months ago
Aadhavan Srinivasan
c6bbe82d25
Made the 'recvAll' function return a char pointer instead of a std::string, this is better for portability. Also created a non-blocking version of the function.
10 months ago
Aadhavan Srinivasan
6d1565a020
Updated TODO; removed finished items
10 months ago
Aadhavan Srinivasan
93d3f2e13f
Added serialization C file as a dependency
10 months ago
Aadhavan Srinivasan
6eb02ab2ee
Started working on implementing serialization code into the main game loop.
...
Currently, I'm trying to serialize data and send it to the peer socket, and deserialize it at the receiving end.
10 months ago
Aadhavan Srinivasan
ded7c68ae7
Fixed misaligned bracket
10 months ago
Aadhavan Srinivasan
edfd70c3cc
Created a simple data serialization library, to serialize and deserialize the data to be sent
10 months ago
Aadhavan Srinivasan
87b436aede
Updated TODO
10 months ago
Aadhavan Srinivasan
6ad56fb9ef
Started working on client-server communication; so far, I can send the position of client to server, and vice-versa
10 months ago
Aadhavan Srinivasan
6155cb0463
Wrote code to null-terminate the string sent in sendAll, and the string received in recvAll
10 months ago
Aadhavan Srinivasan
89e1e8d45e
Worked on further implementation of the network side of things.
...
Specifically, I added code to send a message from the client, after the client is launched. This message is used to try to connect to the server. Once the server receives this message, it responds back. After the client receives this response, the connection has been established, and the game can begin.
I also added code to wait (on the client side) for the server to press the spacebar.
10 months ago
Aadhavan Srinivasan
b47b0eab28
Added new exception constants
10 months ago
Aadhavan Srinivasan
0c726be147
Updated header file to reflect recent change in implementation file
10 months ago
Aadhavan Srinivasan
7e362f0ed9
Moved the private functions out of the anonymous namespace, because I need to use them in other places
10 months ago
Aadhavan Srinivasan
f3ad4fbf99
Defined constants for TCP and UDP, instead of using the characters themselves
10 months ago
Aadhavan Srinivasan
f0e30f28e9
Updated header files to reflect recent change in implementation files
10 months ago
Aadhavan Srinivasan
4fce513211
Updated TODO
10 months ago
Aadhavan Srinivasan
9954a18171
Made the sendAll and recvAll functions in sock.cpp use variables set by the children, rather than having the functions pass parameters
10 months ago
Aadhavan Srinivasan
350b51e28b
Added additional code to easysock library
10 months ago
Aadhavan Srinivasan
ec51bcdb34
Added to TODO file
10 months ago