1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2025-07-02 23:17:12 +02:00
Commit Graph

40 Commits

Author SHA1 Message Date
b269517e6f Candidate for backwards compatibility. 2020-03-20 20:37:17 +02:00
14b73d1d20 Block all callbacks at shutdown event.
The server still invokes some callbacks even after shutdown. This prevents it from doing that by removing all callback pointers from the callback structure. Yet another nasty workaround.
2019-06-02 19:00:02 +03:00
4f3c4dac48 Update the server initialize traceback.
Place the closing traceback before the success or failure message.
2019-06-02 18:19:39 +03:00
4159272965 Disable traceback in performance report event.
This too is quite useless and annoying for now.
2019-06-02 18:13:04 +03:00
fc18a3c6af Disable traceback for frame event completely.
I forgot to disable the traceback for the server callback.
2019-06-02 18:02:17 +03:00
7efe523843 Dummy event server traceback.
Include dummy logs before and after server events to track their order and progress for easier. Current implementation is quite simple and doesn't take into account nesting.
2019-06-02 15:11:48 +03:00
7fdcf7efc0 Implement new API changes.
Initial implementation of entity streaming events, 3D arrows, drunk effects., camera interpolation, entity options and whatnot. Not yet tested!
2019-06-02 00:39:06 +03:00
600c21d45f Discard instances of constant StackStrF parameters. This should always be non-const if possible. 2019-02-17 17:23:59 +02:00
0ebdb909df Avoid exceptions scaping during plugin initialization.
Use sub-logging to show the message from exception.
2018-07-27 22:43:19 +03:00
53b541ca60 Implement the PlayerModuleList event callback. 2018-06-28 21:41:31 +03:00
8125400f7f Return null entity instances instead of null for the functions that need to return an entity instance.
Finally fix the player unspectating bug and introduce a new event for when a player spectates none.
Update the global functions that check for player existance to use the new implementation.
2017-08-06 18:14:58 +03:00
b3cdc101a4 Do not overwrite the core state upon receiving recursive event calls from the server.
And allow the script to implement a similar approach.
2017-06-19 16:10:31 +03:00
e7bb68d76c Fix the crash at shut down caused by forgetting to release the global events table object.
Include the fixes from the routines that should've been commited into the previous commit.
Take a more exception safe approach to unbinding from server events at shutdown.
2017-02-21 21:42:40 +02:00
41e04e5167 Initial implementation of the new event system.
Initial implementation of the new signals and slots class.
Fixed command parsing which compared a pointer to a character.
Buffer overflow fix in routines which used the limits from the entity tasks.
Switched from Sqrat::Object to Sqrat::LightObj in most places to avoid the overhead of the VM pointer.
Various other adjustments and improvements.
The plugin is currently in a broken state and crashes at shutdown. The bug is unknown at this point.
2017-02-21 21:24:59 +02:00
2d07ed67b9 Initial implementation of entity tasks. 2016-11-17 00:23:59 +02:00
77184fd9fb Don't perform a debug trace in the outer most level function. Assume that the debugger took care of that. 2016-08-26 18:29:05 +03:00
a9ae69ce5e Don't catch application exceptions in the outer most event functions because they probably left the VM stack in an invalid state and the server should be allowed to crash. 2016-08-26 17:21:05 +03:00
dfbb0b9c46 Show a proper debug trace when catching squirrel exceptions at the event entry level. 2016-08-25 23:46:51 +03:00
28ac1e889a Don't use log messages to confirm the plugin was loaded or not since they can be ignored. 2016-08-25 12:00:48 +03:00
9a0973bbc6 Fix various spelling mistakes. 2016-08-24 00:27:22 +03:00
c4e82d6756 Add the ability to specify a custom header/payload when kicking/banning a player. 2016-08-17 13:48:29 +03:00
9434deb804 Stop using hard-coded values for plug-in commands in the host plug-in. 2016-07-17 03:56:52 +03:00
66d1110733 Rvised the API distribution system to avoid segmentation fault crashes on Linux and make the overal code cleaner.
Moved the constants in IRC module into their own source and implemented a faster method of registering them.
Various other minor changes and adjustments. Some of them in order to comply with the new API distribution system.
2016-07-17 03:24:07 +03:00
5ddb222903 Prevent server callbacks not being bound when compiling on linux. 2016-07-16 21:51:01 +03:00
3fab6d931f Don't destroy entity instances from the server at server shutdown. 2016-07-16 17:52:55 +03:00
e32464b6ea Don't clear entity containers untill after the virtual machine was closed. Should close #22 2016-07-16 15:45:36 +03:00
75f8f43696 Add a message to inform when the plugin is fully loaded. 2016-07-10 17:15:43 +03:00
7bb0d5f947 Adjust the code to use the .what() method from the Sqrat exception. 2016-07-09 14:18:09 +03:00
0c92601362 Update the module API and merge shared code between modules and host plugin. 2016-06-03 21:26:19 +03:00
f05e562708 Move most of the reload implementation to the central core. 2016-05-24 19:26:43 +03:00
75452625cd Enable the reload system in the macros.
Prevent the reload from entering a cyrcular reload when sending plugin commands.
2016-05-24 06:51:40 +03:00
b9b688581b Move routine processing outside the core class. 2016-05-23 03:54:50 +03:00
f2361a27c3 Untested update to the new plugin API.
Various other changes to the plugin as well.
2016-05-22 06:20:38 +03:00
6647386d30 Forgot to assign the null pointer after destroying components. 2016-03-27 22:14:24 +03:00
42af986890 Initial implementation of reload mechanism. 2016-03-24 09:32:44 +02:00
ff6cacaf68 Dumb approach to recive some kind of asserts if the program crashes because a component was used after it was deleted. 2016-03-24 06:43:02 +02:00
d2f3da1747 Catch exceptions during server callbacks.
Allow routines to safely terminate routines during execution.
Various other fixes and improvements.
2016-03-12 08:47:50 +02:00
f4a11ef825 Separated major non mandatory libraries into their onwn modules.
Consolidated and simplified the module API system.
Various other fixes and improvements.
2016-02-27 11:57:10 +02:00
fa12692490 Implemented the module system. 2016-02-23 17:48:30 +02:00
06e598acfb Dumped the old implementation. Started with a more simple approach. 2016-02-21 00:25:00 +02:00