{\rtf1\mac\ansicpg10000\cocoartf824\cocoasubrtf410 {\fonttbl\f0\fswiss\fcharset77 Helvetica;} {\colortbl;\red255\green255\blue255;} \margl1440\margr1440\vieww9000\viewh8400\viewkind0 \pard\tx720\tx1440\tx2160\tx2880\tx3600\tx4320\tx5040\tx5760\tx6480\tx7200\tx7920\tx8640\ql\qnatural\pardirnatural \f0\fs24 \cf0 //MAKE CONTROL KEYS\ _root.jumpkey = 38;\ _root.rightkey = 39;\ _root.leftkey = 37;\ //MAKE GLOBAL VARIABLES\ _root.xcenter = 0;\ _root.ycenter = 0;\ _root.gravity = .25;\ //USER VARIABLES\ main.user.facer = true;\ main.user.xspeed = 0;\ main.user.yspeed = 0;\ main.user.lockl = false;\ main.user.lockr = false;\ main.user.locku = false;\ main.user.runspeed = .25;\ main.user.maxrunspd = 4;\ main.user.jumpspeed = -6.25;\ main.user.maxfallspd = 7.5;\ main.user.holdup = false;\ main.user.moveud = 0;\ xi = 0;\ yi = 0;\ _root.thomas = .1;\ cam.xspeed = 0;\ cam.oldx = 0;\ cam.newx = 0;\ cam.yspeed = 0;\ cam.oldy = 0;\ cam.newy = 0;\ onEnterFrame = function (engine) \{\ _root.boo = (main.user._x+main._x);\ /////////////// \ // SCROLLING //\ ///////////////\ if (main.user.facer == true && _root.xcenter>-70) \{\ _root.xcenter -= 2.5;\ \} else if (main.user.facer == false && _root.xcenter<70) \{\ _root.xcenter += 2.5;\ \}\ if (_root.ycenter>30) \{\ _root.ycenter -= 2.5;\ \} else if (_root.ycenter<30) \{\ _root.ycenter += 2.5;\ \}\ cam.oldx = cam._x;\ cam.oldy = cam._y;\ //if ((main.user._x+main._x) != _root.xcenter) \{\ cam.newx = cam._x*0.8+(main.user._x-_root.xcenter)*0.2;\ cam.newy = cam._y*0.9+(main.user._y-_root.ycenter)*0.1;\ cam.xspeed = cam.newx-cam.oldx;\ cam.yspeed = cam.newy-cam.oldy;\ if ((cam.xspeed>0 && cam.xspeed<.040001) || (cam.xspeed<0 && cam.xspeed>-.040001)) \{\ cam.newx = cam.oldx;\ cam.xspeed = 0;\ \}\ if ((cam.yspeed>0 && cam.yspeed<.140001) || (cam.yspeed<0 && cam.yspeed>-.140001)) \{\ cam.newy = cam.oldy;\ cam.yspeed = 0;\ \}\ cam._y += cam.yspeed;\ bg1._y += (cam.yspeed*.9);\ /*\ if ((main._y>_root.dylimit && (main.user._y+main._y)>_root.ycenter) || (main._y<_root.uylimit && (main.user._y+main._y)<_root.ycenter)) \{\ cam.yspeed = cam._y*0.9-(main.user._y-_root.ycenter)*0.1;\ bg1._y = main._y*.1;\ \}\ */\ cam._x += cam.xspeed;\ bg1._x += (cam.xspeed*.9);\ //\} \ /*\ cam.xspeed = cam.newx-cam.oldx;\ cam.yspeed = cam._y-main.oldy;\ cam._x += cam.xspeed;\ bg1._x += cam.xspeed*.9;\ */\ ////////////// \ // MOVEMENT //\ //////////////\ //\ //(main.user._x+main._x+8.5) = the right side in the middle of the user.\ //The 8.5 gets to the edge of the user from the center.\ //HORIZONTAL MOVEMENT\ //\ //MOVELR - IF 1, MOVING LEFT. IF 2, MOVING RIGHT.\ //The user is moving right. Is he going to hit a wall in the next frame?\ if (main.user.movelr == 2) \{\ if (((main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75), true)) || (main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y), true)) || (main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y+18.75), true)))) \{\ main.user.collide = true;\ main.user.lockr = true;\ main.user.xspeed = 0;\ while (main.user.collide == true) \{\ if (((!main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y-18.75), true)) && (!main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y), true)) && (!main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y+18.75), true)))) \{\ xi += _root.thomas;\ \} else \{\ main.user._x += xi;\ main.user.collide = false;\ xi = 0;\ \}\ \}\ \} else \{\ main.user.lockr = false;\ \}\ //The user is moving left. Is he going to hit a wall in the next frame? \ \}\ if (main.user.movelr == 1) \{\ if (((main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75), true)) || (main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y), true)) || (main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y+18.75), true)))) \{\ main.user.collide = true;\ main.user.lockl = true;\ main.user.xspeed = 0;\ while (main.user.collide == true) \{\ if (((!main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y-18.75), true)) && (!main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y), true)) && (!main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y+18.75), true)))) \{\ xi -= _root.thomas;\ \} else \{\ main.user._x += xi;\ main.user.collide = false;\ xi = 0;\ \}\ \}\ \} else \{\ main.user.lockl = false;\ \}\ //The user isn't moving. Does he touch a wall to the left?\ \}\ if (main.user.movelr == 0) \{\ if (((main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75), true)) || (main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed), (main.user._y+main._y), true)) || (main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed), (main.user._y+main._y+18.75), true)))) \{\ main.user.collide = true;\ main.user.lockl = true;\ main.user.xspeed = 0;\ while (main.user.collide == true) \{\ if (((!main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y-18.75), true)) && (!main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y), true)) && (!main.limit.hitTest((main.user._x+main._x-12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y+18.75), true)))) \{\ xi -= _root.thomas;\ \} else \{\ main.user._x += xi;\ main.user.collide = false;\ xi = 0;\ \}\ \}\ \} else \{\ main.user.lockl = false;\ \}\ //The user isn't moving. Does he touch a wall to the right?\ if (main.user.movelr == 0) \{\ if (((main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75), true)) || (main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed), (main.user._y+main._y), true)) || (main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed), (main.user._y+main._y+18.75), true)))) \{\ main.user.collide = true;\ main.user.lockr = true;\ main.user.xspeed = 0;\ while (main.user.collide == true) \{\ if (((!main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y-18.75), true)) && (!main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y), true)) && (!main.limit.hitTest((main.user._x+main._x+12+main.user.xspeed+cam.xspeed+xi), (main.user._y+main._y+18.75), true)))) \{\ xi += _root.thomas;\ \} else \{\ main.user._x += xi;\ main.user.collide = false;\ xi = 0;\ \}\ \}\ \} else \{\ main.user.lockr = false;\ \}\ \}\ \}\ if (Key.isDown(_root.rightkey)) \{\ main.user.movelr = 2;\ if (main.user.lockr != true) \{\ if (main.user.xspeed-main.user.maxrunspd) \{\ if (main.user.xspeed>0) \{\ main.user.xspeed -= main.user.runspeed*2;\ \} else \{\ main.user.xspeed -= main.user.runspeed;\ \}\ main.user.facer = false;\ \}\ \}\ main.user._x += main.user.xspeed;\ \} else \{\ main.user._x += main.user.xspeed;\ if (main.user.xspeed>0) \{\ main.user.movelr = 2;\ main.user.xspeed -= main.user.runspeed;\ \} else if (main.user.xspeed<0) \{\ main.user.movelr = 1;\ main.user.xspeed += main.user.runspeed;\ \} else \{\ main.user.movelr = 0;\ \}\ \}\ //\ //VERTICAL MOVEMENT\ //\ //18.75 to the bottom & top\ //MOVEUD - IF 1, MOVING UP. IF 2, MOVING DOWN. IF 0, NO VERTICAL MOVEMENT.\ if (main.user.moveud == 0) \{\ //Is the user under a block and is unable to jump?\ if (main.user.air != true) \{\ if ((main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-30-main.user.jumpspeed+cam.yspeed), true)) || (main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-30-main.user.jumpspeed+cam.yspeed), true))) \{\ main.user.locku = true;\ \} else \{\ main.user.locku = false;\ \}\ \}\ \}\ //Is the user's head hitting the limit while jumping? \ if (main.user.moveud == 1) \{\ if ((main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75+main.user.yspeed+cam.yspeed), true)) || (main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75+main.user.yspeed+cam.yspeed), true))) \{\ main.user.collide = true;\ main.user.locku = true;\ while (main.user.collide == true) \{\ if ((!main.limit.hitTest((main.user._x+main._x+8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75+main.user.yspeed+yi+cam.yspeed), true)) && (!main.limit.hitTest((main.user._x+main._x-8.5+main.user.xspeed+cam.xspeed), (main.user._y+main._y-18.75+main.user.yspeed+yi+cam.yspeed), true))) \{\ yi -= _root.thomas;\ \} else \{\ main.user._y += yi;\ main.user.collide = false;\ yi = 0;\ \}\ \}\ \}\ \}\ //The user is falling. Is he touching the ground? \ if (main.user.moveud == 2) \{\ if ((main.limit.hitTest((main.user._x+main._x+8.5), (main.user._y+main._y+18.75+main.user.yspeed+cam.yspeed), true)) || (main.limit.hitTest((main.user._x+main._x-8.5), (main.user._y+main._y+18.75+main.user.yspeed+cam.yspeed), true))) \{\ main.user.collide = true;\ main.user.air = false;\ main.user.yspeed = 0;\ while (main.user.collide == true) \{\ if ((!main.limit.hitTest((main.user._x+main._x+8.5), (main.user._y+main._y+18.75+main.user.yspeed+yi+cam.yspeed), true)) && (!main.limit.hitTest((main.user._x+main._x-8.5), (main.user._y+main._y+18.75+main.user.yspeed+yi+cam.yspeed), true))) \{\ yi += _root.thomas;\ \} else \{\ main.user._y += yi;\ main.user.collide = false;\ yi = 0;\ \}\ \}\ \}\ //The user is touching the ground. Has he ran over a gap? If so, he's falling. \ \} else if (main.user.moveud == 0) \{\ if ((main.limit.hitTest((main.user._x+main._x+8.5), (main.user._y+main._y+21+main.user.yspeed+cam.yspeed), true)) || (main.limit.hitTest((main.user._x+main._x-8.5), (main.user._y+main._y+21+main.user.yspeed+cam.yspeed), true))) \{\ main.user.collide = true;\ main.user.air = false;\ main.user.yspeed = 0;\ while (main.user.collide == true) \{\ if ((!main.limit.hitTest((main.user._x+main._x+8.5), (main.user._y+main._y+21+main.user.yspeed+yi+cam.yspeed), true)) && (!main.limit.hitTest((main.user._x+main._x-8.5), (main.user._y+main._y+21+main.user.yspeed+yi+cam.yspeed), true))) \{\ yi += _root.thomas;\ \} else \{\ main.user._y += yi;\ main.user.collide = false;\ yi = 0;\ \}\ \}\ \} else \{\ //if not, then they're in the air.\ main.user.air = true;\ \}\ \}\ if (Key.isDown(_root.jumpkey)) \{\ if (main.user.holdu != true) \{\ main.user.holdu = true;\ if (main.user.air != true) \{\ if (main.user.locku != true) \{\ main.user.yspeed = main.user.jumpspeed;\ main.user.air = true;\ \}\ \}\ \}\ \} else \{\ main.user.holdu = false;\ \}\ if (main.user.air == true) \{\ if (main.user.yspeed<0 && main.user.locku == true) \{\ main.user.yspeed = 0;\ \} else \{\ main.user._y += main.user.yspeed;\ if (main.user.yspeed0) \{\ main.user.moveud = 2;\ \} else \{\ main.user.moveud = 0;\ \}\ \};\ }