Vista a todos los jugadores

Sección para misiones y edición ArmA III

Moderador: C. Misiones & Noticias

Avatar de Usuario
<A2>Bhelma
Soldado A2
Soldado A2
Mensajes: 1330
Registrado: 17 Dic 2010, 14:37

Vista a todos los jugadores

Mensaje por <A2>Bhelma »

A ver si me podeis ayudar.

Tengo una mision acabada pero no la puedo dar por terminada por lo siguiente.
En el INIT de un objeto bandera le tenia puesto el siguiente codigo

Código: Seleccionar todo

call{_flag = this; 
_afterCommand = {}; 
 
_fncOwnFlag = { 
 params ["_winSide"]; 
 _flagPath = "\a3\data_f\flags\%1.paa"; 
 _fileFlag = switch _winSide do { 
  case west: {"flag_nato_co"}; 
  case east: {"flag_csat_co"}; 
  case independent: {"flag_aaf_co"}; 
  default {"flag_FIA_CO"} 
 }; 
 format [_flagPath,_fileFlag]; 
}; 
_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 
 
_flag setflagAnimationPhase 1; 
_flag setFlagTexture (civilian call _fncOwnFlag); 
_flag setVariable ["TER_flagSide",civilian]; 
_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
_duration = 10; 
_addID = [_flag, "Cambiar Bandera", _icon, _icon, 
 "_target getVariable [""TER_flagSide"",civilian] != side _this", 
 "true", 
 { 
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _relProgress = _progress/_maxProgress; 
  if (_relProgress < 0.5) then { 
   _flag setFlagAnimationPhase (1-(2*_relProgress)); 
  } else { 
   if (_relProgress == 0.5) then {_flag setFlagTexture (side _caller call _fncOwnFlag)}; 
   _flag setFlagAnimationPhase ((2*_relProgress)-1); 
  }; 
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _flag setVariable ["TER_flagSide",side _caller]; 
  [] call _afterCommand; BH_OBJx = true ; publicVariable "BH_OBJx";
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _flag setFlagAnimationPhase 1; 
  _side = _flag getVariable ["TER_flagSide",civilian]; 
  _flag setFlagTexture (_side call _fncOwnFlag);  
 }, 
[_actionParams,_fncOwnFlag,_afterCommand], _duration, 1.5, false] call BIS_fnc_holdActionAdd; 
 
_addID}
Lo que hace es que estando una bandera, cuando se acerca un jugador al mastil le sale una funcion de cambiar la bandera. En el proceso de cambio se ve como baja la bandera, cambia por la de la otan y vuelve a subir.
Pues bien, en servidor dedicado solo ve el que ejecuta la accion el jugador que la hace, pero el resto no ve la accion ni el cambio de bandera.

En una segunda version, probe este codigo

Código: Seleccionar todo

If (isServer) then {
call{_flag = this; 
_afterCommand = {}; 
 
_fncOwnFlag = { 
 params ["_winSide"]; 
 _flagPath = "\a3\data_f\flags\%1.paa"; 
 _fileFlag = switch _winSide do { 
  case west: {"flag_nato_co"}; 
  case east: {"flag_csat_co"}; 
  case independent: {"flag_aaf_co"}; 
  default {"flag_FIA_CO"} 
 }; 
 format [_flagPath,_fileFlag]; 
}; 
_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 
 
_flag setflagAnimationPhase 1; 
_flag setFlagTexture (civilian call _fncOwnFlag); 
_flag setVariable ["TER_flagSide",civilian]; 
_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
_duration = 10; 
_addID = [_flag, "Cambiar Bandera", _icon, _icon, 
 "_target getVariable [""TER_flagSide"",civilian] != side _this", 
 "true", 
 { 
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _relProgress = _progress/_maxProgress; 
  if (_relProgress < 0.5) then { 
   _flag setFlagAnimationPhase (1-(2*_relProgress)); 
  } else { 
   if (_relProgress == 0.5) then {_flag setFlagTexture (side _caller call _fncOwnFlag)}; 
   _flag setFlagAnimationPhase ((2*_relProgress)-1); 
  }; 
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _flag setVariable ["TER_flagSide",side _caller]; 
  [] call _afterCommand; BH_OBJx = true ; publicVariable "BH_OBJx";
 }, 
 { 
  params ["_flag", "_caller", "_actionId", "_arguments"]; 
  _arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
  _flag setFlagAnimationPhase 1; 
  _side = _flag getVariable ["TER_flagSide",civilian]; 
  _flag setFlagTexture (_side call _fncOwnFlag);  
 }, 
[_actionParams,_fncOwnFlag,_afterCommand], _duration, 1.5, false] call BIS_fnc_holdActionAdd; 
 
_addID}}
Pues con esta version, en servidor dedicado, no sale ni la opcion del cambio de bandera.

