Archived
Private
Public Access
1
0

Update 07.12.2022

This commit is contained in:
2022-12-07 15:35:41 +01:00
parent 771f58073f
commit 840d7ad42f
288 changed files with 148948 additions and 4346 deletions

View File

@@ -0,0 +1,13 @@
# Default ignored files
/shelf/
/workspace.xml
# Rider ignored files
/contentModel.xml
/modules.xml
/projectSettingsUpdater.xml
/.idea.Framework.iml
# Editor-based HTTP Client requests
/httpRequests/
# Datasource local storage ignored files
/dataSources/
/dataSources.local.xml

View File

@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="DiscordProjectSettings">
<option name="show" value="PROJECT_FILES" />
<option name="description" value="" />
</component>
</project>

View File

@@ -0,0 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="Encoding" addBOMForNewFiles="with BOM under Windows, with no BOM otherwise">
<file url="file://$PROJECT_DIR$/Framework.Shared/fxmanifest.lua" charset="US-ASCII" />
</component>
</project>

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -0,0 +1,20 @@
fx_version 'cerulean'
games { 'gta5' }
author 'Leon hoppe <leon@ladenbau-hoppe.de>'
description 'FiveM Framework in C#'
version '1.0.0'
files {
'NativeUI.dll',
'MySql.Data.dll',
'Framework.Shared.dll'
}
client_scripts {
'Framework.Client.net.dll'
}
server_scripts {
'Framework.Server.net.dll'
}

Binary file not shown.

View File

@@ -0,0 +1,28 @@
#pragma warning disable CS1998
using System;
using CitizenFX.Core;
using Framework.Client.Handler;
using NativeUI;
namespace Framework.Client {
public class Client : ClientScript {
public static Client Instance;
public static MenuPool Menus;
public Client() {
Instance = this;
Menus = new MenuPool();
JoinHandler.Init();
EventHandlers["client:spawn:register"] += new Action(JoinHandler.Register);
EventHandlers["client:spawn:choose"] += new Action<dynamic[]>(JoinHandler.ChooseChar);
Tick += async () => {
Menus.ProcessMenus();
};
}
}
}

View File

@@ -0,0 +1,74 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{4E52F164-32BF-40C6-978E-E91BB595C5B6}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Framework.Client</RootNamespace>
<AssemblyName>Framework.Client.net</AssemblyName>
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>x64</PlatformTarget>
<DebugType>embedded</DebugType>
<Optimize>true</Optimize>
<OutputPath>../Build</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>del Newtonsoft.Json.xml</PostBuildEvent>
</PropertyGroup>
<ItemGroup>
<Reference Include="CitizenFX.Core.Client, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\CitizenFX.Core.Client.1.0.6086\lib\net45\CitizenFX.Core.Client.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="NativeUI">
<HintPath>..\Librarys\NativeUI.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Client.cs" />
<Compile Include="Handler\JoinHandler.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Utils\UI.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Framework.Shared\Framework.Shared.csproj">
<Project>{7130f249-1c23-438c-a077-76a2867f8c5e}</Project>
<Name>Framework.Shared</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View 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");
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Framework.Client")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Framework.Client")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("4E52F164-32BF-40C6-978E-E91BB595C5B6")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,27 @@
using System.Threading.Tasks;
using CitizenFX.Core;
using CitizenFX.Core.Native;
namespace Framework.Client.Utils {
public static class UI {
public static async Task<string> DisplayTextInput(string title, int maxLength) {
API.AddTextEntry("CH_INPUT", title);
API.DisplayOnscreenKeyboard(1, "CH_INPUT", "", "", "", "", "", maxLength);
while (API.UpdateOnscreenKeyboard() == 0) {
await BaseScript.Delay(0);
}
if (API.UpdateOnscreenKeyboard() != 2) {
var result = API.GetOnscreenKeyboardResult();
await BaseScript.Delay(0);
return result;
}
await BaseScript.Delay(0);
return null;
}
}
}

View File

@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")]

View File

@@ -0,0 +1 @@
34591d24053ea89eea29dc22e89a3ebad14609bf

View File

