Многопользовательская игра, как использовать мультитач - PullRequest
0 голосов
/ 21 декабря 2011

Я делаю игру, в которой 2 человека имеют экран iphone по обе стороны, чтобы переместить свою фигуру.У меня возникли проблемы с мультитач-частью, также включена функция множественного касания.Это текущий код, мне нужно, чтобы оба пользователя могли двигаться одновременно, в настоящее время только один может.

Желтый и зеленый - это две части, которые перемещаются (только по оси x)

-(void)touchesMoved:(NSSet *)touches withEvent:(UIEvent *)event{
touch = [[event touchesForView:self.view] anyObject];
location = [touch locationInView:self.view];  
if (location.y > 230) { 
    locationYellow = location; 
    yellow.center = CGPointMake(locationYellow.x, yellow.center.y); 
}else{
    locationGreen = location;   
    if (VSModeON == YES) {
        green.center = CGPointMake(locationGreen.x, green.center.y);
    }
  }
}

1 Ответ

1 голос
/ 21 декабря 2011
touch = [[event touchesForView:self.view] anyObject]; 

Это берет, как это кажется, любой объект от прикосновений. Этот код обычно используется, когда вы ожидаете только одного прикосновения. Ваш текущий код будет обрабатывать только одно касание за раз.

Для мультитач необходимо проанализировать каждое касание в наборе [event touchesForView:self.view] и действовать соответственно.

Так что-то вроде

for (UITouch *aTouch in [event touchesForView:self.view])
{
    // Deal with each touch here...
}
...