⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 building_processing_task.php

📁 Download you own three BR
💻 PHP
字号:
<?php

	/////////////////////////////////////////玩家触发自动处理建筑队列及资源增长////////////////////////////////////////
	//$query=$db->query("select * from building_task where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'  and `b_end_time`<='".time()."' and `b_end_time`<>'' and `b_end_time`<>'0' limit 1");
	$query=$db->query("select * from building_task where `u_id`='".$_COOKIE['UserId']."' order by b_end_time");
	while($row=$db->fetch_array($query)) $b_task_list[]=$row;
		
	$task_result =count($b_task_list);

	//for($i=0;$i<$task_result;$i++){
	if($b_task_list) foreach ($b_task_list as $i=>$m2){
		
		//$m2['c_id'] = $_COOKIE['CityId'];
		
		//读取任务队列表中的第一个任务
		$query=$db->query("select * from building_task where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."' order by t_sort limit 1");
		$m2=$db->fetch_array($query);
        //获取城墙等级数据
		$query=$db->query("select * from building where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
		$b_current_result=$db->fetch_array($query);
		//基础数据
		$query=$db->query("select * from building_attribute where `b_type`='".$m2['b_type']."'");
        $task_base_result=$db->fetch_array($query);
        
		//先判断建筑任务是否完成
		if($m2['b_end_time']<=time() and $m2['b_end_time']){//完成

		        @setcookie("last_building",$m2['b_type'],time()+24*60*60,"/");
				@$_COOKIE["last_building"]=$m2['b_type'];
		        //echo $_COOKIE['last_building'];exit;
			    //更新建筑建造及升级成功前的所有资源产量/////////////////
			    include_once("auto_grow_resource.php");
			     
				//更新建筑物数量、等级及仓库、民居、兵营上限值/////////////////////////////////////////////////////////////////////////////////////////
				$hero_score=$m2['b_time'] * $b_hero_base;//武将功勋值
				
				//读取内政物品表 - 增加相应经验值
				//$query=$db->query("select i_goodsname from interior_goods where `i_uid`='".$_COOKIE['UserId']."'");
				//$interior_result=$db->fetch_array($query);
				//$interior_score=($interior_result['i_goodsname'] == $interior_goods_name[1] or $interior_result['i_goodsname'] == $interior_goods_name[2]) ? $interior_goods_add_score[$interior_result['i_goodsname']] : 0;
                $interior_score = 0;
				$citywall_fy=0;
				//经验值增长
				switch ($m2['b_type']){
					case 1:
					case 2:
					case 3:
					case 4:{
						$score = add_percent($b_score_base_1_4,$b_score_percent_1_4,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 5:{//民居上限
						//$total_house_temp = add_workers($task_base_result['b_base'],$m2['b_num_grade']);//基*等级*1.1的(等级-1)(取四位小数)
						$total_house_temp = add_workers($task_base_result['b_base'],$m2['b_num_grade']);
						$score = add_percent($b_score_base_5_8,$b_score_percent_5_8,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 8:{
						//$barracks_uplimit = $task_base_result['b_base'];//每级兵营增长1000个上限
						$barracks_uplimit = $m2['b_num_grade'] * 500;
						$score = add_percent($b_score_base_5_8,$b_score_percent_5_8,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 6:{
						$armament_uplimit = $task_base_result['b_base'];//武器工房每级增加上限
						
						//$score = add_percent(100,30,$m2['b_num_grade']-1);
						break;
					}
					case 9:{
						$score = add_percent($b_score_base_9,$b_score_percent_9,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 7:{
						$score = add_percent($b_score_base_7,$b_score_percent_7,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 10:{
						$score = add_percent($b_score_base_10,$b_score_percent_10,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 11:{//仓库
						
						$total_store_rices_temp = add_percent($rices_uplimit,$task_base_result['add_uplimit_percent'],$m2['b_num_grade']+1);
						$total_store_woods_temp = add_percent($woods_uplimit,$task_base_result['add_uplimit_percent'],$m2['b_num_grade']+1);
						$total_store_irons_temp = add_percent($irons_uplimit,$task_base_result['add_uplimit_percent'],$m2['b_num_grade']+1);
						$total_store_golds_temp = add_percent($golds_uplimit,$task_base_result['add_uplimit_percent'],$m2['b_num_grade']+1);
												
						$score = add_percent($b_score_base_11,$b_score_percent_11,$m2['b_num_grade']-1) + $interior_score;
						break;
					}
					case 12:{
						$score = add_percent($b_score_base_12,$b_score_percent_12,$m2['b_num_grade']-1) + $interior_score;
						//城墙防御值
						$citywall_fy = 500;
						$citywall_status=100;//城墙状态
						break;
					}
					case 13:{
						$score = add_percent($b_score_base_dzs,$b_score_percent_dzs,$m2['b_num_grade']-1)  + $interior_score ;
						break;
					}
				}
				
				//echo $score;exit;
			    //$score=0;
				if($m2['t_type']=="1"){
					
					   //更新player_info表
					   $db->query("update player_info set `p_score`=(`p_score`+'".(int)$score."') where `u_id`='".$_COOKIE['UserId']."' ");
					
					   //更新建筑物数量与等级
					   $db->query("update building set `b_citywall_fy`=(`b_citywall_fy`+'".$citywall_fy."'),`b_citywall_status`='100',`".$b_type_name_en[$m2['b_type']]."`=(`".$b_type_name_en[$m2['b_type']]."`+'1') where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."' ");
					   //更新相关上限值
					   if($m2['b_type']=="5"){//民居
						   $db->query("update resource set `total_house`='".$total_house_temp."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   }elseif($m2['b_type']=="11"){//仓库
					   	   $db->query("update resource set `woods_uplimit`='".(int)$total_store_woods_temp."',`rices_uplimit`='".(int)$total_store_rices_temp."',
					    `ores_uplimit`='".(int)$total_store_irons_temp."',`golds_uplimit`='".(int)$total_store_golds_temp."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   }elseif($m2['b_type']=="8"){//兵营
					   		$db->query("update resource set `barracks_uplimit`='".(int)$barracks_uplimit."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   
					   }elseif($m2['b_type']=="6"){//武器
					   		$db->query("update resource set `armament_uplimit`=(`armament_uplimit`+'".(int)$armament_uplimit."')  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   
					   }
					   
				}else{
					
					   //更新建筑物数量与等级
					   $db->query("update building set `b_citywall_fy`=(`b_citywall_fy`-'".$citywall_fy."'),`".$b_type_name_en[$m2['b_type']]."`=(`".$b_type_name_en[$m2['b_type']]."`-'1') where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."' ");
					   if($m2['b_type']=="5"){//民居
						   $db->query("update resource set `total_house`='".$total_house_temp."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   }elseif($m2['b_type']=="11"){//仓库
					   	   $db->query("update resource set `woods_uplimit`='".(int)$total_store_woods_temp."',`rices_uplimit`='".(int)$total_store_rices_temp."',
					    `ores_uplimit`='".(int)$total_store_irons_temp."',`golds_uplimit`='".(int)$total_store_golds_temp."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   }elseif($m2['b_type']=="8"){//兵营
					   		$db->query("update resource set `barracks_uplimit`='".(int)$barracks_uplimit."'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   
					   }elseif($m2['b_type']=="6"){//武器
					   		$db->query("update resource set `armament_uplimit`=(`armament_uplimit`-'".(int)$armament_uplimit."')  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
					   
					   }
					   
					   //还原土地
					   $query=$db->query("update city set `c_size`=`c_size`+'1'  where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
				   
   			     }
   			        /*
   			        //删除上次的报表记录
					$db->query("delete from report where `r_date`<'".(time() - $resource_add_time * 60)."' and `u_id`='".$_COOKIE['UserId']."'");

					//报表记录 -- 生产建设报表:使用、建造、升级、提升城墙防御值|||||||||||||||||||||||||\
					$report_time=time();
					if($m2['t_type']=="1") {
					  //建造
					  switch ($m2['b_type']){
						case 1:
						case 2:
						case 3:
						case 4:
						case 5:
						case 8:{
							//建造
							$db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$CityId['CityId']."','3','".($m2['b_type']+7)."','".$m2['b_num_grade']."','1','".$report_time."','0')");
					        break;
						}
						case 12:{
							//城墙防御
							$db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$CityId['CityId']."','9','19','".$citywall_fy."','1','".$report_time."','0')");
					        break;
						}
						default:{
							//升级
							$db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$CityId['CityId']."','4','".($m2['b_type']+7)."','".$m2['b_num_grade']."','1','".$report_time."','0')");
					        break;
						}
					  }
					  //使用资源
					  $db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$m2['c_id']."','6','1|2|3|4|5|6|7','".($m2['b_woods']."|".$m2['b_irons']."|".$m2['b_golds']."|".$m2['b_rices']."|".$m2['b_hills']."|".$m2['b_woolands']."|".$m2['b_flats'])."','1','".$report_time."','0')");
					  //经验增长
					  $db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$m2['c_id']."','8','20','".$score."','1','".$report_time."','0')");
					}else{
						
					  //摧毁建筑物
                      $db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$m2['c_id']."','5','".$m2['b_type']."','".$m2['b_num_grade']."','1','".$report_time."','0')");
					  //消耗资源
					  $db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$m2['c_id']."','6','1|2|3|4','".($m2['b_woods']."|".$m2['b_irons']."|".$m2['b_golds']."|".$m2['b_rices'])."','1','".$report_time."','0')");
					  //经验增长
					  //$db->query("insert into report(`id`,`u_id`,`c_id`,`r_type1`,`r_type2`,`r_value`,`r_info_type`,`r_date`,`r_beizhu`) values('','".$UserId."','".$CityId."','5','20','".$score."','1','".$report_time."','0')");
					
					}
					//处理建筑队列报表结束|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||\
			        */
			    
			    switch ($m2['b_type']){
					case 1:
					case 2:
					case 3:
					case 4:
					case 5:{
					    
						//调整生产安排////////////////////////////
		                include("produce_plan_processing.php");
		                
					    break;			
					}
				}
				
				$b_end_time_temp=$m2['b_end_time'];
				if($task_result>1){
					//更新第二个任务的结束时间
					$query=$db->query("select * from building_task where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."' order by t_id limit 1,1");
					$second_result=$db->fetch_array($query);
					$query=$db->query("update building_task set `b_end_time`='".($b_end_time_temp+$second_result['b_time'])."' where `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."' and `t_id`= '".$second_result['t_id']."' ");
				}
				//删除已完成的任务
				if($query) $db->query("delete from building_task where `t_id`='".$m2['t_id']."' and `u_id`='".$_COOKIE['UserId']."' and `c_id`='".$m2['c_id']."'");
//				update_resource();
				refresh();
				///////////////////////////////////////////////////////////////////////////////////////////////		
		}
	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -