PHP网页游戏学习之Xnova(ogame)源码解读(七)_php实例
十、基础数值(vars.php)
vars.php文件中定义游戏中关键的基础数值,全部以数组形式定义;PHP中的数组实际上是一个有序图。我们下面将以代码注释的方式进行说明,可能有不正确的理解,希望大家自己也仔细看看,有问题请提出来!如果对这段数值理解了,那么你就可以创造新的单位了,比如新的科技(可以看我服的殖民技术)、新的船舰等。
// 玩家消息类型定义,具体含义请看messages.mo $messfields = array ( 0 => "mnl_spy", 1 => "mnl_joueur", 2 => "mnl_alliance", 3 => "mnl_attaque", 4 => "mnl_exploit", 5 => "mnl_transport", 15 => "mnl_expedition", 97 => "mnl_general", 99 => "mnl_buildlist", 100 => "new_message" ); // 所有游戏单位类型定义,其实就是数据库表中字段 $resource = array( //建筑单位 1 => "metal_mine", 2 => "crystal_mine", 3 => "deuterium_sintetizer", 4 => "solar_plant", 12 => "fusion_plant", 14 => "robot_factory", 15 => "nano_factory", 21 => "hangar", 22 => "metal_store", 23 => "crystal_store", 24 => "deuterium_store", 31 => "laboratory", 33 => "terraformer", 34 => "ally_deposit", 41 => "mondbasis", 42 => "phalanx", 43 => "sprungtor", 44 => "silo", //科技研究单位 106 => "spy_tech", 108 => "computer_tech", 109 => "military_tech", 110 => "defence_tech", 111 => "shield_tech", 113 => "energy_tech", 114 => "hyperspace_tech", 115 => "combustion_tech", 117 => "impulse_motor_tech", 118 => "hyperspace_motor_tech", 120 => "laser_tech", 121 => "ionic_tech", 122 => "buster_tech", 123 => "intergalactic_tech", 124 => "expedition_tech", 199 => "graviton_tech", //船舰单位 202 => "small_ship_cargo", 203 => "big_ship_cargo", 204 => "light_hunter", 205 => "heavy_hunter", 206 => "crusher", 207 => "battle_ship", 208 => "colonizer", 209 => "recycler", 210 => "spy_sonde", 211 => "bomber_ship", 212 => "solar_satelit", 213 => "destructor", 214 => "dearth_star", 215 => "battleship", //防御单位 401 => "misil_launcher", 402 => "small_laser", 403 => "big_laser", 404 => "gauss_canyon", 405 => "ionic_canyon", 406 => "buster_canyon", 407 => "small_protection_shield", 408 => "big_protection_shield", 502 => "interceptor_misil", 503 => "interplanetary_misil", //专家单位 601 => "rpg_geologue", 602 => "rpg_amiral", 603 => "rpg_ingenieur", 604 => "rpg_technocrate", 605 => "rpg_constructeur", 606 => "rpg_scientifique", 607 => "rpg_stockeur", 608 => "rpg_defenseur", 609 => "rpg_bunker", 610 => "rpg_espion", 611 => "rpg_commandant", 612 => "rpg_destructeur", 613 => "rpg_general", 614 => "rpg_raideur", 615 => "rpg_empereur", ); //部分单位的前置升级条件定义 //很多都是多个前置条件,可以从科技树里面看到 $requeriments = array( // 建筑 12 => array( 3 => 5, 113 => 3), 15 => array( 14 => 10, 108 => 10), 21 => array( 14 => 2), 33 => array( 15 => 1, 113 => 12), // 月球建筑 42 => array( 41 => 1), 43 => array( 41 => 1, 114 => 7), // 科技研究 106 => array( 31 => 3), 108 => array( 31 => 1), 109 => array( 31 => 4), 110 => array( 113 => 3, 31 => 6), 111 => array( 31 => 2), 113 => array( 31 => 1), 114 => array( 113 => 5, 110 => 5, 31 => 7), 115 => array( 113 => 1, 31 => 1), 117 => array( 113 => 1, 31 => 2), 118 => array( 114 => 3, 31 => 7), 120 => array( 31 => 1, 113 => 2), 121 => array( 31 => 4, 120 => 5, 113 => 4), 122 => array( 31 => 5, 113 => 8, 120 => 10, 121 => 5), 123 => array( 31 => 10, 108 => 8, 114 => 8), 124 => array( 31 => 3, 108 => 4, 117 => 3), 199 => array( 31 => 12), // 船舰 202 => array( 21 => 2, 115 => 2), 203 => array( 21 => 4, 115 => 6), 204 => array( 21 => 1, 115 => 1), 205 => array( 21 => 3, 111 => 2, 117 => 2), 206 => array( 21 => 5, 117 => 4, 121 => 2), 207 => array( 21 => 7, 118 => 4), 208 => array( 21 => 4, 117 => 3), 209 => array( 21 => 4, 115 => 6, 110 => 2), 210 => array( 21 => 3, 115 => 3, 106 => 2), 211 => array( 117 => 6, 21 => 8, 122 => 5), 212 => array( 21 => 1), 213 => array( 21 => 9, 118 => 6, 114 => 5), 214 => array( 21 => 12, 118 => 7, 114 => 6, 199 => 1), 215 => array( 114 => 5, 120 => 12, 118 => 5, 21 => 8), // 防御 401 => array( 21 => 1), 402 => array( 113 => 1, 21 => 2, 120 => 3), 403 => array( 113 => 3, 21 => 4, 120 => 6), 404 => array( 21 => 6, 113 => 6, 109 => 3, 110 => 1), 405 => array( 21 => 4, 121 => 4), 406 => array( 21 => 8, 122 => 7), 407 => array( 110 => 2, 21 => 1), 408 => array( 110 => 6, 21 => 6), 502 => array( 44 => 2), 503 => array( 44 => 4), // 专家 603 => array( 601 => 5), 604 => array( 602 => 5), 605 => array( 601 => 10, 603 => 2), 606 => array( 601 => 10, 603 => 2), 607 => array( 605 => 1), 608 => array( 606 => 1), 609 => array( 601 => 20, 603 => 10, 605 => 3, 606 => 3, 607 => 2, 608 => 2), 610 => array( 602 => 10, 604 => 5), 611 => array( 602 => 10, 604 => 5), 612 => array( 610 => 1), 613 => array( 611 => 1), 614 => array( 602 => 20, 604 => 10, 610 => 2, 611 => 2, 612 => 1, 613 => 3), 615 => array( 614 => 1, 609 => 1), ); //所有单位造价定义 //'metal' =>金属, 'crystal' =>晶体, 'deuterium' =>重氢, 'energy' =>能量, 'factor' =>步进值 //'consumption' =>HH消耗, 'consumption2' =>HH消耗, 'speed' =>第一速度, 'speed2' =>第二速度, 'capacity' =>装载量 //'max' =>最高等级 $pricelist = array( 1 => array ( 'metal' => 60, 'crystal' => 15, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2), 2 => array ( 'metal' => 48, 'crystal' => 24, 'deuterium' => 0, 'energy' => 0, 'factor' => 1.6), 3 => array ( 'metal' => 225, 'crystal' => 75, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2), 4 => array ( 'metal' => 75, 'crystal' => 30, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2), 12 => array ( 'metal' => 900, 'crystal' => 360, 'deuterium' => 180, 'energy' => 0, 'factor' => 1.8), 14 => array ( 'metal' => 400, 'crystal' => 120, 'deuterium' => 200, 'energy' => 0, 'factor' => 2), 15 => array ( 'metal' => 1000000, 'crystal' => 500000, 'deuterium' => 100000, 'energy' => 0, 'factor' => 2), 21 => array ( 'metal' => 400, 'crystal' => 200, 'deuterium' => 100, 'energy' => 0, 'factor' => 2), 22 => array ( 'metal' => 2000, 'crystal' => 0, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 23 => array ( 'metal' => 2000, 'crystal' => 1000, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 24 => array ( 'metal' => 2000, 'crystal' => 2000, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 31 => array ( 'metal' => 200, 'crystal' => 400, 'deuterium' => 200, 'energy' => 0, 'factor' => 2), 33 => array ( 'metal' => 0, 'crystal' => 50000, 'deuterium' => 100000, 'energy' => 1000, 'factor' => 2), 34 => array ( 'metal' => 20000, 'crystal' => 40000, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 41 => array ( 'metal' => 20000, 'crystal' => 40000, 'deuterium' => 20000, 'energy' => 0, 'factor' => 2), 42 => array ( 'metal' => 20000, 'crystal' => 40000, 'deuterium' => 20000, 'energy' => 0, 'factor' => 2), 43 => array ( 'metal' => 2000000, 'crystal' => 4000000, 'deuterium' => 2000000, 'energy' => 0, 'factor' => 2), 44 => array ( 'metal' => 20000, 'crystal' => 20000, 'deuterium' => 1000, 'energy' => 0, 'factor' => 2), 106 => array ( 'metal' => 200, 'crystal' => 1000, 'deuterium' => 200, 'energy' => 0, 'factor' => 2), 108 => array ( 'metal' => 0, 'crystal' => 400, 'deuterium' => 600, 'energy' => 0, 'factor' => 2), 109 => array ( 'metal' => 800, 'crystal' => 200, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 110 => array ( 'metal' => 200, 'crystal' => 600, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 111 => array ( 'metal' => 1000, 'crystal' => 0, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 113 => array ( 'metal' => 0, 'crystal' => 800, 'deuterium' => 400, 'energy' => 0, 'factor' => 2), 114 => array ( 'metal' => 0, 'crystal' => 4000, 'deuterium' => 2000, 'energy' => 0, 'factor' => 2), 115 => array ( 'metal' => 400, 'crystal' => 0, 'deuterium' => 600, 'energy' => 0, 'factor' => 2), 117 => array ( 'metal' => 2000, 'crystal' => 4000, 'deuterium' => 6000, 'energy' => 0, 'factor' => 2), 118 => array ( 'metal' => 10000, 'crystal' => 20000, 'deuterium' => 6000, 'energy' => 0, 'factor' => 2), 120 => array ( 'metal' => 200, 'crystal' => 100, 'deuterium' => 0, 'energy' => 0, 'factor' => 2), 121 => array ( 'metal' => 1000, 'crystal' => 300, 'deuterium' => 100, 'energy' => 0, 'factor' => 2), 122 => array ( 'metal' => 2000, 'crystal' => 4000, 'deuterium' => 1000, 'energy' => 0, 'factor' => 2), 123 => array ( 'metal' => 240000, 'crystal' => 400000, 'deuterium' => 160000, 'energy' => 0, 'factor' => 2), 124 => array ( 'metal' => 4000, 'crystal' => 8000, 'deuterium' => 4000, 'energy' => 0, 'factor' => 2), 199 => array ( 'metal' => 0, 'crystal' => 0, 'deuterium' => 0, 'energy_max' => 300000, 'factor' => 3), 202 => array ( 'metal' => 2000, 'crystal' => 2000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 20 , 'consumption2' => 40 , 'speed' => 5000, 'speed2' => 10000, 'capacity' => 5000 ), 203 => array ( 'metal' => 6000, 'crystal' => 6000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 50 , 'consumption2' => 50 , 'speed' => 7500, 'speed2' => 7500, 'capacity' => 25000 ), 204 => array ( 'metal' => 3000, 'crystal' => 1000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 20 , 'consumption2' => 20 , 'speed' => 12500, 'speed2' => 12500, 'capacity' => 50 ), 205 => array ( 'metal' => 6000, 'crystal' => 4000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 75 , 'consumption2' => 75 , 'speed' => 10000, 'speed2' => 15000, 'capacity' => 100 ), 206 => array ( 'metal' => 20000, 'crystal' => 7000, 'deuterium' => 2000, 'energy' => 0, 'factor' => 1, 'consumption' => 300 , 'consumption2' => 300 , 'speed' => 15000, 'speed2' => 15000, 'capacity' => 800 ), 207 => array ( 'metal' => 45000, 'crystal' => 15000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 500 , 'consumption2' => 500 , 'speed' => 10000, 'speed2' => 10000, 'capacity' => 1500 ), 208 => array ( 'metal' => 10000, 'crystal' => 20000, 'deuterium' => 10000, 'energy' => 0, 'factor' => 1, 'consumption' => 1000, 'consumption2' => 1000, 'speed' => 2500, 'speed2' => 2500, 'capacity' => 7500 ), 209 => array ( 'metal' => 10000, 'crystal' => 6000, 'deuterium' => 2000, 'energy' => 0, 'factor' => 1, 'consumption' => 300 , 'consumption2' => 300 , 'speed' => 2000, 'speed2' => 2000, 'capacity' => 20000 ), 210 => array ( 'metal' => 0, 'crystal' => 1000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1, 'consumption' => 1 , 'consumption2' => 1 , 'speed' => 100000000, 'speed2' => 100000000, 'capacity' => 5 ), 211 => array ( 'metal' => 50000, 'crystal' => 25000, 'deuterium' => 15000, 'energy' => 0, 'factor' => 1, 'consumption' => 1000, 'consumption2' => 1000, 'speed' => 4000, 'speed2' => 5000, 'capacity' => 500 ), 212 => array ( 'metal' => 0, 'crystal' => 2000, 'deuterium' => 500, 'energy' => 0, 'factor' => 1, 'consumption' => 0 , 'consumption2' => 0 , 'speed' => 0, 'speed2' => 0, 'capacity' => 0 ), 213 => array ( 'metal' => 60000, 'crystal' => 50000, 'deuterium' => 15000, 'energy' => 0, 'factor' => 1, 'consumption' => 1000, 'consumption2' => 1000, 'speed' => 5000, 'speed2' => 5000, 'capacity' => 2000 ), 214 => array ( 'metal' => 5000000, 'crystal' => 4000000, 'deuterium' => 1000000, 'energy' => 0, 'factor' => 1, 'consumption' => 1 , 'consumption2' => 1 , 'speed' => 100, 'speed2' => 100, 'capacity' => 1000000 ), 215 => array ( 'metal' => 30000, 'crystal' => 40000, 'deuterium' => 15000, 'energy' => 0, 'factor' => 1, 'consumption' => 250 , 'consumption2' => 250 , 'speed' => 10000, 'speed2' => 10000, 'capacity' => 750 ), 401 => array ( 'metal' => 2000, 'crystal' => 0, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 402 => array ( 'metal' => 1500, 'crystal' => 500, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 403 => array ( 'metal' => 6000, 'crystal' => 2000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 404 => array ( 'metal' => 20000, 'crystal' => 15000, 'deuterium' => 2000, 'energy' => 0, 'factor' => 1 ), 405 => array ( 'metal' => 2000, 'crystal' => 6000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 406 => array ( 'metal' => 50000, 'crystal' => 50000, 'deuterium' => 30000, 'energy' => 0, 'factor' => 1 ), 407 => array ( 'metal' => 10000, 'crystal' => 10000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 408 => array ( 'metal' => 50000, 'crystal' => 50000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 502 => array ( 'metal' => 8000, 'crystal' => 2000, 'deuterium' => 0, 'energy' => 0, 'factor' => 1 ), 503 => array ( 'metal' => 12500, 'crystal' => 2500, 'deuterium' => 10000, 'energy' => 0, 'factor' => 1 ), 601 => array ( 'max' => 20), 602 => array ( 'max' => 20), 603 => array ( 'max' => 10), 604 => array ( 'max' => 10), 605 => array ( 'max' => 3), 606 => array ( 'max' => 3), 607 => array ( 'max' => 2), 608 => array ( 'max' => 2), 609 => array ( 'max' => 1), 610 => array ( 'max' => 2), 611 => array ( 'max' => 2), 612 => array ( 'max' => 1), 613 => array ( 'max' => 3), 614 => array ( 'max' => 1), 615 => array ( 'max' => 1), ); //船舰和防御战斗数值定义 //'shield' =>护盾强度, 'attack' =>攻击强度, 'sd' =>速射值 $CombatCaps = array( 202 => array ( 'shield' => 10, 'attack' => 5, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 203 => array ( 'shield' => 25, 'attack' => 5, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 204 => array ( 'shield' => 10, 'attack' => 50, 'sd' => array (202 => 2, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 205 => array ( 'shield' => 25, 'attack' => 150, 'sd' => array (202 => 3, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 206 => array ( 'shield' => 50, 'attack' => 400, 'sd' => array (202 => 1, 203 => 1, 204 => 6, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 10, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 207 => array ( 'shield' => 200, 'attack' => 1000, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 8, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 208 => array ( 'shield' => 100, 'attack' => 50, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 209 => array ( 'shield' => 10, 'attack' => 1, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 210 => array ( 'shield' => 0, 'attack' => 0, 'sd' => array (202 => 0, 203 => 0, 204 => 0, 205 => 0, 206 => 0, 207 => 0, 208 => 0, 209 => 0, 210 => 0, 211 => 0, 212 => 0, 213 => 0, 214 => 0, 215 => 0, 401 => 0, 402 => 0, 403 => 0, 404 => 0, 405 => 0, 406 => 0, 407 => 0, 408 => 0 )), 211 => array ( 'shield' => 500, 'attack' => 1000, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 20, 402 => 20, 403 => 10, 404 => 1, 405 => 10, 406 => 1, 407 => 1, 408 => 1 )), 212 => array ( 'shield' => 10, 'attack' => 1, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 1, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 213 => array ( 'shield' => 500, 'attack' => 2000, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 2, 401 => 1, 402 => 10, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 214 => array ( 'shield' => 50000, 'attack' => 200000, 'sd' => array (202 => 250, 203 => 250, 204 => 200, 205 => 100, 206 => 33, 207 => 30, 208 => 250, 209 => 250, 210 => 1250, 211 => 25, 212 => 1250, 213 => 5, 214 => 1, 215 => 15, 401 => 200, 402 => 200, 403 => 100, 404 => 50, 405 => 100, 406 => 1, 407 => 1, 408 => 1 )), 215 => array ( 'shield' => 400, 'attack' => 700, 'sd' => array (202 => 3, 203 => 3, 204 => 1, 205 => 4, 206 => 4, 207 => 7, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 5, 213 => 1, 214 => 1, 215 => 1, 401 => 1, 402 => 1, 403 => 1, 404 => 1, 405 => 1, 406 => 1, 407 => 1, 408 => 1 )), 401 => array ( 'shield' => 20, 'attack' => 80, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 402 => array ( 'shield' => 25, 'attack' => 100, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 403 => array ( 'shield' => 100, 'attack' => 250, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 404 => array ( 'shield' => 200, 'attack' => 1100, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 405 => array ( 'shield' => 500, 'attack' => 150, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 406 => array ( 'shield' => 300, 'attack' => 3000, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 407 => array ( 'shield' => 2000, 'attack' => 1, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 408 => array ( 'shield' => 2000, 'attack' => 1, 'sd' => array (202 => 1, 203 => 1, 204 => 1, 205 => 1, 206 => 1, 207 => 1, 208 => 1, 209 => 1, 210 => 5, 211 => 1, 212 => 0, 213 => 1, 214 => 1, 215 => 1) ), 502 => array ( 'shield' => 1, 'attack' => 1 ), 503 => array ( 'shield' => 1, 'attack' => 12000 ) ); //资源生产和能量消耗公式 $ProdGrid = array( // 金属矿 1 => array( 'metal' => 40, 'crystal' => 10, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2, 'formule' => array( 'metal' => 'return (30 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);', 'crystal' => 'return "0";', 'deuterium' => 'return "0";', 'energy' => 'return - (10 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);') ), // 晶体矿 2 => array( 'metal' => 30, 'crystal' => 15, 'deuterium' => 0, 'energy' => 0, 'factor' => 1.6, 'formule' => array( 'metal' => 'return "0";', 'crystal' => 'return (20 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);', 'deuterium' => 'return "0";', 'energy' => 'return - (10 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);') ), // HH矿 3 => array( 'metal' => 150, 'crystal' => 50, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2, 'formule' => array( 'metal' => 'return "0";', 'crystal' => 'return "0";', 'deuterium' => 'return ((10 * $BuildLevel * pow((1.1), $BuildLevel)) * (-0.002 * $BuildTemp + 1.28)) * (0.1 * $BuildLevelFactor);', 'energy' => 'return - (30 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);') ), // 太阳能 4 => array( 'metal' => 50, 'crystal' => 20, 'deuterium' => 0, 'energy' => 0, 'factor' => 3/2, 'formule' => array( 'metal' => 'return "0";', 'crystal' => 'return "0";', 'deuterium' => 'return "0";', 'energy' => 'return (20 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);') ), // 核电厂 12 => array( 'metal' => 500, 'crystal' => 200, 'deuterium' => 100, 'energy' => 0, 'factor' => 1.8, 'formule' => array( 'metal' => 'return "0";', 'crystal' => 'return "0";', 'deuterium' => 'return - (10 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);', 'energy' => 'return (50 * $BuildLevel * pow((1.1), $BuildLevel)) * (0.1 * $BuildLevelFactor);') ), // 太阳能卫星 212 => array( 'metal' => 0, 'crystal' => 2000, 'deuterium' => 500, 'energy' => 0, 'factor' => 0.5, 'formule' => array( 'metal' => 'return "0";', 'crystal' => 'return "0";', 'deuterium' => 'return "0";', 'energy' => 'return (($BuildTemp / 4) + 20) * $BuildLevel * (0.1 * $BuildLevelFactor);') ) ); //所有单位是否启用定义 //即使前面定义了的单位,这里如果不加入,也是不起作用的 $reslist['build'] = array ( 1, 2, 3, 4, 12, 14, 15, 21, 22, 23, 24, 31, 33, 34, 44, 41, 42, 43 ); $reslist['tech'] = array ( 106, 108, 109, 110, 111, 113, 114, 115, 117, 118, 120, 121, 122, 123, 124, 199 ); $reslist['fleet'] = array ( 202, 203, 204, 205, 206, 207, 208, 209, 210, 211, 212, 213, 214, 215 ); $reslist['defense'] = array ( 401, 402, 403, 404, 405, 406, 407, 408, 502, 503 ); $reslist['officier'] = array ( 601, 602, 603, 604, 605, 606, 607, 608, 609, 610, 611, 612, 613, 614, 615); $reslist['prod'] = array ( 1, 2, 3, 4, 12, 212 );

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

