Armed-Assault.de Twitter


Editing The world is a Script - write it!

Antwort
 
Themen-Optionen Ansicht
Alt 09.03.2009, 12:53   #1 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard Effekt "Black Out/In"

Hallo

Ich habe eine Frage bezüglich des Effekts "Black Out/In".
Durch den Effekt sind normalerweise alle Spieler betroffen kann man den evtl nur für 1 Person einblenden lassen?.

Danke schonmal.

S4mmy
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}

S4mmy ist offline   Mit Zitat antworten
Alt 09.03.2009, 14:23   #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

Das ist ein lokaler Befehl. Wenn du ihn aber z.B. in einem normalen Auslöser aufrufst, dann sehen ihn natürlich alle Spieler. In einem Skript, welches nur bei einem Spieler abläuft, sieht es nur dieser Spieler.

Das sieht man öfter in Missionen wenn ein Spieler stirbt, dann wird der Bildschirm abgedunkelt. Das läuft aber nur auf dem PC dieses Spielers ab.
Vienna ist offline   Mit Zitat antworten
Alt 09.03.2009, 14:28   #3 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

Okay und wie funktioniert das? Brauche das für eine Mission da aber ein Spieler Pilot ist darf natürlich bei ihm das Bild nicht abdunkeln^^.
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}

S4mmy ist offline   Mit Zitat antworten
Alt 09.03.2009, 14:56   #4 (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

z.B. Auslösung nur wenn der Spieler unter einer Höhe von 5 Meter ist:


? (position Player) select 2 > 5 : goto "weiter"
...
... deine Zeilen für die Abdunklung
...
#weiter
Vienna ist offline   Mit Zitat antworten
Alt 09.03.2009, 22:35   #5 (permalink)
500 Beiträge
 
Registriert seit: 07.01.2008
Beiträge: 653
[GNC]Lord-MDB eine Nachricht über ICQ schicken
Standard

man kann auch nach ne Namen abfragen

PHP-Code:
?  (player != xyz) : goto "weiter"
...
... 
deine Zeilen für die Abdunklung
...
#weiter 
oder nach ne Typ

PHP-Code:
?  !(player isKindOf  SoldierWG) : goto "weiter"
 
...
 ... 
deine Zeilen für die Abdunklung
 
...
 
#weiter 
__________________


--> -> Rechtschreibfehler sind Gratis <- <--
--> Wer welche findet kann sie behalten <--



German Nato Corps
[GNC]Lord-MDB ist offline   Mit Zitat antworten
Alt 10.03.2009, 11:06   #6 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Icon4

Danke für die Antworten

Also ich hab folgendes vor ich lasse die Ki mit einem V22 Osprey über die See fliegen. Eine Rakete kommt angeflogen und haut das linke Triebwerk weg. Mit einem Triebwerk fliegts sich schlecht! Also landet der Pilot im Wasser klappt auch alles wunderbar! Weil diee Gruppe ins Wasser gebeamt wird möcht ich nur für die Gruppe ein Schwarzes Bild für ein paar Sekunden einblenden lassen, sieht sonst n' bisschen blöd aus, da man auf einmal irgendwo im Wasser ist . Der Pilot des Rescue Teams ist aber ein Spieler und bekanntlich fliegts sich mit schwarzen Bildschirm echt blöd. Daher ist es schlecht das es für ihn auch eingeblendet wird!

Nun weiß ich aber nicht genau wie das bei den Spieler in Gruppe 1 lokal abgefragt wird, dass das Bild schwarz wird. Dabei bräucht ich hilfe =)
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}


Geändert von S4mmy (10.03.2009 um 11:11 Uhr).
S4mmy ist offline   Mit Zitat antworten
Alt 10.03.2009, 15:44   #7 (permalink)
500 Beiträge
 
Registriert seit: 07.01.2008
Beiträge: 653
[GNC]Lord-MDB eine Nachricht über ICQ schicken
Standard

man könnte das über die höhe machen wenn der Pilot schon in der Luft ist oder über den Namen wenn der Pilot noch am Boden ist.

per namen

PHP-Code:
?  (player == Rescuepilotname) : goto "weiter"
...
... 
deine Zeilen für die Abdunklung
...
#weiter 
__________________


--> -> Rechtschreibfehler sind Gratis <- <--
--> Wer welche findet kann sie behalten <--



German Nato Corps
[GNC]Lord-MDB ist offline   Mit Zitat antworten
Alt 10.03.2009, 16:46   #8 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

Oh man... xD

