Update 07.12.2022
This commit is contained in:
93
C#/FiveM/Framework/Framework.Client/Handler/JoinHandler.cs
Normal file
93
C#/FiveM/Framework/Framework.Client/Handler/JoinHandler.cs
Normal file
@@ -0,0 +1,93 @@
|
||||
using System;
|
||||
using CitizenFX.Core;
|
||||
using CitizenFX.Core.UI;
|
||||
using Framework.Client.Utils;
|
||||
using Framework.Shared.Models;
|
||||
using NativeUI;
|
||||
|
||||
namespace Framework.Client.Handler {
|
||||
public static class JoinHandler {
|
||||
private static UIMenu _registerMenu;
|
||||
private static PlayerData _data;
|
||||
|
||||
public static void Init() {
|
||||
_registerMenu = new UIMenu("PrincepRP", "Registrierung");
|
||||
Client.Menus.Add(_registerMenu);
|
||||
|
||||
var sex = new UIMenuItem("Geschlecht setzen", "0 -> Männlich, 1 -> Weiblich");
|
||||
var height = new UIMenuItem("Größe setzen", "Wert in cm");
|
||||
var firstName = new UIMenuItem("Vornamen setzen");
|
||||
var lastName = new UIMenuItem("Nachnamen setzen");
|
||||
var birth = new UIMenuItem("Geburtsdatum setzen", "DD.MM.JJJJ, min. 18 Jahre");
|
||||
var skin = new UIMenuItem("Skin erstellen");
|
||||
var done = new UIMenuItem("Charackter erstellen");
|
||||
|
||||
_registerMenu.AddItem(sex);
|
||||
_registerMenu.AddItem(height);
|
||||
_registerMenu.AddItem(firstName);
|
||||
_registerMenu.AddItem(lastName);
|
||||
_registerMenu.AddItem(birth);
|
||||
_registerMenu.AddItem(skin);
|
||||
_registerMenu.AddItem(done);
|
||||
|
||||
sex.Activated += async (sender, item) => {
|
||||
var input = await UI.DisplayTextInput("Geschlecht setzen", 1);
|
||||
if (int.TryParse(input, out var result)) {
|
||||
_data.sex = result == 0;
|
||||
|
||||
if (_data.sex) sex.Description = "Männlich";
|
||||
else sex.Description = "Weiblich";
|
||||
}
|
||||
else {
|
||||
Screen.ShowNotification("~r~Geschlecht setzen: 0 -> Männlich, 1 -> Weiblich");
|
||||
}
|
||||
};
|
||||
|
||||
height.Activated += async (sender, item) => {
|
||||
var input = await UI.DisplayTextInput("Größe setzen", 3);
|
||||
if (int.TryParse(input, out var result)) {
|
||||
_data.height = result;
|
||||
|
||||
height.Description = _data.height + "cm";
|
||||
}
|
||||
else {
|
||||
Screen.ShowNotification("~r~Größe setzen: Wert in cm");
|
||||
}
|
||||
};
|
||||
|
||||
firstName.Activated += async (sender, item) => {
|
||||
var input = await UI.DisplayTextInput("Vornamen setzen", 60);
|
||||
_data.firstName = input;
|
||||
firstName.Description = _data.firstName;
|
||||
};
|
||||
|
||||
lastName.Activated += async (sender, item) => {
|
||||
var input = await UI.DisplayTextInput("Nachnamen setzen", 60);
|
||||
_data.lastName = input;
|
||||
lastName.Description = _data.lastName;
|
||||
};
|
||||
|
||||
birth.Activated += async (sender, item) => {
|
||||
var input = await UI.DisplayTextInput("Geburtsdatum setzen", 10);
|
||||
_data.birth = input;
|
||||
birth.Description = _data.birth;
|
||||
};
|
||||
|
||||
done.Activated += (sender, item) => {
|
||||
// TODO: Checks
|
||||
_registerMenu.Visible = false;
|
||||
BaseScript.TriggerServerEvent("server:spawn:register", _data);
|
||||
};
|
||||
}
|
||||
|
||||
public static void Register() {
|
||||
_data = new PlayerData();
|
||||
_registerMenu.Visible = true;
|
||||
}
|
||||
|
||||
public static void ChooseChar(dynamic[] chars) {
|
||||
Debug.WriteLine("ChooseChar");
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user