JWT是一種基於JSON的開放標準,用於在各方之間安全地傳輸信息,主要用於身份驗證和信息交換。 1.JWT由Header、Payload和Signature三部分組成。 2.JWT的工作原理包括生成JWT、驗證JWT和解析Payload三個步驟。 3.在PHP中使用JWT進行身份驗證時,可以生成和驗證JWT,並在高級用法中包含用戶角色和權限信息。 4.常見錯誤包括簽名驗證失敗、令牌過期和Payload過大,調試技巧包括使用調試工具和日誌記錄。 5.性能優化和最佳實踐包括使用合適的簽名算法、合理設置有效期、

字符串是由字符組成的序列,包括字母、數字和符號。本教程將學習如何使用不同的方法在PHP中計算給定字符串中元音的數量。英語中的元音是a、e、i、o、u,它們可以是大寫或小寫。 什麼是元音? 元音是代表特定語音的字母字符。英語中共有五個元音,包括大寫和小寫: a, e, i, o, u 示例 1 輸入:字符串 = "Tutorialspoint" 輸出:6 解釋 字符串 "Tutorialspoint" 中的元音是 u、o、i、a、o、i。總共有 6 個元

PHP的魔法方法有哪些? PHP的魔法方法包括:1.\_\_construct,用於初始化對象;2.\_\_destruct,用於清理資源;3.\_\_call,處理不存在的方法調用;4.\_\_get,實現動態屬性訪問;5.\_\_set,實現動態屬性設置。這些方法在特定情況下自動調用,提升代碼的靈活性和效率。

