amxmodx/plugins/include/lang.inc

76 lines
2.1 KiB
SourcePawn
Raw Normal View History

// vim: set ts=4 sw=4 tw=99 noet:
//
// AMX Mod X, based on AMX Mod by Aleksander Naszko ("OLO").
// Copyright (C) The AMX Mod X Development Team.
//
// This software is licensed under the GNU General Public License, version 3 or higher.
// Additional exceptions apply. For full license details, see LICENSE.txt or visit:
// https://alliedmods.net/amxmodx-license
//
// Language Functions
//
2004-07-30 18:29:20 +04:00
#if defined _lang_included
#endinput
#endif
#define _lang_included
//return the number of languages loaded
native get_langsnum();
//sets name to the two-letter name of a language returned by get_langsnum
//index starts at 0
native get_lang(id, name[3]);
//registers a dictionary file, making sure the words are in the dictionary
// the file should be in "addons/amxx/data/lang/", but only the name needs to be
// given. (e.g. register_dictionary("file.txt") will be addons/amxx/data/file.txt).
native register_dictionary(const filename[]);
//returns 1 if the language is loaded, 0 otherwise.
native lang_exists(const name[]);
enum TransKey
{
TransKey_Bad = -1,
};
/**
* Adds or finds a translation key.
*/
native TransKey:CreateLangKey(const key[]);
/**
* Finds a translation key id without adding on failure.
* Returns -1 on not found.
*/
native TransKey:GetLangTransKey(const key[]);
/**
* Adds a translation.
*/
native AddTranslation(const lang[3], TransKey:key, const phrase[]);
/**
* Looks up the translation of the key for the given type
* This does NOT format the output text.
* eg: If the key includes %s, the outputted text will also contain %s.
* NOTE: LANG_PLAYER is invalid in this, use a player index
* or LANG_SERVER
*/
2015-03-11 16:19:27 +03:00
native LookupLangKey(Output[], OutputSize, const Key[], &id);
/**
* Sets the global language target.
*
* @note This is useful for creating functions
* that will be compatible with the %l format specifier. Note that invalid
* indexes can be specified but the error will occur during translation,
* not during this function call.
*
* @param client Client index or LANG_SERVER
* @noreturn
*/
native SetGlobalTransTarget(client);