Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 17.11.2010, 10:59   #1 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard Sidechat ist nur local!

Hallo,

wieder einmal beschäftigt mich das Problem Auslöser für eine Didicated Mission local bzw. global zu schalten.

Sorry, aber da ist bei mir der Groschen noch nicht gefallen


Zu meinem Problem:

Ich habe Auslöser, die um grunde genommen einen Funkspruch auslösen sollen.
Dieser Auslöser ist aber an bestimmte Bedingungen geknüpft!

1.) Beispiel:

Auslöser auf der Karte:
Bedingung:
Code:
player hasWeapon "EvMoscow" and player hasWeapon "EvKobalt" and player distance fst1 <= 10 and !(alive fst1)
bei Aktivierung:
Code:
player sidechat localize "@STR_Dlg_Trigger_Fst1"
Im Beispiel soll also der Funkspruch ausgelöst werden, wenn der Spieler mit den Beweisen in der nähe vom Objekt1 ist, aber dieser Zerstört ist.

Wenn ich diese Einheit spiele, und ich den Auslöser aktiviere, kann ich den Text lesen, aber alle Andere Spieler sehen den nicht!

Woran kann das liegen???


2.) Beispiel, was mich komplett verwirrt, wäre schön wenn mir da jemand weiter hilft!

Zwei Auslöser, die zusammen ein Ereignis auslösen soll
Auslöser 1:
Bedingung:
Code:
!(player hasWeapon "EvMoscow") and side Player==west and alive player
bei Aktivierung:
Code:
Schalter1=true, HQ sidechat "blabla ... Beweise verloren ... bla bla
Auslöser 2: (verzögert um ca 20 sek, damit man den Funk vom Auslöser 1 in ruhe lesen kann)
Bedingung:
Code:
Schalter1
bei Aktivierung:
Code:
playMusic "Track2"
(zugleich wird das Bild schwarz ausgeblendet mit einer Menge Text...)

Problem:
Nachdem die Beweise abgelegt wurden, sieht nur dieser Spieler den Funk, hört die Musik und sieht die Ausblendung.
Aber alle anderen bekommen davon nix mit.

Bitte, könnt ihr mir sagen warum das so ist?
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 ist offline   Mit Zitat antworten
Alt 17.11.2010, 11:15   #2 (permalink)
500 Beiträge
 
Benutzerbild von Anemia
 
Registriert seit: 20.05.2009
Beiträge: 605
Standard

naja so wie ich das sehe sprichst du ja uach nur den Player an der den auslöser betätigt.

Versuchs mal so :

Auslöser erstellen

Bedingung:
Code:
player in thislist
Aktivierung:
Code:
hint "Hier dein Text bla bla ";

Alle im auslöserbereich sollten dann eine nachricht bekommen..... bzw. kannst du natürlich auch globale auslöser so bestücken.
Anemia ist offline   Mit Zitat antworten
Alt 17.11.2010, 11:34   #3 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard

Also dann so?

Code:
player in thislist and player hasWeapon "EvMoscow" and player hasWeapon "EvKobalt" and player distance fst1 <= 10 and !(alive fst1)
Code:
player sidechat localize "@STR_Dlg_Trigger_Fst1"
Denn das wichtige ist ja, dass auch die Bedingungen erfüllt sind.
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 ist offline   Mit Zitat antworten
Alt 17.11.2010, 11:41   #4 (permalink)
500 Beiträge
 
Benutzerbild von Anemia
 
Registriert seit: 20.05.2009
Beiträge: 605
Standard

Zitat von GER_CJ-187 Beitrag anzeigen

Also dann so?

Code:
player in thislist and player hasWeapon "EvMoscow" and player hasWeapon "EvKobalt" and player distance fst1 <= 10 and !(alive fst1)
Code:
player sidechat localize "@STR_Dlg_Trigger_Fst1"
Denn das wichtige ist ja, dass auch die Bedingungen erfüllt sind.

Meiner meinung nach müsste das funktionieren. Am besten machst du das dann mit einer verzögerung. Da ja immer jemand zuerst den auslöserbereich betritt und dann ja auch nur eine person die nachricht bekommt. Muss also irgendwie gewährleistet sein das die anderen auch schon im bereich sind.
Ansonsten kannst du das mit 2 auslösern machen ... einen kleinen der den zweiten aktiviert mit einem größeren radius oder dann halt einen globalen auslöser der den funkspruch durchgibt.