Y es aqui donde solicito la ayuda de los masters.

Lo que necesito es que esa accion de cambio de bandera, todo el proceso de ese codigo, lo vean todos los jugadores, aparte de lanzar una variable para dar por cumplido el objetivo.

Gracias por la ayuda.
Imagen
Imagen

Avatar de Usuario
<A2>Pescadorr
Soldado A2
Soldado A2
Mensajes: 6599
Registrado: 09 Sep 2011, 03:28

Re: Vista a todos los jugadores

Mensaje por <A2>Pescadorr »

Hola Belma he estado viendo tu post y el problema que tienes.

El problema es que ese script está orientado para single player es decir que todas las acciones se realiza en un hold action que solo se ejecuta en un cliente.
Hay comando de los que ejecutan la bandera que son de efecto local entonces no lo ve quien no lo ejecuta.

El script debería de plantearse de forma centralizada en el servidor y que sean los clientes los que cambien la variable y así el servidor ejecutar el script en todos los clientes para que todos lo vieran.O hacer un mp al resto de clientes con el código correcto y adaptado.
Cuando pueda te lo dejo medio echo.
Caja: DEEP COOL MATREXX 70 3F CPU: Ryzen 7 5800X P. Base: Gigabyte X570 Aorus Elite RAM:Team Group T-Force Dark Z Alpha 2x16 gb ddr4 3600 Mhz CL18
Disipador cpu: Corsair H-100 Hydro series Pasta termica: Thermalright TF8 13.8 W/MK + Coollaboratory Liquid Pro GPU: Asus GeForce TUF Gaming RTX 4070 Ti 12GB GDDR6X
Discos: M2 samsung 970 512 mb 3.0 + M2 Samsung 980 PRO 1 Tb 4.0 + HDD Barracuda 4 Tb Vent: 4 x deep cool RGB pwm + 3 x corsair pwm + 2 x Noctua nf-p12 + controladora rgb + pwm
disipador M2: GLOTRENDS M.2 Alfombrilla: MARSGAMING MMPRGB2 XXL RGB 80x30 Auriculares: Audio-Technica M50x Peines cableado: Uphere 24 pz
Microfono: Boya BY-M1 Raton: Logitech G602 Teclado: Razer Huntsman Elite Switches Optomecánicos Purple
Monitor: Philips 436M6VBPAB 43" 4K HDR1000 AmbiGlow Gsync low input Silla: Diablo X-Horn XL


Avatar de Usuario
<A2>Bhelma
Soldado A2
Soldado A2
Mensajes: 1330
Registrado: 17 Dic 2010, 14:37

Re: Vista a todos los jugadores

Mensaje por <A2>Bhelma »

Ok Pesca.
Muchas gracias tío.
Cuando tu puedas
Imagen
Imagen

Avatar de Usuario
<A2>Pescadorr
Soldado A2
Soldado A2
Mensajes: 6599
Registrado: 09 Sep 2011, 03:28

Re: Vista a todos los jugadores

Mensaje por <A2>Pescadorr »

Código: Seleccionar todo

