Hotkeys
Arrastrar objeto + CTRL = Arrastre delicado
Seleccionar objeto + ALT = Duplicar
Background = Horizon Tile = Extender imagen horizontalmente
- Vertical Tile = Extender imagen verticalmente
- Stretch = Cuadrar imagen
- Horizontal speed = La imagen se mueve horizontalmente
//show_message(Hey); Mostrar mensaje
show_message("¡Hola, mundo!"); //Comentario de una línea
show_message("¿Que tal?");
show_message("¡Hola, mundo!"); //Comentario de una línea
show_message("¿Que tal?"); // CTRL K Convertir todo en comentario + CTRL K SHIFT
deshacer
/* Comentario de
varias líneas
de texto
*/
mi_variable = 14;
show_message(mi_variable);
mi_variable = 15;
show_message(mi_variable);
//Ejemplos de variables de instancias
//
x = 0;
y = 0;
//Cada vez que aparece por primera vez la variable se identifica y cuando se le da un valor
se inicializa
holaquetal = 18;
patata = 4;
//show_message(patata);
//Variable en la izquierda para asignarle el valor de la variable de la derecha
boniato = patata; //Boniato es 4
patata = patata + 1; //Patata pasa a ser 5
show_message(boniato); //Boniato sigue siendo 4 porque es el valor que se le ha
determinado antes de que patata fuese 5
//Las variables deben comenzar por una letra o
//por un guión bajo
_pilotes = 2;
coco = 546;
//Pueden contener letras, números y guiones bajos
pilotes2 = 43253;
//2pilotes
variable_con_muchas_palabras = 2121;
health_points = 3; // snake_case
healthPoints = 4353 // camelCase
HealthPoints = 32146 // PascalCase
num = 5;
// STRING (CADENA DE TEXTO)
name = "Nico";
show_message(name);
// Verbatim string literal (Mostrar texto en varias lineas)
text = @"saddasa
dasdas
dasdas
dasdas
adadas";
show_message(text);
num = 5;
// STRING (CADENA DE TEXTO)
name = "Nico";
show_message(name);
// Verbatim string literal (Mostrar texto en varias lineas)
text = @"saddasa
dasdas
dasdas
dasdas
adadas";
show_message(text);
//Concatenación
text = " Este texto "
+" contiene demasiadas "
+" palabras como para que "
+" lo ponga todo en una "
+" misma línea "
show_message(text);
show_message(new_text);
//"\n"
//"\t"
show_message("Este texto tiene un\n salto de línea")
////BOOLEANOS
////Solo tiene dos valores: true y false
////is_dead = true;
////show_message(is_dead);
////is_dead = false;
////show_message(false)
////a_bool = 4 > 3;
////a_bool = 3 >= 3;
////OPERADORES
////OPERADOR DE ASIGNACIÓN
//// - es el operador con menos precedencia/prioridad
////num = 4 + 6;
////OPERADORES ARITMÉTICOS BINARIOS
//// - Se usan principalmente sobre números reales y
//// - realizan operaciones aritméticas básicas
//// - tienen una precedencia mayor que el operador de asignación
////Operador +
//num = 4 + 4. // => 8
////Operador -
//num= 5 - 3; // => 2
////Operador *
//num = 3 * 3; // => 9
////Operador /
//num = 5 / 2; // => 2.5
////Operador div (división entera)
//// - el cociente es un número entero. Se trunca la parte decimal
//num = 5 div 2; // => 2
////Operador % o mod (módulo o resto)
//num = 23 % 3;
//num = 2 + 2 * 3; // => 8 la multiplicación tiene mayor precedencia
//num = (2 + 2) * 3; // => 12
////Ejercicio 1: Juan tiene 47 manzanas y quiere repartirlas entre 5 amigos.
////calcular y mostrar en pantalla cuántas manzanas tendrà cada amigo
////(con un número entero) y cuántas sobrarán
//manzanas_amigos = 47 div 5;
//show_message(manzanas_amigos)
//manzanas_sobrantes = 47 % 5;
//show_message(manzanas_sobrantes)
//new_text = "Manzanas por amigo " + string(manzanas_amigos) +
// "\nManzanas no repartidas " + string(manzanas_sobrantes);
//show_message(new_text)
////OPERADORES ARITMÉTICOS UNARIOS
//// Solo actúan sobre un operando
//// ++, --, +, -
//// -
//num = 6;
//result = -num; // cambiamos el signo del valor de la variable => -6
//// ++ --
//// Incrementan o reducen el valor de una variable en 1
//num = 3;
//num++; // => le sumamos 1 => 4
//num--; // => le restamos 1 => 3
//a = 5;
//b = ++a; // aquí usamos el operador como prefijo => 6 (se ha incrementado a
// //y luego se ha retornado el valor
//a = 5;
//b = a++; // => 5
//// a será 6 despues de que se haya realizado la asignación
////OPERADORES RELACIONALES
//// - Los utilizamos para comparar valores
//// - siempre generar un valor booleano
//// - tienen una precedencia menor que los operadores ariméticos
//// == (operador igual)
//// genera true si los dos operandos son iguales y false en caso contrario
//result = 4 == 4; // => true
//result = 3 == 4; // => false
//result = 3 == 4 - 1; // => true
//// result = 3 == 3;
//// result = true;
//// > (operador mayor que)
//result = 3 > 3; // => false
//result = 2 + 2 > 4 - 3; // 4 > 1 => true
//// < (operador menor que)
//result = 1 < 3; // => true
//// >= (mayor o igual)
//result = 6 >= 2 * 2; // => true
//// <= (menor o igual)
//result = 1 <= 1; // => true
//// != (distinto que)
//// devuelve true si los dos operandos son distintos
//// y false en caso contrario
//result = 4 != 3; // => true
//result = 3 != 3; // => false
//a = 5;
//b = 3;
//c = 7;
//d = a - 1 < b + c;
//// 4 < 10
//// true
//a = 4;
//b = 3;
//c = 5;
////result = (a - 2 > b) == (c + b + a - 3 < b + a);
//// (2 > 3) == (9 < 7)
//// false = false
//// true
////OPERADORES LÓGICOS
//// - Operan con valores booleanos y generan un valor booleano
//// - tienen una precedencia menor que los operadores relacionales
//// && (and)
//// - Genera true si ambos operandos son true
//result = true && true; // => true
//a = true;
//b = false;
//result = a && b ; // => false
//// || (or)
//// - Devuelve true si al menos uno de los operandos es true
//result = true || false; // => true
//result = false || true; // => true
//result = true || true; // => true
//result = false || false; // => false
//// ^^ (xor u or exclusivo)
//// - El resultado es true si sólo uno de los operandos es verdadero
//// ! (negación)
//// niega su operando, es decir, devuelve true si éste es falso
//// y false si éste es true
//a = true;
//b = !a; // => false
//has_armor = true;
//has_shields = false;
//is_alive = has_armor && has_shields; // => false
//score_needed = 400;
//current_score = 200;
//is_game_over = !(current_score >= score_needed); // ?> true
//a = 3;
//b = 2;
//c = 5;
//result = a < b || c >= 4; // => true
//a = 5;
//b = 6;
//c = 4;
//d = 3;
//result = !(a != b) == (c < d + 2);
//// !(true) == (true)
//// false == true
//// false
////OPERADORES DE ASIGNACIÓN COMPUESTOS
//// - Realización de una operación aritmetica
//// y una asignación
//num = 3;
//num += 3; // num = num + 3 => 6
//// -=
//// *=
//// /=
//// %=
//x = 20;
//y = 36;
// room_width: ancho de la room
// room_height: alto de la room
//x = room_width - 100
//y = room_height - 100
// sprite_width: ancho del sprite actual
// sprite_height: alto del sprite actual
//x = room_width - sprite_width / 2;
//y = room_height - sprite_height / 2;