Sandu Liviu Catalin
2e0b7b6c7f
Fix an issue in StackStrF type which would not perform the format with just one parameter.
2016-11-17 16:01:30 +02:00
Sandu Liviu Catalin
2449a44c1f
Reduce the task parameters to 8.
...
Remove the Self property from the tasks because it's useless.
2016-11-17 12:59:29 +02:00
Sandu Liviu Catalin
a04fd3ba15
Implemented a mechanism for tasks to alter their properties and/or terminate themselves in the middle of the execution.
...
Also implemented a few other features such as the ability to have a persistent storage associated with them.
2016-11-17 12:29:58 +02:00
Sandu Liviu Catalin
5b32baa908
Update the task type to use the new allocator and not attempt to destroy a static instance.
2016-11-17 11:47:07 +02:00
Sandu Liviu Catalin
41f2971b7c
Implement an allocator for types that cannot be constructed by script and must not be destructed by script.
...
For cases where the actual instance is static and might outlive the VM itself.
2016-11-17 11:46:36 +02:00
Sandu Liviu Catalin
641e51e03c
Rename the lightweight object type.
...
Few adjustments to the tasks to overcome the limitation of removing themselves. Currently broken because they require a special Sqrat allocator.
2016-11-17 11:27:07 +02:00
Sandu Liviu Catalin
15c824ddae
Implement a constructor in the lightweight object type that copies a regular object.
2016-11-17 10:59:19 +02:00
Sandu Liviu Catalin
b4b00caba9
Replace the Argument class from the tasks with the new lightweight objects.
...
Include a forward declaration of the lightweight object in the base header.
2016-11-17 10:57:27 +02:00
Sandu Liviu Catalin
faf07319f9
Implement lightweight objects in the Sqrat binding utility that only store the object reference and don't use any firtual functions.
...
Also make a a few adjustments to the regular Object constructor.
2016-11-17 10:52:14 +02:00
Sandu Liviu Catalin
32061463c0
Remove duplicate code in Sqrat Var for the the StackStrF type.
2016-11-17 10:50:40 +02:00
Sandu Liviu Catalin
92faaccf06
Start from the outer namespace when catching or throwing exceptions in the Sqrat library.
2016-11-17 10:50:03 +02:00
Sandu Liviu Catalin
324ee99260
Minor comment fix in Routine class.
2016-11-17 00:24:24 +02:00
Sandu Liviu Catalin
2d07ed67b9
Initial implementation of entity tasks.
2016-11-17 00:23:59 +02:00
Sandu Liviu Catalin
cb9581786e
Adjust the Vector3 and Vector4 type functions to use the new method of receiving formatted strings.
2016-11-16 16:20:11 +02:00
Sandu Liviu Catalin
32ce07bdad
Adjust the Vector2 and Vector2i type functions to use the new method of receiving formatted strings.
2016-11-16 16:19:54 +02:00
Sandu Liviu Catalin
759318d48e
Adjust the Sphere type functions to use the new method of receiving formatted strings.
2016-11-16 16:19:38 +02:00
Sandu Liviu Catalin
6522889492
Adjust the GetColor function to use the new method of receiving formatted strings.
2016-11-16 16:19:29 +02:00
Sandu Liviu Catalin
e7b4462a68
Adjust the Quaternion type functions to use the new method of receiving formatted strings.
2016-11-16 16:19:13 +02:00
Sandu Liviu Catalin
3e35f7c916
Adjust the Color3 and COlor4 type functions to use the new method of receiving formatted strings.
2016-11-16 16:19:02 +02:00
Sandu Liviu Catalin
3ede9645e3
Adjust the Circle type functions to use the new method of receiving formatted strings.
2016-11-16 16:18:45 +02:00
Sandu Liviu Catalin
b9a23d9137
Adjust the AABB type functions to use the new method of receiving formatted strings.
2016-11-16 15:12:19 +02:00
Sandu Liviu Catalin
5f8c2f6cc5
Update all existing code to always receive StackStrF as a const reference.
2016-11-16 15:10:33 +02:00
Sandu Liviu Catalin
64a2957129
Always receive the StackStrF type as a const reference.
2016-11-16 15:09:37 +02:00
Sandu Liviu Catalin
cb8b595318
Adjust the Vehicle entity methods to use the new method of receiving formatted strings.
2016-11-16 14:49:12 +02:00
Sandu Liviu Catalin
6373c24bae
Adjust the Player entity methods to use the new method of receiving formatted strings.
2016-11-16 14:49:04 +02:00
Sandu Liviu Catalin
9a52981f19
Adjust the Pickup entity methods to use the new method of receiving formatted strings.
2016-11-16 14:48:57 +02:00
Sandu Liviu Catalin
3fbba9f3e2
Adjust the Object entity methods to use the new method of receiving formatted strings.
2016-11-16 14:48:48 +02:00
Sandu Liviu Catalin
e1fd4e1ee2
Adjust the Keybind entity methods to use the new method of receiving formatted strings.
2016-11-16 14:48:28 +02:00
Sandu Liviu Catalin
5669802169
Adjust the Checkpoint entity methods to use the new method of receiving formatted strings.
2016-11-16 14:48:19 +02:00
Sandu Liviu Catalin
85079a28d2
Adjust the Blip entity methods to use the new method of receiving formatted strings.
2016-11-16 14:48:11 +02:00
Sandu Liviu Catalin
91bb7ef7ba
Adjust Routine type methods to use the new method of receiving formatted strings.
2016-11-16 13:12:49 +02:00
Sandu Liviu Catalin
fd10399d9b
Adjust command manager and listener functions to use the new method of receiving formatted strings.
2016-11-16 13:04:25 +02:00
Sandu Liviu Catalin
c1fe2b4fc0
Include a default constructor and an explicit compile time string constructor in the StackStrF type.
2016-11-16 13:03:11 +02:00
Sandu Liviu Catalin
10f2ad95ec
Adjust the signal to use the new method of receiving formatted strings.
2016-11-16 12:32:58 +02:00
Sandu Liviu Catalin
c040b24d29
Adjust remaining miscellaneous functions to use the new method of receiving formatted strings.
2016-11-16 12:32:30 +02:00
Sandu Liviu Catalin
7fc61a28a8
Include a forward declaration of the StackStrF type.
2016-11-16 12:16:15 +02:00
Sandu Liviu Catalin
000133b2ba
Adjust some of the miscellaneous functions to use the new method of receiving formatted strings.
2016-11-16 12:15:46 +02:00
Sandu Liviu Catalin
c318dbf1da
Fix HideMapObjectEx registered as SetKeyCodeName.
2016-11-16 11:58:46 +02:00
Sandu Liviu Catalin
0137dfc66f
Move the plugin Squirrel utilities to the Sqrat binding utility.
...
Implement registration of functions and methods with string formatting support in the Sqrat binding utility.
Few minor other fixes.
2016-11-16 11:54:07 +02:00
Sandu Liviu Catalin
ed599c06dd
Minor fix in Squirrel. Don't always assume the specified parameter is a string.
2016-11-16 11:50:40 +02:00
Sandu Liviu Catalin
f8e57bf060
Minor code style and consistency adjustments.
2016-11-15 21:55:03 +02:00
Sandu Liviu Catalin
68c8921415
Don't attempt to overload the cmp metamethod in the chrono library types.
2016-11-15 21:48:23 +02:00
Sandu Liviu Catalin
ff4c0b6143
Minor code style fix in ini library.
2016-11-15 21:46:42 +02:00
Sandu Liviu Catalin
24f5eaafc6
Don't attempt to overload the cmp metamethod in the ini document type.
2016-11-15 21:45:56 +02:00
Sandu Liviu Catalin
677398a642
Don't attempt to overload the cmp metamethod in the comamnd listener type.
2016-11-15 21:44:58 +02:00
Sandu Liviu Catalin
242d6be1fe
Implement the pure typename meta-methods in Command types using the standard method.
2016-11-15 21:43:18 +02:00
Sandu Liviu Catalin
bf734928a9
Implement the pure typename meta-methods in Routine type using the standard method.
2016-11-15 21:43:02 +02:00
Sandu Liviu Catalin
de4c7da73f
Implement the pure typename meta-methods in Signal type using the standard method.
2016-11-15 21:42:54 +02:00
Sandu Liviu Catalin
d059d0d1ac
Implement the pure typename meta-methods in buffer type using the standard method.
2016-11-15 21:42:41 +02:00
Sandu Liviu Catalin
7fde39fb6d
Implement the pure typename meta-methods in system path type using the standard method.
2016-11-15 21:42:27 +02:00
Sandu Liviu Catalin
e562f06948
Implement the pure typename meta-methods in long int types using the standard method.
2016-11-15 21:42:11 +02:00
Sandu Liviu Catalin
7e72749fa7
Implement the pure typename meta-methods in INI library using the standard method.
2016-11-15 21:42:00 +02:00
Sandu Liviu Catalin
847222685b
Implement the pure typename meta-methods in AES type using the standard method.
2016-11-15 21:41:46 +02:00
Sandu Liviu Catalin
f18d4c948a
Implement the pure typename meta-methods in Sphere type using the standard method.
2016-11-15 21:24:39 +02:00
Sandu Liviu Catalin
f3a485177b
Implement the pure typename meta-methods in Vector4 type using the standard method.
2016-11-15 21:21:31 +02:00
Sandu Liviu Catalin
6860019457
Implement the pure typename meta-methods in Vector3 type using the standard method.
2016-11-15 21:21:19 +02:00
Sandu Liviu Catalin
5afe1f8127
Implement the pure typename meta-methods in Vector2i type using the standard method.
2016-11-15 21:21:07 +02:00
Sandu Liviu Catalin
b2d003424e
Implement the pure typename meta-methods in Vector2 type using the standard method.
2016-11-15 21:20:55 +02:00
Sandu Liviu Catalin
0f2967aa05
Implement the pure typename meta-methods in Quaternion type using the standard method.
2016-11-15 21:20:42 +02:00
Sandu Liviu Catalin
b04b7c6d84
Implement the pure typename meta-methods in Color4 type using the standard method.
2016-11-15 21:20:25 +02:00
Sandu Liviu Catalin
dcc323202f
Implement the pure typename meta-methods in Color3 type using the standard method.
2016-11-15 21:20:10 +02:00
Sandu Liviu Catalin
8d5efe524e
Implement the pure typename meta-methods in Circle type using the standard method.
2016-11-15 21:21:15 +02:00
Sandu Liviu Catalin
2cce140e1b
Implement the pure typename meta-methods in AABB type using the standard method.
2016-11-15 21:20:57 +02:00
Sandu Liviu Catalin
60d6a96e07
Implement the pure typename meta-methods in chrono types using the standard method.
2016-11-15 21:20:33 +02:00
Sandu Liviu Catalin
27af2cfd3c
Remove the _cmp metamethod from the entity types because it's useless for registered types.
2016-11-15 21:19:06 +02:00
Sandu Liviu Catalin
411ac5ef28
Implement the pure typename meta-methods in entity types using the standard method.
2016-11-15 21:16:24 +02:00
Sandu Liviu Catalin
351d44a8e5
Implement a mechanism for generating pure typename functions.
2016-11-15 21:06:41 +02:00
Sandu Liviu Catalin
2b282951af
Extra validation code in the MaxmindDB module.
2016-11-15 06:34:10 +02:00
Sandu Liviu Catalin
5cadbc82b8
Fix left-over comments in MaxmindDB module.
2016-11-14 15:50:06 +02:00
Sandu Liviu Catalin
7d1493afd3
More code cleanup and fixes in the MaxmindDB module.
...
Implemented the SearchNode wrapper.
2016-11-14 15:46:48 +02:00
Sandu Liviu Catalin
fb5a5b0090
Miscellaneous code cleanup in the MaxmindDB module.
2016-11-14 14:44:01 +02:00
Sandu Liviu Catalin
b9bc8ce2ad
Remove the comparison metamethods from the SQLite module.
2016-11-14 14:07:42 +02:00
Sandu Liviu Catalin
3107513350
Initial implementation of the MaxmindDB module.
2016-11-14 14:06:30 +02:00
Sandu Liviu Catalin
2ef75d0dce
Update the MaxmindDB library to latest version. Also include configs for all platforms.
2016-11-14 14:05:29 +02:00
Sandu Liviu Catalin
ded30fdeac
Implement move constructor in StackStrF type.
2016-11-14 10:25:31 +02:00
Sandu Liviu Catalin
da76d87a93
Move some of the signal implementation to source file.
...
Don't combine the Consume and Approve methods.
The null value does not count towards returned values anymore.
2016-11-13 14:50:04 +02:00
Sandu Liviu Catalin
df12603405
Fix issue in signal which could ommit to push a return value on the stack.
2016-11-13 14:06:53 +02:00
Sandu Liviu Catalin
5b159fba89
Do not throw exceptions in SQLite Transaction destructor.
2016-11-13 09:31:23 +02:00
Sandu Liviu Catalin
33f98990df
Initial implementation of the AABB bounding box type.
2016-11-13 08:32:04 +02:00
Sandu Liviu Catalin
f54271a4fd
Implement arbitrary user data for signals.
2016-11-04 01:31:49 +02:00
Sandu Liviu Catalin
5b39f7f061
Implement the Approve and Request methods of emitting signals.
2016-11-04 01:31:07 +02:00
Sandu Liviu Catalin
8f1af58de7
Forgot to commit changes to the module project and include the Signal implementation.
2016-10-31 18:41:57 +02:00
Sandu Liviu Catalin
07caa7eb52
Don't use overloads in the foreach algorithm for simplicity and performance reasons.
2016-10-31 18:34:27 +02:00
Sandu Liviu Catalin
8239aef551
Updated the SQLite library to the latest version.
2016-10-31 18:29:09 +02:00
Sandu Liviu Catalin
e8eff997a0
Updated PUGIXML.
2016-10-31 18:28:38 +02:00
Sandu Liviu Catalin
a3594145ad
Fix the inequality operator from the Slot class. Remove unnecessary implementation of other comparison operators from the slot class.
2016-10-31 17:35:54 +02:00
Sandu Liviu Catalin
743ceec248
Minor adjustments to the Signals implementation. Also added the Head and Tail methods when connecting slots.
2016-10-30 21:25:10 +02:00
Sandu Liviu Catalin
b946e7a9b9
Initial implementation of the built-in event system based on the signals and slots design.
2016-10-30 18:26:37 +02:00
Sandu Liviu Catalin
ad876f6a8f
Implement a utility to help with deleting instances even when exceptions are thrown.
2016-10-30 18:25:53 +02:00
Sandu Liviu Catalin
4ad9402d8a
Implement association of arbitrary user data in command listeners.
...
Also keep track of all listener instances by having them link to eachother as a double linked list. This should make it easy to release any script resources at shutdown.
Now that all listeners are being tracked, binding callbacks is less strict and does not require a listener to be attached anymore.
2016-10-29 22:08:38 +03:00
Sandu Liviu Catalin
0111cc5a46
Insert a custom part reason identifier to be able to distinct between kick and ban.
2016-10-25 16:16:59 +03:00
Sandu Liviu Catalin
adbacfca11
Set kick/ban header to the default identifier if one was not specified.
2016-10-25 16:08:23 +03:00
Sandu Liviu Catalin
0df1582ac6
Implement foreach entity algorithm that accepts a payload to send to the callback.
2016-10-25 16:07:10 +03:00
Sandu Liviu Catalin
80612c4146
Update the SQLite library to the latest version.
2016-10-09 23:41:59 +03:00
Sandu Liviu Catalin
b023eef797
Fix a bug in the String library introduced by the previous commit.
2016-09-15 03:50:14 +03:00
Sandu Liviu Catalin
3e8250d04b
Fix bug in String library which would cause the first character to be skipped from the first chunk if no previous match was found.
2016-09-15 03:42:26 +03:00
Sandu Liviu Catalin
2d433c34b4
Introduce new helper functions into the String library.
2016-09-15 03:04:05 +03:00
Sandu Liviu Catalin
5072f7712c
Improve the String library to reduce the size of the generated executable code.
2016-09-15 03:03:06 +03:00
Sandu Liviu Catalin
501d0884f3
Adjust various debugging messages during the script loading stage inside the plugin core.
2016-09-11 20:48:20 +03:00
Sandu Liviu Catalin
5d4f920007
Implement another constructor for Sqrat's Object type to grab an object reference right from the stack.
2016-09-11 20:10:29 +03:00