var gameInterval;
;(function(k, e) {
    var A = k.WBActivity.resize = function() {
		resize();
	};
    var c = k.WBActivity.start = function() {
			k.WBActivity.hideLoading();
			bingkjj();
			$(".yyy3d").show();
			msg_control.init();
			if(rotate_id==0){
				 layer.msg('游艇赛活动已经全部结束!');
				 showScore();
				 return;
			}else{
				initpage();
			}
			$('body').css({
			  'background':"none"
			});
			$(".welcome_box").show(function(){//开页动效果
					$('.main_box').css('display','flex');
					$(this).find('.main_left').animateControl('rotateInDownLeft');
					$(this).find('.main_right').animateControl('rotateInDownRight',function(){
						getuser();
					});
			});
			if(RoundStatus==2){
				layer.alert('当前轮次正处进行中，用户无法参与，需要重置当前轮次！', {
					title: ['温馨提示', 'font-size:18px;'],
					closeBtn:0,
					shade :0.6,
					move:false
				}, function(){
					var layer_iiii = layer.load(2, {shade: false});
					$.ajax({
						url: PATH_ACTIVITY + Path_url('yacht_status'),
						timeout: 10000,
						type: 'POST',
						dataType: 'json',
						data: {rid: scene_id,rotate_id: rotate_id,type: "reset"},
						success: function (json) {
							layer.close(layer_iiii);
							if(json.errno==0){
								msg_control.ws.send('{"type":"yacht","ttype":"gamereset","openid":"meepo_xinchang_yacht"}');
								layer.msg('重置成功',{time:2000});
								window.location.reload();
							}else{
								layer.msg('网络错误、请稍后重试！',{time:2000});
								
							}
						}
					});
				});
			}
			$(".paiming").on('click',function(){//开始
				if(rotate_id!='0'){
				 showScore(rotate_id);
				}
			});
			$(".startbtn").on('click',function(){//开始
				$(".welcome_box").animateControl('bounceOut',function(){ 
					$('.welcome_box').hide();
					var countbox = $('.cutdown-start');
					countbox.html(ready_time).show().css({
						"margin-left": -countbox.width() / 2 + "px",
						"margin-top": -countbox.height() / 2 + "px",
						"font-size": countbox.height() * 0.7 + "px",
						"line-height": countbox.height() + "px"
					});
					hideSlogan();
					msg_control.ws.send('{"type":"yacht","ttype":"gamestart","openid":"meepo_xinchang_yacht"}');
					countdown(ready_time,function(c){//返回倒计时时间
					  if(!countbox.hasClass("cutdownan-imation")){
						  countbox.addClass("cutdownan-imation")
					  }
					  countbox.html(c);
					},function(){//倒计时结束
						clearInterval(user_interval);
						countbox.removeClass("cutdownan-imation").hide();
						$(".yyy3d_title_box .time-down").text(game_time);
						$(".yyy3d_title_box").show().animateControl('shake');
						if($("#carrun").length>0){
							$("#carrun")[0].play();
						}
						$(".paomabeijing2,.paomabeijing,.tracklist,.player .lunzia,.player .lunzib").addClass('okplay');//开启移动效果
						gameInterval = setInterval(function(){
							msg_control.ws.send('{"type":"yacht","ttype":"gameusers","openid":"meepo_xinchang_yacht"}');
						},500);
						game_countdown(game_time,function(k){
							$(".yyy3d_title_box .time-down").text(k);
						},function(){
							var layer_i = layer.load(2, {shade: false});
							var Post_user = total_user.slice(0,post_persons);
							var True_user = del_Notneed(Post_user);
							$.ajax({
								url: PATH_ACTIVITY + Path_url('yacht_tstop'),
								timeout: 15000,
								type: 'POST',
								dataType: 'json',
								data: {"rid": scene_id,"rotate_id": rotate_id,"user":JSON.stringify(True_user)},
								success: function (json) {
									layer.close(layer_i);
									if(json.errno==0){
										$("#Audio_Gameover")[0].play();
										show_gameresult(rankTopTen);
									}else{
										layer.msg("网络太差、数据存贮失败!");
									}
								}, 
								error: function(e) { 
									layer.msg("链接服务器失败了");
								} 
							});
						},function(){
							msg_control.ws.send('{"type":"yacht","ttype":"gameend","openid":"meepo_xinchang_yacht"}');
							$(".paomabeijing2,.paomabeijing,.tracklist,.player .lunzia,.player .lunzib").removeClass('okplay');
							$(".yyy3d_title_box").html("游戏结束!");
							if($("#carrun").length>0){
								$("#carrun")[0].pause();
							}
							clearInterval(gameInterval);
							game_end = 1;
						});
					},function(){
						countbox.html("GO!");
						$.getJSON(PATH_ACTIVITY + Path_url('yacht_status'), {rid: scene_id,rotate_id: rotate_id,type: "start"},
						function(c) {
							if (c.errno == 0) {
								
							}else if(c.errno==-2){
								countbox.hide();
								layer.msg("当前轮数无人参与、无法开始!");
								//window.location.reload();
							} else {
								layer.msg("游戏初始参数错误！");
								//window.location.reload();
							}
						}).fail(function() {
							layer.msg("无法连接游戏服务器！");
							//window.location.reload();
						})
					});
				});
			});
			$(".nextbtn").on('click',function(){//关闭排行榜
				msg_control.ws.send('{"type":"yacht","ttype":"gamereset","openid":"meepo_xinchang_yacht"}');
				window.location.reload();
			});
			$(".resetbtn").on('click',function(){//关闭排行榜
				layer.confirm('您确定重玩本轮游戏么吗？', {
					  title:false,
					  btn: ['确定', '取消'],
					}, function(index, layero){
							var layer_i = layer.load(2, {shade: false});
							$.ajax({
								url: PATH_ACTIVITY + Path_url('yacht_status'),
								timeout: 10000,
								type: 'POST',
								dataType: 'json',
								data: {rid: scene_id,rotate_id: rotate_id,type: "reset"},
								success: function (json) {
									layer.close(layer_i);
									if(json.errno==0){
										msg_control.ws.send('{"type":"yacht","ttype":"gamereset","openid":"meepo_xinchang_yacht"}');
										layer.msg('重置成功',{time:2000});
										window.location.reload();
									}else{
										layer.msg('网络错误、请稍后重试！',{time:2000});
										
									}
								}
							});
					}, function(index){
						layer.close(index);
					});
			});
    }
})(window, jQuery);
var show_gameuser = function(list){
			list = transform(list);
			list = list.sort(function(a, b){
				return b.yacht_score - a.yacht_score;
			});
			total_user = list;
			if ($.isArray(list) && list.length>0) {
				rankTopTen = list.slice(0, 10);
				var $players = $(".player");
				$players.each(function(n) {
					var p = rankTopTen[n];
					if(p){
						var avatar = p.client_avatar;
						var nickname = p.client_name;
						var progress = (p.yacht_score/max_score)*100;
						$(this).css("left",progress+'%');
						$(this).find('.head').css({
							"background-image":"url("+avatar+")"
						});
						$(this).find('.nickname').text(nickname);
						$(this).show();
					}
				});
			}
}
var show_gameresult = function(rankTop){
	if ($.isArray(rankTop) && rankTop.length>0) {
		var rank_others = $('.rank_others li');
		$.each(rankTop,function(k,v) {
			var j = rankTop[k];
			if(j && k<3){
				if(k==0){
					$('.rank1').find('.avarta img').attr('src',j.client_avatar);
					$('.rank1').find('p').text(j.client_name);
				}else if(k==1){
					$('.rank2').find('.avarta img').attr('src',j.client_avatar);
					$('.rank2').find('p').text(j.client_name);
				}else{
					$('.rank3').find('.avarta img').attr('src',j.client_avatar);
					$('.rank3').find('p').text(j.client_name);
				}	
			}
			if(j && k>=3){
				var eq_index = k - 3;
				rank_others.eq(eq_index).find('.avarta').attr('src',j.client_avatar);
				rank_others.eq(eq_index).find('p').text(j.client_name);
			}
		});
	}
	$(".rank_box").show().animateControl('bounceIn');//显示排行榜
}
function showScore(b) {
    var a = PATH_ACTIVITY + Path_url('yacht_result')+"&rid=" + scene_id;
    if (b != undefined) {
        a += "&rotate_id=" + b
    }
    $.showPage(a)
}
function transform(obj){
    var arr = [];
    for(var item in obj){
	  if(obj[item].client_openid!='meepo_xinchang_yacht'){
			arr.push(obj[item]);
	  }
    }
    return arr;
}
function del_Notneed(arr){
	var newArr = [];
	if($.isArray(arr)){
		var userListlength = arr.length;
		if(userListlength>0){
			for(var z=0;z<userListlength;z++){
				newArr.push({openid:arr[z]['client_openid'],score:arr[z]['yacht_score']});
			}
			return newArr;
		}
	}
	return newArr;
}
function countdown(c,d, a,f) {
	var b = setInterval(function() {
		c = c -1;
		
		if (c < 0) {
			clearInterval(b);
			if (a) {
				a();
			}
		}else if(c > 0){
			$("#Audio_count")[0].play();
			if (d) {
				d(c)
			}
		}else {
			if (f) {
				f()
			}
		}
	}, 1e3)
};
function game_countdown(c,d, a,f) {
	var b = setInterval(function() {
		c = c -1;
		if (c < 0) {
			clearInterval(b);
			if (a) {
				a();
			}
		}else if(c > 0){
			if (d) {
				d(c)
			}
		}else {
			if (f) {
				f()
			}
		}
	}, 1e3)
};
function resize(){
			$(".trackline").css({
				"height":$(".tracklist").height()/10+'px',
				"line-height":$(".tracklist").height()/10+'px',
				"font-size":$(".tracklist").height()/20+'px',
			});
			$(".track-start").css({
				"height":$(".tracklist").height()/10+'px',
				"width":$(".tracklist").height()/10+'px',
			});
			$(".track-end").css({
				"height":$(".tracklist").height()/10+'px',
			});
			$(".player").css({
				"width":"11.9px",
				"height":$(".tracklist").height()/10+'px',
				"line-height":$(".tracklist").height()/10+'px',
				"font-size":$(".tracklist").height()/20+'px',
			});
			$(".player").each(function(key,ele) {
				var onePlayer = $(this);
				onePlayer.css({
					"top":($(".tracklist").height()/10*key+10)+'px',
				});
				
			});
			setTimeout(function(){
				$(".tracklist .trackline").removeClass('leftfadein').addClass('leftfadein');
			},2000)
}
var show_id = 0;

