Feature/character creator

This commit is contained in:
VegaZ
2018-10-24 20:51:54 +02:00
parent bf13d7ed4a
commit 6e16db56bd
14 changed files with 1184 additions and 15 deletions

View File

@@ -5,6 +5,7 @@ using System.Text;
using GTANetworkAPI;
using reallife_gamemode.Model;
using reallife_gamemode.Server.Entities;
using reallife_gamemode.Server.Managers;
using reallife_gamemode.Server.Util;
/**
@@ -19,7 +20,7 @@ namespace reallife_gamemode.Server.Events
{
[RemoteEvent("OnPlayerLogin")]
public void OnPlayerLogin(Client player, string password)
{
{
using (var loginUser = new Model.DatabaseContext())
{
var user = loginUser.Users.SingleOrDefault(b => b.Name == player.Name);
@@ -39,16 +40,17 @@ namespace reallife_gamemode.Server.Events
if (user.Password != NAPI.Util.GetHashSha256(password))
{
player.TriggerEvent("loginFail", "Passwort inkorrekt!");
}
}
else
{
player.TriggerEvent("loginSuccess");
NAPI.Player.SpawnPlayer(player, new Vector3(user.PositionX, user.PositionY, user.PositionZ), 0);
player.TriggerEvent("loginSuccess");
player.SetData("isLoggedIn", true);
player.SetData("spec", true);
player.SetData("duty", false);
var userBankAccount = loginUser.UserBankAccounts.SingleOrDefault(u => u.UserId == user.Id);
userBankAccount.Balance = userBankAccount.Balance;
if (user.Dead == true)
{
if (user.IsAdmin(AdminLevel.ADMIN) == true)
@@ -65,12 +67,7 @@ namespace reallife_gamemode.Server.Events
else
{
player.SetData("isDead", false);
}
var userBankAccount = loginUser.UserBankAccounts.SingleOrDefault(u => u.UserId == user.Id);
userBankAccount.Balance = userBankAccount.Balance;
player.TriggerEvent("draw", player.Name, player.Handle.Value);
}
if (user.Dead == true)
{
//player.TriggerEvent("startDeathTimer");
@@ -82,6 +79,21 @@ namespace reallife_gamemode.Server.Events
{
player.SetData("isDead", false);
}
if (user.CharacterId == null)
{
var currentPlayerCreatorDimension = (uint) NAPI.Data.GetWorldData("playerCreatorDimension");
currentPlayerCreatorDimension++;
NAPI.Data.SetWorldData("playerCreatorDimension", currentPlayerCreatorDimension);
player.Dimension = NAPI.Data.GetWorldData("playerCreatorDimension");
player.Position = new Vector3(402.8664, -996.4108, -99.00027);
player.TriggerEvent("toggleCreator");
}
else
{
CharacterCreator.ApplyCharacter(player);
NAPI.Player.SpawnPlayer(player, new Vector3(user.PositionX, user.PositionY, user.PositionZ), 0);
player.TriggerEvent("draw", player.Name, player.Handle.Value);
}
}
}
}