1
0
mirror of https://github.com/VCMP-SqMod/SqMod.git synced 2024-11-08 08:47:17 +01:00
Commit Graph

241 Commits

Author SHA1 Message Date
Sandu Liviu Catalin
e057f22402 Implement functions to import existing entity instances after loading is complete. 2016-03-24 08:44:01 +02:00
Sandu Liviu Catalin
f5ec4e65ce Also prevent the player entity instance from being destroyed in mid-destruction. 2016-03-24 07:23:01 +02:00
Sandu Liviu Catalin
b877b1701b Don't release the callbacks abruptly in Function destructor. 2016-03-24 06:59:02 +02:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
3762b5e2ca Fix the exception code and make it use pooled buffers instead of the common buffer. 2016-03-24 05:30:07 +02:00
Sandu Liviu Catalin
01bafd7c4f Fix issues in the entity creation and destruction code.
Implement a locking mechanism to prevent entities be dstroyed in mid-destruction.
Also clean up properly when internal instances are deleted.
2016-03-24 05:28:55 +02:00
Sandu Liviu Catalin
23617b1493 Remove exceptions from entity creation/destruction if the entity already exists or doesn't at all. 2016-03-24 04:20:33 +02:00
Sandu Liviu Catalin
9657905586 Remove the SQLite methods that could be used to copy the database to and from memory because it they could crash easilly and didn't make much sense. 2016-03-23 08:24:14 +02:00
Sandu Liviu Catalin
41f5cfe663 Added options to control the memory allocated for the query queue.
Fixed const-correctness in several methods of the SQLite connection.
2016-03-23 05:50:58 +02:00
Sandu Liviu Catalin
1a312f7e7f Implemented the SQLite transaction class using the RAII pattern.
Fixed an issue that generated bad messages for errors that occurred in the formatted query execution method.
Minor adjustments throughout the code structure.
2016-03-23 05:43:19 +02:00
Sandu Liviu Catalin
133bedce50 Dumb implementation of GetTickCount to be revised later if necessary. 2016-03-23 00:49:10 +02:00
Sandu Liviu Catalin
543f3539fb Updated the MaxmindDB module to include the location for C++ exceptions in source code for debug builds. 2016-03-23 00:27:48 +02:00
Sandu Liviu Catalin
3a06fe6048 Updated the XML module to include the location for C++ exceptions in source code for debug builds. 2016-03-23 00:26:35 +02:00
Sandu Liviu Catalin
a8edb37733 Updated the IRC module to include the location for C++ exceptions in source code for debug builds. 2016-03-23 00:26:26 +02:00
Sandu Liviu Catalin
61be27890c Forgot to inlcude the INI entries in the previous commit. 2016-03-23 00:26:16 +02:00
Sandu Liviu Catalin
9d9ec20fe8 Updated the INI module to include the location for C++ exceptions in source code for debug builds. 2016-03-23 00:25:42 +02:00
Sandu Liviu Catalin
1398e5a93d Updated the SQLite module to include the location for C++ exceptions in source code for debug builds. 2016-03-23 00:25:32 +02:00
Sandu Liviu Catalin
933f96fbc5 Add the exception throwing macros to the base module header as well. 2016-03-22 16:54:40 +02:00
Sandu Liviu Catalin
bcdb9707f0 Initialize the server callback that notify about player and vehicle updates. 2016-03-22 16:41:15 +02:00
Sandu Liviu Catalin
a23d934482 Implemented the entity pool change server callback to actually create and release entity instances. 2016-03-22 04:27:11 +02:00
Sandu Liviu Catalin
1f0d26da33 Separated the code that deallocates entity instances so it can be shared by entity pool change events from the server.
Minor improvements in the entity allocation methods.
Removed the return value from the function binding method.
2016-03-22 04:12:25 +02:00
Sandu Liviu Catalin
b60c8bc12c Separate the code that actually allocates the entity instance so it can be shared by entity pool change events from the server. 2016-03-22 03:29:27 +02:00
Sandu Liviu Catalin
b8ddc7f3b8 Use script exceptions in central core if if an error occurred when creating entities. 2016-03-22 02:53:22 +02:00
Sandu Liviu Catalin
a35643ae6e Update squirrel to the latest version from the official repository.
Include the standard library that was filtered out by a mistake in the gitignore file.
2016-03-22 02:32:03 +02:00
Sandu Liviu Catalin
93dcf84263 Fixed the gitignore to not exclude the squirrel library. 2016-03-22 02:30:56 +02:00
Sandu Liviu Catalin
b24104c99f Revised the standard string library to have cleaner code.
Implemented the Explode/Implode functions that work with a single delimiter.
2016-03-22 02:07:34 +02:00
Sandu Liviu Catalin
ec88d0ae30 Replaced the numeric limits from previous legacy implementation with the one provided by C++11.
Added a few extra constants for numeric limits.
2016-03-22 02:05:50 +02:00
Sandu Liviu Catalin
8088ba94c2 Updated the exception system in the main plugin to also include the location in the source files in debug builds.
Moved the functions that extract base types from strings as static functions under the associated type.
Revised some of the base shared code.
Fixed some of the functions in the String library that did not take into account the null terminator.
2016-03-21 22:37:58 +02:00
Sandu Liviu Catalin
e3315430ea Minor additions to the SQLite statement time to make certain functions more transparent to the user and also converted most of the code to use curly braces even for single statements. 2016-03-18 12:58:02 +02:00
Sandu Liviu Catalin
6f417d60bb Reviewd the host plugin exports to prevent exceptions going outside the exported functions and minor improvements on value casting. 2016-03-18 12:56:48 +02:00
Sandu Liviu Catalin
46466930fb Fixed const correctness in Sqrat array. 2016-03-18 12:55:32 +02:00
Sandu Liviu Catalin
afc72a0162 Fixed a bug in the command system that did not take into account the null terminator when finding the command separator.
Added the option to retrieve the listener instance of the currently executed command.
Moved several helper functions to where they belong.
2016-03-17 22:06:14 +02:00
Sandu Liviu Catalin
ad6aef3637 Remove leftover printf from previous commit. 2016-03-17 09:49:27 +02:00
Sandu Liviu Catalin
bbb4c12f9c Fixed a bug in routines that prevented more than one routine to exist in a bucket.
Also added several helper functions to query information about routines.
2016-03-17 09:25:17 +02:00
Sandu Liviu Catalin
839c3c3434 Allow the retrieval of the currently executed command from the command system.
Also improve the way errors during the execution are handled and resources are released.
2016-03-16 19:11:42 +02:00
Sandu Liviu Catalin
98b2ddfda6 Fix bug in command system when identifiying where the command name ends.
Also add a quick helper function to retrieve the number of existing commands.
2016-03-15 14:12:14 +02:00
Sandu Liviu Catalin
acaf826498 Revised the implementation for the command system to be safer in situations that could lead to the destruction of the listener instance while still used.
Also changed the command system to store the commands in a contiguous container since commands are only inserted once and constantly accessed after.
Documented the command listener member functions.
Various other fixes and improvements.
2016-03-15 10:56:00 +02:00
Sandu Liviu Catalin
bab8146c89 Fixed a range error in the SQLite plugin when validating column indexes.
Added an extra flush overload to flush all elements in a handled manner.
Prefixed the Server table to not clutter the user space.
2016-03-13 13:39:17 +02:00
Sandu Liviu Catalin
a00e8c964f Fixed names of hash functions that were overwriting the hash types. 2016-03-12 22:58:03 +02:00
Sandu Liviu Catalin
5c81af5026 Minor changes in the entity types code style. 2016-03-12 22:51:44 +02:00
Sandu Liviu Catalin
a5b353b104 Adjusted routine messages to exclude unnecessary details except for places where the script error handler will catch the error location. 2016-03-12 22:51:05 +02:00
Sandu Liviu Catalin
f7f5eb82e5 Prevented exceptions from flush handler to propagate outside the loop. 2016-03-12 22:49:25 +02:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
d58099461a Updated the plug-in sdk header to work on recent servers. 2016-03-11 23:17:23 +02:00
Sandu Liviu Catalin
386c1d5254 Revert hash functions to their previous names. 2016-03-11 21:38:06 +02:00
Sandu Liviu Catalin
9ca2c7ca7d Reimplemented the formatted query methods in SQLite connection using a better approach. 2016-03-11 21:07:55 +02:00
Sandu Liviu Catalin
3fa7b17bd7 Fixed the SysPath type returning wrong result in test emptiness.
Added the option to build the path as a string using a speciffic style.
2016-03-11 20:52:00 +02:00
Sandu Liviu Catalin
f27a195b6f Fixed the INI compilation on Linux by reverting to the original library.
Fixed an infinite loop in the parsing of command specification strings.
Added the option to retrieve common configs with a fall back value if they don't exist.
Few other minor changes.
2016-03-11 20:04:26 +02:00
Sandu Liviu Catalin
20ae383c42 Remove duplicate code that converts a buffer to a script string object. 2016-03-11 04:23:59 +02:00
Sandu Liviu Catalin
4cac7d2d30 Updated the buffer class to include an optional numeric value to be used as an edit cursor or to mark the used buffer size.
Basic implementation of the system path class and several fuctions to retrieve information about the running system.
2016-03-11 04:14:28 +02:00