{
  "actions": [
    {
      "actionId": 603,
      "appliesTo": -1,
      "argTypes": [
        1,
        0,
        0,
        0,
        0,
        0,
        0,
        0
      ],
      "argValues": [
        "depth_set(0,43);\r\n\r\n\r\nif(sprite_index != JoinOut)\r\n{\r\n\r\nif(/*position_meeting(x+18,y+43,mtile1r)*/collision_rectangle(x+9,y+40,x+26,y+46,mtile1r,1,1) || collision_rectangle(x+9,y+40,x+26,y+46,mtile3r,1,1))\r\n{\r\nsrspeed += 2;\r\n}\r\nelse if(/*position_meeting(x+18,y+43,mtile1l)*/collision_rectangle(x+9,y+40,x+26,y+46,mtile1l,1,1) || collision_rectangle(x+9,y+40,x+26,y+46,mtile3l,1,1))\r\n{\r\nslspeed += 2;\r\n}\r\nelse if(/*position_meeting(x+18,y+43,mtile1u)*/collision_rectangle(x+9,y+40,x+26,y+46,mtile1u,1,1) || collision_rectangle(x+9,y+40,x+26,y+46,mtile3u,1,1))\r\n{\r\nsuspeed += 2;\r\n}\r\nelse if(/*position_meeting(x+18,y+43,mtile1d)*/collision_rectangle(x+9,y+40,x+26,y+46,mtile1d,1,1) || collision_rectangle(x+9,y+40,x+26,y+46,mtile3d,1,1))\r\n{\r\nsdspeed += 2;\r\n}\r\nsrspeed -= 1;\r\nslspeed -= 1;\r\nsuspeed -= 1;\r\nsdspeed -= 1;\r\nif(srspeed > 6) {srspeed = 6;}\r\nif(slspeed > 6) {slspeed = 6;}\r\nif(suspeed > 6) {suspeed = 6;}\r\nif(sdspeed > 6) {sdspeed = 6;}\r\nif(srspeed < 0) {srspeed = 0;}\r\nif(slspeed < 0) {slspeed = 0;}\r\nif(suspeed < 0) {suspeed = 0;}\r\nif(sdspeed < 0) {sdspeed = 0;}\r\n\r\nif(position_meeting(x+18,y+43,mtile1r) || position_meeting(x+18,y+43,mtile1l) || position_meeting(x+18,y+43,mtile1u) || position_meeting(x+18,y+43,mtile1d))\r\n{\r\nslidedir = point_direction(x,y,x+srspeed-slspeed,y+sdspeed-suspeed);\r\nif(slidedir >= 337.5 || slidedir < 22.5) sprite_index = NaviStandR;\r\nelse if(slidedir >= 22.5 && slidedir < 67.5) sprite_index = NaviStandUR;\r\nelse if(slidedir >= 67.5 && slidedir < 112.5) sprite_index = NaviStandU;\r\nelse if(slidedir >= 112.5 && slidedir < 157.5) sprite_index = NaviStandUL;\r\nelse if(slidedir >= 157.5 && slidedir < 202.5) sprite_index = NaviStandL;\r\nelse if(slidedir >= 202.5 && slidedir < 247.5) sprite_index = NaviStandDL;\r\nelse if(slidedir >= 247.5 && slidedir < 292.5) sprite_index = NaviStandD;\r\nelse /*if(slidedir >= 292.5 && slidedir < 337.5)*/ sprite_index = NaviStandDR;\r\n}\r\n\r\nx += srspeed;\r\nx -= slspeed;\r\ny -= suspeed;\r\ny += sdspeed;\r\n\r\n//Ice Tiles\r\nif(ispeed != 0)\r\n{\r\n\r\nif(!position_meeting(x+18,y+43,icetile) && position_meeting(x+18,y+43,tile1))\r\n{\r\nif(idir == 0 || idir == 360) srspeed = ispeed;\r\nelse if(idir == 180) slspeed = ispeed;\r\nelse if(idir == 90) suspeed = ispeed;\r\nelse if(idir == 270) sdspeed = ispeed;\r\nispeed = 0;\r\n}\r\nelse\r\n{\r\nif(speed != 0) speed = 0;\r\nif(slspeed != 0) slspeed = 0;\r\nif(srspeed != 0) srspeed = 0;\r\nif(suspeed != 0) suspeed = 0;\r\nif(sdspeed != 0) sdspeed = 0;\r\nni = lengthdir_x(ispeed,idir); //Doitx\r\nfor(i = 0; i < abs(ni); i += 1)\r\n{\r\nif(collision_rectangle(x+9+sign(ni),y+40,x+26+sign(ni),y+46,door1vertical,1,1)) {ispeed = 0; break;}\r\nelse x += sign(ni);\r\n}\r\nni = lengthdir_y(ispeed,idir); //Doity\r\nfor(i = 0; i < abs(ni); i += 1)\r\n{\r\nif(collision_rectangle(x+9,y+40+sign(ni),x+26,y+46+sign(ni),door1horizontal,1,1)) {ispeed = 0; break;}\r\nelse y += sign(ni);\r\n}\r\n}\r\n\r\n}\r\nelse if(position_meeting(x+18,y+43,icetile) && (speed != 0 || slspeed != 0 || srspeed != 0 || suspeed != 0 || sdspeed != 0))\r\n{\r\n\r\nidir = point_direction(operations.slx,operations.sly,jokershell.x,jokershell.y);\r\nif(idir mod 90 != 0) idir = round(idir/90)*90;\r\nif(idir == 0 || idir == 180 || idir == 360)\r\n  ispeed = abs(jokershell.x-operations.slx);\r\nelse if(idir == 90 || idir == 270)\r\n  ispeed = abs(jokershell.y-operations.sly);\r\n\r\n}\r\n\r\n}//End Ice/Mover Tiles\r\n\r\n\r\n//Fall off edge.\r\nif(!tcollide && sprite_index != JoinOut)\r\n{\r\nglobal.mbout = 1;\r\nif(string_pos('Run',sprite_get_name(server.sprite_index)) != 0)\r\n  execute_string('server.sprite_index = '+string_replace(sprite_get_name(server.sprite_index),'Run','Stand')+';');\r\nserver.fspeed = 0;\r\nview_object[0] = jokershell;\r\nwith(instance_create(x,y,ncolchange))\r\n  depth = jokershell.depth - 1;\r\nsprite_index = JoinOut;\r\n}\r\n\r\n\r\ntcollide = 0;"
      ],
      "isRelative": false
    }
  ],
  "eventNumber": 0,
  "eventType": 3
}
