[X] - I confirm this PR is complying with this project's Syntax Ruleset.
Contributing:
[ ] - This PR implements a new usable feature or modifies an existing one considerably.
If the above is true, I have also uploaded a PR to this project's Guide so users can find information about it.
The link to said PR is: (The link to your guide PR goes here).
Longer / More informative description about what my pull request does:
This PR implements a new way to handle packets, for both client and server sides of the project. The way it's now added simplifies all the "setup" required each time there's a new packet type added into the whole project.
[!NOTE]
This new implementation removes the PacketHandler classes from client and server, and a new way to create and execute packets has been added. As a quick rundown on the new implementation, here's a couple examples on the system.
Ex on how packets are now created (taken from the aid manager class):
Ex on how packets are now handled (taken from the listener class):
MethodManager.ExecuteMethod(packet.header, defaultParserMethodName, new object[] { packet });
[!WARNING]
This new approach requires that any class capable of handling packets (basically every manager in the project) has a function called ParsePacket. Any manager without this class correctly implemented will just refuse to handle the packet.
Ex on required class in the manager (taken from the aid manager class):
public static void ParsePacket(Packet packet)
{
//Do your stuff in here
}
Short and concise description about my pull request:
TODOs:
Contributing:
If the above is true, I have also uploaded a PR to this project's Guide so users can find information about it.
The link to said PR is: (The link to your guide PR goes here).
Longer / More informative description about what my pull request does:
Ex on how packets are now created (taken from the aid manager class):
Ex on how packets are now handled (taken from the listener class):
Ex on required class in the manager (taken from the aid manager class):