summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2016-06-25Added mesf() command (combination of mes() and sprintf())Haru3-1/+37
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Added _$() macro to the script engine to mark a translatable string as ↵Haru3-6/+32
format string - Strings passed to sprintf should use the _$() macro instead of _(), to generate the .pot translation template with a directive to correctly handle the % sign. - Strings passed through _() are instead explicitly marked as regular (non format) strings if they contain '%'. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Split sprintf logic out of buildin_sprintf (to be used by other commands as ↵Haru1-214/+234
well)
2016-06-25Added option to strip hard line-breaks from `mes` dialogsHaru2-0/+25
- The `\r` character, in a `mes` dialog, is normally represented by the client as a hard line-break. - Since a client may have different requirements in line lengths (for example using a font with different size or metrics), an user might wish to ignore hard-wraps and let the client automatically soft-wrap instead. - If you want to hard-wrap (official default), keep the SCRIPT_MES_STRIP_LINEBREAK define commented out. - If you want to let the client soft-wrap automatically (may work better for custom clients), uncomment it. - Imprved HULD handling of `\r` (to avoid control characters in the generated file) - Please note that this requires cooperation by script writers: * Each `mes` should contain one and only one sentence, possibly without using the '+' concatenation (but, rather, sprintf). * Two separate sentences (where a hard-wrap is required even for soft-wrapped text) should always go into separate `mes` commands. * Following the above two recommendations, also produces a better quality translations .pot file. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Removed the uncommon (and useless) multi-argument variant of mes()Haru1-12/+3
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Moved translations template generator to a pluginHaru6-146/+232
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Improved the format of the exported .pot translation templateHaru2-2/+25
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25HPM Hooks UpdateHaru4-0/+169
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Split translation handling out of parse_simpleexpr_string()Haru2-74/+83
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Split parse_simpleexpr() in specialized sub-functions (HPM compatibility)Haru2-182/+220
- parse_simpleexpr_paren() - parse_simpleexpr_number() - parse_simplexpr_string() - parse_simpleexpr_name() Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Correctly escaped special characters in the generated_translations.potHaru3-16/+13
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Improved handling of nested function calls by the HULDHaru1-17/+14
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Re-implemented BUILDIN(sprintf)Haru1-93/+188
- The function now checks its arguments, rather than passing them to the system implementation (safer against arbitrary memory access or wrong variable type) - Implemented positional ('%1$d') specifiers (POSIX style) - See script_commands.txt for details about the supported format specifiers. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25HPM Hooks UpdateHaru3-20/+23
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Changed script->translation_buf to a VECTORHaru2-28/+26
Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Replaced script_code::script_buf with a VECTORHaru3-48/+58
- Fixes various signed/unsigned comparisons. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Replaced script->buf with a VECTORHaru2-125/+128
- Fixes various signed/unsigned comparisons. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Replaced struct script_string_buf definition with a VECTORHaru2-84/+77
- Fixes various signed/unsigned comparisons. Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Implemented VECTOR_TRUNCATEHaru1-0/+10
- Clears a VECTOR, without freeing its data (truncates length, preserving capacity) Signed-off-by: Haru <haru@dotalux.com>
2016-06-25Fix assert checks from commit e28a19cfff1f26457d6a0f6192d6782c8db7d3d2.Andrei Karas1-3/+3
2016-06-24HPM Hooks UpdateHercules.ws4-0/+34
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2016-06-24Move ammo check into separate function in battle.cAndrei Karas2-32/+44
2016-06-24Add missing checks in pc.cAndrei Karas1-9/+115
2016-06-24Add missing checks into path.cAndrei Karas1-0/+5
2016-06-24Add missing checks into party.cAndrei Karas1-2/+47
2016-06-24Add missing checks into npc_chat.cAndrei Karas1-8/+28
2016-06-24HPM Hooks UpdateHercules.ws4-0/+68
Signed-off-by: HerculesWSAPI <Hercules@efficiently.awesome>
2016-06-23Interface clif_bl_type now it's clif->bl_typehemagx2-6/+8
2016-06-23Interface disguised function, now it's clif->isdisguised.hemagx2-51/+61
2016-06-23Fix Possible Crash on clif_bl_type now it checks if vd is nullhemagx2-16/+51
2016-06-18Move npc static variables into npc interface.Andrei Karas2-47/+57
2016-05-14Merge pull request #1289 from mkbu95/masterHaru1-18/+0
Remove swap testing code (leftover in cbasetypes)
2016-05-14Fixed an issue that causes `@showmobs` to skip entriesHaru1-1/+1
- Follow-up to b3c722ecf777aeeea6317755a6adfc0216b7a2bd Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Removed dead leftover code from some testing a while ago.Matheus Macabu1-18/+0
2016-05-14Removed leftover definition of BUILDIN(checkre)Haru1-62/+0
- The command was already deprecated in ca877ec and removed in 7e93d08 - Resolves #1288 Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'int' with 'int32' (guaranteed size) in all packed structsHaru1-45/+45
Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'char' (except 'char[]') with 'int8' (guaranteed size) in all ↵Haru1-11/+11
packed structs Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'short' with 'int16' (guaranteed size) in all packed structsHaru1-202/+202
Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'unsigned int' with 'uint32' (guaranteed size) in all packed structsHaru2-63/+63
Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'unsigned short' with 'uint16' (guaranteed size) in all packed structsHaru1-39/+39
Signed-off-by: Haru <haru@dotalux.com>
2016-05-14Replaced 'unsigned char' with 'uint8' (guaranteed size) in all packed structsHaru1-77/+77
Signed-off-by: Haru <haru@dotalux.com>
2016-05-08Removed some legacy checks for MSVC <= 2003Haru3-11/+7
Signed-off-by: Haru <haru@dotalux.com>
2016-05-08Removed 'temporary fix for bugreport:4961', no longer necessaryHaru1-10/+0
- The provided test cases return success on all currently supported FreeBSD versions (9 and 10) - Fixes #1283
2016-05-08Removed some old Subversion <=1.6 support codeHaru1-34/+0
Signed-off-by: Haru <haru@dotalux.com>
2016-05-08Removed some old MySQL 4 compatibility codeHaru1-15/+0
Long overdue, since MySQL 4.x was already unsupported for quite a while (to be fair, we're about to deprecate support for MySQL 5.0 and 5.1) Signed-off-by: Haru <haru@dotalux.com>
2016-05-08Fixed various issues pointed out by cppcheckHaru18-100/+92
Signed-off-by: Haru <haru@dotalux.com>
2016-05-01Fixed truncation of `@request` messagesHaru1-2/+2
- The `@request` command still makes an inter-server call. This will be fixed at a later point. Signed-off-by: Haru <haru@dotalux.com>
2016-05-01Merge pull request #1253 from HerculesWS/hpmhookingAndrei Karas19-10652/+17803
Hpmhooking improvements
2016-05-01Fix one issue found by gcc 6 with -O3.Andrei Karas1-0/+1
2016-04-30HPM Hooks UpdateHaru4-8004/+8004
Signed-off-by: Haru <haru@dotalux.com>