[*] Pilot License improvements

This commit is contained in:
Lukas Moungos
2019-10-31 15:52:23 +01:00
parent d3bd1cce59
commit 2f0b1251e1
5 changed files with 80 additions and 14 deletions

View File

@@ -8,6 +8,7 @@ using System.Linq;
using GTANetworkAPI;
using ReallifeGamemode.Database.Entities;
using ReallifeGamemode.Database.Models;
using ReallifeGamemode.Server.Managers;
namespace ReallifeGamemode.Server.DrivingSchool
{
@@ -68,9 +69,7 @@ namespace ReallifeGamemode.Server.DrivingSchool
if (user.FlyingLicensePlane)
return;
ChatService.SendMessage(client, "Du hast die Flugscheinprüfung gestartet.");
ChatService.SendMessage(client, "Steige nun in eines der Flugzeuge ein.");
user.TriggerEvent("renderTextOnScreen", "Du hast die Flugscheinprüfung gestartet. Steige nun in eines der Flugzeuge ein.");
client.TriggerEvent("waitPlayerEntersVehicle1");
}
@@ -85,7 +84,7 @@ namespace ReallifeGamemode.Server.DrivingSchool
}
else
{
ChatService.SendMessage(user, "Gut nun kann die Prüfung losgehen.");
user.TriggerEvent("renderTextOnScreen", "Fahren Sie langsam und sicher zur Roten Markierung.");
user.TriggerEvent("stopTimer");
CheckPointHandle.StartCheckPointRoute(user, planeRoute, 0, 6, "planeSchoolEvent");
}
@@ -94,28 +93,58 @@ namespace ReallifeGamemode.Server.DrivingSchool
[RemoteEvent("planeSchoolEvent")]
public void planeSchoolEvent(Client user, int checkpoint)
{
if(checkpoint == 6 || checkpoint ==13)
if(checkpoint == 0)
{
ChatService.SendMessage(user, "Beschleunige um abzuheben.");
user.TriggerEvent("renderTextOnScreen", "Achten Sie darauf dass Sie mittig durch jeder Markierung fahren/fliegen.");
}
else if(checkpoint == 1)
{
user.TriggerEvent("renderTextOnScreen", "Für die Flugprüfung haben Sie 15min Zeit.");
}
else if(checkpoint == 2)
{
user.TriggerEvent("renderTextOnScreen", "Wenn Sie aus dem Flugzeug aussteigen sind Sie aus der Prüfung durchgefallen.");
}
else if(checkpoint == 3)
{
user.TriggerEvent("renderTextOnScreen", "Achten Sie darauf dass Sie nicht stark abbremsen in der Luft sonst geht der Motor aus.");
}
else if (checkpoint == 4)
{
user.TriggerEvent("renderTextOnScreen", "Falls Sie eine Landung durchführen fliegen Sie mit max. 150km/h.");
}
else if (checkpoint == 5)
{
user.TriggerEvent("renderTextOnScreen", "Folgen Sie den Gelben Punkte auf der Karte. Der Pfeil auf den Punkt zeigt ihnen ob Sie über oder unter dem Punkt seid.");
}
else if(checkpoint == 7)
{
user.TriggerEvent("renderTextOnScreen", "Sobald Sie sicher in der Luft sind drücken Sie 'G' um ihr Fahrwerk einzufahren.");
}
else if(checkpoint == 6 || checkpoint ==13)
{
user.TriggerEvent("renderTextOnScreen", "Beschleunige nun auf mind. 100km/h um abzuheben.");
}
else if(checkpoint == 10 || checkpoint == 14)
{
ChatService.SendMessage(user, "Setze zum landeflug an.");
user.TriggerEvent("renderTextOnScreen", "Setze zum landeflug an. Drücke 'G' um ihr Fahrwerk auszufahren.");
}
else if (checkpoint == 15)
{
ChatService.SendMessage(user, "Du hast deinen Flugschein bestanden.");
user.TriggerEvent("renderTextOnScreen", "Du hast deinen Flugschein bestanden!");
User spieler = user.GetUser();
using (var dbContext = new DatabaseContext())
{
User drivingUser = dbContext.Users.Where(u => u.Id == spieler.Id).FirstOrDefault();
drivingUser.FlyingLicensePlane = true;
drivingUser.FlyingLicensePlane = false;
ServerVehicle sVeh = VehicleManager.GetServerVehicleFromVehicle(user.Vehicle);
ServerVehicleExtensions.Spawn(sVeh, user.Vehicle);
dbContext.SaveChanges();
}
user.Position = new Vector3(-1083.96, -2476.96, 13.07);
/*user.Vehicle.Position = new Vector3(); Hier die Funktion zum Fahrzeug respawnen */
}
}
}
}