Ich verwende es in meiner mission am start wenn man auf die karte kommt. dardurch ist bei mir gewährleistet das alle in dem auslöserbereich stehen. in deinem fall muss man evtl. bisschen tricksen.

glaube aber das es funktionieren sollte.
Anemia ist offline   Mit Zitat antworten
Alt 17.11.2010, 11:54   #5 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard

Naja, habe ja keine Auslöser-Bereiche, da alle Auslöser bei mir entweder den Status prüfen, oder auf erfüllte Bedingungen warten.
Daher sind Alle meine Auslöser auf 0/0 gestellt (also laut Editing-Guide) Global.

Nur meiner Meinung nach, ist das Problem, dass einer der Auslöser einen Spieler abfragt, und einen andern Auslöser startet.
Der zweite hat also nur den ersten Auslöser als bedingung, trotzdem wurde der SideChat nur bei dem einen Spieler angezeigt.

Und du meinst, dass Player in thislist am Anfang der Bedingung das Problem löst?

Ich frage nur, da mir diese Bedingung nicht ganz einleuchtet.

Ich werde ihn aber dennoch einbauen, und mal schnell auf dem Server schauen, ob es funzt.

Falls das nicht der Fall ist, würde ich wirklich sehr über weitere Hilfe freuen...

MfG - Christopher
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 ist offline   Mit Zitat antworten
Alt 17.11.2010, 13:53   #6 (permalink)
5000 Beiträge
 
Benutzerbild von Xeno
 
Registriert seit: 03.01.2008
Alter: 77
Beiträge: 6.547
Standard

*deleted*

Xeno
__________________
In arma everything is made of refined explodium, armored with wet paper towels.

Geändert von Xeno (03.01.2014 um 09:14 Uhr).
Xeno ist offline   Mit Zitat antworten
Alt 17.11.2010, 14:01   #7 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard

ja, das mach ich ja andauernd.
Ist nur sehr Zeitaufwendig, die Mission zu editieren, hochzuladen um anschließend mit jemanden zu testen, der evtl nicht den ganzen Tag dafür Zeit hat.

Xeno, es würde mich überglücklich machen, wenn du mir verraten würdest, wie ich das mit der Publicvariable hin bekomme, denn die Ideen, wie man das erreichen kann gehen mir langsam aus, und da du es ja bestimmt weist, wäre ich für deine Hilfe sehr dankbar.
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 ist offline   Mit Zitat antworten
Alt 17.11.2010, 14:40   #8 (permalink)
Armed-Assault.de Team10 Jahre hx3
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Moerderhoschi
 
Registriert seit: 01.07.2006
Ort: Kabul
Alter: 32
Beiträge: 2.662
Standard

Du kannst das mit publicVariable loesen.

ersetze in deinem 1.Trigger die aktvierung mit:
Code:
publicV1=true; publicVariable "publicV1";
Dann machst du einen neuen Trigger auf die Karte mit bedingung:

Code:
!isServer and publicv1
und bei aktivierung schreibst du deinen player sidechat stuff vom ersten Trigger hinein.

Damit loest der Trigger 1 der durch den Player ausgeloest wird den Trigger publicV1 aus.

Dessen aktivierung durch publicVariable an alle anderen Clients gesendet wird.

Somit ueberall (bei jedem client) ausgefuehrt wird. (der sidechat wird auf jedem client ausgefuehrt)



genau das selbe musst du auch bei deinen anderen Triggern machen mit dem Text und Musictrack.

auch dort wieder die aktivierung ersetzten mit:

Code:
publicV2=true; publicVariable "publicV2";
Dann wieder einen neuen Trigger auf die Karte mit bedingung:

Code:
!isServer and publicv2
und bei aktivierung:

Code:
Schalter1=true; HQ sidechat "blabla ... Beweise verloren ... bla bla
dann wird auch wieder bei jedem client der Trigger publicV2 ausgefuehrt und jeder spieler sieht den sidechat und bekommt den MusicTrack vom Trigger mit.



