OK.
I just updated the link with a new sample that uses two buttons to move the character to the left and to the right.
import flash.display.MovieClip;
import flash.events.Event;
import flash.events.MouseEvent;
var player:MovieClip = cam.player;
var map:MovieClip = cam.map;
var buttonForce:uint = 10;
var leftPressed:Boolean = false;
var rightPressed:Boolean = false;
function mouseDownHandler(e:MouseEvent):void
{
if (e.target == leftButton)
leftPressed = true;
else if (e.target == rightButton)
rightPressed = true;
}
function mouseUpHandler(e:MouseEvent):void
{
leftPressed = false;
rightPressed = false;
}
function enterFrameHandler(e:Event):void
{
if (leftPressed)
player.x -= buttonForce;
else if (rightPressed)
player.x += buttonForce;
if (leftPressed || rightPressed)
{
limitPlayer();
moveCam();
}
}
function limitPlayer():void
{
player.x = clamp(player.x, player.width * 0.5, map.width - player.width * 0.5);
player.y = clamp(player.y, player.height * 0.5, map.height - player.height * 0.5);
}
function moveCam():void
{
cam.x = clamp(-player.x + stage.stageWidth * 0.5, -map.width + stage.stageWidth, 0);
cam.y = clamp(-player.y + stage.stageHeight * 0.5, -map.height + stage.stageHeight, 0);
}
function clamp(value:Number, min:Number, max:Number):Number
{
if (value < min)
return min;
if (value > max)
return max;
return value;
}
function start():void
{
limitPlayer();
moveCam();
stage.addEventListener(Event.ENTER_FRAME, enterFrameHandler);
stage.addEventListener(MouseEvent.MOUSE_DOWN, mouseDownHandler);
stage.addEventListener(MouseEvent.MOUSE_UP, mouseUpHandler);
}
start();
I hope this helps.