Lo logre arreglar en 5 minutos nomas, pero habia un error y no sabia donde estaba. Luego de mucho revisar, vi que me faltaron 3 "break;" y por eso no andaba, te imaginaras mi bronca, pero bueno. Todo salio bien, y aca esta tu script, y tu editable :)
[gml]
//Destruir las instancias si es que existen, para que no se acumulen ni entren en conflicto.
if instance_exists(Objeto_1)
{
with Objeto_1
{
instance_destroy()
}
}
if instance_exists(Objeto_2)
{
with Objeto_2
{
instance_destroy()
}
}
if instance_exists(Objeto_3)
{
with Objeto_3
{
instance_destroy()
}
}
//Crear las nuevas instancias en los lugares deseados (MISMO AL EVENTO CREATE).
global.Objeto_1_lugar = choose(1,2,3)
switch (global.Objeto_1_lugar)
{
case 1: instance_create(0,0,Objeto_1); global.Objeto_1_caso = 1; global.Objeto_2_lugar = choose(2,3); break;
case 2: instance_create(48,0,Objeto_1); global.Objeto_1_caso = 2; global.Objeto_2_lugar = choose(1,3); break;
case 3: instance_create(96,0,Objeto_1); global.Objeto_1_caso = 3; global.Objeto_2_lugar = choose(1,2); break;
}
switch (global.Objeto_2_lugar)
{
case 1: instance_create(0,0,Objeto_2); if global.Objeto_1_caso = 2 {global.Objeto_3_caso = 3} else if global.Objeto_1_caso = 3 {global.Objeto_3_caso = 2}; break;
case 2: instance_create(48,0,Objeto_2); if global.Objeto_1_caso = 1 {global.Objeto_3_caso = 3} else if global.Objeto_1_caso = 3 {global.Objeto_3_caso = 1}; break;
case 3: instance_create(96,0,Objeto_2); if global.Objeto_1_caso = 1 {global.Objeto_3_caso = 2} else if global.Objeto_1_caso = 2 {global.Objeto_3_caso = 1}; break;
}
switch (global.Objeto_3_caso)
{
case 1: instance_create(0,0,Objeto_3); break;
case 2: instance_create(48,0,Objeto_3); break;
case 3: instance_create(96,0,Objeto_3); break;
}
[/gml]
PD: Arregle algunos detalles en los nombres, en los sprites para hacerlo un poco mas presentable. Ademas, agregue la parte del script que dice "(MISMO AL EVENTO CREATE)" en el evento create, valga la redundancia, para que apenas pruebes el juego ya salgan los cuadrados.
[gml]
//Destruir las instancias si es que existen, para que no se acumulen ni entren en conflicto.
if instance_exists(Objeto_1)
{
with Objeto_1
{
instance_destroy()
}
}
if instance_exists(Objeto_2)
{
with Objeto_2
{
instance_destroy()
}
}
if instance_exists(Objeto_3)
{
with Objeto_3
{
instance_destroy()
}
}
//Crear las nuevas instancias en los lugares deseados (MISMO AL EVENTO CREATE).
global.Objeto_1_lugar = choose(1,2,3)
switch (global.Objeto_1_lugar)
{
case 1: instance_create(0,0,Objeto_1); global.Objeto_1_caso = 1; global.Objeto_2_lugar = choose(2,3); break;
case 2: instance_create(48,0,Objeto_1); global.Objeto_1_caso = 2; global.Objeto_2_lugar = choose(1,3); break;
case 3: instance_create(96,0,Objeto_1); global.Objeto_1_caso = 3; global.Objeto_2_lugar = choose(1,2); break;
}
switch (global.Objeto_2_lugar)
{
case 1: instance_create(0,0,Objeto_2); if global.Objeto_1_caso = 2 {global.Objeto_3_caso = 3} else if global.Objeto_1_caso = 3 {global.Objeto_3_caso = 2}; break;
case 2: instance_create(48,0,Objeto_2); if global.Objeto_1_caso = 1 {global.Objeto_3_caso = 3} else if global.Objeto_1_caso = 3 {global.Objeto_3_caso = 1}; break;
case 3: instance_create(96,0,Objeto_2); if global.Objeto_1_caso = 1 {global.Objeto_3_caso = 2} else if global.Objeto_1_caso = 2 {global.Objeto_3_caso = 1}; break;
}
switch (global.Objeto_3_caso)
{
case 1: instance_create(0,0,Objeto_3); break;
case 2: instance_create(48,0,Objeto_3); break;
case 3: instance_create(96,0,Objeto_3); break;
}
[/gml]
PD: Arregle algunos detalles en los nombres, en los sprites para hacerlo un poco mas presentable. Ademas, agregue la parte del script que dice "(MISMO AL EVENTO CREATE)" en el evento create, valga la redundancia, para que apenas pruebes el juego ya salgan los cuadrados.