call
{
	_flag = this; 
	_afterCommand = {}; 

	_fncOwnFlag = 
	{ 
		params ["_winSide"]; 
		_flagPath = "\a3\data_f\flags\%1.paa"; 
		_fileFlag = switch _winSide do 
		{ 
			case west: {"flag_nato_co"}; 
			case east: {"flag_csat_co"}; 
			case independent: {"flag_aaf_co"}; 
			default {"flag_FIA_CO"} 
		}; 
		format [_flagPath,_fileFlag]; 
	};
	_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 

	[_flag, 1] call BIS_fnc_animateFlag;
	_flag setFlagTexture (civilian call _fncOwnFlag); 
	_flag setVariable ["TER_flagSide",civilian,true]; 
	_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
	_duration = 10; 
	_addID = 
	[
		_flag, "Cambiar Bandera", _icon, _icon, 
		"_target getVariable [""TER_flagSide"",civilian] != side _this", 
		"true", 
		{}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_relProgress = _progress/_maxProgress; 
			if (_relProgress < 0.5) then 
			{ 
				[_flag, 1-(2*_relProgress)] call BIS_fnc_animateFlag; 
			} else { 
				if (_relProgress == 0.5) then 
				{
					_flag setFlagTexture (side _caller call _fncOwnFlag);
				}; 
				[_flag, ((2*_relProgress)-1)] call BIS_fnc_animateFlag;  
			}; 
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_flag setVariable ["TER_flagSide",side _caller, true]; 
			[] call _afterCommand; 
			BH_OBJx = true ; 
			publicVariable "BH_OBJx";
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			[_flag, 1] call BIS_fnc_animateFlag;
			_side = _flag getVariable ["TER_flagSide",civilian]; 
			_flag setFlagTexture (_side call _fncOwnFlag);  
		}, 
		[_actionParams,_fncOwnFlag,_afterCommand], 
		_duration, 
		1.5, 
		false
	] call BIS_fnc_holdActionAdd; 

	_addID
};
te lo he retocado un poco pero no lo he testeado en MP.

He cambiado el comando con efecto local: setFlagAnimationPhase por la funcion en MP que la sustituye: BIS_fnc_animateFlag, no funciona igual exactamente, esta ultima va transicionando mas suave aunque parece que tarda un poco mas en hizarse la bandera.
Tambien he modificado los setvariables para que hagan broadcasting y todo el mundo tenga la misma info.

Pruebalo a ver si te funciona o no.

Si no te gusta como va, prueba esta version tambien:

Código: Seleccionar todo

call
{
	_flag = this; 
	_afterCommand = {}; 

	_fncOwnFlag = 
	{ 
		params ["_winSide"]; 
		_flagPath = "\a3\data_f\flags\%1.paa"; 
		_fileFlag = switch _winSide do 
		{ 
			case west: {"flag_nato_co"}; 
			case east: {"flag_csat_co"}; 
			case independent: {"flag_aaf_co"}; 
			default {"flag_FIA_CO"} 
		}; 
		format [_flagPath,_fileFlag]; 
	};
	_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 

	[_flag, 1] remoteExec ["setflagAnimationPhase"];
	_flag setFlagTexture (civilian call _fncOwnFlag); 
	_flag setVariable ["TER_flagSide",civilian,true]; 
	_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
	_duration = 10; 
	_addID = 
	[
		_flag, "Cambiar Bandera", _icon, _icon, 
		"_target getVariable [""TER_flagSide"",civilian] != side _this", 
		"true", 
		{}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_relProgress = _progress/_maxProgress; 
			if (_relProgress < 0.5) then 
			{ 
				[_flag, 1-(2*_relProgress)] remoteExec ["setflagAnimationPhase"];
			} else { 
				if (_relProgress == 0.5) then 
				{
					_flag setFlagTexture (side _caller call _fncOwnFlag);
				}; 
				[_flag, ((2*_relProgress)-1)] remoteExec ["setflagAnimationPhase"];
			}; 
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_flag setVariable ["TER_flagSide",side _caller, true]; 
			[] call _afterCommand; 
			BH_OBJx = true ; 
			publicVariable "BH_OBJx";
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			[_flag, 1] remoteExec ["setflagAnimationPhase"];
			_side = _flag getVariable ["TER_flagSide",civilian]; 
			_flag setFlagTexture (_side call _fncOwnFlag);  
		}, 
		[_actionParams,_fncOwnFlag,_afterCommand], 
		_duration, 
		1.5, 
		false
	] call BIS_fnc_holdActionAdd; 

	_addID
};
Caja: DEEP COOL MATREXX 70 3F CPU: Ryzen 7 5800X P. Base: Gigabyte X570 Aorus Elite RAM:Team Group T-Force Dark Z Alpha 2x16 gb ddr4 3600 Mhz CL18
Disipador cpu: Corsair H-100 Hydro series Pasta termica: Thermalright TF8 13.8 W/MK + Coollaboratory Liquid Pro GPU: Asus GeForce TUF Gaming RTX 4070 Ti 12GB GDDR6X
Discos: M2 samsung 970 512 mb 3.0 + M2 Samsung 980 PRO 1 Tb 4.0 + HDD Barracuda 4 Tb Vent: 4 x deep cool RGB pwm + 3 x corsair pwm + 2 x Noctua nf-p12 + controladora rgb + pwm
disipador M2: GLOTRENDS M.2 Alfombrilla: MARSGAMING MMPRGB2 XXL RGB 80x30 Auriculares: Audio-Technica M50x Peines cableado: Uphere 24 pz
Microfono: Boya BY-M1 Raton: Logitech G602 Teclado: Razer Huntsman Elite Switches Optomecánicos Purple
Monitor: Philips 436M6VBPAB 43" 4K HDR1000 AmbiGlow Gsync low input Silla: Diablo X-Horn XL


