El último ejemplo que has escrito debería funcionar jpsaenz. Lo importante es no usar comillas.
El código no es muy extenso, creo que así es más fácil de leer
[gml]
var choque;
choque = colision_rectangle (x,y,x+100,y+100,OBJ_PUERTA,false,false);
if (choque)
{
if (estado == cerrado) {
scr_puertacerrada();
}
else if (estado == abierto) {
scr_puertaabierta();
}
}
[/gml]
El código no es muy extenso, creo que así es más fácil de leer
[gml]
var choque;
choque = colision_rectangle (x,y,x+100,y+100,OBJ_PUERTA,false,false);
if (choque)
{
if (estado == cerrado) {
scr_puertacerrada();
}
else if (estado == abierto) {
scr_puertaabierta();
}
}
[/gml]