HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-167/)
-   -   Aktion - Waffe & Munition geben (https://hx3.de/editing-scripting-167/aktion-waffe-munition-geben-22804/)

MagicStyle 12.08.2013 18:21

Einige Fragen zu Aktionen
 
Nabend Community;
Ich habe leider erneut einige kleine Probleme wo ich eure Hilfe bräuchte. :confused:
Ich wusste nicht ob es angemessen wäre für jedes Prob ein eigenes Thema zu erstellen, deswegen habe ich alle hier untergebracht.

Problem #1
Ich habe eine Einheit erstellt "Waffendealer" und dieser die Aktion "Waffe/Munition verlangen" gegeben. Es war so geplant das der Spieler zum Dealer gehen und die Aktion dann ausführen können soll. Soweit funktioniert es auch, aber ich bekomme weder Waffe noch Munition!? Das Inventar bleibt Leer? Woran könnte das liegen?! Jemand eine Idee?

Init Zeile (Waffendealer):
Code:

this addaction["Pistole verlangen","give_weapon01.sqf", [player]];
Script "give_weapon01.sqf"
Code:

_p01 = this select 0;

_p01 addMagazine "30Rnd_545x39_AK";
_p01 addMagazine "30Rnd_545x39_AK";
_p01 addWeapon "Makarov";

exit

Problem #2
Ich habe einen Sani platziert und für diesen die Aktion "Diagnose" erstellt die den Schadenswert meiner Einheit ausgeben soll (sollte normalerweise ein float wert sein).
Init Zeile (Sani):
Code:

this addaction["Diagnose","sani.sqf", [player]];
Das Script "sani.sqf" sieht folgendermaßen aus:
Code:

_spieler = this select 0;
_Diagnose = getdammage _spieler;
player globalChat format["Diagnose : %1", _Diagnose];
exit

Ich bekomme aber ständig nur diese Ausgabe: "Diagnose : SCALAR"
anstatt eine Zahl wie ich es erwartet hatte.

Problem #3
Ich habe zwei Leute erstellt und einem eine Aktion "Sprechen" gegeben. Ich möchte das diese Aktion nur dann ausgeführt wird, wenn man nicht selbst der Spieler mit der Aktion ist. Ich möchte es unbedingt per Script lösen. Den Spieler mit der Aktion habe ich "s1" genannt. Vielleciht kann mir da auch jemand weiterhelfen?
Init Zeile:
Code:

this addaction ["Sprechen","talk01.sqf",[this]];
script "talk01.sqf":
Code:

_benutzer = this select 0;

if (_benutzer != "s1") then
{
        hint "Hello World!";
};

Ich habe offenbar irgendwas nicht richtig verstanden, würde mich freuen wenn mir jemand kurz bei der Lösung dieser Probleme helfen könnte, das würde mich einen großen Schritt weiter bringen. :)

Danke im Vorraus!

Gruß M.S.

MagicStyle 13.08.2013 11:19

Soll ich lieber für jedes einzelne Problem ein separates Thema eröffnen, weil es zuviel auf einmal ist?:nachdenklich:

Vienna 13.08.2013 16:14

Zu 1:

Sieh dir einmal an was addAction an Parameter zurück gibt:http://community.bistudio.com/wiki/addAction


Dein Array ( [player] ) ist in _this select 3 und den player müsstest du so herausholen:

_p01 = (_this select 3) select 0;


Geht aber einfach so:

_p01 = _this select 1;

weil der Caller von addAction zurück gemeldet wird.


Mach das einmal ordentlich, dann kannst du vielleicht deine anderen Probleme selber lösen.

MagicStyle 13.08.2013 17:11

Alle Probleme gelöst, Danke an Vienna!
 
Vielen Dank :-) Ich verstehe meinen Fehler.

Werd es gleichmal versuchen :daumen:

MFG M.S.

PS: Von jetzt an check ich bei jedem Befehl erstmal die Syntax um auf Nummer sicher zu gehen .

Edit: ich sehe gerade einen zweiten Fehler den ich gemacht habe... ich habe wie man oben schön sehen kann jedesmal den Unterstrich bei "_this" weggelassen, ich wusste nicht dass das wichtig ist :fpdr

Meiner Meinung nach wäre es keine schlechte Idee ein neues Thema zu erstellen welches immer ganz oben unter Wichtig zu finden ist (sticky/pinned), indem die häufigsten Leichtsinnsfehler und Fails drin stehen z.B. das man in den Variablennamen keine Umlaute verwenden darf. Die User würden bestenfalls immer zuerst dort nachsehen, bevor sie extra ein neues Thema eröffnen was sich dadurch möglicherweise verhindern lassen könnte. Was haltet Ihr von dieser Idee?

Alle Probleme gelöst ! THX


Alle Zeitangaben in WEZ +1. Es ist jetzt 15:34 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 119