/init.php
PHP | 6755 lines | 5190 code | 1119 blank | 446 comment | 2156 complexity | 9a81bb5a2505eb09d5c556de88456ad4 MD5 | raw file
Large files files are truncated, but you can click here to view the full file
- <?php
- $modInfo['ship_tool_kb']['name'] = "Ship Display Tool";
- $modInfo['ship_tool_kb']['abstract'] = "Displays Ship stats on the kill detials page";
- $modInfo['ship_tool_kb']['about'] = "by Spark's";
- //require_once('common/includes/class.kill.php');
- //require_once('common/includes/class.killsummarytable.php');
- //require_once('common/includes/class.pilot.php');
- //require_once('common/includes/class.corp.php');
- //require_once('common/includes/class.alliance.php');
- //$kll_id = intval($_GET['kll_id']);
- $operation = true;
- include("fitting.class.php");
- include('class.shipstats.php');
- include('class.shipEffects.php');
- event::register("killDetail_assembling", "fittingTools::addFitting");
- event::register("killDetail_context_assembling", "fittingTools::RemoveContextFinalBlowTopDamage");
- class fittingTools
- {
- public static $shipStats;
- public static $speedV = 1;
- public static $speedB = 1;
- public static $sigRadius = 1;
- public static $shieldHpRed = 1;
- public static $structure = 1;
- public static $emArmor = 1;
- public static $thArmor = 1;
- public static $kiArmor = 1;
- public static $exArmor = 1;
- public static $emShield = 1;
- public static $thShield = 1;
- public static $kiShield = 1;
- public static $exShield = 1;
- public static $emHull = 1;
- public static $thHull = 1;
- public static $kiHull = 1;
- public static $exHull = 1;
- public static $scanStrength = 1;
- public static $missileDam = 1;
- public static $hybridDam = 1;
- public static $projectileDam = 1;
- public static $lazerDam = 1;
- public static $missileRof = 1;
- public static $hybridRof = 1;
- public static $projectileRof = 1;
- public static $lazerRof = 1;
- public static $mwdSigature = "No MWD";
- public static $mwdActive = "No MWD";
- public static $abActive = "No AB";
- public static $moduleCount = 0;
- public static $boosterPos;
- public static $gunPos;
- public static $gunPosCap;
- public static $gunDamageCounter = 0;
- public static $sensorbooster;
- public static $scan = 1;
- public static $range = 1;
- public static $warpStab = 1;
- public static $warpStabScan = 1;
- public static $interstab = 1;
- public static $sheildHPPD = 1;
- public static $srBooster = Array();
- public static $armorKiArr;
- public static $shieldAmp = 1;
- public static $armorDur = Array();
- public static $shieldDur = Array();
- public static $armorAmp = 1;
- public static $shieldAmpCap = 1;
- public static $shieldResistPos = 0;
- public static $droneDam = 1;
- public static $droneMax = 5;
- public static $droneAdd = 0;
- public static $droneArr = Array();
- public static $armorRR = 1;
- public static $capMultiEff = 1;
- public static $simpleurl;
- public static $extid;
- public static $loadCPU = 0;
- public static $loadPower = 0;
- public static $loadCPUAdd = Array();
- public static $loadPowerAdd = Array();
- function addFitting($home)
- {
- $home->delete("fitting");
- $home->delete("victim");
- $home->delete("victimShip");
- $home->addBehind("start", "fittingTools::displayFitting");
- //$home->replace("top", "fittingTools::displayFitting");
- }
- function RemoveContextFinalBlowTopDamage($home)
- {
- $home->delete("damageBox");
- }
- function displayFitting($home)
- {
- global $smarty;
- //require_once("common/includes/class.dogma.php");
- $kll_id = $home->kll_id;
- //echo "here";
- //echo self::$oper;
- self::$shipStats = new shipstats();
- $urlsettings = edkURI::parseURI();
- self::$simpleurl = $urlsettings[0][2];
- //echo "-> ".self::$simpleurl;
- $fitter = new fitting($kll_id);
- $theFit = $fitter->displayFitting();
- if ($home->kll_id) {
- $km = Cacheable::factory('Kill', $home->kll_id);
- } else {
- $km = new Kill($home->kll_external_id, true);
- $km = $home->kill->getID();
- }
- if (!$km->exists()) {
- $html = "That kill doesn't exist.";
- $home->page->setContent($html);
- $home->page->generate($html);
- exit;
- }
- //echo "-->".$km->getExternalID()."<br />";
- if($km->getExternalID() != 0) {
- //echo "Yes<br />";
- self::$extid = $km->getExternalID();
- } else {
- //echo "No<br />";
- $qry = new DBQuery();
- $qry->execute("SELECT kll_external_id FROM kb3_kills WHERE kll_id = '".$home->kll_id."';");
- $row = $qry->getRow();
- if($row['kll_external_id'] != 0) {
- //echo "Yes ".$row['kll_external_id']."br />";
- self::$extid = $row['kll_external_id'];
- } else {
- //echo "No<br />";
- self::$extid = 0;
- }
- }
- fittingTools::source($kll_id,$km->getExternalID());
- $corp = "";
- $alli = "";
- $char = "";
- $ship = "";
- $weap = "";
- $topdamage = 0;
- $maxdamage = -1;
- foreach($km->getInvolved() as $inv) {
- /*echo "<pre>";
- print_r($inv);
- echo "</pre>";*/
- if($inv->getDamageDone() > $maxdamage) {
- if($km->getFBPilotID() == $inv->getPilotID()) {
- $maxdamage = $inv->getDamageDone();
- //$topdamage = $inv;
- $corp = $inv->getCorpID();
- $alli = $inv->getAllianceID();
- $char = $inv->getPilotID();
- $ship = $inv->getShipID();
- $weap = $inv->getWeaponID();
- $fcorp = $inv->getCorpID();
- $falli = $inv->getAllianceID();
- $fchar = $inv->getPilotID();
- $fship = $inv->getShipID();
- $fweap = $inv->getWeaponID();
- } else {
- $maxdamage = $inv->getDamageDone();
- //$topdamage = $inv;
- $corp = $inv->getCorpID();
- $alli = $inv->getAllianceID();
- $char = $inv->getPilotID();
- $ship = $inv->getShipID();
- $weap = $inv->getWeaponID();
- }
- } else {
- if($km->getFBPilotID() == $inv->getPilotID()) {
- $fcorp = $inv->getCorpID();
- $falli = $inv->getAllianceID();
- $fchar = $inv->getPilotID();
- $fship = $inv->getShipID();
- $fweap = $inv->getWeaponID();
- }
- }
- }
- $plt = new Pilot($char);
- $charIcon = $plt->getPortraitURL(64);
- $charName = $plt->getName();
- $charURL = edkURI::page('pilot_detail', $char, 'plt_id');
- $clt = new Corporation($corp, false);
- $corpIcon = $clt->getPortraitURL(32);
- $corpName = $clt->getName();
- $corpURL = edkURI::page('corp_detail', $corp, 'crp_id');
- $alt = new Alliance($alli, false);
- $alliIcon = $alt->getPortraitURL(32);
- $alliName = $alt->getName();
- $alliURL = edkURI::page('alliance_detail', $corp, 'all_id');
- $slt = new Ship($ship);
- $shipIcon = $slt->getImage(32);
- $shipName = $slt->getName();
- $shipURL = edkURI::page('invtype', $ship, 'id');
- $ilt = new Item($weap);
- $weapIcon = $ilt->getIcon(32);
- $weapURL = edkURI::page('invtype', $weap, 'id');
- $smarty->assign('topgetCorpID', $corp);
- $smarty->assign('topgetAllianceID', $alli);
- $smarty->assign('topgetPilotID', $char);
- $smarty->assign('topgetShipID', $ship);
- $smarty->assign('topgetWeaponID', $weap);
- $smarty->assign('topgetCorpIcon', $corpIcon);
- $smarty->assign('topgetAllianceIcon', $alliIcon);
- $smarty->assign('topgetPilotIcon', $charIcon);
- $smarty->assign('topgetShipIcon', $shipIcon);
- $smarty->assign('topgetWeaponIcon', $weapIcon);
- $smarty->assign('topgetCorpName', $corpName);
- $smarty->assign('topgetAllianceName', $alliName);
- $smarty->assign('topgetPilotName', $charName);
- $smarty->assign('topgetShipName', $shipName);
- $smarty->assign('topgetCorpURL', $corpURL);
- $smarty->assign('topgetAllianceURL', $alliURL);
- $smarty->assign('topgetPilotURL', $charURL);
- $smarty->assign('topgetShipURL', $shipURL);
- $smarty->assign('topgetWeaponURL', $weapURL);
- $fplt = new Pilot($fchar);
- $fcharIcon = $fplt->getPortraitURL(64);
- $fcharName = $fplt->getName();
- $fcharURL = edkURI::page('pilot_detail', $fchar, 'plt_id');
- $fclt = new Corporation($fcorp, false);
- $fcorpIcon = $fclt->getPortraitURL(32);
- $fcorpName = $fclt->getName();
- $fcorpURL = edkURI::page('corp_detail', $fcorp, 'crp_id');
- $falt = new Alliance($falli, false);
- $falliIcon = $falt->getPortraitURL(32);
- $falliName = $falt->getName();
- $falliURL = edkURI::page('alliance_detail', $fcorp, 'all_id');
- $fslt = new Ship($fship);
- $fshipIcon = $fslt->getImage(32);
- $fshipName = $fslt->getName();
- $fshipURL = edkURI::page('invtype', $fship, 'id');
- $filt = new Item($fweap);
- $fweapIcon = $filt->getIcon(32);
- $fweapURL = edkURI::page('invtype', $fweap, 'id');
- $smarty->assign('fingetCorpID', $fcorp);
- $smarty->assign('fingetAllianceID', $falli);
- $smarty->assign('fingetPilotID', $fchar);
- $smarty->assign('fingetShipID', $fship);
- $smarty->assign('fingetWeaponID', $fweap);
- $smarty->assign('fingetCorpIcon', $fcorpIcon);
- $smarty->assign('fingetAllianceIcon', $falliIcon);
- $smarty->assign('fingetPilotIcon', $fcharIcon);
- $smarty->assign('fingetShipIcon', $fshipIcon);
- $smarty->assign('fingetWeaponIcon', $fweapIcon);
- $smarty->assign('fingetCorpName', $fcorpName);
- $smarty->assign('fingetAllianceName', $falliName);
- $smarty->assign('fingetPilotName', $fcharName);
- $smarty->assign('fingetShipName', $fshipName);
- $smarty->assign('fingetCorpURL', $fcorpURL);
- $smarty->assign('fingetAllianceURL', $falliURL);
- $smarty->assign('fingetPilotURL', $fcharURL);
- $smarty->assign('fingetShipURL', $fshipURL);
- $smarty->assign('fingetWeaponURL', $fweapURL);
- //echo self::$extid."<br />";
- //echo "-> ".edkURI::page('pilot_detail', $km->getVictimID(), 'plt_id');
- $plt = new Pilot($km->getVictimID());
- $victimPortrait = $plt->getPortraitURL(64);
- $victimURL = edkURI::page('pilot_detail', $km->getVictimID(), 'plt_id');
- $victimExtID = $plt->getExternalID();
- $victimCorpURL = edkURI::page('corp_detail', $km->getVictimCorpID(), 'crp_id');
- $victimCorpName = $km->getVictimCorpName();
- $victimAllianceURL = edkURI::page('alliance_detail', $km->getVictimAllianceID(), 'all_id');
- $victimAllianceName = $km->getVictimAllianceName();
- $victimDamageTaken = $km->getDamageTaken();
- $getISKLoss = number_format($km->getISKLoss());
- $smarty->assign('victimDamageTaken', $victimDamageTaken);
- $corp = new Corporation($km->getVictimCorpID(), false);
- //echo $corp->getPortraitURL(32);
- $alliance = new Alliance($km->getVictimAllianceID(), false);
- //echo $alliance->getPortraitURL(32);
- if ($km->isClassified())
- {
- //Admin is able to see classified Systems
- if ($home->page->isAdmin())
- {
- $system = $km->getSystem()->getName() . ' (Classified)';
- $region = $km->getSystem()->getRegionName();
- $systemURL = edkURI::page('system_detail', $km->getSystem()->getID(), 'sys_id');
- $systemSecurity = $km->getSystem()->getSecurity(true);
- }
- else
- {
- $system = 'Classified';
- $region = $km->getSystem()->getRegionName();
- $systemURL = "";
- $systemSecurity = '0.0';
- }
- }
- else
- {
- $system = $km->getSystem()->getName();
- $region = $km->getSystem()->getRegionName();
- $systemURL = edkURI::page('system_detail', $km->getSystem()->getID(), 'sys_id');
- $systemSecurity = $km->getSystem()->getSecurity(true);
- }
- // Ship detail
- $ship=$km->getVictimShip();
- $shipclass=$ship->getClass();
- $shipname = $ship->getName();
- $victimShipClassName = $shipclass->getName();
- $timeStamp = $km->getTimeStamp();
- $victimShipID = edkURI::page('invtype', $ship->getExternalID(), 'id');
- if($home->page->isAdmin()) $smarty->assign('ship', $ship);
- self::$shipStats->setPilotName($km->getVictimName());
- self::$shipStats->setPilotCorp($victimCorpName);
- self::$shipStats->setPilotAlliance($victimAllianceName);
- self::$shipStats->setPilotShip($shipname);
- self::$shipStats->setPilotLoc($system);
- self::$shipStats->setPilotLocReg($region);
- self::$shipStats->setPilotLocSec($systemSecurity);
- self::$shipStats->setPilotDate($timeStamp);
- self::$shipStats->setPilotDam($victimDamageTaken);
- self::$shipStats->setPilotCos($getISKLoss);
- self::$shipStats->setPilotShipClass($victimShipClassName);
- self::$shipStats->setCorpPort($corp->getPortraitURL(32));
- self::$shipStats->setAlliPort($alliance->getPortraitURL(32));
- self::$shipStats->setPilotPort($victimPortrait);
- self::$shipStats->setPilotNameURL($victimURL);
- self::$shipStats->setPilotCorpURL($victimCorpURL);
- self::$shipStats->setPilotAllianceURL($victimAllianceURL);
- self::$shipStats->setPilotShipURL($victimShipID);
- self::$shipStats->setPilotLocURL($systemURL);
- fittingTools::getShipStats($shipname);
- fittingTools::moduleInfo($theFit);
- /*fittingTools::getModuleStats();*/
- fittingTools::returnShipSkills();
- fittingTools::shipEffects();
- fittingTools::setlevel5Skills();
- fittingTools::getExtraStats();
- fittingTools::getCPUandPowerValues();
- $html = fittingTools::displayShipStats($shipname, 100, 100);
- return $html;
- }
- public function source($p_kll_id, $p_ex_id) {
- global $smarty;
- if($p_ex_id != 0) {
- //echo "Yes<br />";
- self::$extid = $p_ex_id;
- } else {
- //echo "No<br />";
- $qry = new DBQuery();
- $qry->execute("SELECT kll_external_id FROM kb3_kills WHERE kll_id = '".$p_kll_id."';");
- $row = $qry->getRow();
- if($row['kll_external_id'] != 0) {
- //echo "Yes ".$row['kll_external_id']."br />";
- self::$extid = $row['kll_external_id'];
- } else {
- //echo "No<br />";
- self::$extid = 0;
- }
- }
- $qry = DBFactory::getDBQuery();
- $sql = "SELECT log_ip_address, log_timestamp FROM kb3_log WHERE"
- ." log_kll_id = ".$p_kll_id;
- $qry->execute($sql);
- if (!$row = $qry->getRow()) {
- return "";
- }
- $source = $row['log_ip_address'];
- $posteddate = $row['log_timestamp'];
- if (preg_match("/^\d+/", $source)
- || preg_match("/^IP/", $source)) {
- $type = "IP";
- $source = substr($source, 3);
- } else if (preg_match("/^API/", $source)) {
- $type = "API";
- $source = $p_ex_id;
- } else if (preg_match("/^http/", $source)) {
- $type = "URL";
- } else if (preg_match("/^ID:http/", $source)) {
- $type = "URL";
- $source = substr($source, 3);
- } else {
- $type = "unknown";
- }
- $smarty->assign("source", htmlentities($source));
- $smarty->assign("type", $type);
- $smarty->assign("postedDate", $posteddate);
- $smarty->assign('extid', self::$extid);
- }
- function getCPUandPowerValues() {
- $stack = 1;
- foreach(self::$loadPowerAdd as $value) {
- self::$shipStats->setPrgAmount(fittingTools::statOntoShip(self::$shipStats->getPrgAmount(), $value["power"], $value["type"], $value["mode"], 1));
- $stack++;
- }
- $stack = 1;
- foreach(self::$loadCPUAdd as $value) {
- //echo $value["cpu"]." here";
- /*if($value["stack"] == 1) {
- self::$shipStats->setCpuAmount(fittingTools::statOntoShip(self::$shipStats->getCpuAmount(), $value["cpu"], $value["type"], $value["mode"], $stack));
- $stack++;
- } else {*/
- self::$shipStats->setCpuAmount(fittingTools::statOntoShip(self::$shipStats->getCpuAmount(), $value["cpu"], $value["type"], $value["mode"], 1));
- //}
- }
- self::$shipStats->setCpuAmount(fittingTools::statOntoShip(self::$shipStats->getCpuAmount(), 25, "+", "%", 1));
- self::$shipStats->setPrgAmount(fittingTools::statOntoShip(self::$shipStats->getPrgAmount(), 25, "+", "%", 1));
- $arr_cpu = array_values(self::$shipStats->getCpuUsed());
- $arr_prg = array_values(self::$shipStats->getPrgUsed());
- for($i = 0; $i < count($arr_cpu); $i++) {
- //foreach($arr_cpu as $value) {
- foreach(self::$shipStats->getShipEffects() as $value2) {
- if($arr_cpu[$i]['effect'] == $value2["effect"]) {
- if($arr_cpu[$i]['effect'] == "covert_cloak") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "heavy_cpu") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "war_bonus") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "shield_transCPU") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "capital_cpu") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], $value2["bonus"], $value2["type"], "%", 1);
- }
- }
- }
- }
- for($i = 0; $i < count($arr_prg); $i++) {
- //foreach($arr_prg as $value) {
- foreach(self::$shipStats->getShipEffects() as $value2) {
- if($arr_prg[$i]['effect'] == $value2["effect"]) {
- if($arr_prg[$i]['effect'] == "seige_power") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "heavy_power") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "cap_transPower") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], $value2["bonus"], $value2["type"], "%", 1);
- //self::$loadPower += $arr_prg[$i]['power'];
- }
- }
- }
- }
- for($i = 0; $i < count($arr_cpu); $i++) {
- //foreach($arr_cpu as $value) {
- if($arr_cpu[$i]['effect'] == "weapon") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], 25, "-", "%", 1);
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "covert_cloak") {
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "heavy_cpu") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], 25, "-", "%", 1);
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "cpu_use") {
- $arr_cpu[$i]['cpu'] = fittingTools::statOntoShip($arr_cpu[$i]['cpu'], 25, "-", "%", 1);
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else if($arr_cpu[$i]['effect'] == "war_bonus") {
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- } else {
- self::$loadCPU += $arr_cpu[$i]['cpu'];
- }
- }
- for($i = 0; $i < count($arr_prg); $i++) {
- //foreach($arr_prg as $value) {
- if($arr_prg[$i]['effect'] == "weapon") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], 10, "-", "%", 1);
- self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "shield") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], 25, "-", "%", 1);
- self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "seige_power") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], 10, "-", "%", 1);
- self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "heavy_power") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], 10, "-", "%", 1);
- self::$loadPower += $arr_prg[$i]['power'];
- } else if($arr_prg[$i]['effect'] == "power_use") {
- $arr_prg[$i]['power'] = fittingTools::statOntoShip($arr_prg[$i]['power'], 25, "-", "%", 1);
- self::$loadPower += $arr_prg[$i]['power'];
- } else {
- self::$loadPower += $arr_prg[$i]['power'];
- }
- }
- /*echo "<pre>";
- print_r($arr_prg);
- echo "</pre>";*/
- /*echo "<pre>";
- print_r($arr_cpu);
- echo "</pre>";*/
- /*echo "<pre>";
- print_r(self::$shipStats->getCpuUsed());
- echo "</pre>";*/
- /*echo "<pre>";
- print_r(self::$shipStats->getPrgUsed());
- echo "</pre>";*/
- /*echo "<pre>";
- print_r(self::$shipStats->getShipEffects());
- echo "</pre>";*/
- /*echo "<pre>";
- print_r(self::$loadPowerAdd);
- echo "</pre>";*/
- /*echo "<pre>";
- print_r(self::$loadCPUAdd);
- echo "</pre>";*/
- }
- function getShipStats($param_ship) {
- //global $shipStats;
- $qry = new DBQuery();
- $qry->execute("select kb3_invtypes.typeID, kb3_invtypes.description from kb3_invtypes WHERE kb3_invtypes.typeName = '".$qry->escape($param_ship)."'");
- $typeID = $qry->getRow();
- self::$shipStats->setShipIcon($typeID['typeID']);
- self::$shipStats->setShipDesc($typeID['description']);
- //$itemquery = mysql_query("select kb3_invtypes.typeID from kb3_invtypes WHERE kb3_invtypes.typeName = '".$param_ship."'") or die(mysql_error());
- //$typeID = mysql_fetch_array($itemquery);
- $qry2 = new DBQuery();
- $qry2->execute("select kb3_dgmtypeattributes.value, kb3_dgmattributetypes.attributeName, kb3_dgmattributetypes.displayName, kb3_dgmattributetypes.stackable, kb3_eveunits.displayName as unit
- from kb3_dgmtypeattributes
- inner join kb3_dgmattributetypes on kb3_dgmtypeattributes.attributeID = kb3_dgmattributetypes.attributeID
- left join kb3_eveunits on kb3_dgmattributetypes.unitID = kb3_eveunits.unitID
- where typeID = ".$typeID['typeID']);
- //$row = $qry2->getRow();
- while($row = $qry2->getRow()) {
- if(strtolower($row['attributeName']) == "shieldcapacity") {
- self::$shipStats->setShieldAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "armorhp") {
- self::$shipStats->setArmorAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "hp") {
- self::$shipStats->setHullAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "scanradarstrength" && $row['value'] > 0) {
- self::$shipStats->setSensorType(fittingTools::getSensorTypeImg('radar'));
- self::$shipStats->setSensorAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "scanladarstrength" && $row['value'] > 0) {
- self::$shipStats->setSensorType(fittingTools::getSensorTypeImg('ladar'));
- self::$shipStats->setSensorAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "scanmagnetometricstrength" && $row['value'] > 0) {
- self::$shipStats->setSensorType(fittingTools::getSensorTypeImg('magnetometric'));
- self::$shipStats->setSensorAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "scangravimetricstrength" && $row['value'] > 0) {
- self::$shipStats->setSensorType(fittingTools::getSensorTypeImg('gravimetric'));
- self::$shipStats->setSensorAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "shieldemdamageresonance") {
- self::$shipStats->setShieldEM((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "shieldthermaldamageresonance") {
- self::$shipStats->setShieldTh((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "shieldkineticdamageresonance") {
- self::$shipStats->setShieldKi((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "shieldexplosivedamageresonance") {
- self::$shipStats->setShieldEx((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "shieldrechargerate") {
- self::$shipStats->setShieldRecharge($row['value']/1000);
- }
- if(strtolower($row['attributeName']) == "armoremdamageresonance") {
- self::$shipStats->setArmorEM((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "armorthermaldamageresonance") {
- self::$shipStats->setArmorTh((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "armorkineticdamageresonance") {
- self::$shipStats->setArmorKi((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "armorexplosivedamageresonance") {
- self::$shipStats->setArmorEx((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "emdamageresonance") {
- self::$shipStats->setHullEM((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "thermaldamageresonance") {
- self::$shipStats->setHullTh((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "kineticdamageresonance") {
- self::$shipStats->setHullKi((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "explosivedamageresonance") {
- self::$shipStats->setHullEx((1-$row['value'])*100);
- }
- if(strtolower($row['attributeName']) == "maxvelocity") {
- self::$shipStats->setShipSpeed($row['value']);
- }
- if(strtolower($row['attributeName']) == "signatureradius") {
- self::$shipStats->setSigRadius($row['value']);
- }
- if(strtolower($row['attributeName']) == "scanresolution") {
- self::$shipStats->setScan($row['value']);
- }
- if(strtolower($row['attributeName']) == "maxtargetrange") {
- self::$shipStats->setDistance($row['value']);
- }
- if(strtolower($row['attributeName']) == "maxlockedtargets") {
- self::$shipStats->setTarget($row['value']);
- }
- if(strtolower($row['attributeName']) == "capacitorcapacity") {
- self::$shipStats->setCapAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "rechargerate") {
- self::$shipStats->setCapRecharge($row['value']);
- }
- if(strtolower($row['attributeName']) == "rigsize") {
- self::$shipStats->setRSize(fittingTools::returnShipSize($row['value']));
- }
- if(strtolower($row['attributeName']) == "lowslots") {
- $arr = self::$shipStats->getShipSlots();
- $arr['lowslots'] = $row['value'];
- self::$shipStats->setShipSlots($arr);
- }
- if(strtolower($row['attributeName']) == "medslots") {
- $arr = self::$shipStats->getShipSlots();
- $arr['medslots'] = $row['value'];
- self::$shipStats->setShipSlots($arr);
- }
- if(strtolower($row['attributeName']) == "hislots") {
- $arr = self::$shipStats->getShipSlots();
- $arr['hislots'] = $row['value'];
- self::$shipStats->setShipSlots($arr);
- }
- if(strtolower($row['attributeName']) == "rigslots") {
- $arr = self::$shipStats->getShipSlots();
- $arr['rigslots'] = $row['value'];
- self::$shipStats->setShipSlots($arr);
- }
- if(strtolower($row['attributeName']) == "upgradecapacity") {
- self::$shipStats->setCalAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "cpuoutput") {
- self::$shipStats->setCpuAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "poweroutput") {
- self::$shipStats->setPrgAmount($row['value']);
- }
- if(strtolower($row['attributeName']) == "turretslotsleft") {
- self::$shipStats->setTurAmount($row['value']);
- self::$shipStats->setTurUsed($row['value']);
- }
- if(strtolower($row['attributeName']) == "launcherslotsleft") {
- self::$shipStats->setMisAmount($row['value']);
- self::$shipStats->setMisUsed($row['value']);
- }
- }
- $qry3 = new DBQuery();
- $qry3->execute("select mass from kb3_invtypes left join kb3_item_types on itt_id = groupID where typeID = ".$typeID['typeID']);
- $row3 = $qry3->getRow();
- self::$shipStats->setMass(fittingTools::calculateMass($row3['mass']));
- //echo self::$shipStats->getMass();
- }
- function returnShipSize($input) {
- switch($input) {
- case "1":
- return "Small";
- break;
- case "2":
- return "Medium";
- break;
- case "3":
- return "Large";
- break;
- default:
- return "X-Large";
- break;
- }
- }
- function calculateMass($param_mass) {
- //1.482e+07
- $break = explode("e+",$param_mass);
- $exp = 1;
- for($e=0; $e < $break[1]; $e++) {
- $exp = $exp*10;
- }
- //echo $break[0]." ".($break[1]*10)." ".$exp;
- return ($break[0]*$exp);
- }
- function setlevel5Skills() {
- //global $shipStats;
- //shield amount
- self::$shipStats->setShieldAmount(fittingTools::statOntoShip(self::$shipStats->getShieldAmount(), 25, "+", "%", 1));
- //shield recharge
- self::$shipStats->setShieldRecharge(fittingTools::statOntoShip(self::$shipStats->getShieldRecharge(), 25, "-", "%", 1));
- //armour amount
- self::$shipStats->setArmorAmount(fittingTools::statOntoShip(self::$shipStats->getArmorAmount(), 25, "+", "%", 1));
- //hull amount
- self::$shipStats->setHullAmount(fittingTools::statOntoShip(self::$shipStats->getHullAmount(), 25, "+", "%", 1));
- //cap amount
- self::$shipStats->setCapAmount(fittingTools::statOntoShip(self::$shipStats->getCapAmount(), 25, "+", "%", 1));
- //cap recharge
- self::$shipStats->setCapRecharge(fittingTools::statOntoShip(self::$shipStats->getCapRecharge(), 25, "-", "%", 1));
- //speed
- self::$shipStats->setShipSpeed(fittingTools::statOntoShip(self::$shipStats->getShipSpeed(), 25, "+", "%", 1));
- //target range
- self::$shipStats->setDistance(fittingTools::statOntoShip(self::$shipStats->getDistance(), 25, "+", "%", 1));
- //scan resolution
- self::$shipStats->setScan(fittingTools::statOntoShip(self::$shipStats->getScan(), 25, "+", "%", 1));
- //signature
- //shipInfo.setOSig(statOntoShip(Number(shipInfo.getOSig()), 25, "+", "%", 1));
- //ECCM
- self::$shipStats->setSensorAmount(fittingTools::statOntoShip(self::$shipStats->getSensorAmount($row['value']), 20, "+", "%", 1));
- }
- function getExtraStats() {
- //global $shipStats;
- //sort resists
- fittingTools::setAndOrderShipResists();
- //passive shield tank
- if(self::$shipStats->getTankType() == "shield") {
- $boost = fittingTools::returnTankResults("shield");
- self::$shipStats->setTankAmount(fittingTools::tankAbleDPS(fittingTools::peakShieldRecharge(self::$shipStats->getShieldAmount(),self::$shipStats->getShieldRecharge())+$boost, self::$shipStats->getShieldEM(),self::$shipStats->getShieldTh(),self::$shipStats->getShieldKi(),self::$shipStats->getShieldEx()));
- self::$shipStats->setTankType("act");
- } else if(self::$shipStats->getTankType() == "armor") {
- $boost = fittingTools::returnTankResults("armor");
- self::$shipStats->setTankAmount(fittingTools::tankAbleDPS($boost, self::$shipStats->getArmorEM(),self::$shipStats->getArmorTh(),self::$shipStats->getArmorKi(),self::$shipStats->getArmorEx()));
- self::$shipStats->setTankType("arm");
- } else if(self::$shipStats->getTankType() == "hull") {
- $boost = fittingTools::returnTankResults("hull");
- self::$shipStats->setTankAmount(fittingTools::tankAbleDPS($boost, self::$shipStats->getHullEM(),self::$shipStats->getHullTh(),self::$shipStats->getHullKi(),self::$shipStats->getHullEx()));
- self::$shipStats->setTankType("arm");
- } else {
- self::$shipStats->setTankAmount(fittingTools::tankAbleDPS(fittingTools::peakShieldRecharge(self::$shipStats->getShieldAmount(),self::$shipStats->getShieldRecharge()), self::$shipStats->getShieldEM(),self::$shipStats->getShieldTh(),self::$shipStats->getShieldKi(),self::$shipStats->getShieldEx()));
- self::$shipStats->setTankType("pass");
- }
- self::$shipStats->setEffectiveShield(fittingTools::effectHP(self::$shipStats->getShieldAmount(),self::$shipStats->getShieldEM(),self::$shipStats->getShieldTh(),self::$shipStats->getShieldKi(),self::$shipStats->getShieldEx()));
- self::$shipStats->setEffectiveArmor(fittingTools::effectHP(self::$shipStats->getArmorAmount(),self::$shipStats->getArmorEM(),self::$shipStats->getArmorTh(),self::$shipStats->getArmorKi(),self::$shipStats->getArmorEx()));
- self::$shipStats->setEffectiveHull(fittingTools::effectHP(self::$shipStats->getHullAmount(),self::$shipStats->getHullEM(),self::$shipStats->getHullTh(),self::$shipStats->getHullKi(),self::$shipStats->getHullEx()));
- self::$shipStats->setCapRechargeRate(fittingTools::peakShieldRecharge(self::$shipStats->getCapAmount(), self::$shipStats->getCapRecharge()/1000));
- //echo fittingTools::peakShieldRecharge(self::$shipStats->getCapAmount(), self::$shipStats->getCapRecharge()/1000);
- if(self::$shipStats->getIsMWD()) {
- self::$mwdActive = round(fittingTools::getShipSpeed(self::$shipStats->getShipSpeed(), self::$shipStats->getMwdBoost(), self::$shipStats->getMwdThrust(), self::$shipStats->getMass()+self::$shipStats->getMwdMass()));
- if(self::$shipStats->getMwdSigRed()) {
- self::$shipStats->setMwdSig((self::$shipStats->getMwdSig()-(self::$shipStats->getMwdSig()/100)*(self::$shipStats->getMwdSigRed()*5)));
- }
- self::$mwdSigature = round(((self::$shipStats->getMwdSig()/100)*self::$shipStats->getSigRadius())+self::$shipStats->getSigRadius());
- }
- if(self::$shipStats->getIsAB()) {
- self::$abActive = round(fittingTools::getShipSpeed(self::$shipStats->getShipSpeed(), self::$shipStats->getABBoost(), self::$shipStats->getABThrust(), self::$shipStats->getMass()+self::$shipStats->getABMass()));
- }
- //set the skill set
- // get drone count
- self::$droneMax = fittingTools::getShipDrone(self::$shipStats->getPilotShip())+self::$droneAdd;
- self::$shipStats->setDamageGun(fittingTools::turretMods());
- self::$shipStats->setDroneDamage(fittingTools::getDroneSkillDamage());
- fittingTools::getDPSAndVolley();
- self::$shipStats->setDamage(fittingTools::getDPS());
- self::$shipStats->setVolley(fittingTools::getVolley());
- /*echo "<pre>";
- print_r(self::$shipStats->getDamageGun());
- print_r(self::$shipStats->getDamageModules());
- //print_r(self::$shipStats->getDroneDamage());
- //print_r(self::$shipStats->getDroneDamageMod());
- echo "</pre>";*/
- //print_r(self::$shipStats->getCapGJ());
- self::$shipStats->setCapGJ(fittingTools::capacitorUsage());
- self::$shipStats->setCapInj(fittingTools::capacitorInjector());
- self::$shipStats->setTransCap(fittingTools::remoteRepStats());
- /*echo "<pre>";
- print_r(self::$shipStats->getCapGJ());
- print_r(self::$shipStats->getTransCap());
- print_r(self::$shipStats->getCapInj());
- echo "</pre>";*/
- $capUse = fittingTools::totalCapUse();
- $capPlus = fittingTools::totalCapInjected();
- if(fittingTools::isCapStable((self::$shipStats->getCapRechargeRate()+$capPlus), $capUse)) {
- //$shipStats->setCapStatus(round(capUsage($shipStats->getCapAmount(), 0, $shipStats->getCapRechargeRate())));
- $cap = self::$shipStats->getCapAmount();
- $recharge = (self::$shipStats->getCapRecharge()/1000);
- $k = 5;
- $tau = $recharge/$k;
- $squt = sqrt($cap);
- $regen = 0;
- if($capUse != 0) {
- for($i = 1; $i < 1000; $i++) {
- $cappersecondadd = $cap*(pow((1+((sqrt((0/$cap))-1)*exp(((0-$i)/$tau)))),2));
- $capThatCycle = $cappersecondadd/$i;
- $capPerSecond = ((-2*$cappersecondadd)/$tau)+(((2*$squt)*sqrt($cappersecondadd))/$tau);
- $percentage = ($cappersecondadd/$cap)*100;
- //echo $i." --- ".$regen." ------ ".$capUse." -- ".$cappersecondadd." -- ".$capThatCycle." -- ".$capPerSecond." -- ".$percentage."<br />";
- /*echo $cappersecondadd." --- ";
- echo $cap."<br />";*/
- if($regen < $capPerSecond) {
- $regen = $capPerSecond;
- } else {
- if($capUse > $capPerSecond) {
- break;
- }
- if($percentage > 100) {
- break;
- }
- if($cappersecondadd > $cap) {
- break;
- }
- }
- }
- } else {
- $percentage = 100;
- }
- self::$shipStats->setCapStatus($percentage);
- self::$shipStats->setCapStable(1);
- } else {
- $seconds = round(fittingTools::capUsage(self::$shipStats->getCapAmount(), $capUse, (self::$shipStats->getCapRechargeRate()+$capPlus), self::$shipStats->getCapRecharge()));
- self::$shipStats->setCapStatus(fittingTools::toMinutesAndHours($seconds));
- self::$shipStats->setCapStable(0);
- }
- fittingTools::sensorBoosterAdd();
- /*echo "<pre>";
- print_r(self::$shipStats->getSensorBooster());
- echo "</pre>";*/
- self::$shipStats->setEffectiveHp(self::$shipStats->getEffectiveShield()+self::$shipStats->getEffectiveArmor()+self::$shipStats->getEffectiveHull());
- if(!self::$shipStats->getSensorType()) {
- self::$shipStats->setSensorType("icon04_12");
- }
- /*echo "<pre>";
- print_r(self::$shipStats->getSigRadiusBoost());
- echo "</pre>";*/
- fittingTools::setSigBoostforWarpDis();
- /*echo "<pre>";
- print_r(self::$shipStats->getShipSlots());
- echo "</pre>";*/
- }
- function getShipDrone($shipname) {
- if(strstr(strtolower($shipname), "nyx")
- || strstr(strtolower($shipname), "aeon")
- || strstr(strtolower($shipname), "wyvern")
- || strstr(strtolower($shipname), "hel")) {
- return 20;
- } else if(strstr(strtolower($shipname), "archon")
- || strstr(strtolower($shipname), "chimera")
- || strstr(strtolower($shipname), "thanatos")
- || strstr(strtolower($shipname), "nidgoggur")
- || strstr(strtolower($shipname), "revelation")
- || strstr(strtolower($shipname), "phoenix")
- || strstr(strtolower($shipname), "moros")
- || strstr(strtolower($shipname), "naglfar")) {
- return 10;
- } else {
- return 5;
- }
- }
- function setAndOrderShipResists() {
- $orderSystem = Array(
- 4 => "subsystem",
- 1 => "Active",
- 2 => "Passive",
- 5 => "StrongPassive",
- 3 => "DamCom"
- );
- /*echo "<pre>";
- print_r(self::$shipStats->getShipResists());
- echo "</pre>";*/
- if(self::$shipStats->getShipResists()) {
- foreach($orderSystem as $i => $order) {
- foreach(self::$shipStats->getShipResists() as $j => $value) {
- if($i == $value['order']) {
- if($value['section'] == "armor") {
- if($value['order'] == 3) {
- if($value['resist'] == "em") {
- self::$shipStats->setArmorEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEm(), $value['amount'], $value['type'], 1));
- //self::$emArmor++;
- } else if($value['resist'] == "ex") {
- self::$shipStats->setArmorEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEx(), $value['amount'], $value['type'], 1));
- //self::$exArmor++;
- } else if($value['resist'] == "ki") {
- self::$shipStats->setArmorKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorKi(), $value['amount'], $value['type'], 1));
- //self::$kiArmor++;
- } else if($value['resist'] == "th") {
- self::$shipStats->setArmorTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorTh(), $value['amount'], $value['type'], 1));
- //self::$thArmor++;
- }
- } else if($value['order'] == 4) {
- if($value['resist'] == "em") {
- self::$shipStats->setArmorEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEm(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "ex") {
- self::$shipStats->setArmorEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEx(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "ki") {
- self::$shipStats->setArmorKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorKi(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "th") {
- self::$shipStats->setArmorTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorTh(), $value['amount'], $value['type'], 1));
- }
- } else {
- if($value['resist'] == "em") {
- self::$shipStats->setArmorEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEm(), $value['amount'], $value['type'], self::$emArmor));
- self::$emArmor++;
- } else if($value['resist'] == "ex") {
- self::$shipStats->setArmorEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorEx(), $value['amount'], $value['type'], self::$exArmor));
- self::$exArmor++;
- } else if($value['resist'] == "ki") {
- self::$shipStats->setArmorKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorKi(), $value['amount'], $value['type'], self::$kiArmor));
- self::$kiArmor++;
- } else if($value['resist'] == "th") {
- self::$shipStats->setArmorTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getArmorTh(), $value['amount'], $value['type'], self::$thArmor));
- self::$thArmor++;
- }
- }
- } else if($value['section'] == "shield") {
- if($value['order'] == 3 || $value['order'] == 4) {
- if($value['resist'] == "em") {
- self::$shipStats->setShieldEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldEm(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "ex") {
- self::$shipStats->setShieldEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldEx(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "ki") {
- self::$shipStats->setShieldKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldKi(), $value['amount'], $value['type'], 1));
- } else if($value['resist'] == "th") {
- self::$shipStats->setShieldTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldTh(), $value['amount'], $value['type'], 1));
- }
- } else {
- if($value['resist'] == "em") {
- self::$shipStats->setShieldEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldEm(), $value['amount'], $value['type'], self::$emShield));
- self::$emShield++;
- } else if($value['resist'] == "ex") {
- self::$shipStats->setShieldEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldEx(), $value['amount'], $value['type'], self::$exShield));
- self::$exShield++;
- } else if($value['resist'] == "ki") {
- self::$shipStats->setShieldKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldKi(), $value['amount'], $value['type'], self::$kiShield));
- self::$kiShield++;
- } else if($value['resist'] == "th") {
- self::$shipStats->setShieldTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getShieldTh(), $value['amount'], $value['type'], self::$thShield));
- self::$thShield++;
- }
- }
- } else if($value['section'] == "hull") {
- if($value['order'] == 3) {
- if($value['resist'] == "em") {
- self::$shipStats->setHullEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullEm(), $value['amount'], $value['type'], 1));
- self::$emHull++;
- } else if($value['resist'] == "ex") {
- self::$shipStats->setHullEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullEx(), $value['amount'], $value['type'], 1));
- self::$exHull++;
- } else if($value['resist'] == "ki") {
- self::$shipStats->setHullKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullKi(), $value['amount'], $value['type'], 1));
- self::$kiHull++;
- } else if($value['resist'] == "th") {
- self::$shipStats->setHullTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullTh(), $value['amount'], $value['type'], 1));
- self::$thHull++;
- }
- } else {
- if($value['resist'] == "em") {
- self::$shipStats->setHullEm(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullEm(), $value['amount'], $value['type'], self::$emHull));
- self::$emHull++;
- } else if($value['resist'] == "ex") {
- self::$shipStats->setHullEx(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullEx(), $value['amount'], $value['type'], self::$exHull));
- self::$exHull++;
- } else if($value['resist'] == "ki") {
- self::$shipStats->setHullKi(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullKi(), $value['amount'], $value['type'], self::$kiHull));
- self::$kiHull++;
- } else if($value['resist'] == "th") {
- self::$shipStats->setHullTh(fittingTools::getLevel5SkillsPlus(self::$shipStats->getHullTh(), $value['amount'], $value['type'], self::$thHull));
- self::$thHull++;
- }
- }
- }
- }
- }
- }
- }
- }
- function returnTankResults($tankType) {
- /*echo "<pre>";
- print_r(self::$shipStats->getTankBoost());
- echo "</pre>";*/
- $total = 0;
- $dur = 1;
- $boost = 0;
- if(self::$shipStats->getTankBoost()) {
- foreach(self::$shipStats->getTankBoost() as $i => $value) {
- if($value['type'] == $tankType) {
- $boost = $value['boost'];
- if($value['type'] == "shield") {
- $boost = fittingTools::shieldAmpBooster($boost,$value["icon"]);
- $dur = fittingTools::boostDuration($tankType);
- } else if($value['type'] == "armor") {
- $boost = fittingTools::armorAmpBooster($boost);
- $dur = fittingTools::boostDuration($tankType);
- } else if($value['type'] == "hull") {
- $dur = fittingTools::boostDuration($tankType);
- }
- $total += $boost;
- }
- }
- }
- //echo $total." ".$dur."<br />";
- return $total/$dur;
- }
- function boostDuration($type) {
- $j = 0;
- if(self::$shipStats->getTankBoost()) {
- foreach(self::$shipStats->getTankBoost() as $i => $value) {
- if($value['type'] == $type) {
- $dur = $value['dur'];
- if($type == "armor") {
- $dur = fittingTools::getSkillset("armor repair", "duration", $dur);
- $dur = fittingTools::armorAmpDur($dur);
- $total += $dur;
- $j++;
- } else if($type == "shield") {
- $dur = fittingTools::shieldAmpDur($dur);
- $dur = fittingTools::getSkillset("shield booster", "duration", $dur);
- if($value['icon'] == "105_4") {
- $total += 60/($dur+$value['amount']);
- } else {
- $total += $dur;
- }
- $j++;
- } else if($type == "hull") {
- $dur = fittingTools::getSkillset("armor repair", "duration", $dur);
- $total += $dur;
- $j++;
- }
- }
- }
- }
- return ($total/$j);
- }
- function armorAmpDur($dur) {
- $total = $dur;
- /*echo "<pre>";
- print_r(self::$armorDur);
- echo "</pre>";*/
- if(self::$armorDur) {
- foreach(self::$armorDur as $i => $value) {
- $total = fittingTools::statOntoShip($total, $value['dur'], $value['type'], "%", $value['neg']);
- }
- }
- return $total;
- }
- function shieldAmpDur($dur) {
- $total = $dur;
- /*echo "<pre>";
- print_r(self::$shieldDur);
- echo "</pre>";*/
- if(self::$shieldDur) {
- foreach(self::$shieldDur as $i => $value) {
- $total = fittingTools::statOntoShip($total, $value['dur'], $value['type'], "%", $value['neg']);
- }
- }
- return $total;
- }
- function shieldAmpBooster($boostAmount,$icon) {
- $total = $boostAmount;
- if($icon == "105_4") {
- /*echo "<pre>";
- print_r(self::$shipStats->getTankBoost());
- echo "</pre>";*/
- $total = fittingTools::statOntoShip($total, 25, "+", "%", 1);
- }
- if(self::$shipStats->getTankAmpShield()) {
- foreach(self::$shipStats->getTankAmpShield() as $i => $value) {
- $total = fittingTools::statOntoShip($total, $value['boost'], $value['type'], "%", $value['neg']);
- }
- }
- /*echo "<pre>";
- print_r(self::$shipStats->getShipEffects());
- echo "</pre>";*/
- if(self::$shipStats->getShipEffects()) {
- foreach(self::$shipStats->getShipEffects() as $j => $effect) {
- if($effect['effect'] == "shieldBoost") {
- $total = fittingTools::statOntoShip($total, (5*$effect['bonus']),$effect['type'],"%", 1);
- }
- }
- }
- return $total;
- }
- function armorAmpBooster($boostAmount) {
- $total = $boostAmount;
- /*echo "<pre>";
- print_r(self::$shipStats->getTankAmpArmor());
- echo "</pre>";*/
- if(self::$shipStats->getTankAmpArmor()) {
- foreach(self::$shipStats->getTankAmpArmor() as $i => $value) {
- $total = fittingTools::statOntoShip($total, $value['boost'], $value['type'], "%", $value['neg']);
- }
- }
- /*echo "<pre>";
- print_r(self::$shipStats->getShipEffects());
- echo "</pre>";*/
- if(self::$shipStats->getShipEffects()) {
- foreach(self::$shipStats->getShipEffects() as $j => $effect) {
- if($effect['effect'] == "armorBoost") {
- $total = fittingTools::statOntoShip($total, (5*$effect['bonus']),$effect['type'],"%", 1);
- }
- }
- }
- return $total;
- }
- function setSigBoostforWarpDis() {
- if(self::$shipStats->getSigRadiusBoost()) {
- foreach(self::$shipStats->getSigRadiusBoost() as $i => $value) {
- if($value != 0) {
- self::$shipStats->setSigRadius(fittingTools::statOntoShip(self::$shipStats->getSigRadius(), $value['sigAdd'], "+", "%", 0));
- }
- }
- }
- }
- function sensorBoosterAdd() {
- self::$scan = 0;
- self::$range = 0;
- $arrRange = Array();
- $arrScan = Array();
- $modSlotOrderRange = Array(
- 7 => "Sub",
- 3 => "Low",
- 4 => "Mid",
- 2 => "Rig",
- 1 => "high"
- );
- $k = 0;
- if(self::$shipStats->getSensorBooster()) {
- foreach($modSlotOrderRange as $i => $order) {
- foreach(self::$shipStats->getSensorBooster() as $j => $value) {
- //echo $i." ".$value['order']."<br />";
- if($i == $value['order']) {
- if($value['range'] != 0) {
- $arrRange[$k]['range'] = $value['range'];
- $arrRange[$k]['negra'] = $value['negra'];
- $arrRange[$k]['order'] = $value['order'];
- $arrRange[$k]['type'] = $value['type'];
- }
- $k++;
- }
- }
- }
- }
- if($arrRange) {
- foreach($arrRange as $i => $value) {
- //$arr[self::$moduleCount]['order'] = $slotOrder;
- if($value['range'] != 0) {
- $arr[$i]['range'] = $value['range'];
- $arr[$i]['type'] = $value['type'];
- self::$range++;
- $arr[$i]['negra'] = self::$range;
- }
- /*if($value['scan'] != 0) {
- $arr[$i]['scan'] = $value['scan'];
- self::$scan++;
- $arr[$i]['negsc'] = self::$scan;
- }*/
- }
- }
- //self::$shipStats->setSensorBooster($arr);
- $arrRange = $arr;
- $modSlotOrderScan = Array(
- 7 => "Sub",
- 4 => "Mid",
- 3 => "Low",
- 1 => "high",
- 2 => "Rig"
- );
- $k = 0;
- if(self::$shipStats->getSensorBooster()) {
- foreach($modSlotOrderScan as $i => $order) {
- foreach(self::$shipStats->getSensorBooster() as $j => $value) {
- if($i == $value['order']) {
- //echo $i." ".$value['order']."<br />";
- if($value['scan'] != 0) {
- $arrScan[$k]['scan'] = $value['scan'];
- $arrScan[$k]['negsc'] = $value['negsc'];
- $arrScan[$k]['order'] = $value['order'];
- $arrScan[$k]['type'] = $value['type'];
- }
- $k++;
- }
- }
- }
- }
- if($arrScan) {
- foreach($arrScan as $i => $value) {
- if($value['scan'] != 0) {
- $arrS[$i]['scan'] = $value['scan'];
- $arrS[$i]['type'] = $value['type'];
- self::$scan++;
- $arrS[$i]['negsc'] = self::$scan;
- }
- }
- }
- //self::$shipStats->setSensorBooster($arr);
- $arrScan = $arrS;
- /*echo "<pre>";
- //print_r($arrRange);
- print_r($arrScan);
- echo "</pre>";*/
- if($arrRange) {
- foreach($arrRange as $i => $value) {
- if($value['range']) {
- //echo self::$shipStats->getDistance()." - ";
- self::$shipStats->setDistance(fittingTools::statOntoShip(self::$shipStats->getDistance(), $value['range'], $value['type'], "%", $value['negra']));
- //echo self::$shipStats->getDistance()."<br />";
- }
- }
- }
- if($arrScan) {
- foreach($arrScan as $i => $value) {
- if($value['scan']) {
- //echo self::$shipStats->getScan()." - ".$value['scan']." - ".$value['type']." - ".$value['negsc']." - ";
- self::$shipStats->setScan(fittingTools::statOntoShip(self::$shipStats->getScan(), $value['scan'], $value['type'], "%", $value['negsc']));
- //echo self::$shipStats->getScan()."<br />";
- }
- }
- }
- }
- function getDroneSkillDamage() {
- $k = 0;
- if(self::$shipStats->getDroneDamage()) {
- foreach(self::$shipStats->getDroneDamage() as $i => $value) {
- if(strstr($value['name'], "Bouncer")
- || strstr($value['name'], "Curator")
- || strstr($value['na…
Large files files are truncated, but you can click here to view the full file