HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-187/)
-   -   Kill abfangen, um Killscreen anzuzeigen. (https://hx3.de/editing-scripting-187/kill-abfangen-um-killscreen-anzuzeigen-25608/)

Acer90 01.02.2017 21:13

Kill abfangen, um Killscreen anzuzeigen.
 
Hallo Liebe Arma Community,

Ich möchte gerne meinen Killscreen(cutrsc) nach den Tot für 10 Sekunden abspielen, wie kann ich den kill abfangen?

Danke für eure Hilfe.

mfg: Ace

Drunken Officer 02.02.2017 16:55

Abfangen.. am besten mit einer Schussweste.

Ansonsten mit dem Eventhandler Killed. Der löst aus, wenn die Einheit tot ist.

burns 02.02.2017 19:43

Ist jetzt nicht super hilfreich, aber Celery hatte das Konzept "Killcam" in irgendeiner DM10 oder DM12 von sich schon ziemlich gut verwirklicht. Man sah allerdings auch wieso es bei dieser einen Mission blieb.

Name kann ich absolut nicht mehr sagen ... und mein Orientierungssinn auf Chernarus hat auch total gelitten :cry:

Acer90 02.02.2017 22:25

Hey durch den eventhandler "Killed" wird der Screen im Singelplayer aufgerufen aber nicht mehr im Multiplayer. Evnthandler ist bei mir Serverseitig.

Über remoteexec rufe ich dann den Dialog auf. Geht soweit auch lokal klappt aber nicht im Multiplayer.

Hier mal der Code (on_Killed.sqf)
Code:

if(isPlayer _unit) then {
    [_unit] remoteExec ["show_Killscreen", _unit];

};

mfg: Ace

Drunken Officer 02.02.2017 22:57

hä?
Der Eventhandler, läuft je nach dem..

Gib z.b. einen GetIn-EH in die Init eines Fahrzeuges ein, und reagiert es bei jedem. Gibst du es in die InitPlayerLocal ein, reagiert es beim Spieler.

Wer soll denn den die Kill-Cam sehen? Der Getötete nehme ich an

Pfandgiraffe 03.02.2017 10:53

Es liegt wohl daran, dass deine Funktion "show_Killscreen" falsch definiert ist. Wenn deine Funktion richtig definiert ist und es auch eine ist sollte das mal mind. so heißen: "fnc_show_killscreen".

Davon mal abgesehen würde die Funktion wenn sie erst einmal funktioniert bei jedem Spieler ausgeführt werden sobald ein Spieler stirbt. Verabschiede dich also von dem Gedanken das über einen MPKilled EH zu verarbeiten.
Ein lokaler Killed EH ist hier der Weg zum Ziel. (ohne Umwege) Führe den Killed EH lokal aus. Dann benötigst du auch keine zusätzliche Funktion und das remote-Gedöns.

Bsp.:
Schreibe in die initplayerlocal.sqf folgendes:
player addEventhandler ["killed", { ...dein Killcam Code... }];

Fertig. Sofern dein Code funktioniert war es das auch schon gewesen.



Grüße

Acer90 03.02.2017 11:25

Hier setze ich meine Funktion:
Code:

show_Killscreen = compile preprocessFileLineNumbers  "ranked\client\func\show_Killscreen.sqf";
Ich verwende InitPlayerServer.sqf, da der eventhandler noch andere Sachen durchführt.

Inhalt in der InitPlayerServer.sqf
Code:

_unit addEventHandler ["Killed",{_this call on_Killed;}];
Im Loaklen spiel erfolgt zumindesten eine anzeige, auf den Server geht aber nicht. Muss ich die Funktion anders definieren?

mfg: Ace

lucullus 03.02.2017 14:40

Pfandgiraffe hat es doch schon gepostet.
Du willst einen lokalen Effekt herbeiführen und gehst damit über den Server, das ist Blödsinn.
Außerdem wird dein Eventhandler nicht auf dem Server auslösen, da mußt du schon den MPEventHandler nehmen.
Zitat: "Killed" and "Hit" eventhandlers are executed where given unit is local.
https://community.bistudio.com/wiki/addEventHandler

Acer90 03.02.2017 20:48

Ok,

Eventhandler Funktionen 100 % Serverseitig! Denn ich mach ja noch andere Sachen mit den EH Killed.

Habe jetzt folgendes in die initPlayerLocal.sqf geschrieben
Code:

_unit addEventHandler ["Killed",{_this call show_Killscreen;}];
Das schein zu funktionieren.

Danke für eure Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 07:44 Uhr.

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