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 - Mgbu
Páginas: 1 [2] 3 4 ... 41
16
« en: Mayo 01, 2013, 03:50:41 pm »
La pregunta esta en poco mal echa. No hace falta hace una encuesta para esto, sin ofender. En mi opinión, la pregunta debería haber sido: ¿Cómo hago una condición en GML (código)? Si es así, uno debería usar la sentencia if. Si no la conoces sería bueno que leas el manual en la parte de Estructura general del GMLTambién en el manual está como usar la sentencia ifEs simple, uno debe escribirla en este formato: if (<pregunta>) <accion>En Pregunta uno debe escribir una condición, una expresión como se llama, por ejemplo balas>0. En acción uno debe escribir algo que pasará cuando se cumpla esa condición, por ejemplo instance_create(x,y,obj_bala)Entonces en mi ejemplo queda así: if (balas>0) instance_create(x,y,obj_bala)Ese código creará un obj_bala si la variable balas es mayor a 0 Uno también puede poner varias acciones dentro de un mismo if con corchetes. De esta manera: if (<pregunta>) { <accion> <accion> }Y por último uno puede usar else, que se ejecutará si el if no se ha ejecutado, se podría traducir como un "o si no". Entonces: if (<pregunta>) { <accion> <accion> } else { <accion> <accion> }
17
« en: Mayo 01, 2013, 03:37:06 pm »
Bueno, entonces perfecto. Solo hace falta que le pidas a un amigo que se conecte con tu IP que aparece acá - Si funciona deberías hacerte un No-IP, porque esa IP que usaste antes para conectarte suele cambiar. - Si no funciona conectarte con una IP deberías intentar Port Forwarding, si queres avisa y te ayudo
18
« en: Abril 30, 2013, 11:34:46 pm »
No son errores, es problema de conexion. El servidor sólo funcionará en tu computadora o habrá servidores creados por otras personas? No-IP funciona perfecto, eso lo que hace es hacer estática tu IP, primero probá así y si no funciona es porque necesitas hacer Port Forwarding
19
« en: Abril 29, 2013, 11:59:22 pm »
Si, es justo lo que yo usaba. Yo entiendo que para hacer juegos en red uno debe saber esto, a lo mejor me equivoco pero me funcionó tan bien en juegos de GM como en servidores de MinecraftEn realidad no hace falta, si uno le da al cliente la IP de tu PC ya bastaría, el problema es que esa IP cambia cada unos dias, por eso uno usa NoIP. Lo que hace NoIP es crear una página web que lleva a tu IP, para que NoIP conozca tu IP tenés que instalar un programa, que lo que hace es decirle tu nueva IP a NoIP cada vez que esta cambie. Simple. El problema es que esta IP que uno debe usar es la misma para todos los equipos de tu red (en mi caso todos los equipos de mi casa), entonces cuando alguien se quiere conectar a tu servidor tu modem no va a saber a donde llevar esos mensajes que entran desde el cliente, pero eso ya es otra cosa, eso se llama Port Forwarding, consiste en configurar tu módem. Por qué uno no debe hacer Port Forwarding cuando uno juega en red? Porque la IP para juegos en red que usas es la IP local de tu PC, (si no me equivoco es la que estas obteniendo escribiendo ipconfig)
20
« en: Abril 26, 2013, 01:11:57 am »
Defino la variable a en el evento CREATE. Al ejecutar el código me dice que el índice de array no puede superar los 32000 o algo así. La verdad que no se que puede ser el problema :S
Entonces es porque el indice del array no puede superar los 32000  Por qué llegas a un indice tan alto? Lo necesitas realmente o es un problema del bucle? Porque no creo que tengas tantos participantes No se como funciona el código pero no se debe estar cumpliendo la condición del while, por lo que veo es porque no hay ningun nombre con string "" en el ini
21
« en: Abril 22, 2013, 10:55:40 pm »
Lo mismo pensaba yo, pero como funcionaba pensé que estaba medio dormido, pero sí, era verdad, ahora que me fijo te explico por que funciona: La sentencia break termina el ciclo for, entonces el ciclo for solo se ejecuta una vez, entonces ese código en Step es lo mismo que esto: if rotando = true { image_angle += nuevaDir contador -= 1 if contador = 0 {rotando = false} } PD: Pensándolo bien no era el único dormido
22
« en: Abril 22, 2013, 05:58:17 pm »
Ahhh, es como que uno debe usar el sistema de manejo de fondos de GM, no sabia de esas funciones, las acabo de encontrar acá. Yo pensaba que las únicas funciones para backgrounds eran estas
23
« en: Abril 21, 2013, 11:46:38 pm »
Yo tengo un fondo de unas montañas que debo repetir horizontalmente, para dibujarlo uso draw_background_tiled(), pero eso tambien me repite el fondo verticalmente.
Cual es la solucion más correcta? dibujarlo varias veces con draw_background()? Hacer un background super ancho que abarque toda la room?
24
« en: Abril 20, 2013, 02:53:40 pm »
Tú código funciona perfectamente con la salvedad de que si una vez empezada la animación de la rotación le doy a una de las teclas antes de que esta termine (es decir, que la torreta pase de estar en posición de 0º a 45º), la posición final no es de 45º sino un angulo distinto, ¿Sabes por que puede ser esto? y por otro lado tampoco termino de comprender porque el angulo que quiero "avanzar" tiene que ser multiplo de lo que giro en cada step
Ah si, por ejemplo imaginate que la torreta se esta moviendo de 0 a 45, pero cuando anda en 20 yo presiono y hago mover la torreta 45 grados más, o sea 20 + 45 = 65 grados. Eso se puede solucionar con una condición que permita girar la torreta sólo cuando haya terminado, así: if cant_giro = 0 cant_giro = 45 //Solo girar si ha dejado de girar. Positivo para girar a derecha y negativo hacia izquierdaMe equivoque en lo de multiplo, en realidad eso se llama divisor  El angulo que quieres avanzar tiene que ser divisor de lo que giras en cada step porque uno necesita que cant_giro llegue a 0. El problema es que puede ocurrir que nunca llegue a 0, o que tarde más de de lo que es necesario. Pongo este ejemplo: uno quiere girar la torreta 12 grados, y 5 por step. En el primer step cant_giro va a ser 12 En el segundo cant_giro va a ser 12 - 5 = 7 En el tercer step cant_giro va a ser 7 - 5 = 2 En el cuarto step cant_giro va a ser 2 - 5 = -3 En el quinto step cant_giro es negativo, entonces va a ser -3 + 5 = 2 En el sexto step cant_giro va a ser 2 - 5 = -3 ... Y asi hasta el infinito y mas allá Entonces es como que se "pasa de largo". Una forma es que si cant_giro es menor que la cantidad de grados por step simplemente girar lo que dice cant_step. en mi ejemplo sería: En el primer step cant_giro va a ser 12 En el segundo cant_giro va a ser 12 - 5 = 7 En el tercer step cant_giro va a ser 7 - 5 = 2 En el cuarto step cant_giro va a ser menor que 5, entonces le restamos lo que dice cant_step 2 - 2 = 0 Fin O la otra forma mas facil es hacer que sean divisores y listo, asi no se complica el código: En el primer step cant_giro va a ser 12 En el segundo cant_giro va a ser 12 - 6 = 6 En el tercer step cant_giro va a ser 6 - 6 = 0 Fin Mira que ahora resto de 6 en 6, pero como 6 no es divisor de 45 tu deberías usar 1, 3, 5, 9, 15 o 45
25
« en: Abril 19, 2013, 06:18:50 pm »
No es muy facil. Lo que haría es poner un cuenta regresiva de giro cuando necesito girar, algo asi como:
cant_giro = 45 //Positivo para girar a derecha y negativo hacia izquierda Tambien vas a tener que agregar en create la declaracion de la variable, para prevenir errores:
cant_giro = 0 Y en el step giramos:
if cant_giro > 0{ //Si debemos girar a la derecha image_angle +=5 //Girar 5 grados cant_giro -= 5 //Restar 5 grados a cant_giro } if cant_giro < 0{ //Si debemos girar a la derecha image_angle -=5 //Girar 5 grados cant_giro += 5 //Sumar 5 grados a cant_giro } Es algo simple, se puede hacer mejor pero eso es lo que se me ocurre. Tené en cuenta que los grados que quieras girar (en este caso 45) tiene que ser múltiplo de cuanto girs por step (en este caso 5) No lo probe pero creo que sí andaría, cualquier cosa avisa
26
« en: Abril 19, 2013, 06:07:25 pm »
No lei nada al respecto de GM para Ubuntu. Pero yo hice unos ejemplos simples con Game Maker y sus juegos funcionando perfectamente en Wine. No se que pasa con juegos mas complejos, si queres pruebo, pero no se si te interesa usar Wine.
Wine es un programa para Ubuntu que permite correr aplicaciones de Windows, algo asi como un emulador (bueno, por todos lados se pelean si Wine es emulador o no, la idea es que anda y listo)
27
« en: Abril 18, 2013, 12:41:15 am »
Ugh, perdón, no me fijé en el ícono del tema :-
Maitreya, ese artículo está buenisimo, hay que agregarlo ya al manual de la CGM
28
« en: Abril 17, 2013, 11:18:20 pm »
En español no. Pero tenés el manual que vine con el Game Maker que no falla, aparece cuando apretás el signo de pregunta en un circulo celeste en la barra de tareas
29
« en: Abril 17, 2013, 07:53:46 pm »
Yo leeria el que está aca, no cambio demasiado. Solo agregaron mas funciones, pero para empezar está más que bien
30
« en: Abril 16, 2013, 11:01:49 pm »
Hace falta reescribir el ejemplo de Desvanecer pantalla? A lo mejor habria que reemplazarlo con un artículo de Transiciones, aunque es algo muy facil, es decir uno se da cuenta solo cuando agrega la acción Next RoomYo también agregaría un artículo de Términos de Game Maker a saber. Algo así como: Esta es una lista de palabras que uno debería aprender cuando se comienza con Game Maker, algunas son abreviaciones, pero otras son palabras que aunque parezcan parecidas son muy distintas y pueden desorientar. Por ejemplo imagen y sprite, objeto e instancia, etc.
D&D (Drag and Drop): Forma de añadir acciones a un objeto, arrastrando las acciones a el evento GML (Game Maker Language): Form de añadir acciones a un objeto, escribiendo en una accion del tipo Execute a Piece of Code Evento (Event): Conjunto de acciones que se ejecutan en un determinada condicion, por ejemplo al presionar la flecha izquierda Acciones (Actions): Acción a relizr por un objeto, por ejemplo moverse 5 píxeles a la derecha
Recursos: Son los elementos que tiene un juego, imágenes, objetos, fondos, sonidos, etc. Sprites: Imágenes del juego, por ejemplo un dibujo de un auto, pueden tener varias imagenes para ser animados Imagenes (images): Imágenes que tiene un sprite, algo así como los fotograamas de una animción, a veces se les dice Subimágenes Sonidos (sounds): Sonidos del juego, por ejemplo disparos o música Fondos (backgrounds): Fondos, similares que los Sprites pero no son usados para objetos sino para ser colocados como fondo Tiles: Tipo de Fondo que es usado para colocar sus partes en la Room Fuentes: Representa un tipo de letra, incluye tamaño, fuente, etc. Paths: Representa un camino de un objeto Scripts: Sirven para crear nuevas funciones, deben ser escritos en GML Time lines: Representan un secuencia de acciones que realiza un objeto Objetos: Son los que hacen actuar el juego, por ejemplo un auto, un pelota, etc. Instancia: Copia de un objeto que está en juego Rooms: Es donde se desarrolla el juego View: Porción de la pantalla visible, algo así como un cámara
Se podrían agregar más, pero es para dar una idea. Voy a ir haciendo un FAQ de paralaje
Páginas: 1 [2] 3 4 ... 41
|