add Flugschule and Change Pilotjob
This commit is contained in:
67
ReallifeGamemode.Client/Jobs/PilotRouteSelect.ts
Normal file
67
ReallifeGamemode.Client/Jobs/PilotRouteSelect.ts
Normal file
@@ -0,0 +1,67 @@
|
||||
import * as NativeUI from 'NativeUI';
|
||||
|
||||
const Menu = NativeUI.Menu;
|
||||
const UIMenuItem = NativeUI.UIMenuItem;
|
||||
const UIMenuListItem = NativeUI.UIMenuListItem;
|
||||
const UIMenuCheckboxItem = NativeUI.UIMenuCheckboxItem;
|
||||
const BadgeStyle = NativeUI.BadgeStyle;
|
||||
const Point = NativeUI.Point;
|
||||
const ItemsCollection = NativeUI.ItemsCollection;
|
||||
const Color = NativeUI.Color;
|
||||
|
||||
let screenRes = mp.game.graphics.getScreenResolution(0, 0);
|
||||
|
||||
let sendItem = new UIMenuItem("Starten", "Route starten");
|
||||
sendItem.BackColor = new Color(13, 71, 161);
|
||||
sendItem.HighlightedBackColor = new Color(25, 118, 210);
|
||||
|
||||
let cancelItem = new UIMenuItem("Abbrechen", "");
|
||||
cancelItem.BackColor = new Color(213, 0, 0);
|
||||
cancelItem.HighlightedBackColor = new Color(229, 57, 53);
|
||||
|
||||
|
||||
export default function PilotRouteList(globalData: GlobalData) {
|
||||
|
||||
var routeMenu: NativeUI.Menu;
|
||||
var routeTexts;
|
||||
var routeText;
|
||||
|
||||
mp.events.add('showPilotRouteMenu', (listRoutes) => {
|
||||
if (!globalData.InMenu) {
|
||||
|
||||
globalData.InMenu = true;
|
||||
routeTexts = JSON.parse(listRoutes);
|
||||
|
||||
routeMenu = new Menu("Pilot Job", "", new Point(50, 50), null, null);
|
||||
routeMenu.AddItem(new UIMenuListItem("Route", "", new ItemsCollection(routeTexts)));
|
||||
|
||||
routeMenu.AddItem(sendItem);
|
||||
routeMenu.AddItem(cancelItem);
|
||||
routeMenu.Visible = true;
|
||||
routeText = "Kurz 1";
|
||||
|
||||
routeMenu.ListChange.on((item, index) => {
|
||||
switch (item.Text) {
|
||||
case "Route":
|
||||
routeText = String(item.SelectedItem.DisplayText);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
routeMenu.ItemSelect.on((item) => {
|
||||
if (item.Text === "Starten") {
|
||||
mp.events.callRemote("startPilotRoute", routeText);
|
||||
routeMenu.Close();
|
||||
globalData.InMenu = false;
|
||||
} else if (item.Text === "Abbrechen") {
|
||||
routeMenu.Close();
|
||||
globalData.InMenu = false;
|
||||
}
|
||||
});
|
||||
|
||||
routeMenu.MenuClose.on(() => {
|
||||
globalData.InMenu = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
}
|
||||
@@ -169,4 +169,10 @@ import drivingSchoolHandle from './util/drivingschool';
|
||||
drivingSchoolHandle(globalData);
|
||||
|
||||
import notificationUtil from './util/notification';
|
||||
notificationUtil();
|
||||
notificationUtil();
|
||||
|
||||
import planeSchoolHandle from './util/planeschool';
|
||||
planeSchoolHandle(globalData);
|
||||
|
||||
import PilotRouteList from './Jobs/PilotRouteSelect';
|
||||
PilotRouteList(globalData);
|
||||
71
ReallifeGamemode.Client/util/planeschool.ts
Normal file
71
ReallifeGamemode.Client/util/planeschool.ts
Normal file
@@ -0,0 +1,71 @@
|
||||
import * as NativeUI from 'NativeUI';
|
||||
const Menu = NativeUI.Menu;
|
||||
const UIMenuItem = NativeUI.UIMenuItem;
|
||||
const UIMenuListItem = NativeUI.UIMenuListItem;
|
||||
const UIMenuCheckboxItem = NativeUI.UIMenuCheckboxItem;
|
||||
const UIMenuSliderItem = NativeUI.UIMenuSliderItem;
|
||||
const BadgeStyle = NativeUI.BadgeStyle;
|
||||
const Point = NativeUI.Point;
|
||||
const ItemsCollection = NativeUI.ItemsCollection;
|
||||
const Color = NativeUI.Color;
|
||||
const ListItem = NativeUI.ListItem;
|
||||
|
||||
export default function planeSchoolHandle(globalData: GlobalData) {
|
||||
|
||||
var keyBound = false;
|
||||
var mainMenu: NativeUI.Menu;
|
||||
let send = new UIMenuItem("Pruefung starten", "");
|
||||
var timer;
|
||||
var timerCheckpoint;
|
||||
var timerSet = false;
|
||||
var Player;
|
||||
var timeToWait = 0;
|
||||
var checkPoint;
|
||||
var counter = 0;
|
||||
var waitFinished = false;
|
||||
|
||||
mp.events.add('planeSchoolMenu', () => {
|
||||
mp.game.ui.setTextComponentFormat('STRING');
|
||||
mp.game.ui.addTextComponentSubstringPlayerName('Drücke ~INPUT_CONTEXT~, um das Flugschulmenü zu öffnen');
|
||||
mp.game.ui.displayHelpTextFromStringLabel(0, true, true, -1);
|
||||
|
||||
mp.keys.bind(0x45, false, keyPressHandler);
|
||||
keyBound = true;
|
||||
});
|
||||
|
||||
mp.events.add('removeplaneSchoolMenu', (unbind) => {
|
||||
mp.game.ui.clearHelp(true);
|
||||
mp.gui.chat.show(true);
|
||||
|
||||
if (keyBound && unbind) {
|
||||
if (mainMenu) mainMenu.Close();
|
||||
|
||||
mp.keys.unbind(0x45, false, keyPressHandler);
|
||||
keyBound = false;
|
||||
}
|
||||
});
|
||||
|
||||
mp.events.add('waitPlayerEntersVehicle1', () => {
|
||||
mp.game.ui.setNewWaypoint(-1114.39, -2333.09);
|
||||
timerSet = true;
|
||||
timer = setInterval(timerPlayerInVehicle1, 3000);
|
||||
});
|
||||
|
||||
|
||||
mp.events.add('stopTimer', () => {
|
||||
timerSet = false;
|
||||
clearInterval(timer);
|
||||
});
|
||||
function timerPlayerInVehicle1() {
|
||||
if (timerSet) {
|
||||
mp.events.callRemote('timerCheckVehicle1');
|
||||
}
|
||||
};
|
||||
|
||||
function keyPressHandler() {
|
||||
if (globalData.InChat || globalData.InInput || globalData.InMenu) return;
|
||||
|
||||
mp.events.call('removeplaneSchoolMenu', false);
|
||||
mp.events.callRemote('startplaneSchool');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user