Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Mensajes - Johann

Páginas: [1] 2 3 ... 28
1
Queda muy elegante en cuadro con el texto de esa manera, gracias por el ejemplo
 Ya estoy preparando la aplicación para publicarla,apenas esté publicada la pongo en el foro para que vean de que se trataba.

2
pq era la respuesta a esta pregunta

3
Post original de eams1986

Hola! amigos de la comunidad recientemente google elimino el repositorio de gradle 2.2.0 entonces
muestra el error  de gradle

*El archivo build.gradle final debería tener este aspecto
// Archivo de compilación de nivel superior donde puede agregar opciones de configuración comunes a todos los subproyectos / módulos. 

buildscript {
    repositories {
  mavenCentral()
  maven {
      url "http://repo.spring.io/plugins-release/"
  }
        jcenter()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:2.2.0+'
    }
}
allprojects {
    repositories {
  maven {
            url "https://maven.google.com"
        }
  maven {
      url "http://repo.spring.io/plugins-release/"
  }
        jcenter()
    }
}

el Archivo debe de queadar ASI.

Tambien les dejo el TUTO via youtube : https://www.youtube.com/watch?v=m_eekLI8k50

Gracias espero les sirva

4
Preguntas y respuestas / Re:Me quedo entre medio de dos boosts :v
« en: Diciembre 12, 2018, 04:13:30 pm »
Y si simplemente verificas que la velocidad sea cero, si un boost tira hacia arriba y el otro hacia abajo con la misma magnitud la velocidad es cero, por todo lo que dices, es esa la condición con la que debes dar al jugador la opción de lanzar, también debería funcionar al colisionar con la pared, lo importante es demostrar que el objeto esta quieto.

if speed==0 && vida>0 { //para que no tire un zombie XD
    puedetirar = true;
    tiro = 0;
}

5
Preguntas y respuestas / Re:[Android] Duda para online 2 personas
« en: Diciembre 11, 2018, 08:01:42 pm »
Puedes hacer un servidor centralizado con cualquier lenguaje de programación, incluso con el mismo GM, al que se conectan los clientes y que se encargue de sincronizarlos a todos. Asi funcionan los videojuegos grandes.

Justo iba a compartir ese articulo XD pero no es exactamente el mismo:

https://www.comunidadgm.org/articulos/(programacion)hacer-un-juego-multijugador-online-con-game-maker-studio-ver2/
https://www.comunidadgm.org/articulos/crea-tu-juego-online-tutorial-php-mysql-gml-(programacion)/

6
Preguntas y respuestas / Re:problema con distance to object
« en: Diciembre 11, 2018, 02:27:48 am »
Esa función no toma en cuenta los ejes por separado sino como un vector.
Debes tomar el componente X del vector que tiene como magnitud el valor que retorna distance_to_object pero necesitas el angulo de inclinación que tiene, lo obtienes con point_direction.
var dir = point_direction(x, y, obj_blaze.x, obj_blaze.y)
var dist = lengthdir_x(distance_to_object(obj_blaze), dir);

7
Preguntas y respuestas / Re:Error Android
« en: Diciembre 11, 2018, 12:44:37 am »
Esto es de hoy, pero por lo que veo y pruebo solo es para GMS 2 asi que he ajustado el icono del post a esa version y para que sea mas claro también cambio el titulo del post.

Edit:
Me ha pasado en Studio1, la ubicacion del archivo en win7 que hay que modificar es:
C:\Users\USUARIO\AppData\Roaming\GameMaker-Studio\Android\runner\RootFiles

8
Tengo un texto que se dibuja sobre un rectangulo dibujado con draw_roundrect_ext.
¿Como hago para que al hacerle scroll al texto (moverlo hacia arriba y abajo), cuando se salga del area del rectangulo, no se dibuje por fuera?
¿Tal vez con una surface?
Me ayudan?

9
Preguntas y respuestas / Re:Sprite mal recortado en surface
« en: Diciembre 09, 2018, 11:53:12 pm »
creo que todo lo que se llame draw_* debe ir en evento draw, que igualmente se ejecuta cada step.
Pasa el codigo de step a draw, seguro así si funciona.

