Chronotura | Devlog #016


[EN]

Weekly Update:

So, last week I was trying to make a new EventSystem to work with my InputSystem, since the Unity EventSystem uses the default InputSystem, but searching through the documentation I see the attributes that can be modified and I found the following “eventSystem.currentInputModule.inputOverride”. With this attribute you can indicate a new InputSystem, as long as this InputSystem has inherited the BaseInput class, this class contains the functions of GetButtonDown or GetAxisRaw, and can be overridden by your own functions in your InputSystem.

Luckily, I already had the names of the same functions, I just had to put “public override” to the functions for the EventSystem to recognize them, and for everything to work correctly you have to use the Standalone Input Module.

Where each action has to be described in both InputSystems to work correctly (since when starting the game you cannot assign the new InputSystem because it fails, that is, it cannot be assigned in Awake or Start).

And that was it, the solution was simpler than I thought, the only problem was that it was not so clear, and brought with it a few bugs that were relatively easy to fix. This week I will make a cloud thought when the player is close to a button with which he can interact, to make it easier to see what that button will do :)


[ES]

Actualización Semanal:

Entonces, la semana pasada estaba intentando hacer un nuevo EventSystem para que funcione con mi InputSystem, ya que el EventSystem de Unity utiliza el InputSystem que trae por defecto, pero buscando por la documentación veo los atributos que se pueden modificar y encontré lo siguiente “eventSystem.currentInputModule.inputOverride”. Con ese atributo se puede indicar un nuevo InputSystem, siempre y cuando este InputSystem tenga heredado la clase BaseInput, esta clase contiene las funciones de GetButtonDown o GetAxisRaw, y se pueden anular por tus propias funciones en tu InputSystem.

Por suerte, yo ya tenía los nombre de las funciones iguales, solo tenía que colocar “public override” a las funciones para que el EventSystem las reconociera, y para que funcione todo correctamente hay que utilizar el Standalone Input Module.

Donde cada acción tiene que ser descritas en ambos InputSystems para que funcione correctamente (ya que al iniciar el juego no se puede asignar el nuevo InputSystem porque da error, es decir no se puede asignar en Awake ni en Start).

Y eso fue todo, la solución fue más simple de lo que creí, el único problema era que no fue tan clara, y trajo consigo unos cuantos bugs que fueron relativamente fáciles de solucionar. Esta semana haré una nube de pensamiento cuando el jugador este cerca de un botón con el que pueda interactuar, para hacer más fácil la visualización de que va a hacer ese botón :)

Get Chronotura

Leave a comment

Log in with itch.io to leave a comment.