From 7cafc4d66bcaf1fcbf1fd74724dbe2bf5af153b1 Mon Sep 17 00:00:00 2001 From: VegaZ Date: Mon, 17 Sep 2018 18:57:49 +0200 Subject: [PATCH] Add DbContext, Models --- Model/DatabaseContext.cs | 40 ++++++++++++++++++++++++++++++++++++ Model/Efmigrationshistory.cs | 11 ++++++++++ Model/appsettings.json | 5 +++++ Server/Commands/Admin.cs | 16 +++++++++++++++ Server/Entities/Character.cs | 16 +++++++++++++++ Server/Entities/User.cs | 26 +++++++++++++++++++++++ Server/Events/Spawn.cs | 20 ++++++++++++++++++ 7 files changed, 134 insertions(+) create mode 100644 Model/DatabaseContext.cs create mode 100644 Model/Efmigrationshistory.cs create mode 100644 Model/appsettings.json create mode 100644 Server/Commands/Admin.cs create mode 100644 Server/Entities/Character.cs create mode 100644 Server/Entities/User.cs create mode 100644 Server/Events/Spawn.cs diff --git a/Model/DatabaseContext.cs b/Model/DatabaseContext.cs new file mode 100644 index 00000000..07cc415e --- /dev/null +++ b/Model/DatabaseContext.cs @@ -0,0 +1,40 @@ +/** + * @overview Life of German Reallife - DatabaseContext.cs + * @author VegaZ + * @copyright (c) 2008 - 2018 Life of German + */ + +using System; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; +using Microsoft.EntityFrameworkCore; +using Microsoft.EntityFrameworkCore.Metadata; + +namespace reallife_gamemode.Model +{ + public partial class DatabaseContext : DbContext + { + public DatabaseContext(DbContextOptions options) :base (options) + { + + } + + public DatabaseContext() + { + } + + protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder) + { + base.OnConfiguring(optionsBuilder); + optionsBuilder.UseMySql("Host=localhost;Port=3306;Database=gtav-devdb;Username=gtav-dev;Password=Test123"); + } + + protected override void OnModelCreating(ModelBuilder modelBuilder) + { + base.OnModelCreating(modelBuilder); + } + + public DbSet Users { get; set; } + public DbSet Characters { get; set; } + } +} diff --git a/Model/Efmigrationshistory.cs b/Model/Efmigrationshistory.cs new file mode 100644 index 00000000..b5c0d6c0 --- /dev/null +++ b/Model/Efmigrationshistory.cs @@ -0,0 +1,11 @@ +using System; +using System.Collections.Generic; + +namespace reallife_gamemode.Model +{ + public partial class Efmigrationshistory + { + public string MigrationId { get; set; } + public string ProductVersion { get; set; } + } +} diff --git a/Model/appsettings.json b/Model/appsettings.json new file mode 100644 index 00000000..4aead65c --- /dev/null +++ b/Model/appsettings.json @@ -0,0 +1,5 @@ +{ + "ConnectionStrings": { + "gtavDatabase": "Host=localhost;Port=3306;Database=gtav-devdb;Username=gtav-dev;Password=JZi(k0HpKZ9MSDc9Ifrvh>qm>WbMTC!MQ]uAG08PN!fzG1elmDAJqU8VC<6c{eOsEChzxy8Yn<6W{MIG;" + } +} \ No newline at end of file diff --git a/Server/Commands/Admin.cs b/Server/Commands/Admin.cs new file mode 100644 index 00000000..b0af4954 --- /dev/null +++ b/Server/Commands/Admin.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text; +using GTANetworkAPI; + +namespace reallife_gamemode.Server.Command +{ + public class Admin : Script + { + [Command("o")] + public void sendOChat(Client player, string message) + { + NAPI.Chat.SendChatMessageToAll("~r~" + player.Name + " sagt:~w~ " + message); + } + } +} diff --git a/Server/Entities/Character.cs b/Server/Entities/Character.cs new file mode 100644 index 00000000..f5dd13f3 --- /dev/null +++ b/Server/Entities/Character.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.Text; + +namespace reallife_gamemode.Server.Entities +{ + public class Character + { + [Key] + public int Id { get; set; } + public int UserId { get; set; } + public string Name { get; set; } + public byte Gender { get; set; } + } +} diff --git a/Server/Entities/User.cs b/Server/Entities/User.cs new file mode 100644 index 00000000..2cea4e39 --- /dev/null +++ b/Server/Entities/User.cs @@ -0,0 +1,26 @@ +using System; +using System.Collections.Generic; +using System.ComponentModel.DataAnnotations; +using System.ComponentModel.DataAnnotations.Schema; +using System.Text; + +namespace reallife_gamemode.Server.Entities +{ + public class User + { + [Key] + [DatabaseGenerated(DatabaseGeneratedOption.Identity)] + public int Id { get; set; } + [StringLength(32)] + public string Name { get; set; } + [StringLength(32)] + public string SocialClubName { get; set; } + [StringLength(64)] + public string Password { get; set; } + public int LogUserId { get; set; } + public DateTime RegistrationDate { get; set; } + [EmailAddress] + [StringLength(64)] + public string Email { get; set; } + } +} diff --git a/Server/Events/Spawn.cs b/Server/Events/Spawn.cs new file mode 100644 index 00000000..bffa16c7 --- /dev/null +++ b/Server/Events/Spawn.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using GTANetworkAPI; +using GTANetworkMethods; +using reallife_gamemode.Model; + +namespace reallife_gamemode.Server.Event +{ + public class Spawn : Script + { + + [ServerEvent(GTANetworkAPI.Event.PlayerSpawn)] + public void OnPlayerSpawn(Client player) + { + NAPI.Chat.SendChatMessageToPlayer(player, "~b~Du wurdest gespawnt."); + } + } +}