Пример #1
0
        public void OnPlayerExitVehicle(Client Player, Vehicle vehicle)
        {
            AutoLokal auto = new AutoLokal();

            auto = Funktionen.AutoBekommen(Player.Vehicle);

            if (auto.FahrzeugJob == 1 && vehicle.GetData("GeradeGespawnt") == 0)
            {
                NAPI.Notification.SendNotificationToPlayer(Player, "~y~Info~w~: Fertig mit jobben? /beenden");
            }
            else
            {
                Funktionen.FahrzeugSpeichern(vehicle);
                Funktionen.FahrzeugMotor(vehicle);
            }
        }
Пример #2
0
        public void RollerMieten(Client Player)
        {
            //Das Fahrzeug greifen
            AutoLokal auto = new AutoLokal();

            auto = Funktionen.AutoBekommen(Player.Vehicle);

            if (Funktionen.AccountGeldBekommen(Player) < auto.FahrzeugMietpreis)
            {
                NAPI.Notification.SendNotificationToPlayer(Player, "~y~Info~w~: Du hast nicht genug Geld.");
                Player.TriggerEvent("rollermietenpopupschliessen");
            }
            else
            {
                NAPI.Notification.SendNotificationToPlayer(Player, "~y~Info~w~: Du hast das Fahrzeug gemietet.");
                Funktionen.AccountGeldSetzen(Player, 2, auto.FahrzeugMietpreis);
                Player.TriggerEvent("rollermietenpopupschliessen");
            }
        }
Пример #3
0
        public static void TachoUpdaten()
        {
            //Schleife für alle Autos
            foreach (var Player in NAPI.Pools.GetAllPlayers())
            {
                //Abfrage ob eingeloggt und im Auto und auf dem Fahrersitz ist
                if (Player.IsInVehicle && Player.GetData("Eingeloggt") == 1 && NAPI.Player.GetPlayerVehicleSeat(Player) == -1 && Player.Vehicle.EngineStatus == true)
                {
                    //Benötigte Definitionen
                    float Distanz = 0.0f;
                    float nX, nY, nZ, aX, aY, aZ;

                    //Fahrzeug abprüfen
                    AutoLokal auto = new AutoLokal();
                    auto = Funktionen.AutoBekommen(Player.Vehicle);

                    if (auto.TankInhalt <= 0)
                    {
                        Player.Vehicle.EngineStatus = false;
                        FahrzeugMotor(Player.Vehicle, 0);
                        if (auto.TankInhalt < 0)
                        {
                            auto.TankInhalt = 0.0f;
                        }
                        return;
                    }

                    //Fahrzeug Position zuweisen
                    auto.FahrzeugNeuePositionX = Player.Vehicle.Position.X;
                    auto.FahrzeugNeuePositionY = Player.Vehicle.Position.Y;
                    auto.FahrzeugNeuePositionZ = Player.Vehicle.Position.Z;

                    //Neue Koordinaten an die Variablen geben
                    nX = Player.Vehicle.Position.X;
                    nY = Player.Vehicle.Position.Y;
                    nZ = Player.Vehicle.Position.Z;

                    //Alte Koordinaten an die Variablen geben
                    aX = auto.FahrzeugAltePositionX;
                    aY = auto.FahrzeugAltePositionY;
                    aZ = auto.FahrzeugAltePositionZ;

                    //Distanz mit der Vector3 Distance Funktion errechnen
                    Distanz = Vector3.Distance(new Vector3(nX, nY, nZ), new Vector3(aX, aY, aZ));

                    //Damit wir wissen ob der Spieler steht oder nicht
                    if (Distanz > 2)
                    {
                        Player.SetData("BewegtSichMitFahrzeug", 1);
                    }
                    else
                    {
                        Player.SetData("BewegtSichMitFahrzeug", 0);
                    }

                    //Kilometer und Tank aufsummieren
                    float Kilometer = auto.Kilometerstand + Distanz;

                    //Verbrauch errechnen
                    float Verbraucht = Distanz * GlobaleSachen.Verbrauch;

                    //Wenn er nicht fährt
                    if (Distanz == 0)
                    {
                        Verbraucht = 0.2f;
                    }

                    //Verbrauch subtrahieren
                    float Tank = auto.TankInhalt - Verbraucht;

                    //Dem Fahrzeug den Kilometerstand und Tank setzen
                    auto.Kilometerstand = Kilometer;
                    auto.TankInhalt     = Tank;

                    //Für das Tacho den Kilometerstand runterteilen damit die Zahl lesbar ist
                    float KilometerFloat   = auto.Kilometerstand / 10 / 100;
                    float TankFloat        = auto.TankInhalt / 10 / 100;
                    float TankVolumenFloat = auto.TankVolumen;

                    //Client Event vom Tacho triggern (Tacho/index.js)
                    Player.TriggerEvent("TachoUpdaten", NAPI.Util.ToJson(Math.Round(KilometerFloat, 2)), NAPI.Util.ToJson(Math.Round(TankFloat, 2)), NAPI.Util.ToJson(Math.Round(TankVolumenFloat, 2)));

                    //Vom Fahrzeug die alte Position auf die neue updaten
                    auto.FahrzeugAltePositionX = auto.FahrzeugNeuePositionX;
                    auto.FahrzeugAltePositionY = auto.FahrzeugNeuePositionY;
                    auto.FahrzeugAltePositionZ = auto.FahrzeugNeuePositionZ;

                    auto.FahrzeugGeändert = true;
                }
            }
        }
