Jump to content
Unity Insider Forum

Funktionen und mehr via Configs Laden und ausführen.


Tarantel

Recommended Posts

Moinsen

Ich wollte wissen ob es möglich ist in Unity komplette Skripte oder nur Teile aus einer Text Datei zuladen und zunutzen ?

Beispiel:

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using SharpConfig;
using UnityEngine.UI;
using System.IO;

public class Example : MonoBehaviour {
  
  public string testf;
  public string examplepath = "example/example.cfg";
  
   void Start () {
        //bloß etwas von Sharpconfig um bestimmte dinge zu laden und zu speichern.
     var config = Configuration.LoadFromFile(examplepath);
        var section = config["Example"];
     string examplestring = section["ExampleString"].StringValue;
     testf = examplestring;
    }
  
}
Inhalt der example.cfg:
[Example]
ExampleString = Debug.Log("Bratwurst");
//ENDE

Nun möchte ich wissen ob ich dieses Debug.Log im script ausführen kann obwohl ich es nur via Textfile oder so lade.

Hat alles mit Custom Mods usw zutun für später.

Und wenn jetzt jeder damit ankommt das dies extrem unsicher ist, derjenige kann es für sich behalten da jeder der etwas Ahnung von Unity Files hat jedes Skript vom Game so oder so einsehen und bearbeiten kann.

Wäre nice wenn mir jemand hier weiterhelfen könnte ^^
So könnte ich auch für kommende Updates und via MasterServer paar neue Sachen in den Client usw einspeisen.

Link zu diesem Kommentar
Auf anderen Seiten teilen

vor 12 Stunden schrieb thewhiteshadow:

Das was du womöglich suchst sind ScriptableObject's

Moin ^^
Nein leider nicht sry ^^
Ich rede davon einzelne Zeilen oder gar ganze Skripte außerhalb von Unity zulagern und sie zunutzen.
Ich könnte das jetzt einfach lösen wenn ich das Lua API einbaue was ohne Probleme Lua Code außerhalb des Kompilierten Spiels lädt.
Jedoch will ich C# Code verwenden welcher auch ohne API außerhalb von Unity lesbar sein muss.

Beispiel:
 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using SharpConfig;
using UnityEngine.UI;
using System.IO;

public class Example : MonoBehaviour {
 
  void Update ()
  {
    Lade.Meinen.Code;
  }
}
//Textdatei
[Lade] 
Mein.Code = Debug.Log("Mein Code");

 

Link zu diesem Kommentar
Auf anderen Seiten teilen

Archiviert

Dieses Thema ist jetzt archiviert und für weitere Antworten gesperrt.

×
×
  • Neu erstellen...