靜態綁定(static::)在PHP中實現晚期靜態綁定(LSB),允許在靜態上下文中引用調用類而非定義類。 1)解析過程在運行時進行,2)在繼承關係中向上查找調用類,3)可能帶來性能開銷。

PHP和Python各有優勢,選擇依據項目需求。 1.PHP適合web開發,尤其快速開發和維護網站。 2.Python適用於數據科學、機器學習和人工智能,語法簡潔,適合初學者。

PHP在電子商務、內容管理系統和API開發中廣泛應用。 1)電子商務:用於購物車功能和支付處理。 2)內容管理系統:用於動態內容生成和用戶管理。 3)API開發:用於RESTfulAPI開發和API安全性。通過性能優化和最佳實踐,PHP應用的效率和可維護性得以提升。

PHP是一種廣泛應用於服務器端的腳本語言,特別適合web開發。 1.PHP可以嵌入HTML,處理HTTP請求和響應,支持多種數據庫。 2.PHP用於生成動態網頁內容,處理表單數據,訪問數據庫等,具有強大的社區支持和開源資源。 3.PHP是解釋型語言,執行過程包括詞法分析、語法分析、編譯和執行。 4.PHP可以與MySQL結合用於用戶註冊系統等高級應用。 5.調試PHP時,可使用error_reporting()和var_dump()等函數。 6.優化PHP代碼可通過緩存機制、優化數據庫查詢和使用內置函數。 7

PHP仍然具有活力,其在現代編程領域中依然佔據重要地位。 1)PHP的簡單易學和強大社區支持使其在Web開發中廣泛應用;2)其靈活性和穩定性使其在處理Web表單、數據庫操作和文件處理等方面表現出色;3)PHP不斷進化和優化,適用於初學者和經驗豐富的開發者。