@@ -0,0 +1,7 @@
D:\Programmierstuff\C#\FiveM\Framework\Framework.Client\obj\Release\Framework.Client.csproj.AssemblyReference.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Client\obj\Release\Framework.Client.csproj.CoreCompileInputs.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Client\obj\Release\Framework.Client.csproj.CopyComplete
D:\Programmierstuff\C#\FiveM\Framework\Build\fxmanifest.lua
D:\Programmierstuff\C#\FiveM\Framework\Build\stream\NativeUI.ytd
D:\Programmierstuff\C#\FiveM\Framework\Build\Framework.Client.net.dll
D:\Programmierstuff\C#\FiveM\Framework\Framework.Client\obj\Release\Framework.Client.net.dll

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="CitizenFX.Core.Client" version="1.0.6086" targetFramework="net481" />
</packages>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="utf-8"?><configuration>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>

View File

@@ -0,0 +1,10 @@
using System;
using CitizenFX.Core;
namespace Framework.Server.Extensions {
public static class PlayerExtensions {
public static int ServerId(this Player player) => Convert.ToInt32(player.Handle);
}
}

View File

@@ -0,0 +1,86 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{3B60C431-5ACF-4145-A792-32217A65A445}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Framework.Server</RootNamespace>
<AssemblyName>Framework.Server.net</AssemblyName>
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>x64</PlatformTarget>
<DebugType>embedded</DebugType>
<Optimize>true</Optimize>
<OutputPath>../Build</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>del Framework.Server.net.dll.config</PostBuildEvent>
</PropertyGroup>
<ItemGroup>
<Reference Include="CitizenFX.Core.Server, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\CitizenFX.Core.Server.1.0.6086\lib\net45\CitizenFX.Core.Server.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.CSharp">
<HintPath>..\Librarys\Microsoft.CSharp.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="mscorlib" />
<Reference Include="MySql.Data">
<HintPath>..\Librarys\MySql.Data.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Configuration.Install" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Management" />
<Reference Include="System.Numerics" />
<Reference Include="System.Transactions" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Extensions\PlayerExtensions.cs" />
<Compile Include="Handlers\JoinHandler.cs" />
<Compile Include="MySql.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Server.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.config" />
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Framework.Shared\Framework.Shared.csproj">
<Project>{7130f249-1c23-438c-a077-76a2867f8c5e}</Project>
<Name>Framework.Shared</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -0,0 +1,33 @@
using System;
using CitizenFX.Core;
using CitizenFX.Core.Native;
using Framework.Server.Extensions;
using Framework.Shared.Models;
namespace Framework.Server.Handlers {
public static class JoinHandler {
public static readonly Vector3 Spawn = new Vector3(258.7932f, -942.7487f, 29.3940f);
public static async void OnPlayerJoining([FromSource] Player player) {
API.SetPlayerRoutingBucket(player.Handle, player.ServerId());
API.SetRoutingBucketPopulationEnabled(player.ServerId(), false);
API.SetRoutingBucketEntityLockdownMode(player.ServerId(), "strict");
API.SetPlayerInvincible(player.Handle, true);
var identifier = "steam:" + player.Identifiers["steam"];
var result = await MySql.FetchAll($"SELECT * FROM players WHERE owner = '{identifier}'");
if (result.Length == 0) player.TriggerEvent("client:spawn:register");
else player.TriggerEvent("client:spawn:choose", result);
}
public static async void OnRegister([FromSource] Player player, dynamic dData) {
var data = new PlayerData(dData);
var identifier = "steam:" + player.Identifiers["steam"];
await MySql.Execute($"INSERT INTO players VALUES ('{identifier}', '{Guid.NewGuid()}', {data.sex}, {data.height}, '{data.firstName}', '{data.lastName}', '{data.birth}', '{data.skin}')");
player.Character.Position = Spawn;
}
}
}

View File

