Armed-Assault.de Twitter
Antwort
 
Themen-Optionen Ansicht
Alt 16.03.2015, 21:44   #1 (permalink)
Newbie
 
Registriert seit: 16.03.2015
Beiträge: 6
Icon5 Anschnallgurt Script

Heyho,
ich bin zurzeit dabei mit einer kleinen Truppe nen dedizierten Server aufzubauen und will u.a. ein Script für Anschnallgurte drinhaben, bei dem man aus der scheibe fliegt, wenn man sich nicht anschnallt. Ich habe bereits eine Version bei armaholic gefunden, die hatte aber nicht die Option zum anschnallen, also versuche ich zurzeit diese selber hinzuzufügen, komme aber leider grade nicht weiter und übersehe anscheinend einen total offensichtlichen Fehler
Bis zu test2 kommt er aber wenn ich dann einsteige kommt das heiß erhoffte menü nicht
Vielen Dank im Vorraus

// Ausschnitt aus der init.sqf
PHP-Code:
if (hasInterfacethen {nul=[falseexecVM "scripts\windShield.sqf";}; 
//windShield.sqf
PHP-Code:
angeschnallt _this select 0;
        
waitUntil  {vehicle player != player};
        
hint "test2";
        switch (
angeschnallt) do
        case 
false:
        {
            
_id vehicle player [angeschnalltaddAction ["anschnallen","angeschnallt=true"];
        };
        case 
true:
        {
            
vehicle player removeAction _id;
        };
            while {
speed vehicle player 40} do
            {
                
hint "test3";
                
oldVehVelocity velocity (vehicle player);
                
sleep 0.2;
                if ((
speed vehicle player 2) AND (angeschnallt==false)) then
                    
{
                    
moveOut player;
                    
player setVelocity [(oldVehVelocity select 0) * 2,(oldVehVelocity select 1) * 2,((oldVehVelocity select 2) * 2) + 5];
                    };
            };
    [
angeschnalltexecVM "scripts\windShield.sqf"
Jamork ist offline   Mit Zitat antworten
Alt 17.03.2015, 03:13   #2 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Im Switch Kommando wird das do in {} gesetzt. Die hast du komplett weggelassen.

Man fliegt durch die Scheibe wenn man fährt? - "Interessante" Theorie.

Bei deinem Script behalte ich das Anschnalen-Menü, wenn ich z.B. nur 20 km/h fahre und danach aussteige. Du hast keinerlei Abfrage drin, ober sich der Spieler in einem Fahrzeug befindet.
__________________
Bewegende Momente bei ArmA 3

Geändert von Drunken Officer (17.03.2015 um 03:22 Uhr).
Drunken Officer ist offline   Mit Zitat antworten
Alt 17.03.2015, 14:44   #3 (permalink)
Newbie
 
Registriert seit: 16.03.2015
Beiträge: 6
Standard

Vielen Dank wie gesagt war mal wieder blind x.x
Ja herausfliegen direkt tut man leider nich es läuft in der Regel darauf hinaus, dass man etwas links vom Fahrzeug nach vorne rausfliegt. Das mit dem entfernen des Menüs klappt wie du sagst noch nicht so richtig muss ich mir noch etwas einfallen lassen

Edit: Aber auch mit den Klammern tut sich noch nichts da hat sich noch ein Fehler eingeschlichen...
Edit²: Fehler gefunden hab einen alten Übergabewert bei addaction noch behalten der war überflüssig,angeschnallt==false nimmt er nich hab ich durch (!angeschnallt) ersetzt.
Edit³: Habe jetzt das Skript erweitert nur das entfernen der Action funktioniert noch nicht 100%ig, wenn ich aussteige behalte ich sie und wenn ich mich anschnalle behalte ich sie was ich eig mit folgendem Code zu lösen dachte ?
wird aus der init mit [false,false] execVM .... aufgerufen
PHP-Code:
angeschnallt _this select 0;
        
option _this select 1;
        
id _this select 2;
        
waitUntil  {vehicle player != player};
        
_vehicle vehicle player;
        
hint "test2";
        switch (
angeschnallt) do
        {
        case 
false:
        {
            if (!
optionthen {id vehicle player addAction ["anschnallen",{angeschnallt=true}]; };
            
Option=true;
        };
        case 
true:
        {
            
vehicle player removeAction id;
        };
        };
            while {
speed vehicle player 40} do
            {
                
hint "test3";
                
oldVehVelocity velocity (vehicle player);
                
sleep 0.2;
                if ((
speed vehicle player 2) AND (!angeschnallt)) then
                    
{
                    
moveOut player;
                    
player setVelocity [(oldVehVelocity select 0)*2,(oldVehVelocity select 1)*2,((oldVehVelocity select 2)*2) + 5];
                    
_vehicle removeAction id;
                    
opt=false;
                    
angeschnallt=false;
                    };
            };
        if ((
vehicle player == player) AND (alive player)) then 
        
{
            
_vehicle removeAction id;
            
option=false;
            
angeschnallt=false;
        };
    [
angeschnallt,option,idexecVM "scripts\windShield.sqf"

Geändert von Jamork (18.03.2015 um 10:18 Uhr).
Jamork ist offline   Mit Zitat antworten
Alt 18.03.2015, 07:02   #4 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Das du nicht direkt rausfliegst war mir schon klar. Du arbeitest mit Moveout. Wobei links auch nicht 100% stimmt. Deiner Beifahrer wird nach rechts raus gewippt.

Aber wieso fliegt man aus einem Auto wenn es fährt? Denn Sinn verstehe ich nicht ganz.
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 18.03.2015, 10:17   #5 (permalink)
Newbie
 
Registriert seit: 16.03.2015
Beiträge: 6
Standard

Man fliegt nur nach nem Unfall raus das macht das Script doch
Jamork ist offline   Mit Zitat antworten
Alt 19.03.2015, 09:49   #6 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Dein script haut dich auch raus, wenn du normal anhälst.

Dein Script starte bei 40 km/h und löst bei kleiner 2 km/h aus, wenn der Spieler nicht angeschnallt ist. Also auch bei einem normalen Anhaltevorgang.

Eine Möglichkeit wäre, du fragt die Geschwindigkeit des Fahrzeuges 2x ab. Diese Werte läßt du vergleichen. Ist innerhalb der Schleife eine Differenz gegeben
Code:
 _dif = Wert1 - Wert 2; if (_dif >= 30) then {.... };
dann löse aus.
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 19.03.2015, 19:50   #7 (permalink)
Newbie
 
Registriert seit: 16.03.2015
Beiträge: 6
Standard

Um die normale Bremsung rauszunehmen ist doch grade das ganze mit einem Zeitfaktor versehen. Wenn du von über 40 in 0.2 sekunden auf unter 2 runterbeschleunigst, dann kann es nur ein Unfall sein, so schnell kann man nicht bremsen .
Bei deinem angesprochenen Fall würde das Script , wenn die Geschwindigkeit unter 40km/h sinkt spätestens nach 0.2 sek. aus der Schleife herausgehen da die Bedingung nicht erfüllt ist. (Ich glaube nicht das man so schnell geregelt bremsen kann lasse mich aber gerne eines besseren belehren )
Edit: Habe es grade mit mehreren Vollbremsungen getestet ( mit handbremse ) und es hat nicht ausgelöst.

Geändert von Jamork (19.03.2015 um 20:06 Uhr).
Jamork ist offline   Mit Zitat antworten
Alt 19.03.2015, 21:46   #8 (permalink)
500 Beiträge1000 Beiträge
 
Benutzerbild von Drunken Officer
 
Registriert seit: 15.05.2011
Beiträge: 1.108
Standard

Stimmt, dass mit der Zeitschleife hatte ich übersehen.
__________________
Bewegende Momente bei ArmA 3
Drunken Officer ist offline   Mit Zitat antworten
Alt 20.03.2015, 16:10   #9 (permalink)
Newbie
 
Registriert seit: 16.03.2015
Beiträge: 6
Standard

Nun stellt sich nur die Frage wieso er trotz anklicken des angeschnallt buttons mich bei einem unfall raushaut ...
Jamork ist offline   Mit Zitat antworten
Antwort

Stichworte
arma3 anschnallgurt


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
Beta-Patch für OpA erschienen det99 Community 1429 18.07.2014 16:51
T8 Units - Einheiten Spawn Script T-800a Editing & Scripting 2 07.03.2014 20:46
Script wird nicht vollständig ausgeführt MagicStyle Editing & Scripting 20 04.09.2013 16:54
Day & Weather Script Moerderhoschi Editing & Scripting 13 02.12.2012 10:29
marker über script erzeugen hypercop Editing & Scripting 2 28.08.2010 22:40


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