Hola! Estoy rompiéndome la cabeza por intentar sacar este código: el videojuego que estoy planteando, consiste en que sea jugado desde la vista de los 3 personajes principales; aunque la historia va a ser lineal. No puedo hacer que el objeto jugador cambie los sprites porque (a parte de que son un porrón) las mecánicas de juego difieren entre ellos. Mi primer pensamiento para el cambio fue que colisionasen con un objeto, pero no soy capaz de que funcione. No estoy buscando un menú de selección, sino que cuando un personaje colisione con un objeto invisible, ejecute el cambio de objeto.
Os dejo por aquí algunos de los códigos que intenté y que no funcionaron //surprise.
[gml]globalvar controlList
global.controlList[0]=obj_aster //> ASTER
global.controlList[1]=obj_aster //> ANZU
global.controlList[2]=obj_aster //> NORA
global.controlList[3]=obj_nora //> NORA
global.controlList[4]=obj_nora //> ASTER
global.controlList[5]=obj_nora //> ANZU
global.controlList[6]=obj_anzu //> ANZU
global.controlList[7]=obj_anzu //> NORA
global.controlList[8]=obj_anzu//> ASTER
global.controlCurrent = global.controlList
instance_change(controlList[global.controlCurrent],0)
if collision_point(x,y,obj_salida, false, true) = true
{ instance_change(obj_aster,false) }
else collision_point(x,y,obj_entrada, false, true)
{ instance_change(obj_aster,true) }
[/gml]
[gml]var controlList[0] =obj_aster //> ASTER
if controlList[0] = true
{collision_point(x,y,obj_entrada,false,true)}
{instance_change(obj_entrada,true) }
then controlList0
{
instance_change(obj_aster,false)
}[/gml]
[gml]
control = collision point (instance_change(obj_aster,true)) or instance_change(obj_aster,false)[/gml]
Muchísimas gracias por su tiempo :)
Os dejo por aquí algunos de los códigos que intenté y que no funcionaron //surprise.
[gml]globalvar controlList
global.controlList[0]=obj_aster //> ASTER
global.controlList[1]=obj_aster //> ANZU
global.controlList[2]=obj_aster //> NORA
global.controlList[3]=obj_nora //> NORA
global.controlList[4]=obj_nora //> ASTER
global.controlList[5]=obj_nora //> ANZU
global.controlList[6]=obj_anzu //> ANZU
global.controlList[7]=obj_anzu //> NORA
global.controlList[8]=obj_anzu//> ASTER
global.controlCurrent = global.controlList
instance_change(controlList[global.controlCurrent],0)
if collision_point(x,y,obj_salida, false, true) = true
{ instance_change(obj_aster,false) }
else collision_point(x,y,obj_entrada, false, true)
{ instance_change(obj_aster,true) }
[/gml]
[gml]var controlList[0] =obj_aster //> ASTER
if controlList[0] = true
{collision_point(x,y,obj_entrada,false,true)}
{instance_change(obj_entrada,true) }
then controlList0
{
instance_change(obj_aster,false)
}[/gml]
[gml]
control = collision point (instance_change(obj_aster,true)) or instance_change(obj_aster,false)[/gml]
Muchísimas gracias por su tiempo :)