J'ai du mal à faire passer une valeur flottante d'un objet à un autre. La valeur semble correcte dans la première méthode, mais dans la seconde, elle est énorme. Je suppose qu'il s'agit d'un problème de typage, car c'est la chose que je comprends le moins bien. Toute aide est la bienvenue !
Dans mon contrôleur de jeu, je fais ça :
float accuracy = (float)hitCount/(float)(hitCount+missCount);
NSLog(@"GameController - hits: %i misses: %i enemies: %i accuracy: %f", hitCount, missCount, escapedCount, accuracy);
[delegate postGameWithScore:roundScore andAccuracy:accuracy];
qui invoque cette méthode dans le délégué du contrôleur de jeu :
-(void)postGameWithScore:(NSInteger)score andAccuracy:(float)accuracy {
cumulativeScore += score;
NSLog(@"GameMaster - score: %i accuracy %f",cumulativeScore, accuracy);
/* non relevant code clipped */
}
Salida:
GameController - hits: 14 misses: 54 enemies: 35 accuracy: 0.205882
GameMaster - score: 3800 accuracy 36893488147419103232.000000
Je n'arrive pas à comprendre pourquoi accuracy
n'est pas correct dans le second NSLog.