Avatar de Usuario
<A2>Bhelma
Soldado A2
Soldado A2
Mensajes: 1330
Registrado: 17 Dic 2010, 14:37

Re: Vista a todos los jugadores

Mensaje por <A2>Bhelma »

Gracias Pesca!!! :happy2: :happy2:

Lo modifico y pruebo en el servidor a ver que tal funciona.

Probare las dos versiones.
Gracias tio.
Imagen
Imagen

Avatar de Usuario
<A2>Dark Darius
Soldado A2
Soldado A2
Mensajes: 983
Registrado: 10 Jun 2014, 23:06

Re: Vista a todos los jugadores

Mensaje por <A2>Dark Darius »

Muy buen trabajo Pesca. :bravo:

No vendría mal un tutorial o pequeña clase para diferenciar las localidades al jugar en un servidor y sus diferencias. Qué es local (initPlayerLocal) o qué es Servidor (initServer) y como se ejecutan y tales cosas que hasta yo con tantos años editando sigo perdido muchas veces y desorientado; imagínate alguien que empieza a editar misiónes con scripts.
Añadir en amigos de Steam Imagen
Imagen

Avatar de Usuario
<A2>Mollero
Soldado A2
Soldado A2
Mensajes: 804
Registrado: 22 Sep 2018, 17:02

Re: Vista a todos los jugadores

Mensaje por <A2>Mollero »

Como dice Darius "...imagínate alguien que empieza a editar misiónes con scripts." es un tema muy interesante y cualquier aclaración sería de gran ayuda.

El otro día vi este vídeo sobre algo que aunque sea de soslayo está relacionado con este tema...


Avatar de Usuario
<A2>Bhelma
Soldado A2
Soldado A2
Mensajes: 1330
Registrado: 17 Dic 2010, 14:37

Re: Vista a todos los jugadores

Mensaje por <A2>Bhelma »

<A2>Pescadorr escribió: 13 Mar 2023, 13:06

Código: Seleccionar todo

call
{
	_flag = this; 
	_afterCommand = {}; 

	_fncOwnFlag = 
	{ 
		params ["_winSide"]; 
		_flagPath = "\a3\data_f\flags\%1.paa"; 
		_fileFlag = switch _winSide do 
		{ 
			case west: {"flag_nato_co"}; 
			case east: {"flag_csat_co"}; 
			case independent: {"flag_aaf_co"}; 
			default {"flag_FIA_CO"} 
		}; 
		format [_flagPath,_fileFlag]; 
	};
	_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 

	[_flag, 1] call BIS_fnc_animateFlag;
	_flag setFlagTexture (civilian call _fncOwnFlag); 
	_flag setVariable ["TER_flagSide",civilian,true]; 
	_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
	_duration = 10; 
	_addID = 
	[
		_flag, "Cambiar Bandera", _icon, _icon, 
		"_target getVariable [""TER_flagSide"",civilian] != side _this", 
		"true", 
		{}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_relProgress = _progress/_maxProgress; 
			if (_relProgress < 0.5) then 
			{ 
				[_flag, 1-(2*_relProgress)] call BIS_fnc_animateFlag; 
			} else { 
				if (_relProgress == 0.5) then 
				{
					_flag setFlagTexture (side _caller call _fncOwnFlag);
				}; 
				[_flag, ((2*_relProgress)-1)] call BIS_fnc_animateFlag;  
			}; 
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_flag setVariable ["TER_flagSide",side _caller, true]; 
			[] call _afterCommand; 
			BH_OBJx = true ; 
			publicVariable "BH_OBJx";
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			[_flag, 1] call BIS_fnc_animateFlag;
			_side = _flag getVariable ["TER_flagSide",civilian]; 
			_flag setFlagTexture (_side call _fncOwnFlag);  
		}, 
		[_actionParams,_fncOwnFlag,_afterCommand], 
		_duration, 
		1.5, 
		false
	] call BIS_fnc_holdActionAdd; 

	_addID
};
te lo he retocado un poco pero no lo he testeado en MP.