@@ -0,0 +1,47 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using MySql.Data.MySqlClient;
namespace Framework.Server {
public static class MySql {
private static MySqlConnection _connection;
public static void Initialize(string connectionString) {
_connection = new MySqlConnection(connectionString);
}
public static async Task Execute(string query) {
await _connection.OpenAsync();
var cmd = new MySqlCommand(query, _connection);
await cmd.ExecuteNonQueryAsync();
await _connection.CloseAsync();
}
public static async Task<dynamic[]> FetchAll(string query) {
await _connection.OpenAsync();
var cmd = new MySqlCommand(query, _connection);
var result = await cmd.ExecuteReaderAsync();
List<dynamic> data = new List<dynamic>();
foreach (var record in result) {
data.Add(record);
}
await _connection.CloseAsync();
return data.ToArray();
}
public static async Task<dynamic> FetchOne(string query) {
var result = await FetchAll(query);
return result[0];
}
public static async void CreateTables(params string[] querys) {
var query = string.Join(";", querys);
await Execute(query);
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Framework.Server")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Framework.Server")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("3B60C431-5ACF-4145-A792-32217A65A445")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,19 @@
using System;
using CitizenFX.Core;
using Framework.Server.Handlers;
namespace Framework.Server {
public class Server : ServerScript {
public Server() {
MySql.Initialize("Server=213.136.89.237;Database=FiveM;Uid=FiveM;Pwd=uTwjt1nGX3nf.LHR;");
MySql.CreateTables(
"CREATE TABLE IF NOT EXISTS players (owner VARCHAR(100), charId VARCHAR(100), sex BOOLEAN, height INT(3), firstName VARCHAR(60), lastName VARCHAR(60), birth VARCHAR(10), skin LONGTEXT)"
);
EventHandlers["playerJoining"] += new Action<Player>(JoinHandler.OnPlayerJoining);
EventHandlers["server:spawn:register"] += new Action<Player, dynamic>(JoinHandler.OnRegister);
}
}
}

View File

@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")]

View File

@@ -0,0 +1 @@
4fed6ec97924c777f9315f8ba3e5430e56649d63

View File

@@ -0,0 +1,8 @@
D:\Programmierstuff\C#\FiveM\Framework\Framework.Server\obj\Release\Framework.Server.csproj.AssemblyReference.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Server\obj\Release\Framework.Server.csproj.CoreCompileInputs.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Server\obj\Release\Framework.Server.csproj.CopyComplete
D:\Programmierstuff\C#\FiveM\Framework\Build\fxmanifest.lua
D:\Programmierstuff\C#\FiveM\Framework\Build\stream\NativeUI.ytd
D:\Programmierstuff\C#\FiveM\Framework\Build\Framework.Server.net.dll
D:\Programmierstuff\C#\FiveM\Framework\Framework.Server\obj\Release\Framework.Server.net.dll
D:\Programmierstuff\C#\FiveM\Framework\Build\Framework.Server.net.dll.config

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="CitizenFX.Core.Server" version="1.0.6086" targetFramework="net481" />
</packages>

View File

@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{7130F249-1C23-438C-A077-76A2867F8C5E}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Framework.Shared</RootNamespace>
<AssemblyName>Framework.Shared</AssemblyName>
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<PlatformTarget>AnyCPU</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<PlatformTarget>x64</PlatformTarget>
<DebugType>embedded</DebugType>
<Optimize>true</Optimize>
<OutputPath>../Build</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<PostBuildEvent>del Newtonsoft.Json.xml</PostBuildEvent>
</PropertyGroup>
<ItemGroup>
<Reference Include="CitizenFX.Core.Client, Version=0.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\CitizenFX.Core.Client.1.0.6086\lib\net45\CitizenFX.Core.Client.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="Microsoft.CSharp">
<HintPath>..\Librarys\Microsoft.CSharp.dll</HintPath>
<Private>False</Private>
</Reference>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="Framework.cs" />
<Compile Include="Models\PlayerData.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Content Include="fxmanifest.lua">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
<Content Include="stream\NativeUI.ytd">
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@@ -0,0 +1,5 @@
namespace Framework.Shared {
public class Framework {
}
}

View File

@@ -0,0 +1,25 @@
namespace Framework.Shared.Models {
public class PlayerData {
public string owner { get; set; }
public string charId { get; set; }
public bool sex { get; set; }
public int height { get; set; }
public string firstName { get; set; }
public string lastName { get; set; }
public string birth { get; set; }
public string skin { get; set; }
public PlayerData() {}
public PlayerData(dynamic data) {
owner = data.owner;
charId = data.charId;
sex = data.sex;
height = data.height;
firstName = data.firstName;
lastName = data.lastName;
birth = data.birth;
skin = data.skin;
}
}
}

View File

@@ -0,0 +1,35 @@
using System.Reflection;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("Framework.Shared")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Framework.Shared")]
[assembly: AssemblyCopyright("Copyright © 2022")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("7130F249-1C23-438C-A077-76A2867F8C5E")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@@ -0,0 +1,20 @@
fx_version 'cerulean'
games { 'gta5' }
author 'Leon hoppe <leon@ladenbau-hoppe.de>'
description 'FiveM Framework in C#'
version '1.0.0'
files {
'NativeUI.dll',
'MySql.Data.dll',
'Framework.Shared.dll'
}
client_scripts {
'Framework.Client.net.dll'
}
server_scripts {
'Framework.Server.net.dll'
}

View File

@@ -0,0 +1,4 @@
// <autogenerated />
using System;
using System.Reflection;
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETFramework,Version=v4.8.1", FrameworkDisplayName = ".NET Framework 4.8.1")]

View File

@@ -0,0 +1 @@
d47f7446bd39259a49dfcc86a02d7c33c1fdcdef

View File

@@ -0,0 +1,7 @@
D:\Programmierstuff\C#\FiveM\Framework\Output\Framework.Shared.dll
D:\Programmierstuff\C#\FiveM\Framework\Framework.Shared\obj\Release\Framework.Shared.csproj.AssemblyReference.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Shared\obj\Release\Framework.Shared.csproj.CoreCompileInputs.cache
D:\Programmierstuff\C#\FiveM\Framework\Framework.Shared\obj\Release\Framework.Shared.dll
D:\Programmierstuff\C#\FiveM\Framework\Build\Framework.Shared.dll
D:\Programmierstuff\C#\FiveM\Framework\Build\fxmanifest.lua
D:\Programmierstuff\C#\FiveM\Framework\Build\stream\NativeUI.ytd

View File

@@ -0,0 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="CitizenFX.Core.Client" version="1.0.6086" targetFramework="net481" />
</packages>

View File

@@ -0,0 +1,28 @@
Microsoft Visual Studio Solution File, Format Version 12.00
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Framework.Server", "Framework.Server\Framework.Server.csproj", "{3B60C431-5ACF-4145-A792-32217A65A445}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Framework.Client", "Framework.Client\Framework.Client.csproj", "{4E52F164-32BF-40C6-978E-E91BB595C5B6}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Framework.Shared", "Framework.Shared\Framework.Shared.csproj", "{7130F249-1C23-438C-A077-76A2867F8C5E}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{3B60C431-5ACF-4145-A792-32217A65A445}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3B60C431-5ACF-4145-A792-32217A65A445}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3B60C431-5ACF-4145-A792-32217A65A445}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3B60C431-5ACF-4145-A792-32217A65A445}.Release|Any CPU.Build.0 = Release|Any CPU
{4E52F164-32BF-40C6-978E-E91BB595C5B6}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{4E52F164-32BF-40C6-978E-E91BB595C5B6}.Debug|Any CPU.Build.0 = Debug|Any CPU
{4E52F164-32BF-40C6-978E-E91BB595C5B6}.Release|Any CPU.ActiveCfg = Release|Any CPU
{4E52F164-32BF-40C6-978E-E91BB595C5B6}.Release|Any CPU.Build.0 = Release|Any CPU
{7130F249-1C23-438C-A077-76A2867F8C5E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{7130F249-1C23-438C-A077-76A2867F8C5E}.Debug|Any CPU.Build.0 = Debug|Any CPU
{7130F249-1C23-438C-A077-76A2867F8C5E}.Release|Any CPU.ActiveCfg = Release|Any CPU
{7130F249-1C23-438C-A077-76A2867F8C5E}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@@ -0,0 +1,6 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=D_003A_005CProgrammierstuff_005CC_0023_005CFiveM_005CFramework_005CLibrarys_005CMicrosoft_002ECSharp_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=D_003A_005CProgrammierstuff_005CC_0023_005CFiveM_005CFramework_005CLibrarys_005CMySql_002EData_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=D_003A_005CProgrammierstuff_005CC_0023_005CFiveM_005CFramework_005CLibrarys_005CNativeUI_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:Boolean x:Key="/Default/AddReferences/RecentPaths/=D_003A_005CProgrammierstuff_005CC_0023_005CFiveM_005CFramework_005CLibrarys_005CNewtonsoft_002EJson_002Edll/@EntryIndexedValue">True</s:Boolean>
<s:String x:Key="/Default/Environment/AssemblyExplorer/XmlDocument/@EntryValue">&lt;AssemblyExplorer /&gt;</s:String></wpf:ResourceDictionary>

Binary file not shown.

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff