Contar unidades
Moderador: C. Misiones & Noticias
- <A2>Bhelma
- Soldado A2
- Mensajes: 1314
- Registrado: 17 Dic 2010, 14:37
-
- Soldado A2
- Mensajes: 646
- Registrado: 11 Abr 2018, 13:38
Re: Contar unidades
¿Con qué fin?<A2>Bhelma escribió: ↑09 Ago 2022, 22:57 Hay alguna forma de contar los jugadores que entran en el area de un activador??
Sería añadiendo un hint al activador, supongo
Ningún plan perfecto sobrevive al primer contacto con el enemigo
Re: Contar unidades
zona1 nombre de la variable del activador con el tamaño que tu quieras<A2>Bhelma escribió: ↑09 Ago 2022, 22:57 Hay alguna forma de contar los jugadores que entran en el area de un activador??
Código: Seleccionar todo
count list zona1
- <A2>Bhelma
- Soldado A2
- Mensajes: 1314
- Registrado: 17 Dic 2010, 14:37
Re: Contar unidades
Pues quiero que dependiendo de la cantidad de jugadores que entren en un area, se active una variable.<A2>Flac0 escribió: ↑10 Ago 2022, 03:31zona1 nombre de la variable del activador con el tamaño que tu quieras<A2>Bhelma escribió: ↑09 Ago 2022, 22:57 Hay alguna forma de contar los jugadores que entran en el area de un activador??¿Qué quieres hacer?Código: Seleccionar todo
count list zona1
Esa variable activara unos waiponts de enemigos
Eso es lo que quiero, si hay otra manera de hacerlo, tambien me valdria.
Re: Contar unidades
1º Crea un archivo contador.sqf<A2>Bhelma escribió: ↑10 Ago 2022, 12:27Pues quiero que dependiendo de la cantidad de jugadores que entren en un area, se active una variable.<A2>Flac0 escribió: ↑10 Ago 2022, 03:31zona1 nombre de la variable del activador con el tamaño que tu quieras<A2>Bhelma escribió: ↑09 Ago 2022, 22:57 Hay alguna forma de contar los jugadores que entran en el area de un activador??¿Qué quieres hacer?Código: Seleccionar todo
count list zona1
Esa variable activara unos waiponts de enemigos
Eso es lo que quiero, si hay otra manera de hacerlo, tambien me valdria.
2ºEn el script contador.sqf
Código: Seleccionar todo
while {(count list zona1) != (count playableunits)} do {
_judadores = count playableunits;
_enzona = count list zona1;
waitUntil {
sleep 2;
_judadores = 10;
};
sleep 2;
};
variableBhelma=true; publicvariable "variableBhelma";
_judadores = 10 (cambia el valor si quieres)
variableBhelma=true; publicvariable "variableBhelma"; variable que activa
3º Ejecuta
Código: Seleccionar todo
null=execvm "contador.sqf";
Así debería funcionar
- <A2>Bhelma
- Soldado A2
- Mensajes: 1314
- Registrado: 17 Dic 2010, 14:37
- <A2>Pescadorr
- Soldado A2
- Mensajes: 6571
- Registrado: 09 Sep 2011, 03:28
Re: Contar unidades
Flaco creo que hay un error en el script, y no está bien planteado ya que metes un bucle dentro de otro. El waituntil no tiene puesta la condición ya que<A2>Flac0 escribió: ↑10 Ago 2022, 14:361º Crea un archivo contador.sqf<A2>Bhelma escribió: ↑10 Ago 2022, 12:27Pues quiero que dependiendo de la cantidad de jugadores que entren en un area, se active una variable.<A2>Flac0 escribió: ↑10 Ago 2022, 03:31
zona1 nombre de la variable del activador con el tamaño que tu quieras¿Qué quieres hacer?Código: Seleccionar todo
count list zona1
Esa variable activara unos waiponts de enemigos
Eso es lo que quiero, si hay otra manera de hacerlo, tambien me valdria.
2ºEn el script contador.sqfzona1 nombre del activador que hace de zonaCódigo: Seleccionar todo
while {(count list zona1) != (count playableunits)} do { _judadores = count playableunits; _enzona = count list zona1; waitUntil { sleep 2; _judadores = 10; }; sleep 2; }; variableBhelma=true; publicvariable "variableBhelma";
_judadores = 10 (cambia el valor si quieres)
variable que activa
3º Ejecutacuando quieres que comience a ejecutarse la condición.Código: Seleccionar todo
null=execvm "contador.sqf";
Así debería funcionar
_judadores = 10;
es una ejecución, no una condición lógica que supongo sería
_judadores == 10
Donde saldría del bucle al cumplirse que supongo es lo que querías.
Yo lo plantearía más fácil, en el mismo activador que se encarga de contar en la zona lo pondría todo
Que lo activen jugadores blufor o lo que sea, presente y en la condición pones
Código: Seleccionar todo
Count thislist == 10
Y en al activar pues ya pones la variable
Código: Seleccionar todo
variableBhelma=true; publicvariable "variableBhelma";
Si lo que quieres es ejecutarlo en un momento determinado pues usa una variable para controlar la condición por ejemplo
Count thislist == 10 && activarcontar
Y ya lo tendrías, con solo poner activarcontar a true en el momento que quisieras ya lo tendrías
activarcontar= true; publicvariable "activarcontar";
Por supuesto todas las variables que vayas a usar debes de tenerlas declaradas en el init.sqf, tal que así:
If (isserver) then
{
activarcontar= false; publicvariable "activarcontar";
variableBhelma=false; publicvariable "variableBhelma";
};
Si lo que quieres es que se active cuando todos los jugadores estén en la zona del activador, pon esto en condición:
Código: Seleccionar todo
{Alive _x && isplayer _x} count thislist == count playableunits
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
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
- <A2>Bhelma
- Soldado A2
- Mensajes: 1314
- Registrado: 17 Dic 2010, 14:37
Re: Contar unidades
Vale...veo mejor opcion no utilizar scripts....
Aunque probare las dos versiones a ver cual me convence mas.
Una cosa Pesca....
Las variables las estoy poniendo en el archivo initserver.sqf, deberia de poner igualmente el if(isserver) then {...}; ?
Aunque probare las dos versiones a ver cual me convence mas.
Una cosa Pesca....
Las variables las estoy poniendo en el archivo initserver.sqf, deberia de poner igualmente el if(isserver) then {...}; ?
Re: Contar unidades
Tienes razón Pesca.
No, el initserver ya se ejecuta como si pusieras la linea if(isserver)...<A2>Bhelma escribió: ↑11 Ago 2022, 15:14 Las variables las estoy poniendo en el archivo initserver.sqf, deberia de poner igualmente el if(isserver) then {...}; ?
- <A2>Bhelma
- Soldado A2
- Mensajes: 1314
- Registrado: 17 Dic 2010, 14:37