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

143 Commits

Author SHA1 Message Date
Sandu Liviu Catalin
fbb7dc9f75 Implemented various helper functions for the quaternion class. 2016-08-23 23:02:19 +03:00
Sandu Liviu Catalin
f3db1101ab Added a few helper constants in the shared header to prepare for Quaternion implementation. 2016-08-23 23:01:57 +03:00
Sandu Liviu Catalin
e99e6259f7 Add a helper class to make sure a certain value is assigned to a variable regardless of the thrown exceptions. 2016-08-19 19:45:43 +03:00
Sandu Liviu Catalin
d08e57f69a Implement null instance in algorithms. 2016-08-19 04:07:43 +03:00
Sandu Liviu Catalin
4d3561d048 Implement algorithms for name filtering. 2016-08-19 03:49:50 +03:00
Sandu Liviu Catalin
59b0d20f08 Initial implementation of simple name filtering. 2016-08-19 03:27:56 +03:00
Sandu Liviu Catalin
0861559e0b Adjust the distance method in Vector3 type. 2016-08-17 13:51:14 +03:00
Sandu Liviu Catalin
5c26ba62df Add helper methods to the Vector3 type to rotate on each individual axis. 2016-08-04 03:42:48 +03:00
Sandu Liviu Catalin
ef2bc41fbc Add method to the Vector3 type to obtain a rotated version of the point. 2016-08-04 03:41:46 +03:00
Sandu Liviu Catalin
4a2b9d5400 Add methods to the Vector3 type to calculate interpolation. 2016-08-04 03:40:01 +03:00
Sandu Liviu Catalin
26c0bc4872 Add methods to the Vector3 type to calculate the angle and check if between two points. 2016-08-04 03:38:54 +03:00
Sandu Liviu Catalin
cb819d417b Add methods to the Vector3 type to calculate the dot and cross product. 2016-08-04 03:37:26 +03:00
Sandu Liviu Catalin
18d0fedb91 Add methods to the Vector3 type to calculate the distance to another point. 2016-08-04 03:35:27 +03:00
Sandu Liviu Catalin
2d726420e0 Add methods/properties to the Vector3 type to retrieve the length and normalize it. 2016-08-04 03:34:16 +03:00
Sandu Liviu Catalin
6e7c14eafb Implement Quaternion to Euler conversion as a member method to Vector3 type. 2016-08-04 03:30:19 +03:00
Sandu Liviu Catalin
624606e482 Add a few more helper members to the Vector3 type. 2016-08-04 03:21:43 +03:00
Sandu Liviu Catalin
9fcbf54893 Add IDENTITY helper to the quaternion. 2016-08-04 03:09:43 +03:00
Sandu Liviu Catalin
9c4198770d Add hepter variables and typedefs to the shared basic header. 2016-08-04 03:08:59 +03:00
Sandu Liviu Catalin
d4f39e636e Fix the inequality operator in basic types. 2016-07-29 18:00:10 +03:00
Sandu Liviu Catalin
18f5f90a47 Implement case insensitive search in algorithms. 2016-07-26 23:08:27 +03:00
Sandu Liviu Catalin
48485981f0 Improve Circle method names to be more consistent with the rest of the basic types. 2016-07-25 00:32:35 +03:00
Sandu Liviu Catalin
d30e1210ac Improve the Vector4 registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:28:37 +03:00
Sandu Liviu Catalin
2857e0e4be Improve the Vector3 registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:10:46 +03:00
Sandu Liviu Catalin
76bef3d87c Improve Color4 method names to be more consistent with the rest of the basic types. 2016-07-25 00:10:26 +03:00
Sandu Liviu Catalin
c8d2e9249a Improve Color3 method names to be more consistent with the rest of the basic types. 2016-07-25 00:10:17 +03:00
Sandu Liviu Catalin
484923790a Update Circle to comply with the changes made to Vector2. 2016-07-25 00:09:31 +03:00
Sandu Liviu Catalin
aa65c79926 Improve the Vector2i registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:09:05 +03:00
Sandu Liviu Catalin
a695690ec7 Improve the Vector2 registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:08:53 +03:00
Sandu Liviu Catalin
c8685919de Improve the Sphere registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:08:37 +03:00
Sandu Liviu Catalin
13ddc704d6 Improve the Quaternion registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-25 00:08:28 +03:00
Sandu Liviu Catalin
274ce72a4b Improve the AABB registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-24 23:18:27 +03:00
Sandu Liviu Catalin
3cea68bdca Improve the Color4 registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-24 23:18:12 +03:00
Sandu Liviu Catalin
03312b7340 Improve the Color3 registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-24 23:17:56 +03:00
Sandu Liviu Catalin
5502c7f8c7 Improve the Circle registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-24 23:17:47 +03:00
Sandu Liviu Catalin
38e5761b94 Improve the AABB registration code to avoid using overloads where not necessary.
Also restructured the registration code a bit.
2016-07-24 21:58:34 +03:00
Sandu Liviu Catalin
ad1955dbdd Add static functions to access and modify string delimiter for bas types since static properties are read only. 2016-07-24 21:29:37 +03:00
Sandu Liviu Catalin
67e2ba9107 Implement both the uppercase and lowercase versions of properties for base types. 2016-07-17 15:39:59 +03:00
Sandu Liviu Catalin
c5d3235aec Add algorithms to count entities with certain aspects. 2016-07-17 13:33:42 +03:00
Sandu Liviu Catalin
26f5c495f5 Explicitly make sure that collectors in entity search algorithms are sent by reference instead of by copy. Should close #16
Invert the negate parameter to comply with how the algorithms work and what the negare argument is supposed to do.
Few other minor additions or adjustments.
2016-07-14 23:34:52 +03:00
Sandu Liviu Catalin
6975572bfe Fix incorrect placement of functions used to find players by name. 2016-07-10 23:29:45 +03:00
Sandu Liviu Catalin
a06efdafc5 Improve the Clamp functions to accept any type of value for all parameters.
Implement common functions to work with date and time types and avoid duplicate code.
Remove unnecessary functions used to retrieve the valie in long integer instances.
Various other fixes and name adjustments.
2016-07-09 21:21:07 +03:00
Sandu Liviu Catalin
e0fd5fa214 Implement pointer stealing for the auto-deleter utility. 2016-07-03 03:20:23 +03:00
Sandu Liviu Catalin
875ea33022 Fix negation inf entity searching algorithms. 2016-06-21 17:56:58 +03:00
Sandu Liviu Catalin
cb82a98bf6 Fix incorrect size check in entity search algorithms. 2016-06-21 17:44:21 +03:00
Sandu Liviu Catalin
40e024e72d Further improvements of the entity searching algorithms. 2016-06-21 17:25:43 +03:00
Sandu Liviu Catalin
66e604cec7 Add back some of the entity search functions. 2016-06-21 16:15:25 +03:00
Sandu Liviu Catalin
284e1be3f7 Improved the entity searching algorithms by removing duplicate code. 2016-06-21 16:04:21 +03:00
Sandu Liviu Catalin
29af51c518 Improve entity searching algorithms. 2016-06-21 15:17:08 +03:00
Sandu Liviu Catalin
1d12ddd60d Improve searching for active entities. Also fix a possible crash because the entity instance pushed on the stack was appending to itself instead of the array. 2016-06-21 09:02:44 +03:00
Sandu Liviu Catalin
29abf2e9c0 Add a helper class that implements RAII to delete an instance of not explicitly released. 2016-06-20 18:01:42 +03:00
Sandu Liviu Catalin
b59710ddeb Prepare the script container for the revised script loading system. 2016-06-18 20:29:28 +03:00
Sandu Liviu Catalin
fe70560234 Add a helper function to obtain the last system error as a string and throw it. 2016-06-18 20:27:23 +03:00
Sandu Liviu Catalin
2242ac9394 Make constructor public in script container.
Throw exception if trying to create script container with invalid VM.
2016-06-17 03:26:29 +03:00
Sandu Liviu Catalin
2b6fdcd855 Implement utility to hold script contents for debugging purposes. 2016-06-17 03:15:02 +03:00
Sandu Liviu Catalin
4327eaf72c Add helper functions to pack colors into integers.
This removes the need to create an instance of the Color3 or Color4 classes just to obtain a packed color integer.
2016-06-14 02:18:37 +03:00
Sandu Liviu Catalin
a1af9af0d7 Fix wrong includes left over by the merge of numeric libraries. 2016-06-05 04:15:23 +03:00
Sandu Liviu Catalin
d42040c9c0 Merge the Random and Math libraries into the Numeric library and organize code a bit. 2016-06-05 00:00:59 +03:00
Sandu Liviu Catalin
0c92601362 Update the module API and merge shared code between modules and host plugin. 2016-06-03 21:26:19 +03:00
Sandu Liviu Catalin
7ee5fe2f0c Remove the {fmt} library from the project. Too many compilation issues with it. 2016-05-25 22:47:55 +03:00
Sandu Liviu Catalin
45c5f1129e Get rid of type aliasing warning. 2016-05-24 05:39:54 +03:00
Sandu Liviu Catalin
82c3fa4439 Update the {fmt} library to fix the colision with C string.h header. 2016-05-23 22:42:49 +03:00
Sandu Liviu Catalin
f2361a27c3 Untested update to the new plugin API.
Various other changes to the plugin as well.
2016-05-22 06:20:38 +03:00
Sandu Liviu Catalin
acdf9300b6 Update the type conversion utility to include more types and be more flexible. 2016-04-20 09:23:18 +03:00
Sandu Liviu Catalin
b818a162ee Initial implementation of the standard math library.
Implemented utilities to convert between fundamental types.
Implemented helper functions to retrieve numeric values from the stack at all costs.
Implemented various delegates on the long integer types to mimic the standard types.
Moved most of the stack utilities in a separate source.
Various other fixes and improvements.
2016-04-14 03:08:06 +03:00
Sandu Liviu Catalin
159e2f5929 Fix a posible buffer overflow from the previous commit. 2016-04-03 21:27:57 +03:00
Sandu Liviu Catalin
ef27cf3c5f Update the SToB function to convert the string to lowercase first and then perform the comparison. 2016-04-03 21:26:58 +03:00
Sandu Liviu Catalin
ab3edcfe4d Remove functions that check character class from the shared code.
Expose the remaining floating point comparison functions.
2016-04-03 21:09:08 +03:00
Sandu Liviu Catalin
dfacd2c86c Reverse the order of the VM and stack top in stack guard. 2016-04-02 12:32:39 +03:00
Sandu Liviu Catalin
eed7b70374 Helper classes to used CType functions as predicate in algorithms. 2016-03-29 05:39:17 +03:00
Sandu Liviu Catalin
0812472ac5 Forgot to include variable arguments library in shared buffers. 2016-03-27 18:41:10 +03:00
Sandu Liviu Catalin
886e525119 Implement a helper function to clamp a value between the ranges of another type. 2016-03-26 18:14:47 +02:00
Sandu Liviu Catalin
e4b93b020a Implemented a helper class to retrieve a string value from the stack as a string or generate a formatted string if necessary. 2016-03-25 00:25:03 +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
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
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
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
Sandu Liviu Catalin
70e5f0ba21 Migrated the host module to C++ exceptions as well.
Also enabled the latest C++ revision in the project.
Replaced the Random library with the one provided by C++11.
Implemented a simple AES256 encryption class.
Various other fixes and improvements.
2016-03-10 05:57:13 +02:00
Sandu Liviu Catalin
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
Sandu Liviu Catalin
ef4dda0756 Move the random library to the external directory. 2016-02-22 09:27:20 +02:00
Sandu Liviu Catalin
a66904702e Prefix library names to avoid poluting the global scope.
Fix consistent naming through base types.
2016-02-21 07:39:33 +02:00
Sandu Liviu Catalin
06e598acfb Dumped the old implementation. Started with a more simple approach. 2016-02-21 00:25:00 +02:00
Sandu Liviu Catalin
73b93d707c Implemented a minimal version of ToStringF with a static buffer. 2015-11-11 08:54:50 +02:00
Sandu Liviu Catalin
3da18ee02b Initial implementation of the internal debugging system. 2015-11-10 14:42:52 +02:00
Sandu Liviu Catalin
c6ee38e3b6 Implemented user defined type conversion for color types. 2015-11-09 01:35:39 +02:00
Sandu Liviu Catalin
3206d49404 Implemented a simple command system. Added a custom buffer class. Implemented reconnection for IRC sessions. Various other adjustments and additions. 2015-11-07 12:17:39 +02:00
Sandu Liviu Catalin
ea1688bc35 Prepared the base types for documentation. 2015-11-01 10:55:47 +02:00
Sandu Liviu Catalin
46801b1ce8 Discarded the noexcept specifier entirely. 2015-11-01 05:48:01 +02:00
Sandu Liviu Catalin
2409a896df Changes required to compile on x64 and against extra compiler warnings. 2015-11-01 05:36:03 +02:00
Sandu Liviu Catalin
0ebdecb75f Various. 2015-10-25 03:20:33 +03:00
Sandu Liviu Catalin
6ed02d0fd4 Initial commit. 2015-09-30 03:56:11 +03:00