Merge
This commit is contained in:
@@ -1,20 +1,19 @@
|
||||
export default function RefuseCollector() {
|
||||
var State = false;
|
||||
var Traegt = false;
|
||||
var HintenVoll = false;
|
||||
var hasBinBag = false;
|
||||
var dumptruckIsFull = false;
|
||||
|
||||
var BlipTonneHinten = null;
|
||||
var CheckpointTonneHinten = null;
|
||||
var ShapeTonneHinten = null;
|
||||
var BlipTonneBase = null;
|
||||
var CheckpointTonneBase = null;
|
||||
var ShapeTonneBase = null;
|
||||
var vehicle = null;
|
||||
var blipDumptruck = null;
|
||||
var dumptruckMarker = null;
|
||||
var colshapeDumptruck = null;
|
||||
var blipBase = null;
|
||||
var markerBase = null;
|
||||
var colshapeBase = null;
|
||||
var vehRemoteID = null;
|
||||
|
||||
var interval = null;
|
||||
|
||||
var BlipTonne = [];
|
||||
var ShapeTonne = [];
|
||||
var garbageToCollect = new Map<BlipMp, ColshapeMp>();
|
||||
|
||||
mp.events.add('SERVER:MuellmannStatusTrue', () => {
|
||||
State = true;
|
||||
@@ -24,58 +23,66 @@
|
||||
State = false;
|
||||
});
|
||||
|
||||
mp.events.add('SERVER:MuellmannBCSErstellen', (jsonPosArr, veh) => {
|
||||
mp.events.add('SERVER:MuellmannBCSErstellen', (jsonPosArr, veh: VehicleMp) => {
|
||||
let posArr = JSON.parse(jsonPosArr);
|
||||
vehicle = veh;
|
||||
vehRemoteID = veh.remoteId;
|
||||
for (var i = 0; i < posArr.length; i++) {
|
||||
let pos = new mp.Vector3(posArr[i].x, posArr[i].y, posArr[i].z - 1)
|
||||
BlipTonne.push(mp.blips.new(1, new mp.Vector3(pos.x, pos.y, 1000), { name: 'Mülltonne', color: 45, shortRange: false }));
|
||||
BlipTonne[i].setFlashTimer(2000);
|
||||
ShapeTonne.push(mp.colshapes.newSphere(posArr[i].x, posArr[i].y, posArr[i].z + 0.5, 1.75));
|
||||
|
||||
let newBlip = mp.blips.new(1, new mp.Vector3(pos.x, pos.y, 1000), { name: 'Mülltonne', color: 45, shortRange: false });
|
||||
let newColShape = mp.colshapes.newSphere(posArr[i].x, posArr[i].y, posArr[i].z + 0.5, 1.75);
|
||||
|
||||
newBlip.setFlashTimer(2000);
|
||||
|
||||
garbageToCollect.set(newBlip, newColShape);
|
||||
}
|
||||
|
||||
BlipTonneBase = mp.blips.new(1, new mp.Vector3(-442.3999, -1701.5234, 18.933002 - 1), { name: 'Recylinganlage', color: 5, shortRange: false });
|
||||
CheckpointTonneBase = mp.markers.new(1, new mp.Vector3(-442.3999, -1701.5234, 18.933002 - 1), 10, { direction: new mp.Vector3(-235.5747, -1685.475, 32.7207), color: [255, 255, 0, 150], visible: true, dimension: 0 });
|
||||
ShapeTonneBase = mp.colshapes.newSphere(-442.3999, -1701.5234, 18.933002 - 1, 10);
|
||||
blipBase = mp.blips.new(1, new mp.Vector3(-442.3999, -1701.5234, 18.933002 - 1), { name: 'Recylinganlage', color: 5, shortRange: false });
|
||||
markerBase = mp.markers.new(1, new mp.Vector3(-442.3999, -1701.5234, 18.933002 - 1), 10, { direction: new mp.Vector3(-235.5747, -1685.475, 32.7207), color: [255, 255, 0, 150], visible: true, dimension: 0 });
|
||||
colshapeBase = mp.colshapes.newSphere(-442.3999, -1701.5234, 18.933002 - 1, 10);
|
||||
});
|
||||
mp.events.add('SERVER:MuellmannBCSEntfernen', () => {
|
||||
for (var i = 0; i < BlipTonne.length; i++) {
|
||||
if (BlipTonne[i] == null) continue;
|
||||
if (ShapeTonne[i] == null) continue;
|
||||
BlipTonne[i].destroy();
|
||||
ShapeTonne[i].destroy();
|
||||
}
|
||||
BlipTonne = [];
|
||||
ShapeTonne = [];
|
||||
|
||||
if (BlipTonneHinten) BlipTonneHinten.destroy();
|
||||
BlipTonneHinten = null;
|
||||
if (CheckpointTonneHinten) CheckpointTonneHinten.destroy();
|
||||
CheckpointTonneHinten = null;
|
||||
if (ShapeTonneHinten) ShapeTonneHinten.destroy();
|
||||
ShapeTonneHinten = null;
|
||||
if (BlipTonneBase) BlipTonneBase.destroy();
|
||||
BlipTonneBase = null;
|
||||
if (CheckpointTonneBase) CheckpointTonneBase.destroy();
|
||||
CheckpointTonneBase = null;
|
||||
if (ShapeTonneBase) ShapeTonneBase.destroy();
|
||||
ShapeTonneBase = null;
|
||||
Traegt = false;
|
||||
garbageToCollect.forEach((colshape, blip) => {
|
||||
if (colshape && mp.colshapes.exists(colshape))
|
||||
colshape.destroy();
|
||||
if (blip && mp.blips.exists(blip))
|
||||
blip.destroy();
|
||||
});
|
||||
|
||||
mp.events.add("playerEnterColshape", (Shape, player) => {
|
||||
garbageToCollect.clear();
|
||||
|
||||
if (blipDumptruck) blipDumptruck.destroy();
|
||||
blipDumptruck = null;
|
||||
if (dumptruckMarker) dumptruckMarker.destroy();
|
||||
dumptruckMarker = null;
|
||||
if (colshapeDumptruck) colshapeDumptruck.destroy();
|
||||
colshapeDumptruck = null;
|
||||
if (blipBase) blipBase.destroy();
|
||||
blipBase = null;
|
||||
if (markerBase) markerBase.destroy();
|
||||
markerBase = null;
|
||||
if (colshapeBase) colshapeBase.destroy();
|
||||
colshapeBase = null;
|
||||
hasBinBag = false;
|
||||
});
|
||||
|
||||
mp.events.add("playerEnterColshape", (currentShape, player) => {
|
||||
//mp.events.callRemote('CLIENT:ImShape', JSON.stringify(Shape));
|
||||
for (var i = 0; i < ShapeTonne.length; i++) {
|
||||
if (Shape != ShapeTonne[i]) continue;
|
||||
if (!mp.players.local.vehicle) {
|
||||
if (!Traegt) {
|
||||
if (!HintenVoll) {
|
||||
mp.events.callRemote('CLIENT:MuellmannImShape', i);
|
||||
Traegt = true;
|
||||
BlipTonne[i].destroy();
|
||||
BlipTonne[i] = null;
|
||||
ShapeTonne[i].destroy();
|
||||
ShapeTonne[i] = null;
|
||||
|
||||
garbageToCollect.forEach((colshape, blip) => {
|
||||
if (!colshape || colshape != currentShape) { return; }
|
||||
|
||||
if (mp.players.local.vehicle) { mp.events.call("renderTextOnScreen", "Steige aus dem Müllwagen aus um den Müllsack zu entnehmen."); return; }
|
||||
if (hasBinBag) { mp.gui.chat.push("Du trägst bereits einen Müllsack!"); return; }
|
||||
|
||||
if (!dumptruckIsFull) {
|
||||
mp.events.callRemote('CLIENT:MuellmannImShape', blip.getCoords());
|
||||
hasBinBag = true;
|
||||
|
||||
if (colshape)
|
||||
colshape.destroy();
|
||||
if (blip)
|
||||
blip.destroy();
|
||||
|
||||
interval = setInterval(function () { createMarker(); }, 2);
|
||||
}
|
||||
@@ -83,53 +90,63 @@
|
||||
mp.gui.chat.push("Der Müllwagen ist bereits voll! Fahre zur Base und lade ab!");
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
mp.gui.chat.push(`Du trägst bereits einen Müllsack!`);
|
||||
return;
|
||||
}
|
||||
}
|
||||
else {
|
||||
mp.events.call("renderTextOnScreen", "Steige aus dem Müllwagen aus um den Müllsack zu entnehmen.");
|
||||
}
|
||||
}
|
||||
if (Shape == ShapeTonneHinten) {
|
||||
if (Traegt) {
|
||||
Traegt = false;
|
||||
});
|
||||
|
||||
if (currentShape == colshapeDumptruck) {
|
||||
if (hasBinBag) {
|
||||
hasBinBag = false;
|
||||
mp.events.callRemote('CLIENT:MuellmannAddSack');
|
||||
|
||||
clearInterval(interval);
|
||||
|
||||
if (BlipTonneHinten) BlipTonneHinten.destroy();
|
||||
BlipTonneHinten = null;
|
||||
if (CheckpointTonneHinten) CheckpointTonneHinten.destroy();
|
||||
CheckpointTonneHinten = null;
|
||||
if (ShapeTonneHinten) ShapeTonneHinten.destroy();
|
||||
ShapeTonneHinten = null;
|
||||
if (blipDumptruck) blipDumptruck.destroy();
|
||||
blipDumptruck = null;
|
||||
if (dumptruckMarker) dumptruckMarker.destroy();
|
||||
dumptruckMarker = null;
|
||||
if (colshapeDumptruck) colshapeDumptruck.destroy();
|
||||
colshapeDumptruck = null;
|
||||
}
|
||||
}
|
||||
else if (Shape == ShapeTonneBase) {
|
||||
BlipTonneBase.setRoute(false);
|
||||
else if (currentShape == colshapeBase) {
|
||||
blipBase.setRoute(false);
|
||||
mp.events.callRemote('CLIENT:MuellmannBaseSack');
|
||||
HintenVoll = false;
|
||||
dumptruckIsFull = false;
|
||||
}
|
||||
});
|
||||
mp.events.add("MuellmannUpdateColshape", (index) => {
|
||||
if (BlipTonne[index] != null)
|
||||
BlipTonne[index].destroy();
|
||||
BlipTonne[index] = null;
|
||||
if (ShapeTonne[index] != null)
|
||||
ShapeTonne[index].destroy();
|
||||
ShapeTonne[index] = null;
|
||||
mp.events.add("MuellmannUpdateColshape", (vector3) => {
|
||||
let currBlip;
|
||||
garbageToCollect.forEach((colShape, blip) => {
|
||||
if (blip.getCoords() == vector3) currBlip = blip;
|
||||
});
|
||||
|
||||
if (!garbageToCollect.has(currBlip)) return;
|
||||
mp.gui.chat.push("Has Blip.");
|
||||
|
||||
var colShape = garbageToCollect.get(currBlip);
|
||||
|
||||
if (currBlip && mp.blips.exists(currBlip)) {
|
||||
mp.gui.chat.push("Delete Blip.");
|
||||
currBlip.destroy();
|
||||
}
|
||||
|
||||
if (colShape && mp.colshapes.exists(colShape)) {
|
||||
mp.gui.chat.push("Delete Colshape.");
|
||||
colShape.destroy();
|
||||
}
|
||||
|
||||
garbageToCollect.delete(currBlip);
|
||||
});
|
||||
|
||||
mp.events.add("SERVER:MuellmannZuBase", () => {
|
||||
BlipTonneBase.setRoute(true);
|
||||
BlipTonneBase.setRouteColour(5);
|
||||
HintenVoll = true;
|
||||
blipBase.setRoute(true);
|
||||
blipBase.setRouteColour(5);
|
||||
dumptruckIsFull = true;
|
||||
});
|
||||
|
||||
function createMarker() {
|
||||
let vehicle;
|
||||
if (vehRemoteID)
|
||||
vehicle = mp.vehicles.atRemoteId(vehRemoteID);
|
||||
if (vehicle != null) {
|
||||
var boneIndex2 = vehicle.getBoneIndexByName("platelight");
|
||||
var boneIndex1 = vehicle.getBoneIndexByName("chassis_dummy");
|
||||
@@ -154,15 +171,15 @@
|
||||
|
||||
let pos = plateVec.add(temp);
|
||||
|
||||
if (BlipTonneHinten) BlipTonneHinten.destroy();
|
||||
BlipTonneHinten = null;
|
||||
if (CheckpointTonneHinten) CheckpointTonneHinten.destroy();
|
||||
CheckpointTonneHinten = null;
|
||||
if (ShapeTonneHinten) ShapeTonneHinten.destroy();
|
||||
ShapeTonneHinten = null;
|
||||
BlipTonneHinten = mp.blips.new(318, pos, { name: 'Müllmann', color: 24, shortRange: false });
|
||||
CheckpointTonneHinten = mp.markers.new(1, pos, 1, { direction: new mp.Vector3(-235.5747, -1685.475, 32.7207), color: [0, 255, 0, 255], visible: true, dimension: 0 });
|
||||
ShapeTonneHinten = mp.colshapes.newSphere(pos.x, pos.y, pos.z, 2);
|
||||
if (blipDumptruck) blipDumptruck.destroy();
|
||||
blipDumptruck = null;
|
||||
if (dumptruckMarker) dumptruckMarker.destroy();
|
||||
dumptruckMarker = null;
|
||||
if (colshapeDumptruck) colshapeDumptruck.destroy();
|
||||
colshapeDumptruck = null;
|
||||
blipDumptruck = mp.blips.new(318, pos, { name: 'Müllmann', color: 24, shortRange: false });
|
||||
dumptruckMarker = mp.markers.new(1, pos, 1, { direction: new mp.Vector3(-235.5747, -1685.475, 32.7207), color: [0, 255, 0, 255], visible: true, dimension: 0 });
|
||||
colshapeDumptruck = mp.colshapes.newSphere(pos.x, pos.y, pos.z, 2);
|
||||
}
|
||||
};
|
||||
}
|
||||
@@ -203,26 +203,50 @@ class RageVehicle extends RageEntity implements IVehicle {
|
||||
}
|
||||
|
||||
isSeatFree(seat: VehicleSeat): boolean {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
return this.vehicle.isSeatFree(<number>seat - 1);
|
||||
}
|
||||
|
||||
setEngineStatus(status: boolean, instantly: boolean, otherwise: boolean) {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.vehicle.setEngineOn(status, instantly, otherwise);
|
||||
}
|
||||
|
||||
setUndriveable(status: boolean) {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.vehicle.setUndriveable(status);
|
||||
}
|
||||
|
||||
setDoorsLocked(state: boolean) {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.vehicle.setDoorsLocked(state ? 2 : 1);
|
||||
}
|
||||
|
||||
setDoorOpen(door: number, loose: boolean, instantly: boolean) {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.vehicle.setDoorOpen(door, loose, instantly);
|
||||
}
|
||||
|
||||
setDoorShut(door: number, instantly: boolean) {
|
||||
if (!mp.vehicles.exists(this.vehicle)) {
|
||||
return false;
|
||||
}
|
||||
|
||||
this.vehicle.setDoorShut(door, instantly);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -276,7 +276,8 @@ namespace ReallifeGamemode.Server.Commands
|
||||
[Command("tsupport", "~m~Benutzung: ~s~/tsupport", Alias = "ts")]
|
||||
public void CmdAdminTSupport(Player player)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.SUPPORTER) ?? true)
|
||||
User user = player.GetUser();
|
||||
if (!user.IsAdmin(AdminLevel.SUPPORTER))
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
@@ -289,51 +290,14 @@ namespace ReallifeGamemode.Server.Commands
|
||||
if (player.GetData<bool>("SAdminduty") == false)
|
||||
{
|
||||
player.SetData("SAdminduty", true);
|
||||
player.SetSharedData("blipColor", 30);
|
||||
player.SetSharedData("nameTagColor", -2);
|
||||
ChatService.SendMessage(player, "~g~ ** " + "Du befindest dich im T-Support");
|
||||
}
|
||||
else
|
||||
{
|
||||
player.SetData("SAdminduty", false);
|
||||
ChatService.SendMessage(player, "!{#ee4d2e}** " + "Du befindest dich nicht mehr im T-Support");
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
User targetUser = player.GetUser(dbContext);
|
||||
switch (targetUser.FactionId)
|
||||
{
|
||||
case null:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 0:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 8:
|
||||
player.SetSharedData("blipColor", 83);
|
||||
player.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
player.SetSharedData("blipColor", 52);
|
||||
player.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
player.SetSharedData("blipColor", 5);
|
||||
player.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
player.SetSharedData("blipColor", 25);
|
||||
player.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
player.SetSharedData("nameTagColor", targetUser.FactionId);
|
||||
}
|
||||
|
||||
}
|
||||
user.SetBlipAndNametagColor();
|
||||
}
|
||||
[Command("aduty", "~m~Benutzung: ~s~/aduty")]
|
||||
public void CmdAdminAduty(Player player)
|
||||
@@ -1498,37 +1462,12 @@ namespace ReallifeGamemode.Server.Commands
|
||||
}
|
||||
ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason);
|
||||
ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde vom Admin " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 });
|
||||
switch (targetUser.FactionId)
|
||||
{
|
||||
case null:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 0:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 8:
|
||||
target.SetSharedData("blipColor", 83);
|
||||
target.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
target.SetSharedData("blipColor", 52);
|
||||
target.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
target.SetSharedData("blipColor", 5);
|
||||
target.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
target.SetSharedData("blipColor", 25);
|
||||
target.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
target.TriggerEvent("jailTime", 0);
|
||||
targetUser.Wanteds = 0;
|
||||
|
||||
targetUser.SetBlipAndNametagColor();
|
||||
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
@@ -2494,37 +2433,7 @@ namespace ReallifeGamemode.Server.Commands
|
||||
}
|
||||
|
||||
u.FactionLeader = false;
|
||||
switch (u.FactionId)
|
||||
{
|
||||
case null:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
target.SetSharedData("blipColor", 83);
|
||||
target.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
target.SetSharedData("blipColor", 52);
|
||||
target.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
target.SetSharedData("blipColor", 5);
|
||||
target.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
target.SetSharedData("blipColor", 25);
|
||||
target.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
u.SetBlipAndNametagColor();
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
@@ -2567,36 +2476,7 @@ namespace ReallifeGamemode.Server.Commands
|
||||
ChatService.SendMessage(player, "~b~[ADMIN]~s~ Du hast hast den Spieler ~y~" + target.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt.");
|
||||
ChatService.SendMessage(target, "~b~[ADMIN]~s~ Du wurdest von ~y~" + player.Name + "~s~ zum Leader der Fraktion ~o~" + f.Name + "~s~ ernannt.");
|
||||
|
||||
switch (u.FactionId)
|
||||
{
|
||||
case null:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 0:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
target.SetSharedData("blipColor", 83);
|
||||
target.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
target.SetSharedData("blipColor", 52);
|
||||
target.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
target.SetSharedData("blipColor", 5);
|
||||
target.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
target.SetSharedData("blipColor", 25);
|
||||
target.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
u.SetBlipAndNametagColor();
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -472,40 +472,12 @@ namespace ReallifeGamemode.Server.Commands
|
||||
}
|
||||
ChatService.SendMessage(target, "!{#8181E9}Deine Akte wurde von " + player.Name + " gelöscht. Grund: " + reason);
|
||||
ChatService.BroadcastFaction("!{#8181E9}HQ: Die Akte von " + target.Name + " wurde von " + player.Name + " gelöscht. Grund: " + reason + ".", new List<int>() { 1, 3 });
|
||||
target.SetSharedData("blipColor", 0);
|
||||
switch (targetUser.FactionId)
|
||||
{
|
||||
case null:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
target.SetSharedData("blipColor", 0);
|
||||
target.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
target.SetSharedData("blipColor", 83);
|
||||
target.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
target.SetSharedData("blipColor", 52);
|
||||
target.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
target.SetSharedData("blipColor", 5);
|
||||
target.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
target.SetSharedData("blipColor", 25);
|
||||
target.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
target.TriggerEvent("jailTime", 0);
|
||||
targetUser.Wanteds = 0;
|
||||
|
||||
targetUser.SetBlipAndNametagColor();
|
||||
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -295,27 +295,8 @@ namespace ReallifeGamemode.Server.Events
|
||||
}
|
||||
switch (factionId)
|
||||
{
|
||||
//LSPD
|
||||
case 1:
|
||||
//nameTagColor = new Color(28, 134, 238);
|
||||
//player.TriggerEvent("setNameTag", JsonConvert.SerializeObject(new int[] { 28, 134, 238 }));
|
||||
player.SetSharedData("nameTagColor", factionId);
|
||||
player.SetSharedData("blipColor", 38);
|
||||
break;
|
||||
|
||||
//Medic
|
||||
case 2:
|
||||
//nameTagColor = new Color(255, 0, 0);
|
||||
//player.TriggerEvent("setNameTag", JsonConvert.SerializeObject(new int[] { 255, 0, 0 }));
|
||||
player.SetSharedData("nameTagColor", factionId);
|
||||
player.SetSharedData("blipColor", 6);
|
||||
break;
|
||||
|
||||
//FBI
|
||||
case 3:
|
||||
//nameTagColor = new Color(173, 0, 118);
|
||||
player.SetSharedData("nameTagColor", factionId);
|
||||
player.SetSharedData("blipColor", 63);
|
||||
player.SetAccessories(2, 2, 0);
|
||||
break;
|
||||
}
|
||||
@@ -349,10 +330,9 @@ namespace ReallifeGamemode.Server.Events
|
||||
player.SendNotification("Du bist nun ~r~außer Dienst.");
|
||||
player.TriggerEvent("toggleDutyMode", false);
|
||||
Medic.UpdateDutyMedics(-1);
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
UpdateCharacterCloth.LoadCharacterDefaults(player);
|
||||
}
|
||||
user.SetBlipAndNametagColor();
|
||||
}
|
||||
|
||||
if (nearestWeapon != null) // Weapon Point
|
||||
@@ -515,6 +495,11 @@ namespace ReallifeGamemode.Server.Events
|
||||
foreach (Player target in NAPI.Pools.GetAllPlayers())
|
||||
{
|
||||
User c = target.GetUser();
|
||||
if(c == null)
|
||||
{
|
||||
continue;
|
||||
}
|
||||
|
||||
if (c.JailTime > 0)
|
||||
{
|
||||
criminals.Add(c.Name);
|
||||
|
||||
@@ -100,42 +100,7 @@ namespace ReallifeGamemode.Server.Events
|
||||
var userItems = dbContext.UserItems.Where(u => u.UserId == user.Id).ToList();
|
||||
player.SetData("items", userItems);
|
||||
|
||||
switch (user.FactionId)
|
||||
{
|
||||
case null:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 0:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
player.SetSharedData("blipColor", 83);
|
||||
player.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
player.SetSharedData("blipColor", 52);
|
||||
player.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
player.SetSharedData("blipColor", 5);
|
||||
player.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
player.SetSharedData("blipColor", 25);
|
||||
player.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
default:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
}
|
||||
|
||||
user.SetBlipAndNametagColor();
|
||||
|
||||
if (user.CharacterId == null)
|
||||
{
|
||||
|
||||
@@ -131,8 +131,7 @@ namespace ReallifeGamemode.Server.Extensions
|
||||
dbUser.Wanteds = newWanteds;
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
user.Player.SetSharedData("nameTagColor", -1);
|
||||
user.Player.SetSharedData("blipColor", 64);
|
||||
user.SetBlipAndNametagColor();
|
||||
ChatService.SendMessage(user.Player, "!{#FF614A}Du hast ein Verbrechen begangen: " + reason + "" + (cop != null ? " | Gemeldet von: " + cop.Name + "." : ""));
|
||||
ChatService.SendMessage(user.Player, " !{#FFFF00}Fahnundgslevel:~s~ " + newWanteds);
|
||||
|
||||
@@ -243,5 +242,75 @@ namespace ReallifeGamemode.Server.Extensions
|
||||
}
|
||||
return user.AdminLevel >= adminLevel;
|
||||
}
|
||||
|
||||
public static void SetBlipAndNametagColor(this User user)
|
||||
{
|
||||
if (user == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
int blipColor = 0;
|
||||
int nameTagColor = 0;
|
||||
|
||||
Player player = user.Player;
|
||||
bool duty = user.GetData<bool>("duty");
|
||||
|
||||
if (player.GetData<bool>("SAdminduty"))
|
||||
{
|
||||
blipColor = 30;
|
||||
nameTagColor = -2;
|
||||
}
|
||||
else if (user.Wanteds > 0)
|
||||
{
|
||||
nameTagColor = -1;
|
||||
blipColor = 64;
|
||||
}
|
||||
else if (user.Faction != null)
|
||||
{
|
||||
nameTagColor = user.FactionId.Value;
|
||||
switch (user.FactionId)
|
||||
{
|
||||
case 1 when duty:
|
||||
blipColor = 38;
|
||||
break;
|
||||
|
||||
case 2 when duty:
|
||||
blipColor = 6;
|
||||
break;
|
||||
|
||||
case 3 when duty:
|
||||
blipColor = 63;
|
||||
break;
|
||||
|
||||
case 4:
|
||||
blipColor = 5;
|
||||
break;
|
||||
|
||||
case 5:
|
||||
break;
|
||||
|
||||
case 6:
|
||||
break;
|
||||
|
||||
case 7:
|
||||
blipColor = 52;
|
||||
break;
|
||||
|
||||
case 8:
|
||||
blipColor = 83;
|
||||
break;
|
||||
|
||||
case 9:
|
||||
blipColor = 25;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
NAPI.Util.ConsoleOutput($"{player.Name} - Setting blip and nametag color: nametag = {nameTagColor}, blip = {blipColor}");
|
||||
|
||||
user.Player.SetSharedData("nameTagColor", nameTagColor);
|
||||
user.Player.SetSharedData("blipColor", blipColor);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -19,7 +19,7 @@ namespace ReallifeGamemode.Server.Job
|
||||
|
||||
public override bool NeedVehicleToStart => false;
|
||||
|
||||
const int MAX_BAG = 40;
|
||||
private const int MAX_BAG = 40;
|
||||
|
||||
public RefuseCollectorJob()
|
||||
{
|
||||
@@ -157,7 +157,6 @@ namespace ReallifeGamemode.Server.Job
|
||||
new Vector3(-921.0493774414062, -1095.1513671875, 2.1503124237060547),
|
||||
new Vector3(-942.0684204101562, -1077.1378173828125, 2.1503121852874756),
|
||||
new Vector3(-951.5316772460938, -1078.955078125, 2.1503100395202637),
|
||||
|
||||
}.AsReadOnly();
|
||||
|
||||
[RemoteEvent("CLIENT:MuellmannJobStarten")]
|
||||
@@ -165,7 +164,6 @@ namespace ReallifeGamemode.Server.Job
|
||||
{
|
||||
if (vehicle.Model == (uint)Types.VehicleModel.Trash || vehicle.Model == (uint)Types.VehicleModel.Trash2)
|
||||
{
|
||||
|
||||
Vehicle veh;
|
||||
foreach (var data in muellmanData)
|
||||
{
|
||||
@@ -211,13 +209,13 @@ namespace ReallifeGamemode.Server.Job
|
||||
}
|
||||
|
||||
[RemoteEvent("CLIENT:MuellmannImShape")]
|
||||
public void MuellmannImShape(Player player, int colshapeIndex)
|
||||
public void MuellmannImShape(Player player, Vector3 blipCoords)
|
||||
{
|
||||
foreach (var data in muellmanData)
|
||||
{
|
||||
if (data.getDataFromClient(player) == null) continue;
|
||||
Player target = data.getPartnerClient(player);
|
||||
if (target != null) target.TriggerEvent("MuellmannUpdateColshape", colshapeIndex);
|
||||
if (target != null) target.TriggerEvent("MuellmannUpdateColshape", blipCoords);
|
||||
player.TriggerEvent("renderTextOnScreen", "Wirf den Müllsack in den Müllwagen.");
|
||||
player.AddAttachment("binbag", false);
|
||||
return;
|
||||
@@ -267,12 +265,10 @@ namespace ReallifeGamemode.Server.Job
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
if (target != null)
|
||||
{
|
||||
user1.Wage += 25;
|
||||
user2.Wage += 25;
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
|
||||
@@ -69,32 +69,7 @@ namespace ReallifeGamemode.Server.Managers
|
||||
ChatService.SendMessage(leader, "!{02FCFF}" + player.Name + " hat die Einladung angenommen.");
|
||||
ChatService.SendMessage(player, "!{02FCFF}Du hast die Einladung angenommen.");
|
||||
|
||||
switch (own.FactionId)
|
||||
{
|
||||
default:
|
||||
player.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
|
||||
case 8:
|
||||
player.SetSharedData("blipColor", 83);
|
||||
player.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
|
||||
case 7:
|
||||
player.SetSharedData("blipColor", 52);
|
||||
player.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
|
||||
case 4:
|
||||
player.SetSharedData("blipColor", 5);
|
||||
player.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
player.SetSharedData("blipColor", 25);
|
||||
player.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
own.SetBlipAndNametagColor();
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
@@ -247,8 +222,10 @@ namespace ReallifeGamemode.Server.Managers
|
||||
return;
|
||||
}
|
||||
|
||||
User targetUser = target.GetUser();
|
||||
User playerUser = player.GetUser();
|
||||
using var dbContext = new DatabaseContext();
|
||||
|
||||
User targetUser = target.GetUser(dbContext);
|
||||
User playerUser = player.GetUser(dbContext);
|
||||
|
||||
if (type == "Fraktion")
|
||||
{
|
||||
@@ -276,22 +253,17 @@ namespace ReallifeGamemode.Server.Managers
|
||||
return;
|
||||
}
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
target.SetData("duty", false);
|
||||
target.TriggerEvent("toggleDutyMode", false);
|
||||
Medic.UpdateDutyMedics(-1);
|
||||
target.SetSharedData("blipColor", 0);
|
||||
UpdateCharacterCloth.LoadCharacterDefaults(target);
|
||||
target.GetUser(dbContext).FactionRankId = null;
|
||||
target.GetUser(dbContext).FactionId = null;
|
||||
ChatService.SendMessage(player, "!{02FCFF}Du hast " + target.Name + " aus der Fraktion geworfen.");
|
||||
ChatService.SendMessage(target, "!{02FCFF}Du wurdest von " + player.Name + " aus der Fraktion geworfen.");
|
||||
target.SetSharedData("blipColor", 0);
|
||||
player.SetSharedData("nameTagColor", 0);
|
||||
targetUser.SetBlipAndNametagColor();
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
else if (type == "Gruppe")
|
||||
{
|
||||
if (playerUser?.Group == null || playerUser.GroupRank < GroupRank.MANAGER)
|
||||
@@ -318,10 +290,8 @@ namespace ReallifeGamemode.Server.Managers
|
||||
return;
|
||||
}
|
||||
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
target.GetUser(dbContext).Group = null;
|
||||
target.GetUser(dbContext).GroupRank = GroupRank.NONE;
|
||||
targetUser.Group = null;
|
||||
targetUser.GroupRank = GroupRank.NONE;
|
||||
|
||||
ChatService.SendMessage(player, "!{02FCFF}Du hast " + target.Name + " aus der Gruppe geworfen.");
|
||||
ChatService.SendMessage(target, "!{02FCFF}Du wurdest von " + player.Name + " aus der Gruppe geworfen.");
|
||||
@@ -329,7 +299,6 @@ namespace ReallifeGamemode.Server.Managers
|
||||
dbContext.SaveChanges();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
[RemoteEvent("CLIENT:InteractionMenu_MemberList")]
|
||||
public void InteractionMenuGroupMemberList(Player player, string type, string name)
|
||||
@@ -854,7 +823,8 @@ namespace ReallifeGamemode.Server.Managers
|
||||
if (player.GetData<bool>("healauftrag") == true)
|
||||
{
|
||||
player.SendNotification("~r~[Fehler] ~w~Du hast bereits ein Sanitäter gerufen.");
|
||||
}else
|
||||
}
|
||||
else
|
||||
{
|
||||
Medic.AddTaskToList(healTask);
|
||||
player.SetData("healauftrag", true);
|
||||
|
||||
@@ -66,10 +66,12 @@ namespace ReallifeGamemode.Server.Wanted
|
||||
jailTime /= 2;
|
||||
}
|
||||
|
||||
client.GetUser(dbContext).JailTime = jailTime;
|
||||
User clientUser = client.GetUser(dbContext);
|
||||
|
||||
clientUser.JailTime = jailTime;
|
||||
Jailtime[user.Id] = jailTime; // 54 sec for each wanted star -> in total 45min for 50 Wanteds
|
||||
|
||||
client.GetUser(dbContext).Wanteds = 0;
|
||||
clientUser.Wanteds = 0;
|
||||
client.SetData("isDead", false);
|
||||
client.RemoveAllWeapons();
|
||||
client.SetSharedData("blipColor", 0);
|
||||
@@ -100,29 +102,7 @@ namespace ReallifeGamemode.Server.Wanted
|
||||
|
||||
client.TriggerEvent("jailTime", JsonConvert.SerializeObject(timeMinutes));
|
||||
|
||||
switch (user.FactionId)
|
||||
{
|
||||
case null:
|
||||
client.SetSharedData("blipColor", 0);
|
||||
client.SetSharedData("nameTagColor", 0);
|
||||
break;
|
||||
case 8:
|
||||
client.SetSharedData("blipColor", 83);
|
||||
client.SetSharedData("nameTagColor", 8);
|
||||
break;
|
||||
case 7:
|
||||
client.SetSharedData("blipColor", 52);
|
||||
client.SetSharedData("nameTagColor", 7);
|
||||
break;
|
||||
case 4:
|
||||
client.SetSharedData("blipColor", 5);
|
||||
client.SetSharedData("nameTagColor", 4);
|
||||
break;
|
||||
case 9:
|
||||
client.SetSharedData("blipColor", 25);
|
||||
client.SetSharedData("nameTagColor", 9);
|
||||
break;
|
||||
}
|
||||
clientUser.SetBlipAndNametagColor();
|
||||
|
||||
if (announceHq)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user