¿Cómo hago para que una cuenta regresiva del temporizador y la otra muevan un objeto al azar?

Tengo el código correcto para mover un objeto al azar y también para hacer que los números cuenten hacia atrás, pero no puedo hacer que un objeto se mueva mientras el temporizador realiza la cuenta regresiva. Sin embargo, una cosa que encontré extraña fue que cuando saqué la parte de la etiqueta TimeLeft, los objetos se movieron al azar, pero obviamente los números no contaron.

La pregunta principal es: ¿cómo puedo tener una cuenta regresiva del temporizador y hacer que el objeto se mueva al mismo tiempo?

(mi objetivo principal es hacer que el objeto deje de moverse una vez que el temporizador llegue a cero)

¿Le agradecería mucho si alguien pudiera ayudarme con este problema?

-(void)Workauto{
secondsCount1 = 10;
autoperiods = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(autoperiod) userInfo:nil repeats:YES];
}

-(void)autoperiod{
secondsCount1 = secondsCount1 -1;
int minuts = secondsCount1/ 60;
int seconds = secondsCount1 - (minuts * 60);

NSString *timerOutput = [NSString stringWithFormat:@"%2d:%.2d", minuts , seconds];
Count.text = timerOutput;
if (secondsCount1 == 0){
    secondsCount1=0;
    [autoperiods invalidate];
    autoperiods=nil;

    Count.hidden=YES;
    AutoTimeLeftLabel.hidden=YES;
    TimeLeft.hidden=NO;
    TimeLeftlabel.hidden=NO;

    Ball.hidden=NO;
    Ball2.hidden=NO;
    BluBall.hidden=NO;
    BluBall2.hidden=NO;

    RedHigh1.hidden=YES;
    RedHigh2.hidden=YES;
    RedHigh3.hidden=YES;
    RedHigh4.hidden=YES;

    RedLow1.hidden=YES;
    RedLow2.hidden=YES;

    BlueHigh1.hidden=YES;
    BlueHigh2.hidden=YES;
    BlueHigh3.hidden=YES;
    BlueHigh4.hidden=YES;

    BlueLow1.hidden=YES;
    BlueLow2.hidden=YES;

    RedMid1.hidden=YES;
    RedMid2.hidden=YES;
    RedMid3.hidden=YES;
    RedMid4.hidden=YES;

    BlueMid1.hidden=YES;
    BlueMid2.hidden=YES;
    BlueMid3.hidden=YES;
    BlueMid4.hidden=YES;

    move = [NSTimer scheduledTimerWithTimeInterval:0.03 target:self selector:@selector(move) userInfo:nil repeats:YES];
    pos = CGPointMake(4.0, -4.0);
    move2 = [NSTimer scheduledTimerWithTimeInterval:0.04 target:self selector:@selector(move2) userInfo:nil repeats:YES];
    pos2 = CGPointMake(3.0, 4.0);
    Update = [NSTimer scheduledTimerWithTimeInterval:0.01 target:self selector:@selector(onTimer) userInfo:nil repeats:YES];
    DPad = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(DPad) userInfo:nil repeats:YES];

    //RedGoals = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(RedGoals) userInfo:nil repeats:YES];
    //BlueGoals = [NSTimer scheduledTimerWithTimeInterval:0.001 target:self selector:@selector(BlueGoals) userInfo:nil repeats:YES];
    [self SetTimer];
}
}

-(void)SetTimer{
comeonandcount = 150;
GameTimer = [NSTimer scheduledTimerWithTimeInterval:1.0 target:self selector:@selector(GameTimerCo) userInfo:nil repeats:YES];
}

-(void)GameTimerCo{
comeonandcount = comeonandcount - 1;
int minuts = comeonandcount / 60;
int seconds = comeonandcount - (minuts * 60);

NSString *timerOutputGame = [NSString stringWithFormat:@"%2d:%.2d", minuts , seconds];
TimeLeft.text = timerOutputGame;

if (comeonandcount == 0){
    comeonandcount=0;
    [GameTimer invalidate];
    GameTimer=nil;

    [move invalidate];
    [move2 invalidate];
}
}

Respuestas a la pregunta(1)

Su respuesta a la pregunta