Armed-Assault.de Twitter


 
 
Themen-Optionen Ansicht
Alt 12.01.2014, 16:26   #1 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard Hilfe bei "Heli Evakuierungs Script"

Hi Leute,

nach unzähligen Stunden ohne nennenswerten Fortschritt, wende ich mich jetzt an euch

Ich schreibe gerade ein einfaches Helikopter Evakuierungs-Script.
Der Heli (evac_heli) ist als Objekt vorhanden und steht auf einem Helipad (helipad).
Der Player soll via Funk (am besten übers BIS_Communicationmenu) die Evakuierung anfordern. Der Heli soll starten zur Position des 'anfordernden players' fliegen, diesen einsammeln und anschließend zur Landezone (wieder das Helipad) fliegen, dort landen und den Player (und seine, mit ihm eingestiegenen Jungs) rausschmeißen, dann den Motor ausmachen und warten, bis zum nächsten Ruf über Funk.

Teil der description.ext:
PHP-Code:
//Funksprüche - Sound

class CfgRadio
{
    
sounds[] = {};
    class 
evac1
    
{
        
name "evac1";
        
sound[] = {sounds\Evac_request.ogg,db+0,1.0};
        
title "";
    };
    class 
evac2
    
{
        
name "evac2";
        
sound[] = {sounds\Evac_accept.ogg,db+0,1.0};
        
title "";
    };
    class 
evac3
    
{
        
name "evac3";
        
sound[] = {sounds\Evac_denied.ogg,db+0,1.0};
        
title "";
    };
};



//Funkbefehl