function getuser(){
		$.getJSON(PATH_ACTIVITY + Path_url('yacht_users'), {rid: scene_id,rotate_id: rotate_id,maxid:user_maxid},
		function(json) {
			 if(json.errno==0){
				$(".joinNum").text(json.total+'人');
				if(json.maxid!=''){
					user_maxid = json.maxid;
				}
				//if(json.user){
					var join_user = json.user;
					if(join_user.id){
						var checkJoin_show = $(".main_right .list img");
						var top  = checkJoin_show.eq(show_id).offset().top;
						var left = checkJoin_show.eq(show_id).offset().left;
						$('body').prepend('<div class="signinbox"><img class="avarta" src="" ><p></p></div>');
						$(".signinbox").css({"top":top,"left":left});
						$(".signinbox .avarta").attr("src",join_user.avatar);
						snabbt_user($(".signinbox"),join_user.avatar);
						
					}else{
					  if (!$('.welcome_box').is(':hidden')) {
						setTimeout(function(){
							getuser();
						}, 2e3);
					  }
					}
				//}
			   
			 }
		}).fail(function() {
			  if (!$('.welcome_box').is(':hidden')) {
				setTimeout(function(){
					getuser();
				}, 2e3);
			  }
		})
}
function snabbt_user(n,src){
					var avarta = n.find("img")[0];
					var pobj = n.find("p")[0];
					snabbt.sequence([
						[n[0],
						{
							formScale: [.5, .5],
							rotation: [0, 0, 2 * -Math.PI],
							scale: [3, 3],
							easing: "easeOut",
							duration: 800
						}],
						[pobj,
						{
							delay: 1e3,
							scale: [0, 0],
							easing: "easeIn",
							duration: 400
						}],
						[avarta,
						{
							scale: [0, 0],
							easing: "easeOut",
							duration: 400,
							complete: function() {
								n.remove();
								
								$(".main_right .list img").eq(show_id).attr('src',src);
								if (!$('.welcome_box').is(':hidden')) {
									show_id++;
									if(show_id>=10){
										show_id = 0;
									}
									setTimeout(function(){
										getuser();
									}, 2e3);
								}
								
							}
						}]
					])
}
function initpage(){
  var html = '';
  for(var i=0;i<10;i++){
		var height = $(".tracklist").height()/10;
		html += '<div class="trackline" style="display: block; height: '+height+'px; line-height: '+height+'px; font-size: '+height/2+'px;">';
			 html += '<div class="track-start" style="width: '+height+'px; height: '+height+'px;">'+ (i +1 )+'</div>';
			html += '<div class="track-end" style="width:6px; height: '+height+'px;"></div>';
		html += '</div>';
  }
  $('.tracklist').append(html);
  var player = '';
  for(var i=0;i<10;i++){
		
		player += '<div class="player player'+i+'" >';
			  player += '<div class="yyytp">';
				
				  player += '<div class="lunzia car'+i+' okplay"></div>';//后轮
				  player += '<div class="lunzib car'+i+' okplay"></div>';//前轮
			  player += '</div>';
			  player += '<div class="pnctx">';
			  player += "<div class='head shake' style='background-image: url("+default_userimg+")'></div>";
			  player += '<div class="nickname">选手'+(i+1)+'号</div>';
			 player += '</div>';
		player += '</div>';
  }
  $('.tracklist').append(player);
  $(".yyy3d").removeClass('page_hidden');
  $(".track-end").show();
  resize();
}

function hideSlogan() {
    $(".Panel.Top").css({
        top: "-" + $(".Panel.Top").height() + "px"
    });
    $(".Panel.Bottom").css({
        bottom: "-" + $(".Panel.Bottom").height() + "px"
    });
	$("#panel_status").val("0");
}
function showSlogan() {
    $(".Panel.Top").css({
        top: 0
    });
    $(".Panel.Bottom").css({
        bottom: 0
    })
   $("#panel_status").val("1");
};
;(function($) {
$.fn.extend({
    animateControl: function (a,fn) {
        this.addClass('animated ' + a).one('webkitAnimationEnd mozAnimationEnd MSAnimationEnd oanimationend animationend', function() {
			if(fn){
				fn();
			}
			$(this).removeClass('animated ' + a);
        });
        return this;
    }
});
})(jQuery);