11-25-2012, 10:35 PM
Решил чисто для себя написать программку, в которой персонаж перемещается в координатной плоскости (в дальнейшем вставлю логику в свой сервер который пишу с 0).
Столкнулся со следующей проблемой.
вот код
Копался в исходниках лыжи но с ихними методиками так и не разобрался,
да к тому же хотелось бы самому дойти до решения а не тупо копипастить.
Да и еще вопрос, как какой промежуток времени поставить в прозвон,
да так чтобы не перегружать процессор но и не терять качества. И стоит ли вообще использовать sleep, быть может есть вариант получше? знания java есть, но мало практики в написании собственных программ, вот и решил исправлять этот пробел
Столкнулся со следующей проблемой.
вот код
Код:
public void move(int x, int y) throws InterruptedException
{
double distance;
double time;
double currentLocX;
double currentLocY;
//Формула расчета расстояния от точки до точки в координатной плоскости.
distance = Math.sqrt((x - locX)*(x - locX) + (y - locY)*(y - locY));
time = distance/this.speed;
System.out.println("Персонаж должен пройти расстояние равное :" + distance);
for(int i = 0; i < time; i++)
{
Thread.sleep(1000);
currentLocX = [color=Red]КАК ВЫЧИСЛИТЬ???[/color] //координата по X в данный момент времени
currentLocY = [color=red]КАК ВЫЧИСЛИТЬ???[/color] //координата по Y в данный момент времени
System.out.println("Персонаж прошел 1 секунду. И его координаты : X = " + currentLocX + " Y = " + currentLocY);
}
System.out.println("Персонаж дошел до конечной точки.");
}
Копался в исходниках лыжи но с ихними методиками так и не разобрался,
да к тому же хотелось бы самому дойти до решения а не тупо копипастить.
Да и еще вопрос, как какой промежуток времени поставить в прозвон,
да так чтобы не перегружать процессор но и не терять качества. И стоит ли вообще использовать sleep, быть может есть вариант получше? знания java есть, но мало практики в написании собственных программ, вот и решил исправлять этот пробел