Add BankBalance to Infobox; Iprove Player Feedback; Add /gotolist
This commit is contained in:
@@ -34,6 +34,7 @@ var nSecond;
|
||||
|
||||
var playerName;
|
||||
var playerId;
|
||||
var playerMoney;
|
||||
|
||||
mp.events.add("draw", (pName, pId) => {
|
||||
playerName = pName;
|
||||
@@ -42,6 +43,10 @@ mp.events.add("draw", (pName, pId) => {
|
||||
|
||||
});
|
||||
|
||||
//function currencyFormatDE(num) {
|
||||
// return ('$' + num.toFixed(2).replace('.', ',').replace(/(\d)(?=(\d{3})+(?!\d))/g, '$1.'));
|
||||
//}
|
||||
|
||||
mp.events.add("render", () => {
|
||||
|
||||
if (draw === true) {
|
||||
@@ -114,25 +119,35 @@ mp.events.add("render", () => {
|
||||
|
||||
dateString = nDay + ". " + nMonth + " " + year;
|
||||
timeString = nHour + ":" + nMinute + ":" + nSecond + " Uhr";
|
||||
playerMoney = mp.players.local.getVariable("money");
|
||||
|
||||
mp.game.graphics.requestStreamedTextureDict("digitaloverlay", true);
|
||||
//static
|
||||
mp.game.graphics.drawSprite("digitaloverlay", "static1", posX, posY, width, height, 0, 0, 255, 0, 88);
|
||||
//mp.game.graphics.drawRect(posX, posY, width, height, colorR, colorG, colorB, colorA);
|
||||
mp.game.graphics.drawText(playerName + " (" + playerId + ")", [0.92, 0.351],
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
|
||||
mp.game.graphics.drawText(dateString + "\n" + timeString, [0.938, 0.381],
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
|
||||
mp.game.graphics.drawText("~g~$~s~" + playerMoney, [0.938, 0.441],
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
mp.game.graphics.drawText("~r~Datum: ", [0.89, 0.381],
|
||||
{
|
||||
font: 4,
|
||||
@@ -141,11 +156,18 @@ mp.events.add("render", () => {
|
||||
outline: true
|
||||
})
|
||||
mp.game.graphics.drawText("~r~Uhrzeit: ", [0.891, 0.411],
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
mp.game.graphics.drawText("~y~Bank: ", [0.887, 0.441],
|
||||
{
|
||||
font: 4,
|
||||
color: [255, 255, 255, 255],
|
||||
scale: [0.5, 0.5],
|
||||
outline: true
|
||||
})
|
||||
}
|
||||
});
|
||||
@@ -687,10 +687,11 @@ namespace reallife_gamemode.Server.Commands
|
||||
{
|
||||
using (var dbContext = new DatabaseContext())
|
||||
{
|
||||
Entities.GotoPoint p = dbContext.GotoPoints.FirstOrDefault(x => x.Description == description);
|
||||
GotoPoint p = dbContext.GotoPoints.FirstOrDefault(x => x.Description == description);
|
||||
if(p == null)
|
||||
{
|
||||
SaveManager.SaveGotoPoint(player, description);
|
||||
player.SendNotification("Goto-Punkt ~g~" + description + "~s~ gespeichert.", true);
|
||||
}
|
||||
else
|
||||
{
|
||||
@@ -707,6 +708,7 @@ namespace reallife_gamemode.Server.Commands
|
||||
Vehicle vehicle = player.Vehicle;
|
||||
SaveManager.SaveVehicleData((VehicleHash)vehicle.Model, vehicle.Position, vehicle.Heading, vehicle.NumberPlate,
|
||||
Convert.ToByte(vehicle.PrimaryColor), Convert.ToByte(vehicle.SecondaryColor), vehicle.Locked, vehicle.EngineStatus, Convert.ToByte(vehicle.Dimension));
|
||||
player.SendNotification("Fahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true);
|
||||
|
||||
}
|
||||
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
||||
@@ -726,6 +728,7 @@ namespace reallife_gamemode.Server.Commands
|
||||
Convert.ToByte(vehicle.PrimaryColor), Convert.ToByte(vehicle.SecondaryColor), vehicle.Locked, vehicle.EngineStatus, Convert.ToByte(vehicle.Dimension), player.GetUser().FactionId);
|
||||
vehicle.SetData("factionId", player.GetUser().FactionId);
|
||||
LoadManager.FactionVehicleList.Add(vehicle);
|
||||
player.SendNotification("Fraktionsfahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true);
|
||||
}
|
||||
}
|
||||
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
||||
@@ -737,6 +740,7 @@ namespace reallife_gamemode.Server.Commands
|
||||
SaveManager.SaveShopVehicleData((VehicleHash)vehicle.Model, vehicle.DisplayName, vehicle.Position, vehicle.Heading, vehicle.NumberPlate,
|
||||
Convert.ToByte(vehicle.PrimaryColor), Convert.ToByte(vehicle.SecondaryColor), Convert.ToByte(vehicle.Dimension), player.GetUser().FactionId);
|
||||
LoadManager.ShopVehicleList.Add(vehicle);
|
||||
player.SendNotification("Shopfahrzeug ~g~" + vehicle.DisplayName + "~s~ gespeichert.", true);
|
||||
}
|
||||
else player.SendChatMessage("~m~Du sitzt in keinem Fahrzeug!");
|
||||
break;
|
||||
@@ -1228,6 +1232,17 @@ namespace reallife_gamemode.Server.Commands
|
||||
}
|
||||
}
|
||||
}
|
||||
[Command("setmoney")]
|
||||
public void SetPlayerMoney(Client player, string receiver, float amount)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
Client target = ClientService.GetClientByName(receiver);
|
||||
target.SetSharedData("money", amount);
|
||||
}
|
||||
//TODO
|
||||
[Command("fpay")]
|
||||
public void FPay(Client player, string receiver, float amount)
|
||||
@@ -1272,6 +1287,25 @@ namespace reallife_gamemode.Server.Commands
|
||||
}
|
||||
}
|
||||
}
|
||||
//TODO Als Browser anzeigeN??
|
||||
[Command("gotolist")]
|
||||
public void CmdAdminGotoList(Client player)
|
||||
{
|
||||
if (!player.GetUser()?.IsAdmin(AdminLevel.ADMIN) ?? true)
|
||||
{
|
||||
ChatService.NotAuthorized(player);
|
||||
return;
|
||||
}
|
||||
var gotoString = "";
|
||||
foreach(GotoPoint point in LoadManager.GotoPointList)
|
||||
{
|
||||
if(point.Active)
|
||||
{
|
||||
gotoString += point.Description + ", ";
|
||||
}
|
||||
}
|
||||
player.SendChatMessage(gotoString);
|
||||
}
|
||||
[Command("saveall")]
|
||||
public void SaveAll(Client player)
|
||||
{
|
||||
|
||||
@@ -32,7 +32,7 @@ namespace reallife_gamemode.Server.Events
|
||||
if (user.SocialClubName != player.SocialClubName && user.Password == NAPI.Util.GetHashSha256(password))
|
||||
{
|
||||
player.TriggerEvent("loginDeny", "Dieser Benutzer gehört dir nicht!");
|
||||
//Log einbauen für den bösen Bub.
|
||||
//TODO ?? Log einbauen für den bösen Bub.
|
||||
player.Kick();
|
||||
}
|
||||
if (user.Password != NAPI.Util.GetHashSha256(password))
|
||||
@@ -47,7 +47,8 @@ namespace reallife_gamemode.Server.Events
|
||||
player.SetData("isLoggedIn", true);
|
||||
player.SetData("spec", true);
|
||||
player.TriggerEvent("draw", player.Name, player.Handle.Value);
|
||||
//player.Position = new Vector3(user.PositionX, user.PositionY, user.PositionZ);
|
||||
var userBankAccount = loginUser.UserBankAccounts.SingleOrDefault(u => u.UserId == user.Id);
|
||||
player.SetSharedData("money", userBankAccount.Balance); //Lädt den aktuellen Kontostand des Users aus der DB
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -24,13 +24,27 @@ namespace reallife_gamemode.Server.Events
|
||||
{
|
||||
using (var registerUser = new Model.DatabaseContext())
|
||||
{
|
||||
var user = new Entities.User { Name = player.Name, SocialClubName = player.SocialClubName, Password = NAPI.Util.GetHashSha256(password) };
|
||||
var user = new Entities.User
|
||||
{
|
||||
Name = player.Name,
|
||||
SocialClubName = player.SocialClubName,
|
||||
Password = NAPI.Util.GetHashSha256(password)
|
||||
};
|
||||
registerUser.Users.Add(user);
|
||||
registerUser.SaveChanges();
|
||||
var userBankAccount = new Entities.UserBankAccount
|
||||
{
|
||||
UserId = user.Id,
|
||||
Balance = 5000,
|
||||
Active = true
|
||||
};
|
||||
registerUser.UserBankAccounts.Add(userBankAccount);
|
||||
registerUser.SaveChanges();
|
||||
}
|
||||
player.TriggerEvent("registerSuccess");
|
||||
NAPI.Player.SpawnPlayer(player, Main.DEFAULT_SPAWN_POSITION, Main.DEFAULT_SPAWN_HEADING);
|
||||
player.SetData("isLoggedIn", true);
|
||||
player.TriggerEvent("draw", player.Name, player.Handle.Value);
|
||||
}
|
||||
else if (player.SocialClubName == checkedUser.SocialClubName)
|
||||
{
|
||||
|
||||
22
Server/Events/Update.cs
Normal file
22
Server/Events/Update.cs
Normal file
@@ -0,0 +1,22 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Text;
|
||||
using GTANetworkAPI;
|
||||
|
||||
/**
|
||||
* @overview Life of German Reallife - Event Update (Update.cs)
|
||||
* @author VegaZ
|
||||
* @copyright (c) 2008 - 2018 Life of German
|
||||
*/
|
||||
|
||||
namespace reallife_gamemode.Server.Events
|
||||
{
|
||||
public class Update : Script
|
||||
{
|
||||
[ServerEvent(Event.Update)]
|
||||
public void OnUpdate()
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -34,7 +34,7 @@ namespace reallife_gamemode.Server.Managers
|
||||
b.Color, b.Name, b.Alpha, b.DrawDistance, b.ShortRange, (short) b.Rotation, b.Dimension);
|
||||
}
|
||||
}
|
||||
foreach (Entities.GotoPoint g in loadData.GotoPoints)
|
||||
foreach (GotoPoint g in loadData.GotoPoints)
|
||||
{
|
||||
if (g.Active == true)
|
||||
{
|
||||
@@ -66,9 +66,10 @@ namespace reallife_gamemode.Server.Managers
|
||||
Vehicle current = NAPI.Vehicle.CreateVehicle((uint)v.Model, new Vector3(v.PositionX, v.PositionY, v.PositionZ), v.Heading, (v.PrimaryColor),
|
||||
v.SecondaryColor, v.NumberPlate, v.Alpha, false, false, v.Dimension);
|
||||
ShopVehicleList.Add(current);
|
||||
current.Health = -4000;
|
||||
NAPI.Vehicle.SetVehicleEngineHealth(current, 0);
|
||||
var tLabel = NAPI.TextLabel.CreateTextLabel(v.ModelName + " | " + v.Price + "~g~$", new Vector3(v.PositionX, v.PositionY, v.PositionZ + 1.5), 10, 1, 0, new Color(255, 255, 255), false, v.Dimension);
|
||||
current.SetData("shopVehicleId", v.Id);
|
||||
tLabel.AttachTo(current, "SKEL_ROOT", new Vector3(v.PositionX, v.PositionY, v.PositionZ + 1.5), new Vector3(0, 0, 0));
|
||||
}
|
||||
}
|
||||
foreach (UserVehicle v in loadData.UserVehicles)
|
||||
|
||||
@@ -139,6 +139,7 @@ namespace reallife_gamemode.Server.Events
|
||||
};
|
||||
saveData.GotoPoints.Add(dataSet);
|
||||
saveData.SaveChanges();
|
||||
LoadManager.GotoPointList.Add(dataSet);
|
||||
}
|
||||
}
|
||||
public static void SaveAllOnSave()
|
||||
|
||||
Reference in New Issue
Block a user