var XH_Num=null; var mainImg = new Image(); mainImg.src = "images/player/"+PlayerSex+"/body_"+PlayerHead+".gif"; document.write("
") for(var i=0;i
"); } } document.write("") function movingMan(p){ this.oldPoint = p; this.nowPoint = p; this.container = $("container"); this.direction = 0; // 0--下; 1--左; 2--右; 3--上; 4--左下; 5--右下; 6--左上; 7--右上 this.order = 0; //行走顺序 this.count = 0; //行走延时切换图片 this.endPoint; this.timer; srcObj = this; var onfinish=function() {}; this.shiftImage = function(){ if(arguments[0] == true) this.order = 0; this.container.scrollTop = 80 * this.direction+1; this.container.scrollLeft = 80 * this.order; this.order++; if(this.order == 7) this.order = 0; } this.move = function(){ if(Math.abs(srcObj.nowPoint.x - srcObj.endPoint.x) <=1 && Math.abs(srcObj.nowPoint.y-srcObj.endPoint.y)<=1) { window.clearInterval(srcObj.timer); onfinish(); //srcObj.shiftImage(true); }else if(Math.abs(srcObj.nowPoint.x-srcObj.endPoint.x)<=1) { if(srcObj.nowPoint.y < srcObj.endPoint.y) srcObj.direction = 0; else srcObj.direction = 3; }else if(Math.abs(srcObj.nowPoint.y-srcObj.endPoint.y)<=1){ if(srcObj.nowPoint.x < srcObj.endPoint.x) srcObj.direction = 2; else srcObj.direction = 1; }else{ if(srcObj.nowPoint.x > srcObj.endPoint.x){ if(srcObj.nowPoint.y < srcObj.endPoint.y) srcObj.direction = 4; else srcObj.direction = 6; }else{ if(srcObj.nowPoint.y < srcObj.endPoint.y) srcObj.direction = 5; else srcObj.direction = 7; } } switch (srcObj.direction){ case 0:{srcObj.nowPoint.y ++; break;} case 1:{srcObj.nowPoint.x --; break;} case 2:{srcObj.nowPoint.x ++; break;} case 3:{srcObj.nowPoint.y --; break;} case 4:{srcObj.nowPoint.x --; srcObj.nowPoint.y ++; break;} case 5:{srcObj.nowPoint.x ++; srcObj.nowPoint.y ++; break;} case 6:{srcObj.nowPoint.x --; srcObj.nowPoint.y --; break;} case 7:{srcObj.nowPoint.x ++; srcObj.nowPoint.y --; break;} } srcObj.container.style.left = srcObj.nowPoint.x - 25 + "px"; srcObj.container.style.top = srcObj.nowPoint.y - 70 + "px"; $('containame').style.left= srcObj.nowPoint.x - 36 + "px"; $('containame').style.top = srcObj.nowPoint.y - 86 + "px"; srcObj.count++; if(srcObj.count % 8 == 0) { srcObj.shiftImage(); srcObj.count = 0; } } this.Go = function(p,onfinished){ this.endPoint = p; onfinish=onfinished||function(){}; window.clearInterval(this.timer); this.timer = window.setInterval(srcObj.move, 10); } this.shiftImage(true); } function Point(){ this.x = arguments[0]?arguments[0]:0; this.y = arguments[1]?arguments[1]:0; } function startMove(e) { //if(event.srcElement.id == "container" || event.srcElement.tagName == "IMG") return; if(event.srcElement.className != "0") {return}; var end=[Math.floor((event.x-33)/30),Math.floor((event.y-33)/30)]; var start=[Math.floor((actor.nowPoint.x-33)/30),Math.floor((actor.nowPoint.y-33)/30)]; var pathfinder=new pathSearch(); //alert(start); map[start[1]+1][start[0]+1]=2 map[end[1]+1][end[0]+1]=3 pathfinder.loadArrMap(map); map[start[1]+1][start[0]+1]=0 map[end[1]+1][end[0]+1]=0 //alert(start); pathfinder.bfs(); //pathfinder.show(); //pathfinder.showPath(pathfinder.getPath()); //alert(end); if(pathfinder.getPath()) stepqueue=pathfinder.getPath().tran(); stepqueue.shift(); //alert(stepqueue.join(" ")) if(!moving) {doMove()} //actor.Go(new Point(event.x, event.y)); } var stepqueue=[]; var moving=false; function doMove() { //移动停止时 if(!stepqueue.length) { container.scrollLeft=0; moving=false; parent.ScrollMain(container.offsetLeft,container.offsetTop); //触发事件 EventNow(); return; } var step=stepqueue.shift(); //alert(step); XH_Num=step; //alert( [(step[1]-3)*30+33+15,(step[0]-2)*30+33+15] ) actor.Go(new Point((step[1]-3)*30+33+15,(step[0]-2)*30+33+15),doMove); parent.PlaySE(7); } function $(){return document.getElementById?document.getElementById(arguments[0]):eval(arguments[0]);} document.onclick = startMove; var _left = XH_L; var _top = XH_T; //按键事件 //document.onkeydown = function(){ //alert(XH_Num); //parent.PlaySE(5); //alert(actor.direction + " " + actor.order) //} document.write("
"+PlayerName+"
"); var actor = new movingMan(new Point(_left+25, _top+70)); //跳转 function GoUrl(URL) {location.href=URL} //加载网页后执行 window.onload=function() { $("MapScene").innerHTML=LoadScene(); AjaxInfo(); parent.PlaySE(0); }