本文整理汇总了PHP中Info::getGroupID方法的典型用法代码示例。如果您正苦于以下问题:PHP Info::getGroupID方法的具体用法?PHP Info::getGroupID怎么用?PHP Info::getGroupID使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Info
的用法示例。
在下文中一共展示了Info::getGroupID方法的12个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: validKill
function validKill(&$kill)
{
// Show all pod kills
$victimShipID = $kill['victim']['shipType']['id'];
if ($victimShipID == 670 || $victimShipID == 33328) {
return true;
}
$npcOnly = true;
foreach ($kill['attackers'] as $attacker) {
if (isset($attacker['shipType']['id'])) {
$attackerGroupID = Info::getGroupID($attacker['shipType']['id']);
if ($attackerGroupID == 365) {
return true;
}
// A tower is involved
if ($attackerGroupID == 99) {
return true;
}
// A sentry gun is involved
}
if (isset($attacker['shipType']['id']) && $attacker['shipType']['id'] == 34495) {
return true;
}
// A drifter is involved
// Don't process the kill if it's NPC only
if (isset($attacker['corporation']['id']) && $attacker['corporation']['id'] == 1000125) {
return true;
}
$npcOnly &= @$attacker['character']['id'] == 0 && (@$attacker['corporation']['id'] < 1999999 && @$attacker['corporation']['id'] != 1000125);
}
return !$npcOnly;
}
示例2: execute
public function execute($parameters, $db)
{
// Fix unknown group ID's
$result = $db->query("select distinct killID from zz_participants where groupID != vGroupID and isVictim = 1 limit 1", array(), 0);
foreach ($result as $row) {
$killID = $row["killID"];
$shipTypeID = $db->queryField("select shipTypeID from zz_participants where killID = {$killID} and isVictim = 1", "shipTypeID");
if ($shipTypeID == 0) {
continue;
}
$groupID = Info::getGroupID($shipTypeID);
echo "Updating {$killID} to {$groupID}\n";
$db->execute("update zz_participants set vGroupID = {$groupID} where killID = {$killID}");
}
CLI::out(sizeof($result) . " done!", true);
}
示例3: eftarray
public static function eftarray($md5, $items, $victimID = 0)
{
$Cache = Cache::get($md5 . 'eftarray');
if ($Cache) {
return $Cache;
}
// EFT / Fitting Wheel
$eftarray['high'] = array();
// high
$eftarray['mid'] = array();
// mid
$eftarray['low'] = array();
// low
$eftarray['rig'] = array();
// rig
$eftarray['drone'] = array();
// drone
$eftarray['sub'] = array();
// sub
$eftammo['high'] = array();
// high ammo
$eftammo['mid'] = array();
// mid ammo
foreach ($items as $itm) {
if (!isset($itm['inContainer'])) {
$itm['inContainer'] = 0;
}
if ($victimID >= 2100000000 && $victimID <= 2999999999.0) {
$itm['flagName'] = Info::getGroupName(Info::getGroupID($itm['typeID']));
} elseif (!isset($itm['flagName'])) {
$itm['flagName'] = Info::getFlagName($itm['flag']);
}
if ($itm['flagName'] == 'Infantry Modules') {
$itm['flagName'] = 'Mid Slots';
}
if ($itm['flagName'] == 'Infantry Weapons') {
$itm['flagName'] = 'High Slots';
}
if ($itm['flagName'] == 'Infantry Equipment') {
$itm['flagName'] = 'Low Slots';
}
if ($itm['flag'] == 89) {
$slot = Db::queryField('select coalesce(valueInt, valueFloat) slot from ccp_dgmTypeAttributes where typeID = :typeID and attributeID = 331', 'slot', array(':typeID' => $itm['typeID']));
if ($slot <= 5 && $slot >= 1) {
$itm['flagName'] = 'High Slots';
$itm['flag'] = 27 + ($slot - 1);
} elseif ($slot > 5 && $slot <= 10) {
$itm['flagName'] = 'Low Slots';
$itm['flag'] = 11 + ($slot - 6);
}
$itm['fittable'] = 1;
}
if (!isset($itm['flag']) || $itm['flag'] == 0) {
if ($itm['flagName'] == 'High Slots') {
$itm['flag'] = 27;
}
if ($itm['flagName'] == 'Mid Slots') {
$itm['flag'] = 19;
}
if ($itm['flagName'] == 'Low Slots') {
$itm['flag'] = 11;
}
}
$key = $itm['typeName'] . '|' . $itm['flagName'];
if (isset($itm['flagName'])) {
if ($itm['fittable'] && $itm['inContainer'] == 0) {
// not ammo or whatever
$repeats = @$itm['quantityDropped'] + @$itm['quantityDestroyed'];
$i = 0;
while ($i < $repeats) {
if ($itm['flagName'] == 'High Slots') {
high:
if (isset($eftarray['high'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto high;
}
$eftarray['high'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Mid Slots') {
mid:
if (isset($eftarray['mid'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto mid;
}
$eftarray['mid'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Low Slots') {
low:
if (isset($eftarray['low'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto low;
}
$eftarray['low'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Rigs') {
rigs:
if (isset($eftarray['rig'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto rigs;
}
//.........这里部分代码省略.........
示例4: stats
private static function stats($db)
{
Log::irc("|g|Stats calculation started - checking for unknown groupID's");
// Fix unknown group ID's
$result = $db->query("select distinct shipTypeID from zz_participants where groupID = 0 and shipTypeID != 0");
foreach ($result as $row) {
$shipTypeID = $row["shipTypeID"];
$groupID = Info::getGroupID($shipTypeID);
if ($groupID == 0) {
continue;
}
Log::log("Updating {$shipTypeID} to group {$groupID}");
$db->execute("update zz_participants set groupID = {$groupID} where groupID = 0 and shipTypeID = {$shipTypeID}");
}
$db->execute("set session wait_timeout = 6000");
if (!Util::isMaintenanceMode()) {
$db->execute("replace into zz_storage values ('MaintenanceReason', 'Full stats calculation in progress')");
$db->execute("replace into zz_storage values ('maintenance', 'true')");
Log::log("Maintenance mode engaged");
Log::irc("|r|Engaging maintenance mode for full stat calculations...");
sleep(60);
// Wait for processes to finish and cleanup
}
$db->execute("truncate zz_stats");
try {
self::recalc('faction', 'factionID', true, $db);
self::recalc('alli', 'allianceID', true, $db);
self::recalc('corp', 'corporationID', true, $db);
self::recalc('pilot', 'characterID', true, $db);
self::recalc('group', 'groupID', true, $db);
self::recalc('ship', 'shipTypeID', true, $db);
self::recalc('system', 'solarSystemID', false, $db);
self::recalc('region', 'regionID', false, $db);
} catch (Exception $e) {
print_r($e);
}
$db->execute("delete from zz_storage where locker = 'maintenance'");
Log::irc("|g|Stat recalculations have completed, leaving Maintenance mode and now reverting to business as usual...");
}
示例5: createInvolved
function createInvolved($data)
{
global $mdb;
$dataArray = array('character', 'corporation', 'alliance', 'faction', 'shipType');
$array = array();
foreach ($dataArray as $index) {
if (isset($data[$index]['id']) && $data[$index]['id'] != 0) {
$array["{$index}ID"] = (int) $data[$index]['id'];
}
}
if (isset($array['shipTypeID']) && Info::getGroupID($array['shipTypeID']) == -1) {
$mdb->getCollection('information')->update(['type' => 'group'], ['$set' => ['lastCrestUpdate' => new MongoDate(1)]]);
Util::out('Bailing on processing a kill, unable to find groupID for ' . $array['shipTypeID']);
exit;
}
if (isset($array['shipTypeID'])) {
$array['groupID'] = (int) Info::getGroupID($array['shipTypeID']);
}
if (isset($data['finalBlow']) && $data['finalBlow'] == true) {
$array['finalBlow'] = true;
}
return $array;
}
示例6: stats
private static function stats($db)
{
CLI::out("|g|Stats calculation started");
$db->execute("set session wait_timeout = 600");
// Fix unknown group ID's
echo "Updating groups...\n";
$result = $db->query("select distinct shipTypeID from zz_participants where groupID = 0 and shipTypeID != 0");
foreach ($result as $row) {
$shipTypeID = $row["shipTypeID"];
$groupID = Info::getGroupID($shipTypeID);
if ($groupID == null) {
$groupID = 0;
}
if ($groupID == 0) {
continue;
}
echo "Updating {$shipTypeID} to {$groupID}\n";
$db->execute("update zz_participants set groupID = {$groupID} where groupID = 0 and shipTypeID = {$shipTypeID}");
}
echo "Finished updating groups...\n";
$db->execute("create table if not exists zz_stats_recent like zz_stats");
$db->execute("truncate zz_stats_recent");
try {
self::recalc('faction', 'factionID', true, $db);
self::recalc('alli', 'allianceID', true, $db);
self::recalc('corp', 'corporationID', true, $db);
self::recalc('pilot', 'characterID', true, $db);
self::recalc('group', 'groupID', true, $db);
self::recalc('ship', 'shipTypeID', true, $db);
self::recalc('system', 'solarSystemID', false, $db);
self::recalc('region', 'regionID', false, $db);
} catch (Exception $e) {
print_r($e);
}
}
示例7: processAttacker
private static function processAttacker(&$kill, &$killID, &$attacker, $victimShipTypeID, $totalCost)
{
$victimGroupID = Info::getGroupID($victimShipTypeID);
$attackerGroupID = Info::getGroupID($attacker["shipTypeID"]);
$regionID = Info::getRegionIDFromSystemID($kill["solarSystemID"]);
$dttm = (string) $kill["killTime"];
Db::execute("\n\t\t\t\tinsert into zz_participants_temporary\n\t\t\t\t(killID, solarSystemID, regionID, isVictim, characterID, corporationID, allianceID, total_price, vGroupID,\n\t\t\t\t factionID, damage, finalBlow, weaponTypeID, shipTypeID, groupID, dttm)\n\t\t\t\tvalues\n\t\t\t\t(:killID, :solarSystemID, :regionID, 0, :characterID, :corporationID, :allianceID, :total, :vGroupID,\n\t\t\t\t :factionID, :damageDone, :finalBlow, :weaponTypeID, :shipTypeID, :groupID, :dttm)", array(":killID" => $killID, ":solarSystemID" => $kill["solarSystemID"], ":regionID" => $regionID, ":characterID" => $attacker["characterID"], ":corporationID" => $attacker["corporationID"], ":allianceID" => $attacker["allianceID"], ":factionID" => $attacker["factionID"], ":damageDone" => $attacker["damageDone"], ":finalBlow" => $attacker["finalBlow"], ":weaponTypeID" => $attacker["weaponTypeID"], ":shipTypeID" => $attacker["shipTypeID"], ":groupID" => $attackerGroupID, ":dttm" => $dttm, ":total" => $totalCost, ":vGroupID" => $victimGroupID));
Info::addChar($attacker["characterID"], $attacker["characterName"]);
Info::addCorp($attacker["corporationID"], $attacker["corporationName"]);
Info::addAlli($attacker["allianceID"], $attacker["allianceName"]);
}
示例8: validKill
function validKill(&$kill)
{
// Show all pod kills
$victimShipID = $kill['victim']['shipType']['id'];
if ($victimShipID == 670 || $victimShipID == 33328) {
return true;
}
foreach ($kill['attackers'] as $attacker) {
if (@$attacker['character']['id'] > 0) {
return true;
}
if (@$attacker['corporation']['id'] > 1999999) {
return true;
}
if (@$attacker['alliance']['id'] > 0) {
return true;
}
$attackerGroupID = Info::getGroupID(@$attacker['shipType']['id']);
if ($attackerGroupID == 365 || $attackerGroupID == 99) {
return true;
}
// Tower or Sentry gun
if (@$attacker['shipType']['id'] == 34495) {
return true;
}
// Drifters
if (@$attacker['corporation']['id'] == 1000125) {
return true;
}
// Drifters
}
return false;
}
示例9: eftarray
function eftarray($md5, $items, $victimID = 0)
{
$Cache = Cache::get($md5 . "eftarray");
if ($Cache) {
return $Cache;
}
// EFT / Fitting Wheel
$eftarray["high"] = array();
// high
$eftarray["mid"] = array();
// mid
$eftarray["low"] = array();
// low
$eftarray["rig"] = array();
// rig
$eftarray["drone"] = array();
// drone
$eftarray["sub"] = array();
// sub
$eftammo["high"] = array();
// high ammo
$eftammo["mid"] = array();
// mid ammo
foreach ($items as $itm) {
if ($victimID >= 2100000000 && $victimID <= 2999999999) {
$itm["flagName"] = Info::getGroupName(Info::getGroupID($itm["typeID"]));
} else {
if (!isset($itm["flagName"])) {
$itm["flagName"] = Info::getFlagName($itm["flag"]);
}
}
if ($itm["flagName"] == "Infantry Modules") {
$itm["flagName"] = "Mid Slots";
}
if ($itm["flagName"] == "Infantry Weapons") {
$itm["flagName"] = "High Slots";
}
if ($itm["flagName"] == "Infantry Equipment") {
$itm["flagName"] = "Low Slots";
}
if (!isset($itm["flag"]) || $itm["flag"] == 0) {
if ($itm["flagName"] == "High Slots") {
$itm["flag"] = 27;
}
if ($itm["flagName"] == "Mid Slots") {
$itm["flag"] = 19;
}
if ($itm["flagName"] == "Low Slots") {
$itm["flag"] = 11;
}
}
$key = $itm["typeName"] . "|" . $itm["flagName"];
if (isset($itm["flagName"])) {
if ($itm["fittable"] && $itm["inContainer"] == 0) {
$repeats = $itm["qtyDropped"] + $itm["qtyDestroyed"];
$i = 0;
while ($i < $repeats) {
if ($itm["flagName"] == "High Slots") {
high:
if (isset($eftarray["high"][$itm["flag"]])) {
$itm["flag"] = $itm["flag"] + 1;
goto high;
}
$eftarray["high"][$itm["flag"]][] = array("typeName" => $itm["typeName"], "typeID" => $itm["typeID"]);
}
if ($itm["flagName"] == "Mid Slots") {
mid:
if (isset($eftarray["mid"][$itm["flag"]])) {
$itm["flag"] = $itm["flag"] + 1;
goto mid;
}
$eftarray["mid"][$itm["flag"]][] = array("typeName" => $itm["typeName"], "typeID" => $itm["typeID"]);
}
if ($itm["flagName"] == "Low Slots") {
low:
if (isset($eftarray["low"][$itm["flag"]])) {
$itm["flag"] = $itm["flag"] + 1;
goto low;
}
$eftarray["low"][$itm["flag"]][] = array("typeName" => $itm["typeName"], "typeID" => $itm["typeID"]);
}
if ($itm["flagName"] == "Rigs") {
rigs:
if (isset($eftarray["rig"][$itm["flag"]])) {
$itm["flag"] = $itm["flag"] + 1;
goto rigs;
}
$eftarray["rig"][$itm["flag"]][] = array("typeName" => $itm["typeName"], "typeID" => $itm["typeID"]);
}
if ($itm["flagName"] == "SubSystems") {
subs:
if (isset($eftarray["sub"][$itm["flag"]])) {
$itm["flag"] = $itm["flag"] + 1;
goto subs;
}
$eftarray["sub"][$itm["flag"]][] = array("typeName" => $itm["typeName"], "typeID" => $itm["typeID"]);
}
$i++;
}
} else {
//.........这里部分代码省略.........
示例10: while
exit;
}
$statClasses = ['ships', 'isk', 'points'];
$statTypes = ['Destroyed', 'Lost'];
$ninetyDayKillID = $mdb->findField("oneWeek", "killID", [], ['killID' => 1]);
$statistics = $mdb->getCollection("statistics");
Util::out("weekly time ranks - first iteration");
$types = [];
$iter = $statistics->find();
while ($row = $iter->next()) {
$type = $row['type'];
$id = $row['id'];
if ($type == 'corporationID' && $id <= 1999999) {
continue;
}
if ($type == 'shipTypeID' && Info::getGroupID($id) == 29) {
continue;
}
$killID = getLatestKillID($type, $id, $ninetyDayKillID);
if ($killID < $ninetyDayKillID) {
continue;
}
$types[$type] = true;
$key = "tq:ranks:weekly:{$type}:{$today}";
$weeklyKills = getWeekly($row['type'], $row['id'], false, $ninetyDayKillID);
if ($weeklyKills['killIDCount'] == 0) {
continue;
}
$weeklyLosses = getWeekly($row['type'], $row['id'], true, $ninetyDayKillID);
$multi = $redis->multi();
zAdd($multi, "{$key}:shipsDestroyed", $weeklyKills['killIDCount'], $id);
示例11: eftarray
public static function eftarray($md5, $items, $victimID = 0)
{
global $mdb;
// EFT / Fitting Wheel
$eftarray['high'] = array();
// high
$eftarray['mid'] = array();
// mid
$eftarray['low'] = array();
// low
$eftarray['rig'] = array();
// rig
$eftarray['drone'] = array();
// drone
$eftarray['sub'] = array();
// sub
$eftammo['high'] = array();
// high ammo
$eftammo['mid'] = array();
// mid ammo
foreach ($items as $itm) {
if (!isset($itm['inContainer'])) {
$itm['inContainer'] = 0;
}
if ($victimID >= 2100000000 && $victimID <= 2999999999) {
$itm['flagName'] = Info::getInfoField('groupID', Info::getGroupID($itm['typeID']), 'name');
} elseif (!isset($itm['flagName'])) {
$itm['flagName'] = Info::getFlagName($itm['flag']);
}
if ($itm['flagName'] == 'Infantry Modules') {
$itm['flagName'] = 'Mid Slots';
}
if ($itm['flagName'] == 'Infantry Weapons') {
$itm['flagName'] = 'High Slots';
}
if ($itm['flagName'] == 'Infantry Equipment') {
$itm['flagName'] = 'Low Slots';
}
if ($itm['flag'] == 89) {
$slot = $mdb->findField("information", "implantSlot", ['type' => 'typeID', 'id' => (int) $itm['typeID']]);
if ($slot <= 5 && $slot >= 1) {
$itm['flagName'] = 'High Slots';
$itm['flag'] = 27 + ($slot - 1);
} elseif ($slot > 5 && $slot <= 10) {
$itm['flagName'] = 'Low Slots';
$itm['flag'] = 11 + ($slot - 6);
}
$itm['fittable'] = 1;
}
if (!isset($itm['flag']) || $itm['flag'] == 0) {
if ($itm['flagName'] == 'High Slots') {
$itm['flag'] = 27;
}
if ($itm['flagName'] == 'Mid Slots') {
$itm['flag'] = 19;
}
if ($itm['flagName'] == 'Low Slots') {
$itm['flag'] = 11;
}
}
$key = $itm['typeName'] . '|' . $itm['flagName'];
if (isset($itm['flagName'])) {
if ($itm['flagName'] == 'SubSystems' || $itm['fittable'] && $itm['inContainer'] == 0) {
// not ammo or whatever
$repeats = @$itm['quantityDropped'] + @$itm['quantityDestroyed'];
$i = 0;
while ($i < $repeats) {
if ($itm['flagName'] == 'High Slots') {
high:
if (isset($eftarray['high'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto high;
}
$eftarray['high'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Mid Slots') {
mid:
if (isset($eftarray['mid'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto mid;
}
$eftarray['mid'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Low Slots') {
low:
if (isset($eftarray['low'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto low;
}
$eftarray['low'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'Rigs') {
rigs:
if (isset($eftarray['rig'][$itm['flag']])) {
$itm['flag'] = $itm['flag'] + 1;
goto rigs;
}
$eftarray['rig'][$itm['flag']][] = array('typeName' => $itm['typeName'], 'typeID' => $itm['typeID']);
}
if ($itm['flagName'] == 'SubSystems') {
//.........这里部分代码省略.........
示例12: getFixedPrice
//.........这里部分代码省略.........
// Revenant
case 32788:
// Cambion
// Cambion
case 32790:
// Etana
// Etana
case 32209:
// Mimir
// Mimir
case 33673:
// Whiptail
return 100000000000;
// 100b
// 100b
case 33397:
// Chremoas
// Chremoas
case 35779:
// Imp
return 120000000000;
// 120b
// 120b
case 2836:
// Adrestia
// Adrestia
case 33675:
// Chameleon
// Chameleon
case 35781:
// Fiend
return 150000000000;
// 150b
// 150b
case 9860:
// Polaris
// Polaris
case 11019:
// Cockroach
return 1000000000000;
// 1 trillion, rare dev ships
// Rare cruisers
// 1 trillion, rare dev ships
// Rare cruisers
case 11940:
// Gold Magnate
// Gold Magnate
case 11942:
// Silver Magnate
// Silver Magnate
case 635:
// Opux Luxury Yacht
// Opux Luxury Yacht
case 11011:
// Guardian-Vexor
// Guardian-Vexor
case 25560:
// Opux Dragoon Yacht
return 500000000000;
// 500b
// Rare battleships
// 500b
// Rare battleships
case 13202:
// Megathron Federate Issue
// Megathron Federate Issue
case 26840:
// Raven State Issue
// Raven State Issue
case 11936:
// Apocalypse Imperial Issue
// Apocalypse Imperial Issue
case 11938:
// Armageddon Imperial Issue
// Armageddon Imperial Issue
case 26842:
// Tempest Tribal Issue
return 750000000000;
// 750b
}
// Some groupIDs have hardcoded prices
$groupID = Info::getGroupID($typeID);
switch ($groupID) {
case 30:
// Titans
return 100000000000;
// 100b
// 100b
case 659:
// Supercarriers
return 20000000000;
// 20b
// 20b
case 29:
// Capsules
return 10000;
// 10k
}
return null;
}