Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private function doLogCheck():void {
- var log:Array = _gameStats.statsLog(true);
- MonsterDebugger.trace(this, log);
- var totalLogScore :int;
- for (var i:int = 0; i < log.length; i++) {
- var item:Object = log[i];
- switch(item.stat_type) {
- case 'pizza_points':
- if (item.value > GameStats.HIT_POINTS)
- return invalidStatsException('INVALID PIZZA DELIVERY POINTS', i);
- totalLogScore += item.value;
- break;
- case 'combo_bonus':
- if (item.value / item.extra_type != GameStats.COMBO_BONUS)
- return invalidStatsException('INVALID COMBO BONUS VALUE', i);
- totalLogScore += item.value;
- break;
- case 'bakeren_bonus':
- if ((item.extra_type == 'CopperToken' && item.value != 100) ||
- (item.extra_type == 'SilverToken' && item.value != 300) ||
- (item.extra_type == 'GoldToken' && item.value != 500))
- return invalidStatsException('INVALID TOKEN BONUS VALUE', i);
- totalLogScore += item.value;
- break;
- case 'bonus_time':
- if (item.value != GameStats.TIME_BONUS) return invalidStatsException('INVALID BONUS TIME VALUE', i);
- break;
- case 'blind_hit':
- if (item.value != GameStats.BLIND_HIT_BONUS) return invalidStatsException('INVALID BLIND HIT BONUS VALUE', i);
- totalLogScore += item.value;
- break;
- default:
- return invalidStatsException('INVALID STATS TYPE ', i);
- break;
- }
- var prevItem:Object = i > 0 ? log[i - 1] : null;
- if (item.time_stamp > 90000 || (prevItem && (item.time_stamp > prevItem.time_stamp && prevItem.stat_type != 'bonus_time'))) {
- return invalidStatsException('INVALID TIME GROWTH', i);
- }
- }
- var scoreIsValid:Boolean = totalLogScore == _gameStats.points;
- trace('score is VALID :', scoreIsValid);
- }
- private function invalidStatsException(type:String, atIndex:int):void {
- // за дебъг цели запазваме
- // log - във вид подаден в POST (string)
- // type - евентуална причина за несъответствието
- // atIndex - индекс на елемента в log масива при който е установено несъответствието
- trace('invalid stats exception:', type, 'atIndex:', atIndex);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement