![]() |
#1 (permalink) |
![]() Registriert seit: 21.10.2008
Beiträge: 54
|
![]()
Hi,
hier eine "Rundumsicherung" die nach Anlandung eines Helis erfolgt. Funktioniert bei einer Gruppe AI. Aber sobald man selbst als Player drin ist dann nicht. Ich weiß nicht wie ich den Player (welcher Leader der Gruppe ist) von der "Rundumsicherung" also des Zählvoganges auschliesse... Weil das Problem ist das wenn ich als Player die Gruppe zurück zur Formation rufe.. sie dann Nummer 2 folgen und bei mir noch "Bewegen" steht... ![]() PHP-Code:
|
![]() |
![]() |
#2 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Lass dir einmal den Leader am Ende des Skripts (vor der exitwith Zeile) anzeigen:
player groupChat format["Leader: %1",leader _grp]; Ausschließen könntest du den player indem du ihn am Beginn aus der Gruppe entfernst und am Ende wieder als Leader hinzufügst. Geändert von Vienna (05.03.2012 um 23:09 Uhr). |
![]() |
![]() |
#3 (permalink) |
![]() Registriert seit: 21.10.2008
Beiträge: 54
|
![]()
ich habs so gelöst:
PHP-Code:
Kann man ansonsten etwas am Script verbessern? Danke für die Hilfe! |
![]() |
![]() |
#4 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Ich hätte die Abfrage wie folgend in der for-Schleife gemacht. Das beseitigt den doppelten spawn-Teil.
Code:
... ... {doStopAI;} forEach units _grp; for "_x" from 0 to _unitcount do { _a = (_target_pos select 0)+(sin(_ang)*_rad); _b = (_target_pos select 1)+(cos(_ang)*_rad); _pos = [_a,_b,_target_pos select 2]; _unit = units _grp select _x; if (! _unit == player) then { [_unit, _pos, _ang] spawn { _u = _this select 0; _p = _this select 1; _a = _this select 2; _u doMove _p; waituntil{getPos _u distance _p < 2}; _u setDir _a; _u setPos getPos _u; _u setUnitPos "MIDDLE"; _u disableAI "move"; }; _ang = _ang + _inc; }; }; sleep 15; ... ... "local player" hingegen hat auch Auswirkungen, wenn der Spieler nicht in der Gruppe ist. "local player" bedeutet, dass an diesem PC ein Spieler sitzt, nicht ob er in einer Gruppe dabei ist. |
![]() |
![]() |
#5 (permalink) |
![]() Registriert seit: 21.10.2008
Beiträge: 54
|
![]() ![]() Genau das hab ich gewollt! Ich bin beim scripten noch ein Neuling und daher für jede Hilfe dankbar! Auch wenn es für viele vielleicht banale Sachen sind... Denn jeder fängt mal klein an und macht das programmieren nicht hauptberuflich ![]() Ich finde es gut das es dieses deutschsprachige Forum gibt und es Leute gibt die einem "unter die Arme greifen" und helfen. Somit hat die Community Nachwuchs ![]() |
![]() |
![]() |
#7 (permalink) |
![]() ![]() ![]() ![]() Registriert seit: 12.07.2004
Ort: Wien
Beiträge: 1.917
|
![]()
Für einen Neuling machst du es aber schon recht gut.
Wo in Arma Klammern zu setzen sind, ist manchmal verwirrend. Ich versuche immer keine unnötigen zu verwenden. "Verlangsamt" ja sonst den Programmablauf. Man merkt Fehler dann sowieso beim Testen (was ich hier nicht getan habe). Aber in diesem Fall hätte es eigentlich klar sein sollen. Ich hoffe es hat dich nicht zu lange aufgehalten den Fehler zu finden. Um Skriptfehler direkt angezeigt zu bekommen, ist eine entsprechende Einstellung beim Programmaufruf erforderlich: ....\ArmA 2\arma2.exe" -nosplash -showscripterrors |
![]() |
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
Themen-Optionen | |
Ansicht | |
|
|
![]() |
||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Fragen zum Editor | chris2110 | Editing & Scripting | 1014 | 26.08.2014 00:25 |
Rucksack | CptMike | Editing & Scripting | 21 | 28.10.2011 00:35 |
Hilfe bei config.cpp verändern | ST6_Predator | Editing & Scripting | 6 | 31.12.2010 00:14 |
Problem mit Briefing im MP | Clawhammer | Editing & Scripting | 13 | 17.09.2010 18:29 |
Heal/Repair Script / Einheiten in einem Radius zufällig generieren lassen | Noobfire | Editing & Scripting | 8 | 06.08.2010 16:22 |