0
我試圖製作一個基於光標移動的遊戲(如agar.io),但是當圖像在畫布上呈現時,它會放置在距離原點比我遠4倍的位置希望它是。錯誤位置在畫布上的圖像
的JavaScript,CSS,HTML:
function combined() {
movechar(direction())
draw()
}
function draw() {
//context.save()
context.clearRect(0, 0, canvas.width, canvas.height);
//cont.restore()
context.drawImage(img, xChar, yChar)
//context.drawImage(img,1,1)
}
function direction() {
var delX = xCor - xChar
var delY = yCor - yChar
var delta = Math.sqrt(delX * delX + delY * delY)
var dirX = delX/delta
var dirY = delY/delta
return [dirX, dirY]
}
function movechar(dirArr) {
xChar += dirArr[0]
yChar += dirArr[1]
}
var d = new Date()
var sTime = d.getTime()
console.log(sTime)
var canvas = document.getElementById("playerCanvas")
var context = canvas.getContext('2d')
context.im
var img = new Image()
img.src = "char.bmp", img.width = 8, img.height = 8
var xCor = 0
var yCor = 0
var xChar = canvas.clientWidth/2
var yChar = canvas.clientHeight/2
$("canvas").on("mousemove", function (e) { xCor = e.clientX; yCor = e.clientY; })
function docload() { setInterval(combined,30) }
body {
margin: 0px;
overflow: hidden;
}
canvas#playerCanvas {
width : 100%;
height : 100%;
margin : 0%;
background-image : url("floor2.bmp");
background-repeat : repeat;
}
<html>
<head>
<title>wizard.io</title>
<script src="jquery.js"></script>
<link rel="stylesheet" href="koolLooks.css">
<noscript>Ur browser sux</noscript>
</head>
<body onload="docload()">
<canvas id="playerCanvas"></canvas>
<script src="ok2hax.js"></script>
<script src="eligal2hax.js"></script>
</body>
</html>
你是怎麼得到的'innerWidth'和'innerHeight'變量標記呢?否則,謝謝。 – opfromthestart
@opfromthestart'innerWidth'和'innerHeight'是作爲窗口對象的一部分的標準全局變量。 https://developer.mozilla.org/en-US/docs/Web/API/Window – Blindman67