HX3 Foren

HX3 Foren (https://hx3.de/)
-   Editing & Scripting (https://hx3.de/editing-scripting-187/)
-   -   löschbare brennende Pallete (https://hx3.de/editing-scripting-187/loeschbare-brennende-pallete-25467/)

flashstyle 17.07.2016 15:34

löschbare brennende Pallete
 
Hallo,
Ich suche nach einem Script, womit zufällig auf der Map brennende Palleten spawnen. Bei den Palleten soll automatisch ein Marker erscheinen und sofern man neben den Paletten steht soll man sie mit einer AddAction löschen können.

Danke im Voraus für jede Antwort! :D

Drunken Officer 18.07.2016 08:00

Was denn, gibt es dazu keine Anleitung in den Altis / Tanoa Live Foren ? :D

Palette spawnen dürfte klar sein. createmarker und mit setpos / getpos den Marker versetzen. Wiki lesen, wie Marker erstellt werden. Sind 3 Zeilen.
Addaction Eintrag erstellen ( Public machen ) RemoteExec ist dein Freund.

Feuer kannst du mit Particlesource machen. Da gibt's schöne vordefinierte Sachen. Oder du nimmst dieses TestFireBig oder so ähnlich

flashstyle 20.07.2016 13:07

Wenn man neu im scripting ist weiß man halt nicht wie man so etwas anfangen soll :O

Drunken Officer 20.07.2016 19:32

bitte definiere "zufällig auf der Map" etwas genauer.

flashstyle 20.07.2016 21:25

Zufällig auf der Map heißt einfach random irgendwo auf Festland

Drunken Officer 21.07.2016 14:52

okay. Ich melde mich wieder. Ich nehme an, Multiplayer oder wer soll das alles sehen?

flashstyle 21.07.2016 16:12

Danke! Und ja das ist für den Multiplayer.

flashstyle 21.07.2016 16:24

Am besten wäre es,wenn man einige koordinaten setzen könnte und von denen dann random eine ausgewählt wird und dann dort die Palette mit dem Feuer spawnt spawnt.

Drunken Officer 22.07.2016 00:10

dann setze mal fleißig Marker auf der Karte und gebe mir die EXAKTEN Markernamen

Mein Vorschlag, wäre ein logischer Aufbauf
mkr_palette_1
mkr_palette_2
usw.

Gewöhne dir einen einheitliche Aufbau an, dass macht es später leichter Fehler zu finden

flashstyle 22.07.2016 00:41

Genau so dachte ich das auch, soll ich dir die marker oder die koordinaten schicken? Der Marker sollte ja erst erscheinen, wenn es brennt.

Drunken Officer 22.07.2016 00:45

setze doch einfach paar leere Marker auf der Karte, die als mögliche Punkte dienen. Die sieht keiner.
Denn Rest macht man per Script

flashstyle 22.07.2016 01:52

So, habe die Marker erstellt sie tragen den Namen "mkr_palette_1" bis "mkr_palette_50"

Drunken Officer 23.07.2016 10:54

Okay. Und jetzt die Preisfragen?

a) wie kommt dieses Ereignis zu Stande? Völlig zufällig, oder muss ein Trigger ausgelöst werden etc pp?

b.1) soll jeder Spieler die Palette sehen können?
b.2) wenn b.1 == ja, soll jeder sie löschen können?

flashstyle 24.07.2016 01:48

a) Es soll Völlig zufällig passieren
b) Jeder Spieler soll die Palette sehen
b.2) sie sollen nur von dem Wiederstand gelöscht werden können und zwar mit einem Item

Drunken Officer 24.07.2016 17:12

Wie heißt das Item (Classname)

Drunken Officer 24.07.2016 19:33

Test es mal mit einer weiteren Person. Bei mir ging das Feuer auf dem Dedicated aus. Allerdings mußt du mir sagen, ob die 2 Person das selber Ergebnis hat.
Wenn du mir den Classennamen des notwendigen Items lieferst, ergänze ich es noch
1.
Hierzu schreibst du in die Init der Personen:
TeleportID= this addaction ["Teleport", { (_this select 0) setpos ( palette modelToWorld [0,5,0] ) } ]