Пример #4
0
        public static void JobFahrzeugLöschen(Client Player, Vehicle Fahrzeug)
        {
            if (Funktionen.AccountJobFahrzeugBekommen(Player) != null)
            {
                if (Player.GetData("BerufskraftfahrerDieselTanke") != 0 || Player.GetData("BerufskraftfahrerE10Tanke") != 0 || Player.GetData("BerufskraftfahrerSuperTanke") != 0)
                {
                    if (Player.GetData("BerufskraftfahrerDieselTanke") != 0)
                    {
                        foreach (TankstelleLokal tanke in Funktionen.TankenListe)
                        {
                            if (tanke.Id == Player.GetData("BerufskraftfahrerDieselTanke"))
                            {
                                tanke.TankstelleJobSpieler = 0;
                            }
                        }
                    }
                    else if (Player.GetData("BerufskraftfahrerE10Tanke") != 0)
                    {
                        foreach (TankstelleLokal tanke in Funktionen.TankenListe)
                        {
                            if (tanke.Id == Player.GetData("BerufskraftfahrerE10Tanke"))
                            {
                                tanke.TankstelleJobSpieler = 0;
                            }
                        }
                    }
                    else if (Player.GetData("BerufskraftfahrerSuperTanke") != 0)
                    {
                        foreach (TankstelleLokal tanke in Funktionen.TankenListe)
                        {
                            if (tanke.Id == Player.GetData("BerufskraftfahrerSuperTanke"))
                            {
                                tanke.TankstelleJobSpieler = 0;
                            }
                        }
                    }
                }

                AutoLokal auto = new AutoLokal();
                auto = Funktionen.AutoBekommen(Fahrzeug);
                NAPI.Notification.SendNotificationToPlayer(Player, "~y~Info~w~: Dein Job wurde beendet.");
                //Berufskraftfahrer
                Player.SetData("BerufskraftfahrerFahrzeug", 0);
                Player.SetData("BerufskraftfahrerHolz", 0);
                Player.SetData("BerufskraftfahrerHolzGeladen", 0);
                Player.SetData("BerufskraftfahrerJobAngenommen", 0);
                Player.SetData("BerufskraftfahrerKraftstoffTyp", 0);
                Player.SetData("BerufskraftfahrerDieselTanke", 0);
                Player.SetData("BerufskraftfahrerE10Tanke", 0);
                Player.SetData("BerufskraftfahrerSuperTanke", 0);
                Player.SetData("BerufskraftfahrerVerdienst", 0);
                Player.SetData("BerufskraftfahrerAmAbladen", 0);

                //Busfahrer
                Player.SetData("BusfahrerFahrzeug", 0);
                Player.SetData("BusfahrerJobAngenommen", 0);
                Player.SetData("BusfahrerRoute", 0);
                Player.SetData("BusfahrerRoutePosition", 0);

                auto.Fahrzeug.Delete();

                Funktionen.AutoListe.Remove(auto);

                Funktionen.AccountJobFahrzeugSetzen(Player, null);

                //Navi resetten
                var EigenerPunkt = new Vector3(Player.Position.X, Player.Position.Y, 0);
                Player.TriggerEvent("Navigation", EigenerPunkt.X, EigenerPunkt.Y);
            }
        }