<script src="http://spelprogrammering.nu/simple.js">
function start()
{
A = {v: {x: 3, y: -2}, x: 40, y: 400};
B = {v: {x: 0, y: 0}, x: 420, y: 180};
}
function update()
{
fill("black");
// Räkna ut nya positioner på bollarna
A.x += A.v.x;
A.y += A.v.y;
B.x += B.v.x;
B.y += B.v.y;
circle(A.x, A.y, 20, "red");
circle(B.x, B.y, 20, "green");
// Kolla om kollision uppstått
if (distance(A, B) < 40)
{
var normalVector = {x: A.x-B.x,
y: A.y-B.y};
var normalUnitVector = math.normalizeVector(normalVector);
var tangentUnitVector = {x: -normalUnitVector.y,
y: normalUnitVector.x};
var ANormal = math.dotProduct(A.v, normalUnitVector);
var ATangent = math.dotProduct(A.v, tangentUnitVector);
A.v = math.multiplyScalar(tangentUnitVector, ATangent);
B.v = math.multiplyScalar(normalUnitVector, ANormal);
}
}
</script>
Gå tillbaka