He cambiado el comando con efecto local: setFlagAnimationPhase por la funcion en MP que la sustituye: BIS_fnc_animateFlag, no funciona igual exactamente, esta ultima va transicionando mas suave aunque parece que tarda un poco mas en hizarse la bandera.
Tambien he modificado los setvariables para que hagan broadcasting y todo el mundo tenga la misma info.

Pruebalo a ver si te funciona o no.

Si no te gusta como va, prueba esta version tambien:

Código: Seleccionar todo

call
{
	_flag = this; 
	_afterCommand = {}; 

	_fncOwnFlag = 
	{ 
		params ["_winSide"]; 
		_flagPath = "\a3\data_f\flags\%1.paa"; 
		_fileFlag = switch _winSide do 
		{ 
			case west: {"flag_nato_co"}; 
			case east: {"flag_csat_co"}; 
			case independent: {"flag_aaf_co"}; 
			default {"flag_FIA_CO"} 
		}; 
		format [_flagPath,_fileFlag]; 
	};
	_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 

	[_flag, 1] remoteExec ["setflagAnimationPhase"];
	_flag setFlagTexture (civilian call _fncOwnFlag); 
	_flag setVariable ["TER_flagSide",civilian,true]; 
	_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
	_duration = 10; 
	_addID = 
	[
		_flag, "Cambiar Bandera", _icon, _icon, 
		"_target getVariable [""TER_flagSide"",civilian] != side _this", 
		"true", 
		{}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_relProgress = _progress/_maxProgress; 
			if (_relProgress < 0.5) then 
			{ 
				[_flag, 1-(2*_relProgress)] remoteExec ["setflagAnimationPhase"];
			} else { 
				if (_relProgress == 0.5) then 
				{
					_flag setFlagTexture (side _caller call _fncOwnFlag);
				}; 
				[_flag, ((2*_relProgress)-1)] remoteExec ["setflagAnimationPhase"];
			}; 
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_flag setVariable ["TER_flagSide",side _caller, true]; 
			[] call _afterCommand; 
			BH_OBJx = true ; 
			publicVariable "BH_OBJx";
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			[_flag, 1] remoteExec ["setflagAnimationPhase"];
			_side = _flag getVariable ["TER_flagSide",civilian]; 
			_flag setFlagTexture (_side call _fncOwnFlag);  
		}, 
		[_actionParams,_fncOwnFlag,_afterCommand], 
		_duration, 
		1.5, 
		false
	] call BIS_fnc_holdActionAdd; 

	_addID
};
Lo acabo de probar.... y..

Se ve como baja y sube la bandera en el servidor y se cumple el objetivo, pero no cambia la bandera. Es decir, esta la bandera de la FIA, baja y cuando sube, en vez de subir la de la OTAN, sube la de la FIA, la misma.
El cambio de bandera solo la ve el que realiza la accion, el resto de jugadores solo ve como sube y baja la misma bandera y se cumple el objetivo
Imagen
Imagen

Avatar de Usuario
<A2>Pescadorr
Soldado A2
Soldado A2
Mensajes: 6599
Registrado: 09 Sep 2011, 03:28

Re: Vista a todos los jugadores

Mensaje por <A2>Pescadorr »

Ok, entonces el comando setflagtexture es también de efecto local, en la wiki ponía que era de efecto global, te lo cambio y te lo subo.
Caja: DEEP COOL MATREXX 70 3F CPU: Ryzen 7 5800X P. Base: Gigabyte X570 Aorus Elite RAM:Team Group T-Force Dark Z Alpha 2x16 gb ddr4 3600 Mhz CL18
Disipador cpu: Corsair H-100 Hydro series Pasta termica: Thermalright TF8 13.8 W/MK + Coollaboratory Liquid Pro GPU: Asus GeForce TUF Gaming RTX 4070 Ti 12GB GDDR6X
Discos: M2 samsung 970 512 mb 3.0 + M2 Samsung 980 PRO 1 Tb 4.0 + HDD Barracuda 4 Tb Vent: 4 x deep cool RGB pwm + 3 x corsair pwm + 2 x Noctua nf-p12 + controladora rgb + pwm
disipador M2: GLOTRENDS M.2 Alfombrilla: MARSGAMING MMPRGB2 XXL RGB 80x30 Auriculares: Audio-Technica M50x Peines cableado: Uphere 24 pz
Microfono: Boya BY-M1 Raton: Logitech G602 Teclado: Razer Huntsman Elite Switches Optomecánicos Purple
Monitor: Philips 436M6VBPAB 43" 4K HDR1000 AmbiGlow Gsync low input Silla: Diablo X-Horn XL


