mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Break line extension
This commit is contained in:
parent
a01864319a
commit
d06e1b4a2a
@ -451,16 +451,16 @@
|
||||
<Italian>A Terra!</Italian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_TeamManagement">
|
||||
<English>Team<br/>Management</English>
|
||||
<German>Team<br/>Management</German>
|
||||
<Spanish>Gestión<br/>de equipo</Spanish>
|
||||
<French>Gestion<br/>d'équipe</French>
|
||||
<Polish>Zarządzanie<br/>oddziałem</Polish>
|
||||
<Czech>Správa<br/>týmu</Czech>
|
||||
<Russian>Управление<br/>группой</Russian>
|
||||
<Portuguese>Gerenciamento<br/>de Equipe</Portuguese>
|
||||
<Italian>Organizzazione<br/>Squadra</Italian>
|
||||
<Hungarian>Csapat<br/>kezelés</Hungarian>
|
||||
<English>Team Management</English>
|
||||
<German>Team Management</German>
|
||||
<Spanish>Gestión de equipo</Spanish>
|
||||
<French>Gestion d'équipe</French>
|
||||
<Polish>Zarządzanie oddziałem</Polish>
|
||||
<Czech>Správa týmu</Czech>
|
||||
<Russian>Управление группой</Russian>
|
||||
<Portuguese>Gerenciamento de Equipe</Portuguese>
|
||||
<Italian>Organizzazione Squadra</Italian>
|
||||
<Hungarian>Csapat kezelés</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_TeamRED">
|
||||
<English>Red</English>
|
||||
@ -511,52 +511,52 @@
|
||||
<Hungarian>Sárga</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_JoinTeamRed">
|
||||
<English>Join Team<br/>Red</English>
|
||||
<German>Team Rot<br/>beitreten</German>
|
||||
<Spanish>Unirse al<br/>equipo rojo</Spanish>
|
||||
<French>Rejoindre<br/>Rouge</French>
|
||||
<Polish>Dołącz do drużyny<br/>czerwonej</Polish>
|
||||
<Czech>Připojit do<br/>Červeného Týmu</Czech>
|
||||
<Russian>Присоединиться<br/>к красной группе</Russian>
|
||||
<Portuguese>Unir-se à<br/>Equipe Vermelha</Portuguese>
|
||||
<Italian>Entra nella<br/>Squadra Rossa</Italian>
|
||||
<Hungarian>Csatlakozás a<br/>piros csapathoz</Hungarian>
|
||||
<English>Join Team Red</English>
|
||||
<German>Team Rot beitreten</German>
|
||||
<Spanish>Unirse al equipo rojo</Spanish>
|
||||
<French>Rejoindre Rouge</French>
|
||||
<Polish>Dołącz do drużyny czerwonej</Polish>
|
||||
<Czech>Připojit do Červeného Týmu</Czech>
|
||||
<Russian>Присоединиться к красной группе</Russian>
|
||||
<Portuguese>Unir-se à Equipe Vermelha</Portuguese>
|
||||
<Italian>Entra nella Squadra Rossa</Italian>
|
||||
<Hungarian>Csatlakozás a piros csapathoz</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_JoinTeamGreen">
|
||||
<English>Join Team<br/>Green</English>
|
||||
<German>Team Grün<br/>beitreten</German>
|
||||
<Spanish>Unirse al<br/>equipo verde</Spanish>
|
||||
<French>Rejoindre<br/>Verte</French>
|
||||
<Polish>Dołącz do<br/>drużyny zielonej</Polish>
|
||||
<Czech>Připojit do<br/>Zeleného Týmu</Czech>
|
||||
<Russian>Присоединиться<br/>к зеленой группе</Russian>
|
||||
<Portuguese>Unir-se à<br/>Equipe Verde</Portuguese>
|
||||
<Italian>Entra nella<br/>Squadra Verde</Italian>
|
||||
<Hungarian>Csatlakozás a<br/>zöld csapathoz</Hungarian>
|
||||
<English>Join Team Green</English>
|
||||
<German>Team Grün beitreten</German>
|
||||
<Spanish>Unirse al equipo verde</Spanish>
|
||||
<French>Rejoindre Verte</French>
|
||||
<Polish>Dołącz do drużyny zielonej</Polish>
|
||||
<Czech>Připojit do Zeleného Týmu</Czech>
|
||||
<Russian>Присоединиться к зеленой группе</Russian>
|
||||
<Portuguese>Unir-se à Equipe Verde</Portuguese>
|
||||
<Italian>Entra nella Squadra Verde</Italian>
|
||||
<Hungarian>Csatlakozás a zöld csapathoz</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_JoinTeamBlue">
|
||||
<English>Join Team<br/>Blue</English>
|
||||
<German>Team Blau<br/>beitreten</German>
|
||||
<Spanish>Unirse al<br/>equipo azul</Spanish>
|
||||
<French>Rejoindre<br/>Bleue</French>
|
||||
<Polish>Dołącz do<br/>drużyny niebieskiej</Polish>
|
||||
<Czech>Připojit do<br/>Modrého Týmu</Czech>
|
||||
<Russian>Присоединиться<br/>к синей группе</Russian>
|
||||
<Portuguese>Unir-se à<br/>Equipe Azul</Portuguese>
|
||||
<Italian>Entra nella<br/>Squadra Blu</Italian>
|
||||
<Hungarian>Csatlakozás a<br/>kék csapathoz</Hungarian>
|
||||
<English>Join Team Blue</English>
|
||||
<German>Team Blau beitreten</German>
|
||||
<Spanish>Unirse al equipo azul</Spanish>
|
||||
<French>Rejoindre Bleue</French>
|
||||
<Polish>Dołącz do drużyny niebieskiej</Polish>
|
||||
<Czech>Připojit do Modrého Týmu</Czech>
|
||||
<Russian>Присоединиться к синей группе</Russian>
|
||||
<Portuguese>Unir-se à Equipe Azul</Portuguese>
|
||||
<Italian>Entra nella Squadra Blu</Italian>
|
||||
<Hungarian>Csatlakozás a kék csapathoz</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_JoinTeamYellow">
|
||||
<English>Join Team<br/>Yellow</English>
|
||||
<German>Team Gelb<br/>beitreten</German>
|
||||
<Spanish>Unirse al<br/>equipo amarillo</Spanish>
|
||||
<French>Rejoindre<br/>Jaune</French>
|
||||
<Polish>Dołącz do<br/>drużyny żółtej</Polish>
|
||||
<Czech>Připojit do<br/>Žlutého Týmu</Czech>
|
||||
<Russian>Присоединиться<br/>к желтой группе</Russian>
|
||||
<Portuguese>Unir-se à<br/>Equipe Amarela</Portuguese>
|
||||
<Italian>Entra nella<br/>Squadra Gialla</Italian>
|
||||
<Hungarian>Csatlakozás a<br/>sárga csapathoz</Hungarian>
|
||||
<English>Join Team Yellow</English>
|
||||
<German>Team Gelb beitreten</German>
|
||||
<Spanish>Unirse al equipo amarillo</Spanish>
|
||||
<French>Rejoindre Jaune</French>
|
||||
<Polish>Dołącz do drużyny żółtej</Polish>
|
||||
<Czech>Připojit do Žlutého Týmu</Czech>
|
||||
<Russian>Присоединиться к желтой группе</Russian>
|
||||
<Portuguese>Unir-se à Equipe Amarela</Portuguese>
|
||||
<Italian>Entra nella Squadra Gialla</Italian>
|
||||
<Hungarian>Csatlakozás a sárga csapathoz</Hungarian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Interaction_JoinedTeam">
|
||||
<English>You joined Team %1</English>
|
||||
|
@ -3,14 +3,14 @@
|
||||
<Project name="ACE">
|
||||
<Package name="Laser_SelfDesignate">
|
||||
<Key ID="STR_ACE_Laser_SelfDesignate_DesignatorOn">
|
||||
<English>Laser<br/>Designator On</English>
|
||||
<German>Lasermarkierer<br/>an</German>
|
||||
<Spanish>Laser<br/>Designador encendido</Spanish>
|
||||
<English>Laser Designator On</English>
|
||||
<German>Lasermarkierer an</German>
|
||||
<Spanish>Laser Designador encendido</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Laser_SelfDesignate_DesignatorOff">
|
||||
<English>Laser<br/>Designator Off</English>
|
||||
<German>Lasermarkierer<br/>aus</German>
|
||||
<Spanish>Laser<br/>Designador apagado</Spanish>
|
||||
<English>Laser Designator Off</English>
|
||||
<German>Lasermarkierer aus</German>
|
||||
<Spanish>Laser Designador apagado</Spanish>
|
||||
</Key>
|
||||
</Package>
|
||||
</Project>
|
||||
|
@ -3,16 +3,16 @@
|
||||
<Project name="ACE">
|
||||
<Package name="MagazineRepack">
|
||||
<Key ID="STR_ACE_MagazineRepack_RepackMagazines">
|
||||
<English>Repack<br/>Magazines</English>
|
||||
<German>Magazine<br/>umpacken</German>
|
||||
<Spanish>Reorganizar<br/>cargadores</Spanish>
|
||||
<French>Réorganiser<br/>chargeurs</French>
|
||||
<Polish>Przepakuj<br/>magazynki</Polish>
|
||||
<Czech>Přepáskovat<br/>Zásobníky</Czech>
|
||||
<Italian>Ricarica<br/>Caricatori</Italian>
|
||||
<Portuguese>Reorganizar<br/>Carregadores</Portuguese>
|
||||
<Hungarian>Újratárazás<br/></Hungarian>
|
||||
<Russian>Перепаковать<br/>магазины</Russian>
|
||||
<English>Repack Magazines</English>
|
||||
<German>Magazine umpacken</German>
|
||||
<Spanish>Reorganizar cargadores</Spanish>
|
||||
<French>Réorganiser chargeurs</French>
|
||||
<Polish>Przepakuj magazynki</Polish>
|
||||
<Czech>Přepáskovat Zásobníky</Czech>
|
||||
<Italian>Ricarica Caricatori</Italian>
|
||||
<Portuguese>Reorganizar Carregadores</Portuguese>
|
||||
<Hungarian>Újratárazás </Hungarian>
|
||||
<Russian>Перепаковать магазины</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_MagazineRepack_SelectMagazineMenu">
|
||||
<English>Select Magazine Menu</English>
|
||||
|
@ -119,8 +119,8 @@
|
||||
<Russian>Проверить температуру оружия</Russian>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Overheating_CheckTemperatureShort">
|
||||
<English>Check weapon<br/>temperature</English>
|
||||
<Spanish>Verificar temperatura<br/>del arma</Spanish>
|
||||
<English>Check weapon temperature</English>
|
||||
<Spanish>Verificar temperatura del arma</Spanish>
|
||||
</Key>
|
||||
<Key ID="STR_ACE_Overheating_CheckingTemperature">
|
||||
<English>Checking temperature ...</English>
|
||||
|
@ -27,5 +27,6 @@ include_directories(AFTER "common")
|
||||
|
||||
# Add extensions to build here
|
||||
add_subdirectory(fcs)
|
||||
add_subdirectory(breakline)
|
||||
|
||||
message("Build Type: ${CMAKE_BUILD_TYPE}")
|
11
extensions/breakLine/CMakeLists.txt
Normal file
11
extensions/breakLine/CMakeLists.txt
Normal file
@ -0,0 +1,11 @@
|
||||
set(ACE_EXTENSION_NAME "ace_breakLine")
|
||||
|
||||
file(GLOB SOURCES *.h *.hpp *.c *.cpp)
|
||||
add_library( ${ACE_EXTENSION_NAME} SHARED ${SOURCES})
|
||||
add_dependencies(${ACE_EXTENSION_NAME} ace_common)
|
||||
SET_TARGET_PROPERTIES(${ACE_EXTENSION_NAME} PROPERTIES PREFIX "")
|
||||
|
||||
if(CMAKE_COMPILER_IS_GNUCXX)
|
||||
set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_START_STATIC 1)
|
||||
set_target_properties(${ACE_EXTENSION_NAME} PROPERTIES LINK_SEARCH_END_STATIC 1)
|
||||
endif()
|
71
extensions/breakLine/ace_breakLine.cpp
Normal file
71
extensions/breakLine/ace_breakLine.cpp
Normal file
@ -0,0 +1,71 @@
|
||||
/*
|
||||
* ace_breakLine.cpp
|
||||
*
|
||||
* Takes a string and insert as many line breaks as needed so it fits a given width
|
||||
*
|
||||
* Takes:
|
||||
* Localized string as string
|
||||
* Example: "Check weapon temperature"
|
||||
*
|
||||
* Returns:
|
||||
* String with line breaks
|
||||
*/
|
||||
|
||||
#include "ace_common.h"
|
||||
|
||||
#include <sstream>
|
||||
#include <vector>
|
||||
#include <string>
|
||||
|
||||
#define MAXCHARACTERS 11
|
||||
|
||||
static char version[] = "1.0";
|
||||
|
||||
extern "C" {
|
||||
__declspec (dllexport) void __stdcall RVExtension(char *output, int outputSize, const char *function);
|
||||
};
|
||||
|
||||
std::vector<std::string> splitString(std::string input) {
|
||||
std::istringstream ss(input);
|
||||
std::string token;
|
||||
|
||||
std::vector<std::string> output;
|
||||
while (std::getline(ss, token, ',')) {
|
||||
output.push_back(token);
|
||||
}
|
||||
|
||||
return output;
|
||||
}
|
||||
|
||||
std::string addLineBreaks(std::string input) {
|
||||
std::stringstream sstream;
|
||||
int numChar = 0;
|
||||
for ( int i = 0 ; i < input.length(); i++) {
|
||||
if (numChar >= MAXCHARACTERS && input[i] == ' ') {
|
||||
sstream << "<br/>";//"<br/>";
|
||||
numChar = 0;
|
||||
} else {
|
||||
sstream << input[i];
|
||||
numChar++;
|
||||
}
|
||||
}
|
||||
return sstream.str();
|
||||
}
|
||||
|
||||
// i like to live dangerously. jk, fix strncpy sometime pls.
|
||||
#pragma warning( push )
|
||||
#pragma warning( disable : 4996 )
|
||||
|
||||
void __stdcall RVExtension(char *output, int outputSize, const char *function) {
|
||||
if (!strcmp(function, "version")) {
|
||||
strncpy(output, version, outputSize);
|
||||
} else {
|
||||
std::vector<std::string> argStrings = splitString(function);
|
||||
std::string originalString = argStrings[0];
|
||||
|
||||
strcpy(output, addLineBreaks(originalString).c_str());
|
||||
output[outputSize - 1] = '\0';
|
||||
}
|
||||
}
|
||||
|
||||
#pragma warning( pop )
|
Loading…
Reference in New Issue
Block a user