? !(player isKindOf SoldierWG) : goto "weiter"
...
...
deine Zeilen für die Abdunklung
...
#weiter


ich bräuchte das komplette script das mit der abdunkelung weiß ich ja nicht wie das geht =/ ?!
und was soll unter weiter hin ?!

weil wenn ich schreibe titleCut ["", "Black In", 3];
sind ja wieder alle spieler davon betroffen wenn der spieler xy unter einer höhe von 5m is..
=/

das das bei einer höhe von xy anfängt is kein problem!

Also der Osprey fliegt durch n Auslöser bekommt Schaden
dann fliegt er kurz bevor er abstürzt durch einen zweiten Auslöser und das Script wird ausgeführt:
Code:
titleCut ["", "Black Out", 1];
{_x setpos getpos crewsh} forEach units e1;
~3
titleCut ["", "Black In", 1];
exit
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}


Geändert von S4mmy (10.03.2009 um 17:20 Uhr).
S4mmy ist offline   Mit Zitat antworten
Alt 10.03.2009, 19:52   #9 (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

Ich gehe davon aus, dass alle der Gruppe Spieler sind, wovon einer der Pilot ist der im Flugzeug verbleiben soll.


_flz = Flugzeugname

if (not player driver _flz) then {titleCut ["", "Black Out", 1]}
~2
_pos = getpos crewsh
if (not player driver _flz) then {player setpos _pos}
~1
if (not player driver _flz) then {titleCut ["", "Black In", 1]}


Es gibt hier kein goto zu "warten"!


Sind KIs in der Gruppe, dann sieht die mittler Zeile so aus:

{ if(not _x driver _flz) then {_x setpos _pos} } forEach units e1
Vienna ist offline   Mit Zitat antworten
Alt 10.03.2009, 21:57   #10 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

super danke und wenn der pilot nicht in der gruppe ist bzw im fahrzeug ist kann ich dann schreiben

Code:
_flz = pilot1

if (not player _flz) then {titleCut ["", "Black Out", 1]}
also das driver weglassen?
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}

S4mmy ist offline   Mit Zitat antworten
Alt 10.03.2009, 23:40   #11 (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

Du solltest bei einer Frage gleich zu Beginn die genauen Umstände beschreiben.

Mit folgenden Zeilen wird bei jedem Spieler, der als Pilot in irgend einem Luftfahrzeug sitzt, die die Abdunklung nicht gezeigt.

if(not (vehicle player isKindOf "Air" and player == driver vehicle player))then{titleCut ["","Black Out",1]}
~2
{ _x setpos getpos crewsh } forEach units e1
~1
if(not (vehicle player isKindOf "Air" and player == driver vehicle player))then{titleCut ["","Black In",1]}


Sitzt der Pilot als Gruppenmitglied im abstürzenden Flugheuz und soll nicht rausgesetzt werden, dann musst du diese als mittlere Zeile nehmen:

{ if(not _x driver Flugzeugname) then {_x setpos _pos} } forEach units e1
Vienna ist offline   Mit Zitat antworten
Alt 11.03.2009, 01:40   #12 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

Zitat:

Du solltest bei einer Frage gleich zu Beginn die genauen Umstände beschreiben.

Stimmt war etwas kompliziert..

Also nochmal alles auf Anfang

Die Gruppe 1 mit dem Teamleiter Namens e1 sitzen in einem V22 Osprey der übers Meer fliegt. Durch einen Auslöser bekommt der Osprey schaden und das linke Triebwerk fällt aus. Die Ki fliegt den Osprey und macht eine sehr unschöne Notlandung auf dem Wasser Die Gruppe 1 soll bei einer höhe von ca. 10 Meter eine Abdunkelung des Bildschirms bekomme danach werden sie hinter den Osprey gebeamt, sodass sie bei der Notlandung nicht verrecken und dannach das Bild wird wieder Normal. In der zwischenzeit steht am Flughafen der RscPilot1 ( ebendfalls ein Spieler ) und wartet außerhalb des Rescue Helis doch er soll von der abdunkelung nichts mitbekommen sowie evtl später weitere Spieler auch die abdunkelung soll just für Gruppe 1 sein.

Ich denke mal jetzt hast du alles verstanden.
Was ein hin und her
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}


Geändert von S4mmy (11.03.2009 um 01:45 Uhr).
S4mmy ist offline   Mit Zitat antworten
Alt 11.03.2009, 10:39   #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

