Entonces, soy bastante nuevo en Unity y C#, y estoy tratando de crear un sistema en el que pueda adjuntar una secuencia de comandos a un objeto en Unity y luego asignar una determinada secuencia de comandos a este objeto, de modo que cuando el jugador interactúe con él, llamar a un guión. asi que...
Aquí es donde necesito poder poner un script:
y
esto es lo que tengo actualmente:
No es exactamente lo que quiere (creo que lo que quiere es una mala práctica o inalcanzable), pero puede obtener la misma funcionalidad siguiendo los siguientes pasos,
Primero, debe crear un prefabricado que se adjunte a su secuencia de comandos. Aquí hay un pequeño tutorial para eso. Entonces puedes usar el siguiente código.
public GameObject myPrefab; // This script will simply instantiate the Prefab when the game starts. void Update() { if(Input.GetKeyDown("f")){ // Instantiate at position (0, 0, 0) and zero rotation. Instantiate(myPrefab, new Vector3(0, 0, 0), Quaternion.identity); } }
Cree una clase de acción o una interfaz derivada de Monobehaviour.
public abstract class Action : Monobehaviour { public virtual void executeAction(); ...
Y luego crea acciones reales derivadas de esa base abstracta:
public class DestructionAction : Action { public override void executeAction() { // the actual action code } ...
De esa manera, puedes crear muchas acciones diferentes. Su secuencia de comandos "Código de interacción" necesita una ranura de tipo "Acción" (la clase base abstracta).
Obtén más información sobre la anulación aquí: https://learn.unity.com/tutorial/overriding#5c893d46edbc2a0d28f48954