Hallo,
Ich bin momentan bei einen Helikopter via Script wegpunkte abfligen zu lassen.
Soweit klappt das auch aber es gibt jetzt bloß noch ein Problem: Das der heli nicht landen will.
Wer da hilfe oder anregungen hat würde ich mich sehr freuen
Hallo,
Ich bin momentan bei einen Helikopter via Script wegpunkte abfligen zu lassen.
Soweit klappt das auch aber es gibt jetzt bloß noch ein Problem: Das der heli nicht landen will.
Wer da hilfe oder anregungen hat würde ich mich sehr freuen
Soweit ich weiß sucht sich die KI einen geeigneten Platz in Umgebung aus... Bin mir aber nicht Sicher, ist immerhin Arma 3
Ja das stimmt das problem ist das ich ihm via Script nicht sagen kann das er landet sondern blos Hovert also schwebt.
Der heli sucht sich das nächste helipad aus und dort landet er auch so ist es im Editor aber im Script kann ich ihn nicht sagen das er landen soll
Ich bin jetzt nicht der Ultimative Script experte ^10. Gibt aber einige hier die Ahnung haben wie @blackfisch oder @nox
Hau doch mal dein Script hier rein und wir werden sehen was man da machen kann.
Na mal sehen ob mir da wer weiterhelfen kann
_heli = air_s;
_pilot = driver _heli;
_unit = (group _pilot);
_this = _unit addWaypoint [[14807.305, 16749.93, 100.00], 0];
_this setWaypointSpeed "FULL";
_this setWaypointBehaviour "SAVE";
_this setWaypointType "MOVE";
_waypoint_0 = _this;
_this = _unit addWaypoint [[14933.14, 16734.145, 150.00], 0];
_this setWaypointType "MOVE";
_waypoint_1 = _this;
_this = _unit addWaypoint [[15417.237, 17114.139, 200.00], 0];
_this setWaypointType "MOVE";
_waypoint_2 = _this;
_this = _unit addWaypoint [[25279.89, 21452.992, 200.00], 0];
_this setWaypointType "MOVE";
_waypoint_3 = _this;
_this = _unit addWaypoint [[25450.42, 21302.27, 150.00], 0];
_this setWaypointType "MOVE";
_waypoint_4 = _this;
_this = _unit addWaypoint [[25478.242, 21227.03, 0], 0];
//_this setWaypointType "MOVE";
_this setWaypointType "Transport Unload";
_this setWaypointType "Get Out";
_this setWaypointTimeout [150, 180, 190];
_waypoint_5 = _this;
/*
_helicopter move (getPos _destination);
sleep 3;
while { ( (alive _helicopter) && !(unitReady _helicopter) ) } do
{
sleep 1;
};
if (alive _helicopter) then
{
_helicopter land "LAND";
};
*/
_this = _unit addWaypoint [[25551.08, 21214,963, 100.0], 0];
_this setWaypointType "MOVE";
_waypoint_6 = _this;
_this = _unit addWaypoint [[25465.146, 20444.895, 200.00], 0];
_this setWaypointType "MOVE";
_waypoint_7 = _this;
_this = _unit addWaypoint [[14498.244, 17301.244, 200.0], 0];
_this setWaypointType "MOVE";
_waypoint_8 = _this;
_this = _unit addWaypoint [[14627.844, 16984.623, 100.0], 0];
_this setWaypointType "MOVE";
_waypoint_9 = _this;
_this = _unit addWaypoint [[14726.889, 16828.857, 70.00], 0];
_this setWaypointType "MOVE";
_waypoint_10 = _this;
_this = _unit addWaypoint [[14737.004, 16813.982, 0], 0];
_this setWaypointType "Transport Unload";
_this setWaypointTimeout [150, 180, 190];
_waypoint_11 = _this;
_this = _unit addWaypoint [[14737.004, 16813.982, 0], 0];
_this setWaypointType "CYCLE";
_waypoint_12 = _this;
Der große aukommentierte Teil ist ein kleiner Versuch den Heli zu zwingen den ich gefunden habe aber sobald ich einen Marker einbaue in dem Teil sagt er immer nicht definierte Vareable.
Ich saß da heute schonmal mit ihm dran, mir gehen leider die Ideen aus...
Ja das stimmt und danch habe ich ja auch noch den anderen Befehl mit dem Landen gefunden.
Kann man den nicht darinn irgendwie einbauen
Ein recht herzliches Dankeschön an euch Allen die mir hier geholfen haben.
mittlerweile fliegt der Helikopter und Landet auch.
gibt jetzt bloß noch ein einziges Problem das er den "hint" befehl nicht ausführen mag.
ich habe ihm eine Textausgabe eingebaut die Aktiviert wird nach dem Der Heli gelandet ist, das die Spieler wissen wieviel Zeit ihnen Bleibt bis der Heli startet.
Aber er gibt einfach keinen Text aus weder lokal noch ähnliches.
hat da wer noch irgend eine Idee?
M.K.G.
Snake586
per remoteExec machen lassen:
[1,format ["Das Helitaxi ist am Airport gelandet und hebt in %1Minutem wieder ab", _timer]] remoteExec ["life_fnc_broadcast",civilian];
Damit bekommen das alle Civs als Meldung. _timer ist die Variable, wie lange der Heli bleibt (in Minuten)
Coole Sache.
Aber die Meldung wäre sicher etwas nervig, wenn die immer bei allen Spielern kommt. Wäre doch interessanter, wenn die nur bei dem Spieler kommt, der sich z.B. 500m in der Nähe des Landeplatzes befindet.
Etwa so:
if(player distance landen_1 <= 500 && player distance landen_2 <= 500 && player distance landen_3 <= 500 && player distance landen_4 <= 500) then {
[1,format ["Das Helitaxi ist am Airport gelandet und hebt in %1Minutem wieder ab", _timer]] remoteExec ["life_fnc_broadcast",civilian];
};
MfG
Saturin78
Das funktioniert so aber nicht, weil dann alle Spieler die Meldung bekommen wenn einer in der Nähe ist... Außerdem findet die Berechnung serverseitig statt und somit ist das Schwachsinn Sowas hier könnte man aber machen:
{
if !(side _x isEqualTo civilian) exitWith {};
if(((_x distance landen_1) <= 500) || ((_x distance landen_2) <= 500) || ((_x distance landen_3) <= 500) || ((_x distance landen_4) <= 500)) then {
[1,format ["Das Helitaxi ist am Airport gelandet und hebt in %1 Minutem wieder ab", _timer]] remoteExec ["life_fnc_broadcast",_x];
};
} forEach playableUnits;
Cool.
Ja das war nur in etwa eine Idee. Danke.