game-dev #8
30
godot/AttributeBox.cs
Normal file
30
godot/AttributeBox.cs
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
using Godot;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
public partial class AttributeBox : SpinBox
|
||||||
|
{
|
||||||
|
// Called when the node enters the scene tree for the first time.
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
// Called every frame. 'delta' is the elapsed time since the previous frame.
|
||||||
|
public override void _Process(double delta)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void _ValueChanged(double new_value)
|
||||||
|
{
|
||||||
|
nuint Strength = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Strength/SpinBox").Value;
|
||||||
|
nuint Perception = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Perception/SpinBox").Value;
|
||||||
|
nuint Endurance = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Endurance/SpinBox").Value;
|
||||||
|
nuint Charisma = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Charisma/SpinBox").Value;
|
||||||
|
nuint Intelligence = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Intelligence/SpinBox").Value;
|
||||||
|
nuint Agility = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Agility/SpinBox").Value;
|
||||||
|
nuint Luck = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Luck/SpinBox").Value;
|
||||||
|
string Name = GetTree().Root.GetNode<TextEdit>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Name/NameEdit").Text;
|
||||||
|
Player player = new Player{Name = Name, Strength = Strength, Perception = Perception, Endurance = Endurance, Charisma = Charisma, Intelligence = Intelligence, Agility = Agility, Luck = Luck};
|
||||||
|
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/MainMenu/MainMenuCanvas/VBoxContainer/PointsLeft").Text = String.Format("Attribute Points Left: {0}", 35-player.StatSum());
|
||||||
|
}
|
||||||
|
}
|
@ -4,4 +4,7 @@
|
|||||||
<EnableDynamicLoading>true</EnableDynamicLoading>
|
<EnableDynamicLoading>true</EnableDynamicLoading>
|
||||||
<RootNamespace>GodofAI</RootNamespace>
|
<RootNamespace>GodofAI</RootNamespace>
|
||||||
</PropertyGroup>
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||||
|
</ItemGroup>
|
||||||
</Project>
|
</Project>
|
@ -1,6 +1,6 @@
|
|||||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
# Visual Studio 2012
|
# Visual Studio 2012
|
||||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "God of AI", "God of AI.csproj", "{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}"
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "God of AI", "God of AI.csproj", "{9F042379-873C-42A6-B544-C877BAB3A96D}"
|
||||||
EndProject
|
EndProject
|
||||||
Global
|
Global
|
||||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
@ -9,11 +9,11 @@ Global
|
|||||||
ExportRelease|Any CPU = ExportRelease|Any CPU
|
ExportRelease|Any CPU = ExportRelease|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.ExportDebug|Any CPU.ActiveCfg = ExportDebug|Any CPU
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.ExportDebug|Any CPU.Build.0 = ExportDebug|Any CPU
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.ExportRelease|Any CPU.ActiveCfg = ExportRelease|Any CPU
|
||||||
{DE6878AB-07CF-4EBE-8489-F3CFBFE1694C}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
|
{9F042379-873C-42A6-B544-C877BAB3A96D}.ExportRelease|Any CPU.Build.0 = ExportRelease|Any CPU
|
||||||
EndGlobalSection
|
EndGlobalSection
|
||||||
EndGlobal
|
EndGlobal
|
||||||
|
BIN
godot/GodofAi.jpg
Normal file
BIN
godot/GodofAi.jpg
Normal file
Binary file not shown.
After Width: | Height: | Size: 50 KiB |
34
godot/GodofAi.jpg.import
Normal file
34
godot/GodofAi.jpg.import
Normal file
@ -0,0 +1,34 @@
|
|||||||
|
[remap]
|
||||||
|
|
||||||
|
importer="texture"
|
||||||
|
type="CompressedTexture2D"
|
||||||
|
uid="uid://vn2ficr8n4n5"
|
||||||
|
path="res://.godot/imported/GodofAi.jpg-def59ddc939d56f01f5cd6cd7522f115.ctex"
|
||||||
|
metadata={
|
||||||
|
"vram_texture": false
|
||||||
|
}
|
||||||
|
|
||||||
|
[deps]
|
||||||
|
|
||||||
|
source_file="res://GodofAi.jpg"
|
||||||
|
dest_files=["res://.godot/imported/GodofAi.jpg-def59ddc939d56f01f5cd6cd7522f115.ctex"]
|
||||||
|
|
||||||
|
[params]
|
||||||
|
|
||||||
|
compress/mode=0
|
||||||
|
compress/high_quality=false
|
||||||
|
compress/lossy_quality=0.7
|
||||||
|
compress/hdr_compression=1
|
||||||
|
compress/normal_map=0
|
||||||
|
compress/channel_pack=0
|
||||||
|
mipmaps/generate=false
|
||||||
|
mipmaps/limit=-1
|
||||||
|
roughness/mode=0
|
||||||
|
roughness/src_normal=""
|
||||||
|
process/fix_alpha_border=true
|
||||||
|
process/premult_alpha=false
|
||||||
|
process/normal_map_invert_y=false
|
||||||
|
process/hdr_as_srgb=false
|
||||||
|
process/hdr_clamp_exposure=false
|
||||||
|
process/size_limit=0
|
||||||
|
detect_3d/compress_to=1
|
36
godot/LLMApiRequests.cs
Normal file
36
godot/LLMApiRequests.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using Godot;
|
||||||
|
using System;
|
||||||
|
|
||||||
|
public partial class LLMApiRequests : HttpRequest
|
||||||
|
{
|
||||||
|
public record AnswerRequest(
|
||||||
|
Message[] Context,
|
||||||
|
string Prompt
|
||||||
|
);
|
||||||
|
|
||||||
|
public record Message(
|
||||||
|
string Role,
|
||||||
|
string? Content
|
||||||
|
);
|
||||||
|
|
||||||
|
private bool PostToApiIsSet = false;
|
||||||
|
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
SetProcess(false);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void PostToApi(Action<long, long, string[], byte[]> action)
|
||||||
|
{
|
||||||
|
if(!PostToApiIsSet)
|
||||||
|
{
|
||||||
|
RequestCompleted += (long result, long responseCode, string[] headers, byte[] body) => action(result, responseCode, headers, body);
|
||||||
|
PostToApiIsSet = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
var answerRequest = new AnswerRequest(new[] { new Message("user", "Hello!"), }, "aodneris");
|
||||||
|
|
||||||
|
|
||||||
|
Request($"http://localhost:5246/LLM/Test", new[] { "Content-Type: application/json" }, HttpClient.Method.Get, Newtonsoft.Json.JsonConvert.SerializeObject(answerRequest));
|
||||||
|
}
|
||||||
|
}
|
@ -1,11 +1,14 @@
|
|||||||
using Godot;
|
using Godot;
|
||||||
using System;
|
using System;
|
||||||
|
|
||||||
public partial class TextEdit : Godot.TextEdit
|
public partial class MainMenu : Node2D
|
||||||
{
|
{
|
||||||
// Called when the node enters the scene tree for the first time.
|
// Called when the node enters the scene tree for the first time.
|
||||||
public override void _Ready()
|
public override void _Ready()
|
||||||
{
|
{
|
||||||
|
var node = this.GetTree().Root.GetNode<CanvasLayer>("Root/Ingame/IngameCanvas");
|
||||||
|
node.SetProcess(false);
|
||||||
|
node.Hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
// Called every frame. 'delta' is the elapsed time since the previous frame.
|
// Called every frame. 'delta' is the elapsed time since the previous frame.
|
56
godot/Playbutton.cs
Normal file
56
godot/Playbutton.cs
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
using Godot;
|
||||||
|
using System;
|
||||||
|
using System.Net.Cache;
|
||||||
|
|
||||||
|
public partial class Playbutton : Button
|
||||||
|
{
|
||||||
|
private LLMApiRequests llmApiRequests;
|
||||||
|
|
||||||
|
// Called when the node enters the scene tree for the first time.
|
||||||
|
public override void _Ready()
|
||||||
|
{
|
||||||
|
SetProcess(false);
|
||||||
|
llmApiRequests = GetNode<LLMApiRequests>("/root/LLMApiRequests");
|
||||||
|
}
|
||||||
|
|
||||||
|
public override void _Pressed()
|
||||||
|
{
|
||||||
|
nuint Strength = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Strength/SpinBox").Value;
|
||||||
|
nuint Perception = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Perception/SpinBox").Value;
|
||||||
|
nuint Endurance = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Endurance/SpinBox").Value;
|
||||||
|
nuint Charisma = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Charisma/SpinBox").Value;
|
||||||
|
nuint Intelligence = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Intelligence/SpinBox").Value;
|
||||||
|
nuint Agility = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Agility/SpinBox").Value;
|
||||||
|
nuint Luck = (nuint) GetTree().Root.GetNode<SpinBox>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Luck/SpinBox").Value;
|
||||||
|
string Name = GetTree().Root.GetNode<TextEdit>("Root/MainMenu/MainMenuCanvas/VBoxContainer/Name/NameEdit").Text;
|
||||||
|
Player player = new Player{Name = Name, Strength = Strength, Perception = Perception, Endurance = Endurance, Charisma = Charisma, Intelligence = Intelligence, Agility = Agility, Luck = Luck};
|
||||||
|
|
||||||
|
if (player.isValid())
|
||||||
|
{
|
||||||
|
llmApiRequests?.PostToApi(OnRequestCompleted);
|
||||||
|
|
||||||
|
var node = this.GetTree().Root.GetNode<CanvasLayer>("Root/Ingame/IngameCanvas");
|
||||||
|
node.SetProcess(true);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Strength").Text = String.Format("Strength: {0}", Strength);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Perception").Text = String.Format("Perception: {0}", Perception);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Endurance").Text = String.Format("Endurance: {0}", Endurance);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Charisma").Text = String.Format("Charisma: {0}", Charisma);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Intelligence").Text = String.Format("Intelligence: {0}", Intelligence);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Agility").Text = String.Format("Agility: {0}", Agility);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Luck").Text = String.Format("Luck: {0}", Luck);
|
||||||
|
GetTree().Root.GetNode<TextEdit>("Root/Ingame/IngameCanvas/Stats/Name").Text = String.Format("Name: {0}", Name);
|
||||||
|
|
||||||
|
node.Show();
|
||||||
|
var GParent = this.GetTree().Root.GetNode<CanvasLayer>("Root/MainMenu/MainMenuCanvas");
|
||||||
|
GParent.Hide();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private void OnRequestCompleted(long result, long responseCode, string[] headers, byte[] body)
|
||||||
|
{
|
||||||
|
// Godot.Collections.Dictionary json = Json.ParseString(System.Text.Encoding.UTF8.GetString(body)).AsGodotDictionary();
|
||||||
|
// GD.Print(json["name"]);
|
||||||
|
// GD.Print(Json.ParseString(System.Text.Encoding.UTF8.GetString(body)).AsGodotDictionary());
|
||||||
|
GD.Print(System.Text.Encoding.UTF8.GetString(body));
|
||||||
|
}
|
||||||
|
}
|
36
godot/Player.cs
Normal file
36
godot/Player.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
public record Player
|
||||||
|
{
|
||||||
|
public string Name { get; init; }
|
||||||
|
public nuint Strength { get; init; }
|
||||||
|
public nuint Perception { get; init; }
|
||||||
|
public nuint Endurance { get; init; }
|
||||||
|
public nuint Charisma { get; init; }
|
||||||
|
public nuint Intelligence { get; init; }
|
||||||
|
public nuint Agility { get; init; }
|
||||||
|
public nuint Luck { get; init; }
|
||||||
|
|
||||||
|
// public Person(string Name, nuint Strength, nuint Perception, nuint Endurance, nuint Charisma, nuint Intelligence, nuint Agility, nuint Luck, )
|
||||||
|
// {
|
||||||
|
// Name
|
||||||
|
//}
|
||||||
|
|
||||||
|
public bool isValid()
|
||||||
|
{
|
||||||
|
return StatSum() <= 35;
|
||||||
|
}
|
||||||
|
|
||||||
|
public nint StatSum()
|
||||||
|
{
|
||||||
|
nuint sum = 0;
|
||||||
|
|
||||||
|
sum += Strength;
|
||||||
|
sum += Perception;
|
||||||
|
sum += Endurance;
|
||||||
|
sum += Charisma;
|
||||||
|
sum += Intelligence;
|
||||||
|
sum += Agility;
|
||||||
|
sum += Luck;
|
||||||
|
|
||||||
|
return (nint) sum;
|
||||||
|
}
|
||||||
|
}
|
4
godot/SPECIAL.tres
Normal file
4
godot/SPECIAL.tres
Normal file
@ -0,0 +1,4 @@
|
|||||||
|
[gd_resource type="Theme" format=3 uid="uid://b16massh2pdbt"]
|
||||||
|
|
||||||
|
[resource]
|
||||||
|
/font_sizes/12 = 20
|
346
godot/UI.tscn
346
godot/UI.tscn
@ -1,14 +1,314 @@
|
|||||||
[gd_scene load_steps=3 format=3 uid="uid://1gar30yhw8ay"]
|
[gd_scene load_steps=7 format=3 uid="uid://1gar30yhw8ay"]
|
||||||
|
|
||||||
[ext_resource type="Script" path="res://TextEdit.cs" id="1_5gfrp"]
|
[ext_resource type="Script" path="res://MainMenu.cs" id="1_m0gay"]
|
||||||
|
[ext_resource type="Texture2D" uid="uid://vn2ficr8n4n5" path="res://GodofAi.jpg" id="2_m684j"]
|
||||||
|
[ext_resource type="Script" path="res://AttributeBox.cs" id="3_hpms0"]
|
||||||
|
[ext_resource type="Script" path="res://Playbutton.cs" id="3_ucfae"]
|
||||||
|
[ext_resource type="Script" path="res://LLMApiRequests.cs" id="4_ff2gi"]
|
||||||
|
|
||||||
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ncw85"]
|
[sub_resource type="CompressedTexture2D" id="CompressedTexture2D_ncw85"]
|
||||||
|
|
||||||
[node name="Node2D" type="Node2D"]
|
[node name="Root" type="Node2D"]
|
||||||
|
|
||||||
[node name="Ingame" type="CanvasLayer" parent="."]
|
[node name="MainMenu" type="Node2D" parent="."]
|
||||||
|
position = Vector2(320, 20)
|
||||||
|
script = ExtResource("1_m0gay")
|
||||||
|
|
||||||
[node name="Eingabe" type="VBoxContainer" parent="Ingame"]
|
[node name="MainMenuCanvas" type="CanvasLayer" parent="MainMenu"]
|
||||||
|
|
||||||
|
[node name="VBoxContainer" type="VBoxContainer" parent="MainMenu/MainMenuCanvas"]
|
||||||
|
anchors_preset = 8
|
||||||
|
anchor_left = 0.5
|
||||||
|
anchor_top = 0.5
|
||||||
|
anchor_right = 0.5
|
||||||
|
anchor_bottom = 0.5
|
||||||
|
offset_left = -640.0
|
||||||
|
offset_top = -520.0
|
||||||
|
offset_right = 640.0
|
||||||
|
offset_bottom = 520.0
|
||||||
|
grow_horizontal = 2
|
||||||
|
grow_vertical = 2
|
||||||
|
size_flags_horizontal = 0
|
||||||
|
|
||||||
|
[node name="Titelbild" type="TextureRect" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(0, 200)
|
||||||
|
layout_mode = 2
|
||||||
|
texture = ExtResource("2_m684j")
|
||||||
|
|
||||||
|
[node name="Pop up Menu Szenen" type="MenuButton" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
text = "Beispielszenen"
|
||||||
|
flat = false
|
||||||
|
icon_alignment = 1
|
||||||
|
switch_on_hover = true
|
||||||
|
item_count = 12
|
||||||
|
popup/item_0/text = "Fantasy"
|
||||||
|
popup/item_0/id = 0
|
||||||
|
popup/item_0/separator = true
|
||||||
|
popup/item_1/text = "Fantasy 1"
|
||||||
|
popup/item_1/id = 1
|
||||||
|
popup/item_2/text = "Fantasy 2"
|
||||||
|
popup/item_2/id = 2
|
||||||
|
popup/item_3/text = "Sci Fi"
|
||||||
|
popup/item_3/id = 3
|
||||||
|
popup/item_3/separator = true
|
||||||
|
popup/item_4/text = "Sci Fi 1"
|
||||||
|
popup/item_4/id = 4
|
||||||
|
popup/item_5/text = "Sci Fi 2"
|
||||||
|
popup/item_5/id = 5
|
||||||
|
popup/item_6/text = "Cyberpunk"
|
||||||
|
popup/item_6/id = 6
|
||||||
|
popup/item_6/separator = true
|
||||||
|
popup/item_7/text = "Cyberpunk 1"
|
||||||
|
popup/item_7/id = 7
|
||||||
|
popup/item_8/text = "Cyberpunk 2"
|
||||||
|
popup/item_8/id = 8
|
||||||
|
popup/item_9/text = "Krimi"
|
||||||
|
popup/item_9/id = 9
|
||||||
|
popup/item_9/separator = true
|
||||||
|
popup/item_10/text = "Krimi 1"
|
||||||
|
popup/item_10/id = 10
|
||||||
|
popup/item_11/text = "Krimi 2"
|
||||||
|
popup/item_11/id = 11
|
||||||
|
|
||||||
|
[node name="TextEdit" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 300)
|
||||||
|
layout_direction = 1
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
placeholder_text = "Enter a custom setting"
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="PointsLeft" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_direction = 1
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
text = "Attribute Points Left: 28"
|
||||||
|
editable = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="Name" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 3
|
||||||
|
|
||||||
|
[node name="NameLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Name"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Character Name:"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="NameEdit" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Name"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
|
||||||
|
[node name="Strength" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="StrengthLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Strength"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Strength"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Strength"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Perception" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="PerceptionLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Perception"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Perception"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Perception"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Endurance" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="EnduranceLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Endurance"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Endurance"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Endurance"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Charisma" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="CharismaLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Charisma"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Charisma"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Charisma"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Intelligence" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="CharismaLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Intelligence"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Intelligence"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Intelligence"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Agility" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="AgilityLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Agility"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Agillity"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Agility"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Luck" type="HBoxContainer" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
custom_minimum_size = Vector2(520, 50)
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 2
|
||||||
|
|
||||||
|
[node name="LuckLabel" type="TextEdit" parent="MainMenu/MainMenuCanvas/VBoxContainer/Luck"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 3
|
||||||
|
text = "Luck"
|
||||||
|
editable = false
|
||||||
|
context_menu_enabled = false
|
||||||
|
shortcut_keys_enabled = false
|
||||||
|
selecting_enabled = false
|
||||||
|
deselect_on_focus_loss_enabled = false
|
||||||
|
drag_and_drop_selection_enabled = false
|
||||||
|
virtual_keyboard_enabled = false
|
||||||
|
middle_mouse_paste_enabled = false
|
||||||
|
|
||||||
|
[node name="SpinBox" type="SpinBox" parent="MainMenu/MainMenuCanvas/VBoxContainer/Luck"]
|
||||||
|
layout_mode = 2
|
||||||
|
min_value = 1.0
|
||||||
|
max_value = 10.0
|
||||||
|
value = 1.0
|
||||||
|
script = ExtResource("3_hpms0")
|
||||||
|
|
||||||
|
[node name="Playbutton" type="Button" parent="MainMenu/MainMenuCanvas/VBoxContainer"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_horizontal = 4
|
||||||
|
size_flags_vertical = 3
|
||||||
|
text = " PLAY "
|
||||||
|
script = ExtResource("3_ucfae")
|
||||||
|
|
||||||
|
[node name="Ingame" type="Node2D" parent="."]
|
||||||
|
|
||||||
|
[node name="IngameCanvas" type="CanvasLayer" parent="Ingame"]
|
||||||
|
|
||||||
|
[node name="Eingabe" type="VBoxContainer" parent="Ingame/IngameCanvas"]
|
||||||
anchors_preset = 12
|
anchors_preset = 12
|
||||||
anchor_top = 1.0
|
anchor_top = 1.0
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
@ -19,12 +319,11 @@ grow_horizontal = 2
|
|||||||
grow_vertical = 0
|
grow_vertical = 0
|
||||||
size_flags_vertical = 0
|
size_flags_vertical = 0
|
||||||
|
|
||||||
[node name="TextEdit" type="TextEdit" parent="Ingame/Eingabe"]
|
[node name="TextEdit" type="TextEdit" parent="Ingame/IngameCanvas/Eingabe"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
script = ExtResource("1_5gfrp")
|
|
||||||
|
|
||||||
[node name="Story" type="VBoxContainer" parent="Ingame"]
|
[node name="Story" type="VBoxContainer" parent="Ingame/IngameCanvas"]
|
||||||
anchors_preset = 11
|
anchors_preset = 11
|
||||||
anchor_left = 1.0
|
anchor_left = 1.0
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
@ -34,7 +333,7 @@ grow_horizontal = 0
|
|||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
size_flags_horizontal = 8
|
size_flags_horizontal = 8
|
||||||
|
|
||||||
[node name="TextEdit" type="TextEdit" parent="Ingame/Story"]
|
[node name="TextEdit" type="TextEdit" parent="Ingame/IngameCanvas/Story"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
placeholder_text = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
placeholder_text = "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
|
||||||
@ -42,7 +341,7 @@ editable = false
|
|||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
wrap_mode = 1
|
wrap_mode = 1
|
||||||
|
|
||||||
[node name="Stats" type="VBoxContainer" parent="Ingame"]
|
[node name="Stats" type="VBoxContainer" parent="Ingame/IngameCanvas"]
|
||||||
anchors_preset = 15
|
anchors_preset = 15
|
||||||
anchor_right = 1.0
|
anchor_right = 1.0
|
||||||
anchor_bottom = 1.0
|
anchor_bottom = 1.0
|
||||||
@ -52,7 +351,13 @@ offset_bottom = -360.0
|
|||||||
grow_horizontal = 2
|
grow_horizontal = 2
|
||||||
grow_vertical = 2
|
grow_vertical = 2
|
||||||
|
|
||||||
[node name="TextEdit" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Name" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
|
layout_mode = 2
|
||||||
|
size_flags_vertical = 3
|
||||||
|
editable = false
|
||||||
|
wrap_mode = 1
|
||||||
|
|
||||||
|
[node name="Strength" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
placeholder_text = "SampleStat = 1
|
placeholder_text = "SampleStat = 1
|
||||||
@ -60,49 +365,50 @@ placeholder_text = "SampleStat = 1
|
|||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit2" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Perception" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit3" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Endurance" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit4" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Charisma" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit5" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Intelligence" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit6" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Agility" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="TextEdit7" type="TextEdit" parent="Ingame/Stats"]
|
[node name="Luck" type="TextEdit" parent="Ingame/IngameCanvas/Stats"]
|
||||||
layout_mode = 2
|
layout_mode = 2
|
||||||
size_flags_vertical = 3
|
size_flags_vertical = 3
|
||||||
editable = false
|
editable = false
|
||||||
context_menu_enabled = false
|
context_menu_enabled = false
|
||||||
|
|
||||||
[node name="Szenerie" type="TextureRect" parent="."]
|
[node name="Szenerie" type="TextureRect" parent="Ingame/IngameCanvas"]
|
||||||
offset_left = -3.0
|
offset_left = -3.0
|
||||||
offset_top = -1.0
|
offset_top = -1.0
|
||||||
offset_right = 1277.0
|
offset_right = 1277.0
|
||||||
offset_bottom = 719.0
|
offset_bottom = 719.0
|
||||||
focus_neighbor_left = NodePath("../Ingame/Stats")
|
|
||||||
focus_neighbor_bottom = NodePath("../Ingame/Eingabe")
|
|
||||||
texture = SubResource("CompressedTexture2D_ncw85")
|
texture = SubResource("CompressedTexture2D_ncw85")
|
||||||
expand_mode = 1
|
expand_mode = 1
|
||||||
stretch_mode = 1
|
stretch_mode = 1
|
||||||
|
|
||||||
|
[node name="LLMApiRequests" type="HTTPRequest" parent="."]
|
||||||
|
script = ExtResource("4_ff2gi")
|
||||||
|
@ -2,7 +2,7 @@
|
|||||||
|
|
||||||
importer="texture"
|
importer="texture"
|
||||||
type="CompressedTexture2D"
|
type="CompressedTexture2D"
|
||||||
uid="uid://c5xk7a15wrsip"
|
uid="uid://dp2wwugsa03q"
|
||||||
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
path="res://.godot/imported/icon.svg-218a8f2b3041327d8a5756f3a245f83b.ctex"
|
||||||
metadata={
|
metadata={
|
||||||
"vram_texture": false
|
"vram_texture": false
|
||||||
|
Reference in New Issue
Block a user