1180 Commits

Author SHA1 Message Date
Valentin Grünbacher
9d4c02f7ca Nuke IsPackReadable
This native exposes/requires knowledge about implementation details of the
internal DataPack structure. Plugins can not properly deal with this, and
abusing this functionality results in a chance of future breakage.
2015-03-30 03:48:52 +02:00
Valentin Grünbacher
4fbf4ee03d Merge datapack updates from SoureMod 2015-03-15 22:38:49 +01:00
xPaw
fddebce313 Update modules paths 2015-03-13 15:23:05 +02:00
Vincent Herbet
446029e7cf Merge pull request #220 from Arkshine/feature/third-party-libs
Move third party libraries in own directory and fix/cleanup VS projects files
2015-03-10 18:25:40 +01:00
Arkshine
48d6a3354a Normalize all the line endings 2015-03-10 16:51:45 +01:00
Arkshine
acf910b64b Fix and clean up VS projects files
+ removed unused variable :P
2015-03-10 16:20:21 +01:00
Arkshine
aaafe0f3f2 Compile Hashing lib as static and link to AMXX 2015-03-10 12:15:46 +01:00
Arkshine
5f6756cb4d Zlib: Remove unrelated changes 2015-03-10 00:06:30 +01:00
Arkshine
a565e4a7b1 Zlib: Update library to 1.2.8 2015-03-10 00:06:29 +01:00
Arkshine
265e15116b Zlib: Adjust VS project files 2015-03-10 00:06:29 +01:00
Arkshine
47cd091879 Zlib: Use the generated static library with AMXX 2015-03-09 23:59:11 +01:00
Arkshine
181cbae74c Use upstream AMTL as a submodule 2015-03-09 22:53:58 +01:00
Vincent Herbet
c4497ff17d Merge pull request #211 from Arkshine/fix/cvar-mapchange
Fix issue where at mapchange a cvar current value is overwritten by defined bounds where it should not
2015-02-20 15:50:49 +01:00
HttrckCldHKS
530d0bf570 Replace CLang file hashing with .st_mtime
Replace CLang file hashing with .st_mtime for performance.
Also, fix a problem in CLangMngr::MergeDefinitionFile.
2015-02-19 21:28:45 +02:00
Arkshine
80b01d3505 Fix issue where at mapchange a cvar current value is overwritten by defined bounds where it should not 2015-02-19 16:05:49 +01:00
Valentin Grünbacher
78f577686a Fix ArrayDestroy/DestroyStack erroring on null handle 2015-02-17 23:24:17 +01:00
HttrckCldHKS
c071f53f2c Add new hashers and new natives
Replace the only hasher called MD5 with the ones listed below.

(+) CRC32, MD5, SHA1, SHA256, SHA3 224 BIT, SHA3 256 BIT, SHA3 384 BIT,
SHA3 512 BIT, Keccak 224 BIT, Keccak 256 BIT, Keccak 384 BIT and Keccak
512 BIT.

Add the natives listed below.

(+) hash_string(const string[], hashType:type, output[], const
outputSize)
(+) hash_file(const fileName, hashType:type, output[], const outputSize)
(+) is_arkshine_a_doctor() :  Hidden native, but a sign of recompense
for him being very active since 1.8.3 version of AMX Mod X
(+) get_system_endianness() :  Checks if the system is currently Big
Endian or Little Endian.

Add the following Enum.

(+) hashType {}
(+) sysEndianness {}

Deprecate the following natives.

(-) amx_md5()
(-) amx_md5_file()

It has been tested on Windows and Linux. The sanity checks seems to be
properly working, so no worries about them.

These are useful if people are using Sockets, cURLs or MySQLs in order
to compare hashes of different files On-line for further investigation.
You are not able to check if the files are older or newer, but you can
see if the content is different (Hash Checksum mismatch).