__________________


Moerderhoschi ist offline   Mit Zitat antworten
Alt 17.11.2010, 15:24   #9 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard

ok, danke, werds mal so einbauen.
Ist zwar ne menge anzupassen, aber das ist es mir wert!

Nur eine Frage, mussen die Auslöser publicVx heißen?

gehts auch so?
loosebw=true; publicVariable "loosebw"

dann müsste ich nicht so viel umschreiben...
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 ist offline   Mit Zitat antworten
Alt 17.11.2010, 15:31   #10 (permalink)
Armed-Assault.de Team10 Jahre hx3
500 Beiträge1000 Beiträge2.500 Beiträge
 
Benutzerbild von Moerderhoschi
 
Registriert seit: 01.07.2006
Ort: Kabul
Alter: 32
Beiträge: 2.662
Standard

Zitat von GER_CJ-187 Beitrag anzeigen

ok, danke, werds mal so einbauen.
Ist zwar ne menge anzupassen, aber das ist es mir wert!

Nur eine Frage, mussen die Auslöser publicVx heißen?

gehts auch so?
loosebw=true; publicVariable "loosebw"

dann müsste ich nicht so viel umschreiben...

wie du den Trigger nennst spielt keine rolle, wichtig ist halt nur damit du bei publicVariable den selben namen angibts wie der Trigger hat.


__________________


Moerderhoschi ist offline   Mit Zitat antworten
Alt 17.11.2010, 15:58   #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

In folgendem Link habe ich ein Beispielmission angeführt, wie man mit wenigen Auslösern ganz einfach eine universelle "Befehlsübertragung" anlegen kann:

2 Fragen: bezügl. setObjectTexture u. einem AA-Script

Damit sendest du z.B. so deine Befehlszeile:

BefehlAnWest = {S1 sidechat localize "@STR_Dlg_Trigger_Fst1"}; publicVariable "BefehlAnWest"

zu den Mitspielern der West Seite.
Vienna ist offline   Mit Zitat antworten
Alt 18.11.2010, 07:08   #12 (permalink)
50 Beiträge100 Beiträge250 Beiträge
 
Registriert seit: 29.05.2008
Ort: BERLIN
Alter: 28
Beiträge: 496
GER_CJ-187 eine Nachricht über ICQ schicken GER_CJ-187 eine Nachricht über Skype™ schicken
Standard

Erstmal danke für eure Hilfe.

Es wurden zwar mir der Hilfe von 'Moerderhoschi' einige Funksprüche an alle Spieler gesendet, aber leider hatte sich dann das Problem gezeigt, dass sich diese nicht wiederholen ließen

Einige wurden erst garnicht gezeigt.

zB

1)
Bedingung:
Code:
!(someAmmo ari)
Auslöser:
Code:
arileer=true; publicVariable "arileer";
2)
Bedingung:
Code:
arileer
Auslöser:
Code:
gunner ari sideChat localize "@STR_Dlg_Trigger_ari1"
3)
Bedingung:
Code:
arileer
Auslöser: (50 sek verzögert)
Code:
ari addMagazine "8Rnd_82mmHE_2B14"; reload ari; reload gunner ari;gunner ari sideChat localize "@STR_Dlg_Trigger_ari2"
Problem ist, wenn ich anschließend den Mörser wieder leer geschossen habe, dann kommt die erste Meldung nicht mehr.

Soll ich etwa am letzten Auslöser dann jede PublicVariable wieder auf false stellen?

3)
Bedingung:
Code:
arileer
Auslöser: (50 sek verzögert)
Code:
ari addMagazine "8Rnd_82mmHE_2B14"; reload ari; reload gunner ari;gunner ari sideChat localize "@STR_Dlg_Trigger_ari2";arileer=false; publicVariable "arileer";
__________________

CPU: Intel Core i7-3770K ~ 4 x 3.5GHz // Mainboard: Asus P8P67 LE // RAM: 2 x 8GB DDR3-1333 RAM
Grafikkarte: Nvidia GTX 680 ~ 2GB // Soundkarte: Creative Gamer X-Fi

GER_CJ-187 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
Stringtable-Texte im SideChat? GER_CJ-187 Editing & Scripting 10 13.11.2010 20: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