2.
du erstellt einen Auslöser ( 0 / 0 )
Nur Server anhacken
typ: keine
Aktivierung: keine
Bedingung: true
bei Aktivierung: startetfeuerscript = [] execVM "s\dof_feuer_an_palette.sqf"
bei Deaktivierung: - bleibt frei -

3. Folgenden Code als: dof_feuer_an_palette.sqf abspeichern
Code:

/*
erstellt am 24.07.2016 durch Drunken Officer
Das Script erstellt eine Palette an einem zufällig ausgesuchten Marker.Es wird ein Feuer an dieser Palette entzündet. Desweiteren wird ein Menüeintrag zum Löschen erstellt.
*/


if !(isServer) exitWith {};

while {true} do

{
sleep (10*60);
//-- Es wäre zum einen diese Variante möglich. Hinter dem letzen Marker kommt KEIN Komma !!!
//palette = createVehicle ["Land_Pallets_F", getMarkerPos "mkr_palette_1", ["mkr_palette_2","mkr_palette_3","mkr_palette_2","mkr_palette_4","mkr_palette_5","mkr_palette_6","mkr_palette_7",............."mkr_palette_50"], 0, "NONE"];


// --- ein anderer Weg
_z = ceil random (50); //-- 50 ist die Anzahl der MArker
 _pos = call compile format ["getmarkerPos ""mkr_palette_%1"" ", _z];

palette = createVehicle ["Land_Pallets_F", _pos, [], 0, "NONE"]; publicVariable "palette";
palette setdir (random 360);
palette setVariable ["var_fireisgone",false, true];

[palette,["<t color='#ffb400'>Feuer löschen</t>",{ [(_this select 0), (_this select 2)] remoteExec ["removeAction"]; deleteVehicle Firesource; palette setVariable ["var_fireisgone",true, true]; },nil,6,true,false,"","_this distance _target < 5 && side _this == RESISTANCE" ] ] remoteExec ["addaction"];



//-- SmallDestructionFire MediumDestructionFire BigDestructionFire
        [
            {
                Firesource = "#particlesource" createVehicleLocal (position palette);     
                Firesource setParticleClass "BigDestructionFire"; 
                Firesource attachto [palette,[0,0,0.13]];
            },"BIS_fnc_spawn",true,true
        ] spawn BIS_fnc_MP;
       

//---- löscht Palette
waituntil { sleep 5; palette getVariable ["var_fireisgone",true]; };
sleep (1*60);
deleteVehicle palette;

};


flashstyle 24.07.2016 20:39

1. Der Classname des Items heißt "A3L_Extinguisher"
2. Welche Sleep steht für welchen Ablauf?
3. Kann man das Feuer noch etwas größer machen?
4. Wenn das Feuer nicht gelöscht wird spawnt dann ein weiters oder brennt das solange bis man es gelöscht hat und erst dann spawnt wieder ein neues?
5. Die Zweite Person als Ziv sieht das Feuer noch bei löschung und auch nachdem die Paletten despawnt sind.
6. Wenn eine andere Person als ich das Feuer löschen will (im Wiederstand) kann es zwar "Feuer löschen" auswählen doch die Flammen und die Paletten verschwinden nicht.

Drunken Officer 24.07.2016 22:48

Hast du es selber gehostet oder dedi? Die Abfrage bezieht sich nur auf die Seite nicht auf eine Person.

Die Palette wird nach einer Minute gelöscht, wenn das Feuer aus ist. Hattet ihr so lange gewartet?

flashstyle 24.07.2016 23:03

Dedi und wir haben die sleep Zeiten etwas verändert um zu Testen.

flashstyle 24.07.2016 23:11

Ist der Variblename vom Auslöser 0/0? Oder was bedeutet 0/0?

Zudem verschwindet die Palette und nicht das Feuer.


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