randomize dialog json array if given

This commit is contained in:
2022-11-30 00:31:02 +01:00
parent 078695b02d
commit f0bf7b1966

View File

@@ -1,10 +1,13 @@
using Godot;
using Godot.Collections;
using System;
public partial class dialog_trigger_area : Area2D
{
[Export(PropertyHint.File, "*json")]
string dialogFile;
public string currentKey = "randomWelcomeText";
public override void _Ready()
{
using var file = FileAccess.Open(dialogFile, FileAccess.ModeFlags.Read);
@@ -12,8 +15,15 @@ public partial class dialog_trigger_area : Area2D
var jsonFile = JSON.ParseString(text);
Dictionary allDialog = (Dictionary)jsonFile;
GD.Print(allDialog["randomWelcomeText"]);
try
{
string[] dialogPart = allDialog[currentKey].AsStringArray();
GD.Print(dialogPart[GD.Randi() % dialogPart.Length]);
}
catch
{
GD.Print(allDialog[currentKey]);
}
}
}