class CfgCommunicationMenu
{
    class 
Evacuation
    
{
        
text "Evakuierung";
        
expression exec "evac.sqf";
    };

Teil der init.sqf:
PHP-Code:
//Heli-Evac
[player,"Evacuation"call BIS_fnc_addCommMenuItem
Mein geschriebenes Script dazu:
PHP-Code:
if (isEngineOn evac_helithen
{
    ~
1
    
    evac_heli sideRadio 
"evac3";
    
evac_heli globalchat Localize "STR_EVAC_DENIED";
    
    ~
1
}
else
{
    ~
1
    
    evac_heli sideRadio 
"evac1";
    
evac_heli globalchat Localize "STR_EVAC_REQUEST";
    
    ~
5
    
    evac_heli sideRadio 
"evac2";
    
evac_heli globalchat Localize "STR_EVAC_ACCEPT";
    
    
// evac_heli allowDamage false;
    
    
evac_heli action ["engineOn"evac_heli];
    
    ~
5
    
    wp0 
evac_heli addwaypoint [getPos player20];
    
wp0 setwaypointtype "MOVE"
    
    
    
wp1 evac_heli addwaypoint [getPos player20];
    
wp1 setWaypointType "LOAD";
    
wp1 setWaypointBehaviour "CARELESS";
    
wp1 setWaypointCombatMode "BLUE";
    
doStop evac_heli;
    
evac_heli land "LAND";
    
    
wp2 evac_heli addwaypoint [getPos helipad10];
    
wp2 setWaypointType "MOVE";
    
wp2 setWaypointStatements [player in evac_heli];
    
    
wp3 evac_heli addwaypoint [getPos helipad1];
    
wp3 setwaypointtype "UNLOAD";
    
doStop evac_heli;
    
evac_heli land "LAND";
    
    
evac_heli action ["engineOff"evac_heli];
    
    exit

irgendwie will nichts so richtig funktionieren -.-

wenn ich auf den eintrag im Comm-menü "Evakuierung" drücke, geschieht nichts. Daher habe ich erstmal ein Trigger erstellt, diesem "Funk Bravo" zugewiesen und darüber das "evac.sqf" ausführen lassen.

ich denke mal über Arrays würde das alles besser laufen, aber die checke ich noch nich so richtig...

nach betätigen des "Funk Bravo", kommt der Sound zu "EVAC_DENIED" (also abgelehnt), was er eigentlich nur ausführen soll, wenn der helikopter motor bereits läuft (also der heli schon unterwegs ist).
dann geht er automatisch weiter im script und führ die andern zwei sounds aus (wobei allerdings der Text nicht funktioniert -.-), startet den motor und macht ihn direkt wieder aus... mehr passiert nicht -.-

gerne lade ich hier auch die test-mission dazu hoch.
in dieser test-mission geht es auch übrigens um meinen andern post von gestern: PIP - Livefeed - Hilfe Jungs ^^ - HX3 Foren

hoffe ihr könnt mir da weiterhelfen.

PS: das ganze soll möglichst auch multiplayerfähig sein
b0rnkilla ist offline  
Alt 12.01.2014, 18:11   #2 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 02.11.2010
Beiträge: 113
Standard

Schick mal die Testmissi, vielleicht kann ich dir weiterhelfen.
Ich versuche es zumindest ...

LG
Jan

janis.11@gmx.net
JanIs ist offline  
Alt 13.01.2014, 02:51   #3 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

~ im sqf?
Nimm sleep

Warum evac_heli action ["engineOn", evac_heli]; ? Sobald der Heli einen WP bekommt, macht er den Motor an. Kannst du eigentlich weglassen.
Der Heli hat eine Crew, richtig? Ist der Motor DEFINITV aus?

Diese BIS Funktion, was genau bewirkt die? Erstellt die einen AddAction-eintrag oder wie ruft man die auf? Ich frage aus Interesse, da ich diese noch nie benutzt habe.

addWaypoint fordert eine Gruppe. Ich bezweifel, dass evac_heli eine "Gruppe" ist, sondern vielmehr der der name des Helis.


Probiere mal diese in deiner Init:
Code:
anforderung = false;
evac_heli = group testgruppe;
Code:
private ["_wp1","_wp2","_wp3","_wp4"];
if (anforderung) exitWith {
    sleep 1;    
    evac_heli sideRadio "evac3";
    evac_heli globalchat Localize "STR_EVAC_DENIED";
   sleep 1; 
   };

    anforderung = true;
    evac_heli sideRadio "evac1";
    evac_heli globalchat Localize "STR_EVAC_REQUEST";
    sleep 5;    
    evac_heli sideRadio "evac2";
    evac_heli globalchat Localize "STR_EVAC_ACCEPT";
    
    // evac_heli allowDamage false;
    
    sleep 5;
  
    _wp0 = testgruppe addwaypoint [getPos player, 0];
    _wp0 setwaypointtype "MOVE"; 
    player sideChat "erster WP zugewiesen"; //testausgabe  
    
    _wp1 = testgruppe addwaypoint [getPos player, 1]; // wp1 = [group evac_heli] addwaypoint [getPos player, 1]; dürfte auch funktionieren ist ansichtssache
    _wp1 setWaypointType "LOAD";
    _wp1 setWaypointBehaviour "CARELESS";
    _wp1 setWaypointCombatMode "BLUE";
    doStop evac_heli;
    evac_heli land "LAND";
    
    _wp2 = testgruppe addwaypoint [getPos helipad, 2];
    _wp2 setWaypointType "MOVE";
    _wp2 setWaypointStatements [player in evac_heli];
    
    _wp3 = testgruppe addwaypoint [getPos helipad, 3];
    _wp3 setwaypointtype "UNLOAD"; // ??-> nicht TR UNLOAD ?? , bin mir da nicht so sicher
    doStop evac_heli;
    evac_heli land "LAND";
    
    evac_heli action ["engineOff", evac_heli];
 waitUntil {!isEngineon evac_heli || !alive evac_heli};
deleteWaypoint [testgruppe , 0];
deleteWaypoint [testgruppe , 1];
deleteWaypoint [testgruppe , 2];
deleteWaypoint [testgruppe , 3];
anfoderung = false;
//im sqf wird in diesem Fall kein exit genommen, da das script nach der letzten Zeile endet
ungetestet
Bei dem Löschen der Wegpunkte bin ich mir nicht sicher, ob das sein muss. Probieren geht über studieren. xD
Lösche mal deine RPT Einträge. Starte das Script und poste die Fehlermeldung aus der RPT, wenn welche auftauchen

Geändert von Drunken Officer (13.01.2014 um 03:24 Uhr).
Drunken Officer ist offline  
Alt 13.01.2014, 09:29   #4 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Zitat:

~ im sqf?
Nimm sleep

hatte bei mir jetzt persönlich kein Unterschied gemacht ^^
aber okee ich nehme sleep

Zitat:

Warum evac_heli action ["engineOn", evac_heli]; ? Sobald der Heli einen WP bekommt, macht er den Motor an. Kannst du eigentlich weglassen.

da hast du Recht. Den Befehl habe ich nur reingenommen um zu schauen ob der Heli überhaupt auf das Script reagiert (da die Wapoints ja nicht funktionierten).

Zitat:

Der Heli hat eine Crew, richtig? Ist der Motor DEFINITV aus?

BLUFOR » Luft » GhostHawk
Da es kein leeres Fahrzeug ist, geh ich von aus, das Pilot, Copilot & Gunner drinne sitzen.
Der Rotor bewegt sich nicht, das sehe ich über's Lifefeed (Init auf Player, Quelle ist ein Fahnenmast, Ziel der Helikopter). So kann ich ganz einfach kontrollieren ob der (doch recht weit entfernte) Helikopter noch still steht oder sich rührt

Zitat:

addWaypoint fordert eine Gruppe. Ich bezweifel, dass evac_heli eine "Gruppe" ist, sondern vielmehr der der name des Helis

da hast du ebenfalls Recht.
das müsste ich dann wohl über die Arrays lösen oder? zwecks "select 0", "select 1", etc...

was bedeutet das hier genau?:
Zitat:

private ["_wp1","_wp2","_wp3","_wp4"];

...schon so oft gesehen, aber nie gecheckt da ich die bedeutung/verwendung von "arrays" noch nicht wirklich geblickt habe

Zitat:

anforderung = false;

sollte dort dann "isEngineOn = false;" stehen?
ich habe allgemein das "isEngineOn" nur reingenommen, um festzustellen ob der Heli bereits unterwegs ist. Falls ein zweiter Player "Evakuierung" anfordert und der Heli aber grade unterwegs ist, um einen anderen Player zu holen, dann soll die Anfrage verweigert werden (EVAC_DENIED).


Zitat:

evac_heli = group testgruppe;

das müsste doch dann so aussehen oder?:
PHP-Code:
_evac_heli group (heliname??) 
könnte natürlich auch einen leeren Heli spawnen, sowie eine Gruppe die via scriptbefehl (Initzeile) direkt im Heli spawnt und anschließend diese Gruppe mit den Waypoints beauftragen... aber das wollte ich nicht

Zitat:

!alive evac_heli

ich hoffe doch sehr, das der heli ein paar evakuierungen übersteht


Zitat:

Diese BIS Funktion, was genau bewirkt die? Erstellt die einen AddAction-eintrag oder wie ruft man die auf? Ich frage aus Interesse, da ich diese noch nie benutzt habe.

Mit "BIS_fnc_addCommMenuItem" kann man Einträge in dem Reiter "Kommunikation" erstellen (Taste 0, 8), anstatt wie bei einem Trigger mit "Funk Alpha/Bravo/usw", wo es dann unter "Funk" (Taste 0, 0) steht.
Was für Möglichkeiten man genau hat, weis ich allerdings selbst nicht

Naja ich werd aufjedenfall nach Feierabend mal ausprobieren was du mir hier vorgeschlagen hast, danke schonmal
b0rnkilla ist offline  
Alt 13.01.2014, 12:44   #5 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Großer, ich habe ganz bewußt mit der Anforderung garbeitet. Wenn du es mit EngineOn machen willst, so tu dies. Hast du dir mein geposteten Vorschlag genau angeschaut? Wie soll das mit der IF-Abfrage denn funktionieren, wenn du unten wieder isEngineOn = false reinschreibst. Obwohl dieser code Quark ist, weil der Syntax so lautet: Boolean = isEngineOn vehicle

Da mit der gruppe ist mir ein Fehler passiert
testgruppe = group evac_heli


Private bedeutet, die Variablen werden nur in diesem Script genutzt

Nein das mit der Gruppe löst du nicht über einen Array in diesem Fall. Lies dir doch mal bitte bei BIS Wiki den Befehl durch.
Du gibst den Namen des Fahrzeuges an. Laß dir doch per sideChat die Gruppe des HEli ausgeben. Dürfte irgendetwas mit Aplha 1:1 oder so rauskommen.

http://community.bistudio.com/wiki/C...ommands_Arma_3

Edit: Wieso hast do ein do stop drin???
ich bau mal was zusammen....

Geändert von Drunken Officer (13.01.2014 um 13:39 Uhr).
Drunken Officer ist offline  
Alt 13.01.2014, 14:19   #6 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Das ist ein einfaches Abholscript.
Der Heli fliegt direkt zu deiner Position, lädt dich ein und fliegt zurück zu der Position, von der er gestartet ist

Aufruf über evac = [heliname] execVM "dof_evac_heli.sqf"
Code:
//**********************DOF_EVAC_HELI*********************
//*******************************************************
//********************einfaches Abholscript********************
//******************* von Drunken Officer**********************
//
// aufruf über evac = [Heliname]execVM "evac_heli.sqf";
//*************************************************************

private ["_wp0", "_wpende", "_pos", "_zuHause","_hubi"];
if (isNil "dof_evac_anforderung") then {dof_evac_anforderung = false};
if (dof_evac_anforderung) exitWith 
    {
        sleep 1;    
        hint "Anforderung läuft bereit";
    };
    
_hubi = _this select 0;
_zuHause = getPos _hubi;
_pos = getPos Player; 
dof_evac_anforderung = true;
_hubi setfuel 1;

hint "Anforderung wird bestätigt. Warten Sie. \n Der Huberschrauber ist auf dem Weg";
     
    _wp0 = group _hubi addwaypoint [_pos, 0];
    _wp0 setwaypointtype "MOVE"; 
    _hubi setCombatMode "blue";
    _hubi setBehaviour "SAFE";
    _hubi allowfleeing 0;
waitUntil {_hubi distance _pos < 500};  
    "SmokeShellGreen" createVehicle _pos;    
waitUntil {_hubi distance _pos < 150};  
    _hubi setspeedMode "LIMITED";
    _hubi land "GET IN";
waitUntil {getpos _hubi select 2 < 5};
     _hubi flyinHeight 2;

waitUntil {{_x in _hubi;} forEach units group player};
    _wpende = group _hubi addWaypoint [_zuHause,1];
    [group _hubi, 1] SetWaypointType "move";    
    _hubi setspeedMode "normal";
    _hubi flyinHeight 100;
    
waitUntil {_hubi distance _zuHause < 150}; 
    _hubi setspeedMode "LIMITED";
    _hubi land "LAND";
waitUntil {isTouchingGround _hubi};
       {_x action ["getOut", _hubi];} forEach units group player;
        
_hubi action ["engineOff", _hubi];
deleteWaypoint [group _hubi , 0];
deleteWaypoint [group _hubi , 1];
dof_evac_anforderung = false;

Geändert von Drunken Officer (13.01.2014 um 14:37 Uhr).
Drunken Officer ist offline  
Alt 13.01.2014, 15:28   #7 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Erstmal ein GROßES Dankeschön an euch, für die schnelle und aufschlußreiche Hilfe
Habe jetz schon ein besseres Verständnis für die "Arrays", denn...
Zitat:

Lies dir doch mal bitte bei BIS Wiki den Befehl durch.

...das habe ich bereits mehrmals getan und denke immernoch » (mit andern Worten, das will nich in mein Kopf rein)

...mag mir einer noch schnell das "select 0, select 1, etc" bei den arrays erklären ?
grade im bezug auf:
Code:
_hubi = _this select 0;
 
[...]
 
waitUntil {getpos _hubi select 2 < 5};
sowie:
Code:
deleteWaypoint [group _hubi , 0];
deleteWaypoint [group _hubi , 1];
...warum 0 und warum 1 ?!
b0rnkilla ist offline  
Alt 13.01.2014, 16:04   #8 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

mit dem Aufruf [heliname] exec...

Damit erzeugst du einen Array. Select 0 wählt das erste Element aus
1 das 2.
2 das 3.
usw

Mal angenommen
evac = [heliname, 30 70] execVM "dof_evac.sqf";

zur Verdeutlichung: evac = [select 0, select 1, select 2] ....

Code:
...
_hubi = _this select 0; // _hubi ist einfach eine Variable, damit später nicht im (_this select 0) geschreiben werden muss

_wartezeit = _this select 1;
_flughoehe = _this select 2;

...
...
sleep _wartezeit;
_wpende = group _hubi addWaypoint [_zuHause,1];
[group _hubi, 1] SetWaypointType "move";    
 _hubi setspeedMode "normal";
_hubi flyinHeight _flughoehe;
   ...
...


Jetzt habe ich das Script abgeändert. Er wartet nicht bis alle Einheiten eingestiegen sind, sondern nur eine im Array vordefinierte Zeit.
Dann fliegt der Heli in einer vordefinierten Höhe davon.



waitUntil {getpos _hubi select 2 < 5};
getPos fragt die Position des Helis ab und bekommt einen Array [länge,breite, höhe]
select 2 fragt das 3. element dieses array ab.

******************
Eine Script für dich zur Veranschaulichung

Stelle dir einen Heli auf die KArte und lasse diesen von a nach b fleigen.
in die Init des Helis schreibst du rein:
test = [this] execVM "DOF_TEST.sqf";

Code:
private  ["_heli"];
_heli = _this select 0; //du übergibst mit THIS das Fahrzeug
while {alive _heli} do
{
_pos = getPos _heli;
player sideChat format ["das ist der array: %1", _pos];

hint format ["aber schöner sieht es so aus \n Länge: %1 \n Breite: %2 \n Höhe: %3", _pos select 0, _pos select 1, _pos select 2];

sleep 3;
};

Geändert von Drunken Officer (13.01.2014 um 16:13 Uhr).
Drunken Officer ist offline  
Alt 13.01.2014, 17:02   #9 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Vielen Dank dafür.
Jetzt bin ich schon ein ganzes Stück weiter (nicht nur in diese Script hier, sondern allgemein).
Werde heute abend leider nicht dazu kommen, das ganze zu testen, da mein Weibchen heute ein wenig aufmerksamkeit haben möchte
Aber werde es die Tage ausprobieren und anschließend hier berichten.
Habe ja jetzt 2 Versionen des "Heli-Evac-Scripts", einmal von JanIs (per Email) und einmal von Drunken Officer.
Wenn das alles klappt, muss ich's nur noch hinbekommen das LifeFeed(PiP) auf dem Laptop (oder einem Schild, Tafel, o.ä.) darzustellen und nicht als Minibildschirm im eingenen Screen.
Siehe: PIP - Livefeed - Hilfe Jungs ^^
b0rnkilla ist offline  
Alt 13.01.2014, 20:12   #10 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 02.11.2010
Beiträge: 113
Standard

@Drunken Officer

Dein Script hat IMHO einen kleinen Fehler drin.

Anstatt:
Code:
waitUntil {{_x in _hubi;} forEach units group player};
würde ich das nehmen:
Code:
waitUntil {{_x in _hubi} count units group player == count units group player};};
In deinem Fall wartet der Hubi nicht bis alle drin sind sondern startet sofort los wenn sich einer der Gruppe im Heli befindet ...

Ansonsten läuft es einwandfrei.

Just my 2 Cents
Greetz
Jan
JanIs ist offline  
Alt 13.01.2014, 20:58   #11 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Hey Jungs,

also das Heli-Evac-Script läuft einwandfrei
in der aktuellen Fassung sieht es wie folgt aus:
Code:
/* - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - SCRIPT by DrunkenOfficer, JanIs, b0rnkilla - - -
- - - vielen Dank für die große Unterstützung an - - -
- - - - - - - DrunkenOfficer und Janis - - - - - - - -
*/ - - - - - - - - - - - - - - - - - - - - - - - - - -

private ["_wp0", "_wp1", "_pos", "_lz","_heli"];
if (isNil "heli_unterwegs") then {heli_unterwegs = false};
if (heli_unterwegs) exitWith 
    {
        sleep 1 + (random 2);    
        evac_heli sideRadio "evac3";
        evac_heli globalchat localize "STR_EVAC_DENIED";
    };
    
_heli = _this select 0;
_lz = getPos _heli;
_pos = getPos Player; 
heli_unterwegs = true;
_heli setfuel 1;

sleep 1 + (random 2);

evac_heli sideRadio "evac1";
evac_heli globalchat localize "STR_EVAC_REQUEST";
    
sleep 4 + (random 3);
    
evac_heli sideRadio "evac2";
evac_heli globalchat localize "STR_EVAC_ACCEPT";
     
    _wp0 = group _heli addwaypoint [_pos, 0];
    _wp0 setwaypointtype "MOVE"; 
    _heli setCombatMode "blue";
    _heli setBehaviour "SAFE";
    _heli allowfleeing 0;
waitUntil {_heli distance _pos < 500};  
    "SmokeShellGreen" createVehicle _pos;    
waitUntil {_heli distance _pos < 150};  
    _heli setspeedMode "LIMITED";
    _heli land "GET IN";
waitUntil {getpos _heli select 2 < 5};
    _heli flyinHeight 2;

waitUntil {{_x in _heli;} forEach units group player};
    _wp1 = group _heli addWaypoint [_lz,1];
    [group _heli, 1] SetWaypointType "move";    
    _heli setspeedMode "normal";
    _heli flyinHeight 100;
    
waitUntil {_heli distance _lz < 150}; 
    _heli setspeedMode "LIMITED";
    _heli land "LAND";
waitUntil {isTouchingGround _heli};
       {_x action ["getOut", _heli];} forEach units group player;
        
_heli action ["engineOff", _heli];
deleteWaypoint [group _heli , 0];
deleteWaypoint [group _heli , 1];
heli_unterwegs = false;
nun habe ich (zum besseren Verständnis der "Arrays") schnell ein neues Script angefertigt... allerdings steh ich wieder auf'm Schlauch...

Ein Soldat (soldat2) soll zu mir rüber laufen. Den Befehl dazu bekommt er über ein addAction-Command, der an einem Objekt (laptop) durch einen Spieler ausgelöst wird.

Schaut's euch mal an:
Init.sqf - Eintrag:
Code:
laptop addAction["<t color='#000000'>Komm her, Soldat!</t>","lauf.sqf", soldat];
lauf.sqf :
Code:
private ["_wp0","_pos","_soldat"];

_soldat = _this select 2;
_soldat = leader _soldat;
_pos = getPos Player; 

sleep 1 + (random 2);

soldat2 sidechat localize "STR_ONMYWAY";

sleep 1;

    _wp0 = group _soldat addwaypoint [_pos, 0];
    _wp0 setwaypointtype "MOVE"; 
    _soldat setCombatMode "blue";
    _soldat setBehaviour "SAFE";
    _soldat allowfleeing 0;

sleep 1;

soldat2 sidechat localize "STR_W_F_ORDERS";
soldat2 action ["salute", soldat2];

sleep 1;

soldat2 action ["salute", soldat2];
....und ich dachte schon ich hätt's endlich gerafft
b0rnkilla ist offline  
Alt 13.01.2014, 21:00   #12 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Zitat:

In deinem Fall wartet der Hubi nicht bis alle drin sind sondern startet sofort los wenn sich einer der Gruppe im Heli befindet ...

Ouw... danke JanIs, für den Hinweis (den Scriptbefehl hatte du ja bereits in deiner Version verwendet^^)

werde dies noch abändern.
b0rnkilla ist offline  
Alt 13.01.2014, 23:53   #13 (permalink)
Newbie
 
Registriert seit: 15.05.2012
Beiträge: 27
Standard

Soooo....
den Fehler in der "lauf.sqf" hab ich selbst gefunden und das ganze mit den Arrays habe ich nun verstanden! eeeeeeendliiiich

hier nur zur Info wie die "lauf.sqf" jetzt ausschaut:
Code:
//Test-Script, um Soldat2 via addAction am Laptop zum Player laufen zu lassen.
//by b0rnkilla

private ["_wp0","_pos","_soldat","_grp"];

_soldat = _this select 2;
_pos = getPos Player; 
_grp = group soldat2;

sleep 1 + (random 2);

    soldat2 sidechat localize "STR_ONMYWAY";

sleep 1;

    _wp0 = _grp addwaypoint [_pos, 0];
    _wp0 setwaypointtype "MOVE"; 
    _grp setCombatMode "blue";
    _grp setBehaviour "SAFE";
    _grp setspeedMode "FULL";
    _grp allowfleeing 0;

sleep 1;

waitUntil {soldat2 distance player < 8};
    soldat2 sidechat localize "STR_W_F_ORDERS";
    soldat2 action ["salute", soldat2];
    sleep 2;
    soldat2 action ["salute", soldat2];
Danke nochmal für eure Hilfe Jungs.

Der Thread kann jetzt geschlossen werden
b0rnkilla ist offline  
Alt 14.01.2014, 11:33   #14 (permalink)
50 Beiträge100 Beiträge
 
Registriert seit: 02.11.2010
Beiträge: 113
Standard

Zitat von b0rnkilla Beitrag anzeigen

Ouw... danke JanIs, für den Hinweis (den Scriptbefehl hatte du ja bereits in deiner Version verwendet^^)

werde dies noch abändern.

Naja eigentlich war es deine Wegpunktversion.
Ich wusste ja nicht, dass du lieber die gescriptete Version hättest.

Aber egal, Hauptsache es läuft jetzt alles wunschgemäß.
JanIs ist offline  
Alt 04.05.2014, 00:46   #15 (permalink)
Newbie
 
Benutzerbild von Lt_Keller
 
Registriert seit: 28.06.2013
Ort: Franken
Beiträge: 23
Standard

Ich hab mal versucht euer script in eine Test mission zu packen und hab noch bissl dran rum geschraubt

Steam Workshop :: z_Heli_evacuation_test

das was hier oben als Verbesserung rein gesetzt wurde... hat glaub ich einen fehler.
Code:
waitUntil {{_x in _hubi} count units group player == count units group player};};
Hier muss noch eine geschweifte Klamer am anfang hin weil es werden 2 aufgemacht und drei zu.
Code:
waitUntil {{{_x in _hubi} count units group player == count units group player};};
Lieg ich da richtig!?
__________________
My Youtube Gaming Chanel:
http://www.youtube.com/user/LtKeller1



visit us on our Arma 3 Server:
sAHVg GameServer
Lt_Keller ist offline  
Alt 04.05.2014, 10:31   #16 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.109
Standard

Jo ich habe da auch weiter gebaut. Meine aktuelle Version, fordert einen Wurf einer Rauchgranate. Es kann wahlweise nach Hause geflogen werden bzw eine neu Lz gewählt werden. Baue gerade noch den Dialog ein.

Die 2. Klammer am Ende ist nutzlos. WaitUntil wird bereits mit der ersten klammer geschlossen. Also die 2. Löschen

Geändert von Drunken Officer (04.05.2014 um 10:37 Uhr).
Drunken Officer ist offline  
 


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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
Script hilfe gesucht (RP Server) G00DPiXel Editing & Scripting 0 21.08.2013 17:16
Motorrad config.cpp/modell.cfg Hilfe Q_W_E_R Mods & Addons 15 29.05.2013 22:03
Hilfe bei Nachtsichtgerät xsnake02x Editing & Scripting 3 13.03.2013 13:02
Neuling brauch Hilfe Joghurt Multiplayer Community 1 02.11.2010 22:42


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 117 118 119