HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-167/)
-   -   Scriptprobleme (https://hx3.de/editing-scripting-167/scriptprobleme-19505/)

HenkerundKoch36 11.08.2010 19:53

Scriptprobleme
 
Hi leute

Hab etwas Probleme mit meinem Scripts.
Ich wollte Objekte die variabel in einem Bereich stehen können beladen auf einen Lkw. Der bereich ist hinten an den Lkw angeheftet. Nun habe ich einen Script geschrieben, bzw. mehrere:confused:, um eine Kiste die im Bereich steht auf den Lkw mit Attachto Befehl aufzuladen. Doch die gehen einfach nicht:motz:

Der Code den ich in den Auslöser hineingeschrieben habe:

Code:

{_x attachTo [l1,[-0.1,-1,0],"hatch1"]} foreach thisList
l1 ist der Lkw.

Danke schon im voraus

Gruss
HK

N939 11.08.2010 23:42

Das kann nicht funktionieren, da list nur die Einheiten, die den Auslöser aktiviert haben returned !

Deine Objekte können den Auslöser nicht aktivieren sind somit auch nicht in thislist gespeichert !

Was willst du denn "genau" aufladen ?

Gruß
Max

HenkerundKoch36 12.08.2010 05:05

Hallo

Ich möchte gerne kisten ( paletten foliert) auf einen lkw aufladen um diese zu einer fabrik transpotieren zu können. Das problem ist nur das ich nicht nur eine kiste z.b. P1 sondern einfach die kiste die im bereich oder auslöser steht aufladen kann.

Gruss
HK

N939 12.08.2010 11:18

ok da ist schon etwas mehr skripting aufwand nötig du möchtest ja auch nicht dass die dann alle am selben punkt auf dem LKW stehen, oder ? Sonst musst du auch noch ein offset für den attachTo command einbauen, dass jede kiste etwas versetzt zur vorherigen steht !

Gruß
Max

PS: nearestObjects ist der befehl den du brauchst aber wie gesagt nicht ganz so einfach !
also z.B.:
Code:

nearestObjects [l1, ["Misc_cargo_cont_small_EP1"], 30];

HenkerundKoch36 12.08.2010 11:42

Danke für den Script:daumen:

Auf den Lkw muss nur eine Kiste passen. Weiteres sollte ich jetzt schaffen.

Gruss
HK

N939 12.08.2010 12:05

Zitat:

Zitat von HenkerundKoch36 (Beitrag 328030)
Danke für den Script:daumen:

Auf den Lkw muss nur eine Kiste passen. Weiteres sollte ich jetzt schaffen.

Gruss
HK

Du musst dir halt noch z.B. von ArmAII/ArmAII:OA library of available equipment and objects - Hosted by Armaholic.com
genau deine Kiste raussuchen ! das:
"Misc_cargo_cont_small_EP1"
was ich genommen hab war irgendein kleiner Kontainer !

Gruß
Max

HenkerundKoch36 12.08.2010 19:03

Ok werde ich machen danke für die hilfreichen antworten:)

Gruss
HK

HenkerundKoch36 12.08.2010 20:42

Bei erneutem austesten ist mir aufgefallen, dass ich garn nicht weiss wie ich dein syntax mit dem attachto befehl verknüpfen kann.:stupid:

Geht das mit einer variablen? oder kann ich dein syntax irgendwie vor den attachto befehl hängen?

Vielleicht hast du darauf auch noch ne Antwort

Gruss
HK

N939 13.08.2010 00:58

Zitat:

Zitat von HenkerundKoch36 (Beitrag 328166)
Bei erneutem austesten ist mir aufgefallen, dass ich garn nicht weiss wie ich dein syntax mit dem attachto befehl verknüpfen kann.:stupid:

Geht das mit einer variablen? oder kann ich dein syntax irgendwie vor den attachto befehl hängen?

Vielleicht hast du darauf auch noch ne Antwort

Gruss
HK

kommt drauf an was du schon kannst also ich würds mit nem skript machen !

Code:

//
//Brauchst noch eine load und unload sqf in die du dann die attach und detach befehle reinmachst !
//
//aufruf: _nul = [l1, "Misc_cargo_cont_small_EP1"] execVM "lkw_cargo_load.sqf";

_lkw = _this select 0;
_type = _this select 1;
_action_shown = false;

_lkw setVariable ["cargo_full", false];

while {alive _lkw} do
{
    if (!isNull (nearestObject [_lkw, _type]) && !(_action_shown) && !(_lkw getVariable "cargo_full")) then
    {
            _load = _lkw addAction ["Load Cargo", "load.sqf"];
            _action_shown = true;
    };
   
    if (_lkw getVariable "cargo_full" && _action_shown) then
    {
            _unload = _lkw addAction ["Unload Cargo", "unload.sqf"];
            _action_shown = false;
    };

    if (isNull (nearestObject [_lkw, _type])) then
    {
            _lkw removeAction _load;
    };
};

if (!alive _lkw) then {_lkw removeAction _load; _lkw removeAction _unload;};

Ich hab keine Ahnung obs geht ! habs nicht getestet kurz aus dem Kopf und naja es ist schon 2 Uhr weiß nich ob da noch alles funktioniert :D

Gruß
Max

HenkerundKoch36 13.08.2010 14:44

Shit so ein grossen skript für so was? Hab das mit zwei bis drei zeilen versucht. Probiere den skript gleich aus poste dann wenn ich die möglichen fehler (wenns überhaupt fehler hat) gefunden und behoben habe. Krieg ich hin. Bin besser im korigieren als im aufbauen von anfang an.

Gruss
HK

HenkerundKoch36 14.08.2010 12:47

Noch ein Problem

Ich sehe bei deinem Skript die Variable nicht mit der das objekt aufgeladen werden kann. Der Skript funktioniert zwar, habe auch die load.sqf und unload.sqf gemacht. Aber er ladet nicht das Objekt, dass hinter dem Lastwagen ist sonder nur p1.

in die load.sqf hab ich einfach geschrieben:
Code:

p1 attachTo [l1,[-0.1,-1,0],"hatch1"];
und die unload.sqf (wobei die im Game nie benutz werden konnte obwohl ein Objekt im Laster war:
Code:

p1 detach l1
Gruss
HK


Alle Zeitangaben in WEZ +1. Es ist jetzt 06:04 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