, поэтому я делаю игру в стиле платформера и пытаюсь сделать тест с линией, если это имеет смысл. Прямо сейчас у меня есть объект, который перемещается и всякий раз, когда вы двигаетесь вправо, если нижняя правая или верхняя правая сторона попадает в мир, вы перестаете двигаться. такой же предмет установлен с левым. Это работает, однако, если «мировой» мувиклип слишком мал и не попадает ни в один из пунктов, которые вы можете пройти прямо через него. Итак, мне нужно сделать сплошную линию между точками и иметь hitTest с этим?Хит-тест с линией
else if (keyIsDown(Keyboard.RIGHT))
{
//dude.gotoAndStop("right");
//obj.scaleX = 1;
for (i = 0; i<speedX; i++)
{
obj.x++;
dude.ball.rotation++;
if (status == "ground")
{
dude.height+= 0.05;
dude.width += 0.05;
}
if (world.hitTestPoint(obj.x + obj.width/8 - obj.width/2, obj.y - obj.height/4,true) || world.hitTestPoint(obj.x + obj.width/2,obj.y - obj.height + obj.height/4,true))
//this is what dictates the points that hit, trying to make it test a hit with a solid line between the 2 points.
//if (world.hitTestObject(dude.hitD))
{
dude.ball.rotation--;
obj.x--;
break;
}
}
}
dude.gotoAndStop(1);
}
строки кода я попытался добавить
else if (keyIsDown(Keyboard.RIGHT))
{
//dude.gotoAndStop("right");
//obj.scaleX = 1;
for (i = 0; i<speedX; i++)
{
obj.x++;
dude.ball.rotation++;
myShape.graphics.moveTo(obj.x + obj.width/8 - obj.width/2,obj.y - obj.height/4);
myShape.graphics.lineTo(obj.x + obj.width/2, obj.y - obj.height + obj.height/4);
// The number in obj.y-4 affects the climbing ability
if (status == "ground")
{
//dude.height+= 0.05;
//dude.width += 0.05;
}
if (obj.hitTestObject(myShape))
{
dude.ball.rotation--;
obj.x--;
break;
}
}
}
dude.gotoAndStop(1);
}
так почему бы не сделать эту сплошную линию и дать ей «solid_line.alpha = 0;» теперь ее невидимым для глаза, но компьютер может обнаружить «удар» против него? Ваш вопрос непонятен. Вы не знаете, как сделать линию или что? –
@ VC.One Уже пробовал это, добавляя эту форму линии, может быть, я не делаю это правильно? См. Edit – Trows