Merge branch 'develop' of ssh://development.life-of-german.org:451/log-gtav/reallife-gamemode into develop
This commit is contained in:
134
ReallifeGamemode.Client/Jobs/FarmerFieldSelect.ts
Normal file
134
ReallifeGamemode.Client/Jobs/FarmerFieldSelect.ts
Normal file
@@ -0,0 +1,134 @@
|
||||
import * as NativeUI from '../libs/NativeUI';
|
||||
|
||||
var fieldSelectColShape = mp.colshapes.newCircle(2415.229, 4993.037, 46.230038);
|
||||
const Menu = NativeUI.Menu;
|
||||
var fieldMenu: NativeUI.Menu;
|
||||
const Point = NativeUI.Point;
|
||||
const UIMenuListItem = NativeUI.UIMenuListItem;
|
||||
const ItemsCollection = NativeUI.ItemsCollection;
|
||||
const UIMenuItem = NativeUI.UIMenuItem;
|
||||
const Color = NativeUI.Color;
|
||||
|
||||
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);
|
||||
|
||||
let screenRes = mp.game.graphics.getScreenResolution(0, 0);
|
||||
var checkpoint = new mp.Vector3(2416.3723, 4993.94, 45);
|
||||
|
||||
export default function farmerFieldList(globalData: IGlobalData) {
|
||||
var skillSelect;
|
||||
var skill = 60;
|
||||
var fieldSelected = false;
|
||||
var fieldSelect;
|
||||
|
||||
mp.events.add(RageEnums.EventKey.PLAYER_EXIT_COLSHAPE, (colshape) => {
|
||||
if (colshape == fieldSelectColShape) {
|
||||
if (fieldMenu && fieldMenu.Visible) {
|
||||
fieldMenu.Close();
|
||||
}
|
||||
}
|
||||
});
|
||||
|
||||
mp.events.add('SERVER:selectField', () => {
|
||||
|
||||
skill = 100;
|
||||
|
||||
if (!globalData.InMenu) {
|
||||
globalData.InMenu = true;
|
||||
|
||||
skillSelect = ["Knecht (1)", "Hilfsarbeiter (2)", "Ackersmann (3)", "Landwirt (4)", "Ökonom (5)"];
|
||||
|
||||
fieldMenu = new Menu("Bus Job", "", new Point(0, screenRes.y / 3), null, null);
|
||||
fieldMenu.AddItem(new UIMenuListItem("Stufe wählen", "", new ItemsCollection(skillSelect)));
|
||||
fieldSelect = "Anfänger";
|
||||
fieldMenu.AddItem(sendItem);
|
||||
fieldMenu.AddItem(cancelItem);
|
||||
fieldMenu.Visible = true;
|
||||
|
||||
fieldMenu.ListChange.on((item, index) => {
|
||||
switch (item.Text) {
|
||||
case "Stufe wählen":
|
||||
fieldSelect = String(item.SelectedItem.DisplayText);
|
||||
break;
|
||||
}
|
||||
});
|
||||
|
||||
fieldMenu.ItemSelect.on((item) => {
|
||||
if (item.Text === "Starten") {
|
||||
|
||||
if (fieldSelect == skillSelect[1] && skill < 5) {
|
||||
mp.game.audio.playSoundFrontend(1, "Hack_Failed", "DLC_HEIST_BIOLAB_PREP_HACKING_SOUNDS", true);
|
||||
}
|
||||
else if (fieldSelect == skillSelect[2] && skill < 10) {
|
||||
mp.game.audio.playSoundFrontend(1, "Hack_Failed", "DLC_HEIST_BIOLAB_PREP_HACKING_SOUNDS", true);
|
||||
}
|
||||
else if (fieldSelect == skillSelect[3] && skill < 25) {
|
||||
mp.game.audio.playSoundFrontend(1, "Hack_Failed", "DLC_HEIST_BIOLAB_PREP_HACKING_SOUNDS", true);
|
||||
}
|
||||
else if (fieldSelect == skillSelect[4] && skill < 50) {
|
||||
mp.game.audio.playSoundFrontend(1, "Hack_Failed", "DLC_HEIST_BIOLAB_PREP_HACKING_SOUNDS", true);
|
||||
}
|
||||
else {
|
||||
mp.events.callRemote("CLIENT:StartFieldSelected", fieldSelect);
|
||||
fieldSelected = true;
|
||||
fieldMenu.Close();
|
||||
globalData.InMenu = false;
|
||||
}
|
||||
|
||||
|
||||
} else if (item.Text === "Abbrechen") {
|
||||
fieldMenu.Close();
|
||||
}
|
||||
});
|
||||
|
||||
fieldMenu.MenuClose.on(() => {
|
||||
if (!fieldSelected) {
|
||||
//mp.events.callRemote("CLIENT:Job_StopJob");
|
||||
}
|
||||
fieldSelected = false;
|
||||
globalData.InMenu = false;
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
var activeCheckpoint;
|
||||
var activeBlip = null;
|
||||
var myVar;
|
||||
var activeCheckpointId;
|
||||
|
||||
mp.events.add('farmerSetCheckpoint', (position, markerId, markerSize, cpId) => {
|
||||
activeCheckpointId = cpId;
|
||||
|
||||
activeCheckpoint = mp.markers.new(markerId, position, markerSize, {
|
||||
color: [255, 0, 0, 150],
|
||||
visible: true,
|
||||
dimension: 0
|
||||
});
|
||||
|
||||
activeBlip = mp.blips.new(1, position,
|
||||
{
|
||||
color: 33,
|
||||
alpha: 255,
|
||||
shortRange: false,
|
||||
});
|
||||
activeBlip.setRoute(true);
|
||||
activeBlip.setRouteColour(33);
|
||||
|
||||
clearInterval(myVar);
|
||||
myVar = setInterval(checkpointTimer, 50);
|
||||
});
|
||||
|
||||
function checkpointTimer() {
|
||||
let dist = mp.game.gameplay.getDistanceBetweenCoords(mp.players.local.position.x, mp.players.local.position.y, 0, checkpoint.x, checkpoint.y, 0, false);
|
||||
|
||||
if (dist <= 2) {
|
||||
clearInterval(myVar);
|
||||
activeCheckpoint.destroy();
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -57,7 +57,6 @@ const muellbaseVector2 = new mp.Vector3(454.88348, -2158.1938, 5.9788494);
|
||||
const muellbaseVector3 = new mp.Vector3(529.06635, -2088.4097, 8.303088);
|
||||
|
||||
const krankenhausVector1 = new mp.Vector3(-508.50705, -351.24368, 34);
|
||||
//const krankenhausVector2 = new mp.Vector3(-437.00146, -357.10526, 32.735916
|
||||
const krankenhausVector2 = new mp.Vector3(-442.62323, -356.99185, 33);
|
||||
const krankenhausVector3 = new mp.Vector3(-448.9346, -297.23972, 33.68);
|
||||
const krankenhausVector4 = new mp.Vector3(-504.952, -315.21698, 35.04881);
|
||||
|
||||
@@ -36,12 +36,12 @@ export default function tuning(globalData: IGlobalData) {
|
||||
{ Slot: 8, Name: "Extra 1", Price: 2000 },
|
||||
{ Slot: 9, Name: "Extra 2", Price: 2000 },
|
||||
{ Slot: 10, Name: "Dach", Price: 1500 },
|
||||
{ Slot: 11, Name: "Motor", BasePercentage: 20, PriceIncreasePerLevel: 7.5 },
|
||||
{ Slot: 12, Name: "Bremsen", BasePercentage: 5, PriceIncreasePerLevel: 2.5 },
|
||||
{ Slot: 13, Name: "Getriebe", BasePercentage: 10, PriceIncreasePerLevel: 2.5 },
|
||||
{ Slot: 11, Name: "Motor", BasePercentage: 6.25, PriceIncreasePerLevel: 6.25 },
|
||||
{ Slot: 12, Name: "Bremsen", BasePercentage: 2.5, PriceIncreasePerLevel: 2.5 },
|
||||
{ Slot: 13, Name: "Getriebe", BasePercentage: 3.75, PriceIncreasePerLevel: 3.75 },
|
||||
{ Slot: 14, Name: "Hupe", Price: 500 },
|
||||
{ Slot: 15, Name: "Federung", Price: 2000 },
|
||||
{ Slot: 18, Name: "Turbo", BasePercentage: 45, PriceIncreasePerLevel: 0 },
|
||||
{ Slot: 18, Name: "Turbo", BasePercentage: 25, PriceIncreasePerLevel: 0 },
|
||||
{ Slot: 22, Name: "Licht", Price: 500 },
|
||||
{ Slot: -2, Name: "Reifen", Price: 2500 },
|
||||
{ Slot: -1, Name: "Lackierung", Price: 1000 },
|
||||
|
||||
@@ -10,9 +10,7 @@ export default function () {
|
||||
});
|
||||
mp.events.addDataHandler("vehicleAdminSpeed2", (entity, newValue2) => {
|
||||
if (!entity.isAVehicle()) return;
|
||||
//entity.setEngineTorqueMultiplier(newValue2);
|
||||
TorqueEntity = entity;
|
||||
TorqueValue = newValue2;
|
||||
entity.setEngineTorqueMultiplier(newValue2);
|
||||
});
|
||||
/*mp.events.add('render', () => {
|
||||
let vehicle = mp.players.local.vehicle;
|
||||
|
||||
@@ -271,6 +271,9 @@ antiAfk(globalData);
|
||||
import ammunation from './Interaction/ammunation/ammunation';
|
||||
ammunation(globalData);
|
||||
|
||||
import farmerFieldList from './Jobs/FarmerFieldSelect';
|
||||
farmerFieldList(globalData);
|
||||
|
||||
import handsup from './Player/handsup';
|
||||
handsup();
|
||||
|
||||
|
||||
@@ -10,13 +10,17 @@ game.events.add('SERVER:Vehicle:UpdateData', (vehId, dataStr) => {
|
||||
setVehicleData(vehicle, data);
|
||||
});
|
||||
|
||||
game.events.add("SERVER:Vehicle:SetDefaultEngineBehavior", () => {
|
||||
mp.game.vehicle.defaultEngineBehaviour = false;
|
||||
});
|
||||
|
||||
game.events.onPlayerEnterVehicle((vehicle, seat) => {
|
||||
while (!game.players.local.inVehicle) {
|
||||
game.wait(0);
|
||||
}
|
||||
|
||||
if (vehicle) {
|
||||
var data: VehicleData = vehicle.getSharedData("VehicleData");
|
||||
var data: VehicleData = vehicle.getSharedData("VehicleData");
|
||||
setVehicleData(vehicle, data);
|
||||
if (vehicle.class == 16) mp.game.vehicle.defaultEngineBehaviour = true;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user