Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 10.06.2013, 15:24   #1 (permalink)
50 Beiträge
 
Registriert seit: 09.12.2006
Beiträge: 84
Standard Abfrage eines Arrays

Hallo zusammen,

brauche hilfe bei einem Script. Ich habe einen Auslöser das ein script startet sobald ein player vorhanden ist, es wird geprüft ob dieser in der Gruppe A oder B ist. Ich habe die Soldaten der Gruppe A von s1-s8 bezeichnet und die der Gruppe B von s9-s16. Nun habe ich zwei Arrays erstellt:

_grpalpha = [s1,s2,s3,s4,s5,s6,s7,s8];
_grpbravo = [s9,s10,s11,s12,s13,s14,s15,s16]

wie muss ich nun die IF Abfrage gestalten ? Mit if (player in list _grpalpha) then.... geht es nicht ;:-(
Ich hoffe auf eure hilfe....

Gruß Togo

Geändert von Togo (10.06.2013 um 21:36 Uhr).
Togo ist offline   Mit Zitat antworten
Alt 10.06.2013, 16:12   #2 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

if (player in list _grpalpha) then.... list gehört hier nicht rein, ist nur anzuführen wenn das Array eines Triggers abgefragt wird.

http://community.bistudio.com/wiki/list
Vienna ist offline   Mit Zitat antworten
Alt 10.06.2013, 19:41   #3 (permalink)
50 Beiträge
 
Registriert seit: 09.12.2006
Beiträge: 84
Standard

Hallo Vienna,

vielen Dank, nun funktioniert es ;-)

Gruß Togo
Togo ist offline   Mit Zitat antworten
Alt 11.06.2013, 12:07   #4 (permalink)
50 Beiträge
 
Registriert seit: 09.12.2006
Beiträge: 84
Standard

Hallo Vienna,

hast Du evt. auch eine Idee warum das hier nicht funktioniert ?

Code:
    
if ( isnil ("s1") && alive ("s1") ) then 
        {
        "tele_to_alpha" setMarkerPos getPos s1
        }
möchte hier abfragen ob s1 existiert und noch lebt.

Gruß Togo

Geändert von Togo (11.06.2013 um 13:35 Uhr).
Togo ist offline   Mit Zitat antworten
Alt 11.06.2013, 14:04   #5 (permalink)
10 Jahre hx3
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Lester
 
Registriert seit: 26.11.2006
Ort: Kiel, S-H
Alter: 50
Beiträge: 3.010
Standard

Wenn s1 kein Marker ist, wird es auch nicht in Anführungszeichen geschrieben ... und wenn doch macht das alive kein Sinn.
__________________
Nur ein Beispiel das zeigt wie BI "support" definiert: https://feedback.bistudio.com/T75547
Lester ist offline   Mit Zitat antworten
Alt 11.06.2013, 14:06   #6 (permalink)
50 Beiträge
 
Registriert seit: 09.12.2006
Beiträge: 84
Standard

Hi Lester,

s1 ist der Name eines Soldaten.

Gruß
Togo ist offline   Mit Zitat antworten
Alt 11.06.2013, 14:12   #7 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Benutzerbild von Rockhount
 
Registriert seit: 16.07.2010
Beiträge: 305
Standard

Zitat von Togo Beitrag anzeigen

Code:
if ( isnil ("s1") && alive ("s1") ) then 
        {
        "tele_to_alpha" setMarkerPos getPos s1
        }
Du fragst zuerst ab, ob die globale Variable nicht definiert wurde und in der selben Abfrage überprüfst du, ob ein Text (String) lebt? Das gibt doch Fehler ohne Ende. Meiner Erfahrung nach sind && und || auch nicht das, was sie sein sollten, denn die zweite Bedingung wird trozdem immer überprüft und wirft somit auch die RPT voll. Also, solche Abfragen immer verschachteln!

Lösung:
Code:
if (!(isnil "s1")) then
{
    if (alive s1) then 
    {
        "tele_to_alpha" setMarkerPos (getPos s1);
    };
};
__________________

Geändert von Rockhount (11.06.2013 um 14:26 Uhr).
Rockhount ist offline   Mit Zitat antworten
Alt 11.06.2013, 16:35   #8 (permalink)
5000 Beiträge
 
Benutzerbild von Xeno
 
Registriert seit: 03.01.2008
Alter: 77
Beiträge: 6.547
Standard

*deleted*

Xeno

Geändert von Xeno (08.12.2013 um 16:16 Uhr).
Xeno ist offline   Mit Zitat antworten
Alt 11.06.2013, 16:36   #9 (permalink)
His Awesomeness!
10 Jahre hx3
5000 Beiträge
 
Benutzerbild von flickflack
 
Registriert seit: 25.07.2006
Ort: Regnum Borussiae
Beiträge: 9.282
Standard

^... es gibt halt Sprachen ...und SQF
flickflack ist offline   Mit Zitat antworten
Alt 11.06.2013, 16:38   #10 (permalink)
5000 Beiträge
 