Avatar de Usuario
<A2>Pescadorr
Soldado A2
Soldado A2
Mensajes: 6599
Registrado: 09 Sep 2011, 03:28

Re: Vista a todos los jugadores

Mensaje por <A2>Pescadorr »

Aqui lo tienes prueba a ver si te va bien:

Código: Seleccionar todo

call
{
	_flag = this; 
	_afterCommand = {}; 

	_fncOwnFlag = 
	{ 
		params ["_winSide"]; 
		_flagPath = "\a3\data_f\flags\%1.paa"; 
		_fileFlag = switch _winSide do 
		{ 
			case west: {"flag_nato_co"}; 
			case east: {"flag_csat_co"}; 
			case independent: {"flag_aaf_co"}; 
			default {"flag_FIA_CO"} 
		}; 
		format [_flagPath,_fileFlag]; 
	};
	_actionParams = ["_flag", "_caller", "_actionId", "_arguments"]; 

	[_flag, 1] remoteExec ["setflagAnimationPhase"];
	_colorflag = (civilian call _fncOwnFlag);
	[_flag, _colorflag] remoteExec ["setFlagTexture"]; 
	_flag setVariable ["TER_flagSide",civilian,true]; 
	_icon = "\a3\ui_f\data\igui\cfg\holdactions\holdaction_takeoff2_ca.paa"; 
	_duration = 10; 
	_addID = 
	[
		_flag, "Cambiar Bandera", _icon, _icon, 
		"_target getVariable [""TER_flagSide"",civilian] != side _this", 
		"true", 
		{}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments","_progress","_maxProgress"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_relProgress = _progress/_maxProgress; 
			if (_relProgress < 0.5) then 
			{ 
				[_flag, 1-(2*_relProgress)] remoteExec ["setflagAnimationPhase"];
			} else { 
				if (_relProgress == 0.5) then 
				{
					_colorflag = (side _caller call _fncOwnFlag);
					[_flag, _colorflag] remoteExec ["setFlagTexture"]; 
				}; 
				[_flag, ((2*_relProgress)-1)] remoteExec ["setflagAnimationPhase"];
			}; 
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			_flag setVariable ["TER_flagSide",side _caller, true]; 
			[] call _afterCommand; 
			BH_OBJx = true ; 
			publicVariable "BH_OBJx";
		}, 
		{ 
			params ["_flag", "_caller", "_actionId", "_arguments"]; 
			_arguments params ["_actionParams","_fncOwnFlag","_afterCommand"]; 
			[_flag, 1] remoteExec ["setflagAnimationPhase"];
			_side = _flag getVariable ["TER_flagSide",civilian]; 
			_colorflag = (_side call _fncOwnFlag);
			[_flag, _colorflag] remoteExec ["setFlagTexture"];
		}, 
		[_actionParams,_fncOwnFlag,_afterCommand], 
		_duration, 
		1.5, 
		false
	] call BIS_fnc_holdActionAdd; 

	_addID
};
Caja: DEEP COOL MATREXX 70 3F CPU: Ryzen 7 5800X P. Base: Gigabyte X570 Aorus Elite RAM:Team Group T-Force Dark Z Alpha 2x16 gb ddr4 3600 Mhz CL18
Disipador cpu: Corsair H-100 Hydro series Pasta termica: Thermalright TF8 13.8 W/MK + Coollaboratory Liquid Pro GPU: Asus GeForce TUF Gaming RTX 4070 Ti 12GB GDDR6X
Discos: M2 samsung 970 512 mb 3.0 + M2 Samsung 980 PRO 1 Tb 4.0 + HDD Barracuda 4 Tb Vent: 4 x deep cool RGB pwm + 3 x corsair pwm + 2 x Noctua nf-p12 + controladora rgb + pwm
disipador M2: GLOTRENDS M.2 Alfombrilla: MARSGAMING MMPRGB2 XXL RGB 80x30 Auriculares: Audio-Technica M50x Peines cableado: Uphere 24 pz
Microfono: Boya BY-M1 Raton: Logitech G602 Teclado: Razer Huntsman Elite Switches Optomecánicos Purple
Monitor: Philips 436M6VBPAB 43" 4K HDR1000 AmbiGlow Gsync low input Silla: Diablo X-Horn XL


Responder