Translate

viernes, 18 de abril de 2014

Trucos para convertir UnityScript entre C#

Introducción

Muchos podrían preguntarse acerca de la necesidad de convertir su código a otro lenguaje, pero esta necesidad generalmente surge cuando tenemos que interactuar con código de otras personas, ya sea de colaboradores o debido a que agregamos algún plugin codificado en otro lenguaje.
Para este caso me limitaré a poner ejemplos, pero cualquier duda mencionada en los comentarios la trataré de explicar

Herramientas automáticas

Si bien nos pueden ayudar para aprender, no siempre son totalmente exaustivas en su implementación ( Es por esto que más adelante pondré ejemplos de como hacer las cosas que estos convertidores no pueden manejar )

Convertidor UnityScript a C#

http://www.m2h.nl/files/js_to_c.php

Convertidor C# a UnityScript

http://florentpoujol.fr/content/unity3d/csharptounityscript/

Arreglos de cadenas

En caso de tener en la consola algo como error CS0029: Cannot implicitly convert type `string' to `int', nos indicará que nuestros arreglos de cadenas están mal convertidos.

C#

string[] dificultad= new string[]{"Muy facil", "Facil","Regular", "Dificil"};

JavaScript

var dificultad:string[]= ["Muy facil", "Facil","Regular", "Dificil"];

Tipos de datos no declarados 


En UnityScript es posible no declarar los datos, por lo que el convertidor a C# puede arrojar la palabra FIXME_VAR_TYPE, en este cas deberemos inferir el tipo en base a la inicialización como lo hace el compilador.

var musica = true;
FIXME_VAR_TYPE musica= true;


En vase a sus valores, el tipo debe seer bool.

var musica:boolean = true;
bool musica= true;


No hay comentarios:

Publicar un comentario