I'm glad I did this. Thanks to
2015-02-16 14:39:45 +02:00
Vincent Herbet
7452317c10 Merge pull request #203 from Arkshine/fix/crash-on-shutdown
Fix crash by freeing memory the right way
2015-02-12 14:46:53 +01:00
Arkshine
120e5b94f9 Fix crash by freeing memory the right way 2015-02-12 14:37:46 +01:00
Vincent Herbet
4ec11496e6 Fix missing new lines in "amxx version" command 2015-02-12 10:46:20 +01:00
Arkshine
fb28b2d416 Fix missing parenthesis. 2015-02-11 00:18:22 +01:00
Arkshine
e99a1c8b09 Fix crash when cvar hook detour is not created 2015-02-10 23:19:03 +01:00
Vincent Herbet
7d084ee0bf Merge pull request #185 from Arkshine/feature/hooking-cvars
Introduce new features for cvars
2015-01-30 14:20:11 +01:00
Arkshine
1488b9747f Cvars: De-frenchify by Nextra 2015-01-29 21:44:53 +01:00
Arkshine
a5b5c7e9cd Cvars: Fix code to avoid Nextra be confused 2015-01-29 14:01:58 +01:00
Arkshine
f8baef15ca Cvars: Adjust more things
- Moved some functions in CvarManager
- Fixed detour enabled all the time
- Fixed bounds not properly handled
- Refreshed data of regisetered cvars at map change
2015-01-28 23:51:43 +01:00
Arkshine
187b187ef2 Cvars: To not traumatize Nextra 2015-01-28 00:58:07 +01:00
Arkshine
ac50f3ff34 Cvars: Check lower/upper bounds in create_cvar as well 2015-01-28 00:47:01 +01:00
Arkshine
e4a7e67783 Cvars: Adjust few things
- Hook is not as post, because allowing blocking change is not really that useful and this makes a context more simpler.
- Setting a min bound > max bound and reversely throw an error
- set_pcvar_bounds set cvar value on new min/max bound.
- Remove error "A cvar can't be binded with several variables", it's okay to no error such situation.
2015-01-28 00:26:24 +01:00
Arkshine
1a5e1928ec Cvars: Fix field orders and linux compilation 2015-01-27 16:27:26 +01:00
Arkshine
d75b14d4af Cvars: Extend "amxx cvars" command output 2015-01-27 15:07:17 +01:00
Arkshine
356a981164 Cvars: Add get/set_pcvar_bool natives 2015-01-26 14:26:48 +01:00
Arkshine
8a241ed0fd Cvars: Add new description param in get_plugins_cvar 2015-01-25 11:38:01 +01:00
Arkshine
cb0b9da51f Cvars: Add bind_pcvar_num/float/string 2015-01-24 21:31:00 +01:00
Arkshine
8ebb7be36d Cvars: Add get|set_pcvar_bounds natives 2015-01-24 15:04:49 +01:00
Arkshine
a05d0df50e Cvars: Add create_cvar native with more options (description, bounds) 2015-01-23 19:05:34 +01:00
Arkshine
15ad1d2247 Cvars: Moving cvars stuffs in its own files
cvars.cpp renamed to CvarManager.cpp
all cvars natives moved to a new cvars.cpp file
Pawn include is updated as wall.
2015-01-23 19:05:34 +01:00
Arkshine
768fa2c3bc Cvars: Add hook_cvar_change, [enable|disable]_cvar_hook natives 2015-01-23 19:05:33 +01:00
Arkshine
0db5963641 Cvars: Remove global forward 2015-01-23 19:05:33 +01:00
Arkshine
cdc7d550eb Cvars: Rearrange a bit some code
Changed class CCVar -> struct CvarInfo
Added CvarManager class and moved some code there
Code of registering a cvar is rewritten
Cvars datas are stored in a hashtable for fast lookup
For natives compatibility, an inline list is kept (though CList -> ke::InlineList)
Replace some CVAR_GET/SEt_ by FindVar
2015-01-23 19:05:32 +01:00
Arkshine
f973f5beb7 Cvars: Convert CString to ke::AString in CCVar class 2015-01-23 19:05:32 +01:00
Arkshine
6619176a76 Cvars: Move CCVar class to cvars.h 2015-01-23 19:05:31 +01:00
Arkshine
faeaf9259e Cvars: Add OnCvarChanged global forward
I really tried to use "cvar_changed" as name, but it bothered me so much to look that weird I could not keep it.
2015-01-23 19:05:31 +01:00
Arkshine
34d91789c4 Cvars: Hook Cvar_DirectSet from engine library 2015-01-23 19:05:30 +01:00
Arkshine
cdfd789f56 Rename change_level to engine_changelevel 2015-01-23 16:55:16 +01:00
Arkshine
dd9975cd67 Rename msvc10 directories to msvc12 2015-01-14 10:31:33 +01:00
Arkshine
97369c5d6c Upgrade VS projetcs to use v120_xp toolset and fix missing include paths 2015-01-14 10:25:46 +01:00
Vincent Herbet
7f71cfaee7 Merge pull request #165 from Arkshine/feature/add-version-lib-and-missing-rc
Update versioning system and add missing module RC file (bug 6222)
2015-01-07 18:59:51 +01:00
Arkshine
7c96c30be8 Replace old SVN_* defines by the new ones 2014-12-08 01:42:42 +01:00
Arkshine
1146bcad2c C++11: Fix some code 2014-12-06 14:02:55 +01:00