Donde puedo encontrar la documentacion?

Hola, me pase un buen rato buscando la documentacion de pilas engine 2 y me cuesta encontrar lo que busco, lo que llegue a encontrar fue http://manual-pilas-engine.surge.sh/, pero lo que necesito es saber todas las referencias es decir el codigo como por ejemplo “let”, “avanzar”, “impulsar”, “decir”, ect… no encuentro un manual donde me diga cada funcion que haya, si me pueden ayudar, gracias.

Hola @Pan, la documentación detallada de cada función y parámetro está en esta url, sería la documentación de la api:

Ahora voy a agregar un link en la documentación de la web para que se pueda acceder más fácilmente.

2 me gusta

Ahí agregué el link en la web oficial, gracias por avisame que faltaba!!

1 me gusta

Gracias, estuve intentando hacer una simple prueba y no me resulto, me podrias explicar como puedo hacerlo correctamente?

class actor extends Actor {
    propiedades = {
        imagen: "imagenes:basicos/sin_imagen";
        x = 0;
        y = 0;
        let num = 0;
    };

    iniciar() {
    }

    actualizar() {
        //this.avanzar(this.num, 0.1);
        //el objeto avanza en x con cada vez mas velocidad
        this.x = this.x + this.num;
        this.num = this.num + 0.1;
    }
}

Hola @Pan, la propiedad num debe estar afuera de las propiedades así:

class aceituna extends Actor {
    propiedades = {
        imagen: "imagenes:objetos/aceituna"
    };

    num: number = 0;

    iniciar() {
        this.imagen = "imagenes:objetos/aceituna";
    }

    actualizar() {
        this.x = this.x + this.num;
        this.num = this.num + 0.1;
    }
}

Te dejo el ejemplo funcionando:

Un detalle, no hace falta poner “:number = 0” al lado de los atributos para indicar que son números, se puede poner directamente esto:

num;

Sin embargo, poner “:number = 0” hace dos cosas útiles, primero le asigna un valor inicial y luego ayuda al editor a saber qué valores podría tener esa variable (números) y hace que el autocompletado sea mucho más práctico. Por ejemplo, en este caso, el editor sabe que ese atributo es “number” y por lo tanto nos va a sugerir todos los métodos que funcionan con números:

image

PD: a futuro me gustaría revisar algún tutorial de typescript/javascript para incorporar dentro de nuestro manual, porque en una exploración rápida todos los que veo explican los conceptos básicos correctamente, pero luego se van a conceptos avanzados que en pilas ni utilizados… por ejemplo este https://www.tutorialesprogramacionya.com/angularya/detalleconcepto.php?punto=23&codigo=23&inicio=20

Gracias, tengo una pregunta, el apartado de “propiedades”, que utilidad tiene, que cosas van alli dentro? y otra pregunta, para declarar variables globales y citarlas como se puede hacer?

Las propiedades están ahí para que el editor las pueda “reconocer” una vez que se pone el actor en el editor. A futuro me gustaría que no estén ahí en el código, pero por el momento es lo más práctico para el editor y el panel de propiedades.

Para declarar una variable global podrías escribir algo como “window.mi_variable=‘valor’;” y luego acceder a ella como “window.mi_variable” como se hace en javascript.

1 me gusta

poniendo “window.” en un inicio la convierte en variable? creo entender…
si quiero hacer una colision la tengo que hacer dentro del script de la escena?

pd: gracias por responder todas mis preguntas jajaj :sweat:

Claro, en realidad si escribis algo como “window.nombre = ‘test’” esa variable “nombre” va a quedar almacenada dentro del objeto “window” que es global. Acá hay otros ejemplos un poco más elaborados: https://yeisondaza.com/entendiendo-scopes-de-variables-en-javascript

Sobre las colisiones, lo mejor es que definas el método “cuando_comienza_una_colision” dentro de la clase de un actor para “responder” a la colisión directamente, no hace falta que lo hagas en la escena. Acá hay ejemplos sobre cómo se utilizarían de esa forma: http://manual-pilas-engine.surge.sh/colisiones.html

Están buenas tus consultas, no te preocupes; si ves que el manual es poco claro o necesitas ejemplos o algo más avisanos!

1 me gusta

Me ayudo, gracias hugo :blush: