18.07.2013, 16:26 | #1 (permalink) |
Registriert seit: 16.06.2012
Ort: NRW-Gummersbach
Beiträge: 12
|
Auslöser erst ab 10 Spieler auslösen lassen
Bin eine MP Mission am bauen und bin auf folgendes Problem gestoßen,
ein Auslöser soll erst ausgelöst werden, wenn mindestens 10 Spieler in dem Bereich des Auslösers sind. Gruß Bier AIG Tartar Geändert von AHTNTEPPOP (18.07.2013 um 21:20 Uhr). Grund: Besserer Themen Titel |
18.07.2013, 17:25 | #2 (permalink) |
Registriert seit: 26.11.2006
Ort: Kiel, S-H
Alter: 58
Beiträge: 3.013
|
So rein aus dem Bauch raus:
Auslöser statt this oder true (was da jetzt auch immer steht) hereinschreiben: count thislist > 9
__________________
Nur ein Beispiel das zeigt wie BI "support" definiert: https://feedback.bistudio.com/T75547 |
19.07.2013, 09:06 | #6 (permalink) |
Registriert seit: 26.11.2006
Ort: Kiel, S-H
Alter: 58
Beiträge: 3.013
|
Natürlich würde thislist auch KI's der entsprechenden Seite mitberücksichtigen.
Das nur auf Spieler zu begrenzen dürfte fürn Auslöser recht umständlich werden, da wäre ein Script ratsamer.
__________________
Nur ein Beispiel das zeigt wie BI "support" definiert: https://feedback.bistudio.com/T75547 |
19.07.2013, 09:38 | #7 (permalink) |
Registriert seit: 02.07.2006
Ort: Kabul
Alter: 39
Beiträge: 2.666
|
Ich hatte sowas vor ein paar monaten mal fuer eine mission die ich gebastelt habe gescriptet.
. . . init.sqf Code:
mdh_checkplayableunits = compile preprocessFile "mdh_checkplayableunits.sqf"; Code:
////////////////////////////////////////////////////////////// // CHECK PLAYABLEUNITS IN TRIGGER // MADE BY MOERDERHOSCHI // ARMED-ASSAULT.DE // 08.04.2013 ////////////////////////////////////////////////////////////// if (!isServer) exitwith {}; private["_side","_vplu","_plu","_numunits","_unitsinlist"]; _side = _this select 0; _vplu = []; if (isMultiplayer) then [{_plu = playableunits},{_plu = units group player}]; _numunits = 0; { if ( !((vehicle _x) in _vplu) && {side (group _x) == _side} && {alive _x} ) then { _numunits = _numunits + 1; _vplu = _vplu + [(vehicle _x)] }; } forEach _plu; _unitsinlist = 0; { if ( _x in _vplu && {alive _x} ) then { _unitsinlist = _unitsinlist + 1 }; } forEach thislist; _unitsinlist == _numunits hoschi Geändert von Moerderhoschi (20.07.2013 um 01:15 Uhr). |
19.07.2013, 11:42 | #8 (permalink) |
Registriert seit: 16.07.2010
Beiträge: 305
|
Hier die verkürzte Variante des Scripts:
Code:
sleep 5; if (isServer) then { private ["_Side", "_PlayerCount", "_Counter"]; _Side = _this select 0; _PlayerCount = _this select 1; _Counter = 0; { if ((alive _x) && {side _x == _Side} && {_x in playableunits}) then { _Counter = _Counter + 1; } } forEach thislist; _Counter >= _PlayerCount } Code:
[west, 10] call mdh_checkplayableunits Geändert von Rockhount (20.07.2013 um 01:16 Uhr). |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Problem mit einem DEV Server =( | Hasiipupsii | Multiplayer | 7 | 27.06.2013 20:13 |
Installations Problem Arma X | Verus | Technische Fragen & Probleme | 20 | 29.07.2012 22:47 |
Connection Problem ArmA | -=Spine=- | Technische Fragen & Probleme | 0 | 11.03.2011 11:47 |
Fenstermodus und Taskleisten Problem | MaSch0815 | Technische Fragen & Probleme | 9 | 28.12.2010 10:44 |
ArmA2 OA Problem | Thunderbird | Technische Fragen & Probleme | 17 | 10.07.2010 19:15 |