10
Preguntas y respuestas / Re:Aplicaciones con el corrimiento de bits
« en: Diciembre 09, 2018, 01:56:51 am »
A mi me dijeron que simplemente era una forma mas económica de hacer operaciones matemáticas con base 2, ya sabes, si le quitas o le pones un bit al numero binario que representa al numero que estas operando, lo que quieras hacer con eso ya depende de tu imaginación, por ejemplo la imaginación de NiuWeb dice que puedes tomar unmonton de variables booleanas (unos y ceros) y componer un numero decimal con esos bits, nadie sabrá de que se trata  ;D

11
Preguntas y respuestas / Re:Sistema de cámara 3D: movimiento libre & roll
« en: Diciembre 07, 2018, 07:51:40 pm »
Seguro que el GM utilice coordenadas esfericas? Yo la verdad no tengo idea pero puede ser mas conveniente utilizar otro sistema de coordenadas, por ejemplo en Godot dicen que es mejor utlilizar Quaterniones. Si consultas este sistema encontrarás la teoría que necesitas para implementar tu propio sistema de rotación asi como has dicho que prefieres hacerlo: https://en.wikipedia.org/wiki/Quaternions_and_spatial_rotation

12
General / Re:alguien tiene discord?
« en: Diciembre 05, 2018, 11:27:34 pm »

14
Preguntas y respuestas / Re:Script que funciona a veces
« en: Noviembre 30, 2018, 07:56:52 pm »
No, lo que me toca hacer es simplificar todo con el uso de las colas de prioridad, así ese algoritmo se vuelve innecesario.
De todas formas comparto el script Sintesis2 que hace lo que explicaba al principio:
Cita de: Johann
... juntar todos esos objetos en una única lista y luego redistribuirlos en listas nuevas luego de haberlos ordenado de acuerdo al valor en una de sus propiedades.
///sintesis2(new1, new2, others)
// argument0: Primera nueva lista
// argument1: Segunda nueva lista
// argument2: lista de objetos que contienen las listas a unir

var mol, elm, i, j;
var elems = ds_list_create();
// primero se meten todos los objetos de las listas en argument2 en una sola lista
for (i=0; i<ds_list_size(argument2); i++) {
    mol = argument2[| i];
    for (var j=0; j<ds_list_size(mol.lista); j++) {
        ds_list_add(elems, mol.lista[| j]);
    }
    ds_list_clear(mol.lista);
}
// luego esa lista se ordena
e_sort(elems); // aquí es donde falla algunas veces, cuando se le da la gana si funciona XD
// los objetos ordenados se distribuyen de manera equitativa en 2 listas nuevas
for (i=0; i<ds_list_size(elems); i++) {
    elm = elems[| i];
    if (i mod 2 == 0) {
        elm.padre = argument0.id;
        ds_list_add(argument0.lista, elm);
    } else {
        elm.padre = argument1.id;
        ds_list_add(argument1.lista, elm);
    }
}

ds_list_clear(elems);
ds_list_destroy(elems);

Alguno dirá que son muchos ciclos for, pero como una lista no va a llegar a tener mas de 10 objetos no le veo problema.
Y bueno, tampoco me voy a cerrar, voy a probar los de la cola de prioridad para ordenar haber que pasa.


Edit pocos minutos después: ha funcionado perfectamente el ordenamiento por medio de colas de prioridad y me ahorra modificar todo el proyecto como habia pensado al principio :D

15
Preguntas y respuestas / Re:Script que funciona a veces
« en: Noviembre 30, 2018, 04:03:40 pm »
Pues ya estando ordenada, recorro la lista con un for, y como es seguro que habrá un numero par de instancias de cada tipo (sea A o B o incluso C o mas) cuando el indice del for es par (i mod 2 == 0) meto la instancia en la primera lista y cuando es impar, en la segunda, asi se distribuyen en partes iguales y quedan ordenados de una vez, porque necesito que también estén ordenados para crear relaciones entre ellos (dentro de una misma lista) utilizando un grid que contiene esas relaciones.

Páginas: [1] 2 3 ... 28