Ja, ich habe es verstanden. Aber ich hoffe du verstehst auch, dass ich so eine Prozedur in Zukunft nicht mehr mitmache!


Die Abdunklung nur für die Gruppe 1:


? not(player in units e1) : goto "ende"

titleCut ["","Black Out",1]
~2
{ _x setpos getpos crewsh } forEach units e1
~1
titleCut ["","Black In",1]

#ende


Hier alles in einer Zeile, welche du direkt in "Bei Akt." in den Auslöser kopieren kannst und so kein Skript notwendig ist:

temp=[crewsh,e1]spawn{if(not(player in units(_this select 1)))then{titleCut ["","Black Out",1];sleep 2;{_x setpos getpos(_this select 0)}forEach units(_this select 1);sleep 1;titleCut ["","Black In",1]}}

Beachte die Paramter [crewsh,e1] welche übergeben werden müssen.
[ <Objektname von dem die Position genommen wird> , <Gruppenname> ]

Allerdings könnte es in beiden Fällen vorkommen, dass es nicht ganz sauber funktioniert, wenn die Befehle bei den Clients nicht zeitgleich ablaufen. So könnte es sein, dass ein Spieler schon vor dem Abdunkeln versetzt wird.

Falls das so ist kannst du es verhindern, wenn du die erste Pause (2 Sekunden) um einige Sekunden verlängerst. Eine korrektere Lösung wäre viel komplizierter.
Vienna ist offline   Mit Zitat antworten
Alt 11.03.2009, 11:19   #14 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

Super Danke!!!
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}

S4mmy ist offline   Mit Zitat antworten
Alt 11.03.2009, 12:59   #15 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

Ich bin heute morgen erst dazu gekommen es zu testen leider wird es für alle ausgeführt und nicht nur für die spieler in der gruppe e1 =(...

jetzt hab ich es mal in eine sqf gepackt
Code:
dieblinden=[e1,e2,e3,e4,e5,e6];

if !(_this in dieblinden) exitwith {};
titleCut ["","Black Out",1];
sleep 2;
{ _x setpos getpos crewsh } forEach units dieblinden;
sleep 2;
titleCut ["","Black In",1];
exit
es kommt zwar kein fehler aber es passiert auch nichts =/ komische sache
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}


Geändert von S4mmy (11.03.2009 um 15:32 Uhr).
S4mmy ist offline   Mit Zitat antworten
Alt 11.03.2009, 15:50   #16 (permalink)
500 Beiträge
 
Registriert seit: 07.01.2008
Beiträge: 653
[GNC]Lord-MDB eine Nachricht über ICQ schicken
Standard

das "_this" ist das problem,das script kann dem keiner person zuordnen damit das klappt.
"_this" kann nur gut verwenden um in Init zuarbeiten oder um Var zu übergeben in Scripten.

PHP-Code:
dieblinden=[e1,e2,e3,e4,e5,e6];

if !(
player in dieblindenexitwith {};
titleCut ["","Black Out",1];
sleep 2;
_x setpos getpos crewsh } forEach units dieblinden;
sleep 2;
titleCut ["","Black In",1];
exit 
__________________


--> -> Rechtschreibfehler sind Gratis <- <--
--> Wer welche findet kann sie behalten <--



German Nato Corps

Geändert von [GNC]Lord-MDB (11.03.2009 um 15:53 Uhr).
[GNC]Lord-MDB ist offline   Mit Zitat antworten
Alt 11.03.2009, 16:15   #17 (permalink)
50 Beiträge100 Beiträge
 
Benutzerbild von S4mmy
 
Registriert seit: 11.01.2008
Ort: NRW
Alter: 32
Beiträge: 140
Standard

jaaaaa =) es klappt dankeschön

einzigste problem ist die zeile

{ _x setpos getpos crewsh } forEach units dieblinden;

anstatt dieblinden muss ich e1 einsetzten aber klappt dann auch einwandfrei
__________________
IF (IT MAKES "KLICK") Then {YOU BE IN THE SHIT}


Geändert von S4mmy (11.03.2009 um 16:26 Uhr).
S4mmy 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
Wer kennt wen aus dem "real life"? Kompost Offtopic 8 05.10.2009 18:15
"transport entladen" funzt net auf em Dedi-Server Mr.g-c Editing 10 08.09.2008 15:18
Wo finde ich die map "Berzerk" zum downloaden??? Jois[GER] Multiplayer Community 2 30.01.2008 21:27
Waypoint "GUARD" oder "BEWACHEN" syn1979 Editing 2 21.12.2006 09:05


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