Помогите пожалуйста переделать его под арму 2. Очень нужно.
fn_numberText
#1 OFFLINE
Отправлено 01 November 2015 - 01:34
#2 OFFLINE
Отправлено 01 November 2015 - 03:02
Какие проблемы?
// ****************************************************************************************** // * This project is licensed under the GNU Affero GPL v3. Copyright © 2014 A3Wasteland.com * // ****************************************************************************************** /* File: fn_numbersText.sqf Author: Karel Moricky, modified by AgentRev Description: Convert a number into string (avoiding scientific notation, American format) Parameter(s): _this: NUMBER Returns: STRING */ private ["_number","_mod","_digots","_digitsCount","_modBase","_numberText"]; _number = _this select 0; if (!finite _number) exitWith { str _number }; _mod = _this select 1; _digits = _number call BIS_fnc_numberDigits; _digitsCount = count _digits - 1; _modBase = _digitsCount % _mod; _numberText = ""; { _numberText = _numberText + str _x; if ((_forEachIndex - _modBase) % _mod == 0 && _forEachIndex != _digitsCount) then { _numberText = _numberText + "," }; } foreach _digits; _numberText
#3 OFFLINE
Отправлено 01 November 2015 - 10:50
BIS_fnc_numberDigits под а2 нужно тоже поправить
и смущает
_mod = _this select 1; - что за параметр?
fn_numberDigits = { /* Author: Karel Moricky Description: Break number into array of digits Example: 123456 > [1,2,3,4,5,6] Parameter(s): _this: NUMBER Returns: ARRAY */ private ["_number","_step","_stepLocal","_result","_numberLocal","_add"]; //_number = [_this,0,0,[0]] call bis_fnc_param; _number=_this; if (_number < 10) then { [_number] } else { _step = 10; _stepLocal = _step; _result = [0]; _add = false; while {_stepLocal < (_number * _step)} do { _numberLocal = _number % (_stepLocal); { _numberLocal = _numberLocal - _x; } foreach _result; _numberLocal = floor (_numberLocal / _stepLocal * _step); if (_numberLocal < 0) then {_numberLocal = 9}; _result = [_numberLocal] + _result; _stepLocal = _stepLocal * (_step); }; if ((_result select 0) == 0) then {_result = [1] + _result;}; _result resize (count _result - 1); _result }; }; // ****************************************************************************************** // * This project is licensed under the GNU Affero GPL v3. Copyright © 2014 A3Wasteland.com * // ****************************************************************************************** /* File: fn_numbersText.sqf Author: Karel Moricky, modified by AgentRev Description: Convert a number into string (avoiding scientific notation, American format) Parameter(s): _this: NUMBER Returns: STRING */ private ["_number","_mod","_digots","_digitsCount","_modBase","_numberText"]; _number = _this select 0; if (!finite _number) exitWith { str _number }; _mod = _this select 1; _digits = _number call fn_numberDigits; _digitsCount = count _digits - 1; _modBase = _digitsCount % _mod; _numberText = ""; { _numberText = _numberText + str _x; if ((_forEachIndex - _modBase) % _mod == 0 && _forEachIndex != _digitsCount) then { _numberText = _numberText + "," }; } foreach _digits; _numberText
Сообщение отредактировал Dimon UA: 01 November 2015 - 10:54
#4 OFFLINE
Отправлено 04 November 2015 - 04:16
и смущает
_mod = _this select 1; - что за параметр?
Нечто вроде коэффициента задающего расстояние между литерами.
#5 OFFLINE
Отправлено 04 November 2015 - 08:46
и смущает
_mod = _this select 1; - что за параметр?
Нечто вроде коэффициента задающего расстояние между литерами.
просто он вроде при запуске функции не задается как я понимаю, а задается автоматически уже с каким то значением...
#6 OFFLINE
Отправлено 04 November 2015 - 19:26
и смущает
_mod = _this select 1; - что за параметр?
Нечто вроде коэффициента задающего расстояние между литерами.
просто он вроде при запуске функции не задается как я понимаю, а задается автоматически уже с каким то значением...
Для этого в Арме 3 и существует функция BIS_fnc_param, котороя и задаст значение переменной по умолчанию, если данный параметр не передан функции, с нашими правками не переданный второй параметр вызовет ошибку.
И ещё эта переменная скорее всего не коэффициент, а задаёт на какие разряды делить число, ну типа
1 000 000
11 22 33
#7 OFFLINE
Отправлено 04 November 2015 - 19:46
ЗЫ
_mod = if (isNil {_this select 1}) then {3} else {_this select 1};
#8 OFFLINE
Отправлено 04 November 2015 - 23:12
ЗЫ
_mod = if (isNil {_this select 1}) then {3} else {_this select 1};
Помогите пожалуйста сделать так чтобы деньги не съезжали от иконки, а находились на против друг друга и так чтобы деньги делило точкой. То есть ($135.550). Я видел что использовали этот плагин fn_numbertext. [(player getVariable "playermoney")] call fn_numberText
Сообщение отредактировал dos130: 04 November 2015 - 23:13
#9 OFFLINE
Отправлено 05 November 2015 - 23:27
Что бы не съезжало надо GUI редактировать, задать размер по шире.
Я видел что использовали этот плагин fn_numbertext. [(player getVariable "playermoney")] call fn_numberText
Да уж. Плагин уж.
#10 OFFLINE
Отправлено 06 November 2015 - 00:13
Что бы не съезжало надо GUI редактировать, задать размер по шире.
Я видел что использовали этот плагин fn_numbertext. [(player getVariable "playermoney")] call fn_numberText
Да уж. Плагин уж.
Не понравилось слово плагин? Давай будет скрипт..
#11 OFFLINE
Отправлено 06 November 2015 - 02:18
Что бы не съезжало надо GUI редактировать, задать размер по шире.
Я видел что использовали этот плагин fn_numbertext. [(player getVariable "playermoney")] call fn_numberText
Да уж. Плагин уж.
Не понравилось слово плагин? Давай будет скрипт..
Нравится, не нравится, скажем так, не холодно, не жарко, вам это точно ни чем не поможет.
А вот это очень даже
https://arma3.ru/for...kriptopisaniiu/
И только, будьте так добры, не говорите, что вы ни этого просили, за вас ни кто не будет делать то что вам очень хочется. Помочь советом или направлением да, а вот делать за вас, вряд ли.