// Script para chamar o nome na farda, com adaptações
// Autor: Valmo Trindade

params ["_objeto", "_nome"];

_nameLength = count _nome;
_nome = [_nome ] call braf_fnc_removeDiacritical;
_nome = toArray _nome;
  
for "_letterIndex" from 0 to _nameLength do { 
 if ((_nome select _letterIndex) > 90) then {  
  _nome set [_letterIndex,(_nome select _letterIndex)-32];  
 };  
};  
 
// Verifica se o nome tem espaço e se tem mais de 12 caracteres  
_hasSpaceOnName = _nome find 32;   
if (_hasSpaceOnName != -1) then {   
 if (_nameLength > 14) then { 
 _nome deleteRange [0,(_nome find 32)+1];   
 } 
 else { 
 if (_nameLength > 12) then {  
    _nome deleteRange [1,(_nome find 32)-1];   
  }; 
 }; 
}; 
 
_nome = toString _nome; 
_nameLength = count _nome; 
 
switch (_nameLength) do { 
 case 0: { _nome = "            " }; 
 case 1: { _nome = "      " + _nome + "     " }; 
 case 2: { _nome = "     " + _nome + "     " }; 
 case 3: { _nome = "     " + _nome + "    " }; 
 case 4: { _nome = "     " + _nome + "    " }; 
 case 5: { _nome = "    " + _nome + "   " }; 
 case 6: { _nome = "   " + _nome + "   " }; 
 case 7: { _nome = "   " + _nome + "  " }; 
 case 8: { _nome = "  " + _nome + "  " }; 
 case 9: { _nome = "  " + _nome + " " }; 
 case 10: { _nome = " " + _nome + " " }; 
 case 11: { _nome = " "+_nome }; 
 default { }; 
}; 

_nome = toArray _nome;

for "_characterIndex" from 0 to 11 do { 
	if (_nome select _characterIndex == 32) then { 
	_objeto setObjectTextureGlobal [_characterIndex,"braf\braf_insignia\Font\space.paa"]; 
	} else { 
	_characterTexture = "\braf\braf_insignia\Font\"+toString [_nome select _characterIndex]+"_co.paa"; 
	_characterMaterial = "\braf\braf_insignia\Font\"+toString [(_nome select _characterIndex) + 32]+".rvmat"; 
	_objeto setObjectTextureGlobal [_characterIndex,_characterTexture]; 
	_objeto setObjectMaterialGlobal [_characterIndex,_characterMaterial]; 
	}; 
};