Benutzerbild von Xeno
 
Registriert seit: 03.01.2008
Alter: 77
Beiträge: 6.547
Standard

So isses, Flicki, so isses...

Xeno
Xeno ist offline   Mit Zitat antworten
Alt 11.06.2013, 16:43   #11 (permalink)
His Awesomeness!
10 Jahre hx3
5000 Beiträge
 
Benutzerbild von flickflack
 
Registriert seit: 25.07.2006
Ort: Regnum Borussiae
Beiträge: 9.282
Standard

Ich huldige all jenen, die sich mit SQF auseinandersetzen und trotz der Einschränkungen so coole Sachen für die Comm gezaubert bekommen. Das muss man ja auch erstmal schaffen

..sry für's hijacken.
flickflack ist offline   Mit Zitat antworten
Alt 11.06.2013, 18:43   #12 (permalink)
50 Beiträge
 
Registriert seit: 09.12.2006
Beiträge: 84
Standard

Hi Leutz,

vielen Dank für eure Hilfe---- funktioniert nun. Wenn ihr mir noch bei diesem Respawn Script helfen könnt das einzubauen das auch Rucksäcke gespeichert und auch wieder ausgegeben werden wäre ich Wunschlos glücklich... .;-)

Code:
maxrespawns = paramsArray select 0;
myrespawns = 0;
while {true} do {
    waitUntil {!alive player};
    _p = player;
    _weapons = weapons _p;
    _magazines = magazines _p;
    if (myrespawns == maxrespawns) then 
        {
         titleCut ["Du hast alle Leben verloren.......","BLACK FADED", 5];
         sleep 3;
         titleCut ["Dein Einsatz is hiermit beendet.....","BLACK FADED", 5];
         sleep 3;
         endMission "END3" // Hier musss eine Briefing.html existieren !! 
        };
    hidebody _p;      // versteckt toten Körper !
    deletevehicle _p; //löscht den toten Körper !
    waitUntil {alive player};
    _p = player;
    removeAllWeapons _p;
    removeAllItems _p; // dieser Eintrag existiert weil sonst das Funkgerät Acre 343 sich beim respawn verdoppelt.
    {_p addMagazine _x;} forEach _magazines;
    {_p addWeapon _x;} forEach _weapons;
    _primw = primaryWeapon _p;
        if (_primw != "") then {
            _p selectWeapon _primw;
            // Fix für Waffen mit Granatwerfer
            _muzzles = getArray(configFile>>"cfgWeapons" >> _primw >> "muzzles");
            _p selectWeapon (_muzzles select 0);
            myrespawns = myrespawns + 1;
        _rest = maxrespawns - myrespawns;
        titleText [format ["Verfügbare Leben: %1",_rest],"PLAIN DOWN", 1];
            hint "Weiter gehts.....";
        };
    };
Dies habe ich mir soweit zusammen gebastelt funktioniert auch, aber leider verschwinden nach ein paar respawns die Rucksäcke bez. deren Inhalt.
Nochmals Vielen Dank für die Mühe...

Gruss Togo
Togo ist offline   Mit Zitat antworten
Alt 11.06.2013, 19:19   #13 (permalink)
SQF Zauberer 10 Jahre hx3
500 Beiträge1000 Beiträge
 
Benutzerbild von Vienna
 
Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
Standard

Hallo Togo!

Vermutlich willst du wissen ob in MP eine wählbare Spielfigur deaktiviert ist?

Objekt-Variable können nicht mit isNil abgefragt werden ob sie existieren. Ich habe auch sonst keinen entsprechenden Befehl gefunden.

Um festzustellen ob z.B. ein Objekt mit Namen S1 im gestarteten Spiel überhaupt vorhanden ist kann man so vorgehen:
Code:
_aktiv = false;
if (!isNull S1) then {_aktiv = true};
if (!_aktiv) then {S1 = objNull};
Existiert ein Objekt mit Namen S1, dann ist alles OK. Wenn nicht, so wurde eine S1 Objekt-Variable mit Status objNull erstellt.

Nun kannst du Abfragen wie die folgende tätigen:
Code:
if (!isNull S1 and alive S1) then
 {
  hint "S1 lebt!"
 }
else  
 {
  if (isNull S1) then 
   {
    hint "Objekt S1 ist nicht im Spiel vorhanden!"
   }
  else
   {
    hint "S1 ist tot!"
   }
 };
Vienna ist offline   Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Abfrage für Musik/Track-Ende spaccy Editing & Scripting 14 02.11.2012 18:19
Globale Arrays TeTeT Editing & Scripting 4 10.09.2011 18:29
Servereinstellungen / CD-Key Abfrage chaosram Technische Fragen & Probleme 7 15.09.2010 14:43


Kontakt - HX3.de - Archiv - Nach oben

Angetrieben durch vBulletin, Entwicklung von Philipp Dörner & Tobias



SEO by vBSEO 3.2.0 ©2008, Crawlability, Inc.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116