* implemented enchantment conditions for meta gems
 * removed hardcoded static-domain in transfer-string
Site:
 * gain rep for ACTION_REGISTER when logging in for the first time, using external auth
 * language-menu uses the same dropdown-icon as other menus
Spell:
 * hide procChance of 100% or more
ItemComparison:
 * fixed display of drag-icon
 * fixed single gems being moved to first empty socket in tooltips

squelched some notices in quest.php and item.php
This commit is contained in:
Sarjuuk
2014-08-13 21:39:57 +02:00
parent 78422b9130
commit cdfde74eb9
16 changed files with 2904 additions and 45 deletions

View File

@@ -41,7 +41,7 @@ class AjaxHandler
if (empty($this->get['id'])) if (empty($this->get['id']))
return; return;
if ($_ = DB::Aowow()->selectRow('SELECT c2.id as zwei, c1.id as eins, IFNULL(c2.id, c1.id) AS id, IFNULL(c2.type, c1.type) AS type, IFNULL(c2.typeId, c1.typeId) AS typeId FROM ?_comments c1 LEFT JOIN ?_comments c2 ON c1.replyTo = c2.id WHERE c1.id = ?d', $this->get['id'])) if ($_ = DB::Aowow()->selectRow('SELECT IFNULL(c2.id, c1.id) AS id, IFNULL(c2.type, c1.type) AS type, IFNULL(c2.typeId, c1.typeId) AS typeId FROM ?_comments c1 LEFT JOIN ?_comments c2 ON c1.replyTo = c2.id WHERE c1.id = ?d', $this->get['id']))
header('Location: ?'.Util::$typeStrings[$_['type']].'='.$_['typeId'].'#comments:id='.$_['id'].($_['id'] != $this->get['id'] ? ':reply='.$this->get['id'] : null)); header('Location: ?'.Util::$typeStrings[$_['type']].'='.$_['typeId'].'#comments:id='.$_['id'].($_['id'] != $this->get['id'] ? ':reply='.$this->get['id'] : null));
} }

View File

@@ -604,8 +604,33 @@ class ItemList extends BaseType
// Item is a gem (don't mix with sockets) // Item is a gem (don't mix with sockets)
if ($geId = $this->curTpl['gemEnchantmentId']) if ($geId = $this->curTpl['gemEnchantmentId'])
{ {
$gemText = DB::Aowow()->selectRow('SELECT * FROM ?_itemEnchantment WHERE id = ?d', $geId); $gemEnch = DB::Aowow()->selectRow('SELECT * FROM ?_itemenchantment WHERE id = ?d', $geId);
$x .= Util::localizedString($gemText, 'text').'<br />'; $x .= '<span class="q1">'.Util::localizedString($gemEnch, 'text').'</span><br />';
// activation conditions for meta gems
if ($gemEnch['conditionId'])
{
if ($gemCnd = DB::Aowow()->selectRow('SELECT * FROM ?_itemenchantmentcondition WHERE id = ?d', $gemEnch['conditionId']))
{
for ($i = 1; $i < 6; $i++)
{
if (!$gemCnd['color'.$i])
continue;
switch ($gemCnd['comparator'.$i])
{
case 2: // requires less <color> than (<value> || <comparecolor>) gems
case 5: // requires at least <color> than (<value> || <comparecolor>) gems
$sp = (int)$gemCnd['value'.$i] > 1;
$x .= '<span class="q0">'.Lang::$achievement['reqNumCrt'].' '.sprintf(Lang::$item['gemConditions'][$gemCnd['comparator'.$i]][$sp], $gemCnd['value'.$i], Lang::$item['gemColors'][$gemCnd['color'.$i] - 1]).'</span><br />';
break;
case 3: // requires more <color> than (<value> || <comparecolor>) gems
$x .= '<span class="q0">'.Lang::$achievement['reqNumCrt'].' '.sprintf(Lang::$item['gemConditions'][3], Lang::$item['gemColors'][$gemCnd['color'.$i] - 1], Lang::$item['gemColors'][$gemCnd['cmpColor'.$i] - 1]).'</span><br />';
break;
}
}
}
}
} }
// Random Enchantment - if random enchantment is set, prepend stats from it // Random Enchantment - if random enchantment is set, prepend stats from it
@@ -654,14 +679,17 @@ class ItemList extends BaseType
{ {
$gems = DB::Aowow()->select('SELECT i.id AS ARRAY_KEY, i.iconString, ae.*, i.gemColorMask AS colorMask FROM ?_items i JOIN ?_itemenchantment ae ON ae.id = i.gemEnchantmentId WHERE i.id IN (?a)', $enhance['g']); $gems = DB::Aowow()->select('SELECT i.id AS ARRAY_KEY, i.iconString, ae.*, i.gemColorMask AS colorMask FROM ?_items i JOIN ?_itemenchantment ae ON ae.id = i.gemEnchantmentId WHERE i.id IN (?a)', $enhance['g']);
foreach ($enhance['g'] as $k => $v) foreach ($enhance['g'] as $k => $v)
if (!in_array($v, array_keys($gems))) if ($v && !in_array($v, array_keys($gems))) // 0 is valid
unset($enhance['g'][$k]); unset($enhance['g'][$k]);
} }
else else
$enhance['g'] = []; $enhance['g'] = [];
// zero fill empty sockets // zero fill empty sockets
$sockCount = $this->curTpl['socketColor1'] + $this->curTpl['socketColor2'] + $this->curTpl['socketColor3'] + (isset($enhance['s']) ? 1 : 0); $sockCount = isset($enhance['s']) ? 1 : 0;
if (!empty($this->json[$this->id]['nsockets']))
$sockCount += $this->json[$this->id]['nsockets'];
while ($sockCount > count($enhance['g'])) while ($sockCount > count($enhance['g']))
$enhance['g'][] = 0; $enhance['g'][] = 0;

View File

@@ -196,7 +196,7 @@ class User
return AUTH_IPBANNED; return AUTH_IPBANNED;
$query = DB::Aowow()->SelectRow(' $query = DB::Aowow()->SelectRow('
SELECT a.id, a.passHash, BIT_OR(ab.typeMask) AS bans, status SELECT a.id, a.passHash, BIT_OR(ab.typeMask) AS bans, a.status
FROM ?_account a FROM ?_account a
LEFT JOIN ?_account_banned ab ON a.id = ab.userId AND ab.end > UNIX_TIMESTAMP() LEFT JOIN ?_account_banned ab ON a.id = ab.userId AND ab.end > UNIX_TIMESTAMP()
WHERE a.user = ? WHERE a.user = ?
@@ -282,7 +282,7 @@ class User
if (DB::Aowow()->selectCell('SELECT 1 FROM ?_account WHERE extId = ?d', $extId)) if (DB::Aowow()->selectCell('SELECT 1 FROM ?_account WHERE extId = ?d', $extId))
return true; return true;
$ok = DB::Aowow()->query('INSERT INTO ?_account (extId, user, displayName, lastIP, locale, status) VALUES (?d, ?, ?, ?, ?d, ?d)', $newId = DB::Aowow()->query('INSERT INTO ?_account (extId, user, displayName, lastIP, locale, status) VALUES (?d, ?, ?, ?, ?d, ?d)',
$extId, $extId,
$name, $name,
Util::ucFirst($name), Util::ucFirst($name),
@@ -291,7 +291,10 @@ class User
ACC_STATUS_OK ACC_STATUS_OK
); );
return $ok; if ($newId)
Util::gainSiteReputation(SITEREP_ACTION_REGISTER, $newId);
return $newId;
} }
private static function createSalt() private static function createSalt()

View File

@@ -660,7 +660,7 @@ $lang = array(
'powerRunes' => ["Frost", "Unheilig", "Blut", "Tod"], 'powerRunes' => ["Frost", "Unheilig", "Blut", "Tod"],
'powerTypes' => array( 'powerTypes' => array(
-2 => "Gesundheit", -1 => null, "Mana", "Wut", "Fokus", "Energie", "Zufriedenheit", "Runen", "Runenmacht", -2 => "Gesundheit", -1 => null, "Mana", "Wut", "Fokus", "Energie", "Zufriedenheit", "Runen", "Runenmacht",
'AMMOSLOT' => "Munition", 'STEAM' => "Dampfdruck", 'WRATH' => "Zorn", 'PYRITE' => "Pyrit", 'AMMOSLOT' => "Munition", 'STEAM' => "Dampfdruck", 'WRATH' => "Wrath", 'PYRITE' => "Pyrit",
'HEAT' => "Hitze", 'OOZE' => "Schlamm", 'BLOOD_POWER' => "Blutmacht" 'HEAT' => "Hitze", 'OOZE' => "Schlamm", 'BLOOD_POWER' => "Blutmacht"
), ),
'relItems' => array( 'relItems' => array(
@@ -798,7 +798,7 @@ $lang = array(
'tool' => "Werkzeug", 'tool' => "Werkzeug",
'cost' => "Preis", 'cost' => "Preis",
'content' => "Inhalt", 'content' => "Inhalt",
'_transfer' => 'Dieser Gegenstand wird mit <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url(static/images/wow/icons/tiny/%s.gif)">%s</a> vertauscht, wenn Ihr zur <span class="icon-%s">%s</span> wechselt.', '_transfer' => 'Dieser Gegenstand wird mit <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url('.STATIC_URL.'/images/wow/icons/tiny/%s.gif)">%s</a> vertauscht, wenn Ihr zur <span class="icon-%s">%s</span> wechselt.',
'_unavailable' => "Dieser Gegenstand ist nicht für Spieler verfügbar.", '_unavailable' => "Dieser Gegenstand ist nicht für Spieler verfügbar.",
'_rndEnchants' => "Zufällige Verzauberungen", '_rndEnchants' => "Zufällige Verzauberungen",
'_chance' => "(Chance von %s%%)", '_chance' => "(Chance von %s%%)",
@@ -811,18 +811,26 @@ $lang = array(
'tabOther' => "Anderes", 'tabOther' => "Anderes",
'gems' => "Edelsteine", 'gems' => "Edelsteine",
'socketBonus' => "Sockelbonus", 'socketBonus' => "Sockelbonus",
'socket' => array ( 'socket' => array(
"Metasockel", "Roter Sockel", "Gelber Sockel", "Blauer Sockel", -1 => "Prismatischer Sockel" "Metasockel", "Roter Sockel", "Gelber Sockel", "Blauer Sockel", -1 => "Prismatischer Sockel"
), ),
'quality' => array ( 'gemColors' => array( // *_GEM
"Meta", "Rot", "Gelb", "Blau"
),
'gemConditions' => array( // ENCHANT_CONDITION_* in GlobalStrings.lua; 2 not in use (use as PH)
2 => ["weniger als %d Edelstein der Kategorie %s", "weniger als %d Edelsteine der Kategorie %s"],
3 => "mehr Edelsteine der Kategorie %s als Edelsteine der Kategorie %s",
5 => ["mindestens %d Edelstein der Kategorie %s", "mindestens %d Edelsteine der Kategorie %s"]
),
'quality' => array(
"Schlecht", "Verbreitet", "Selten", "Rar", "Schlecht", "Verbreitet", "Selten", "Rar",
"Episch", "Legendär", "Artefakt", "Erbstücke", "Episch", "Legendär", "Artefakt", "Erbstücke",
), ),
'trigger' => array ( 'trigger' => array(
"Benutzen: ", "Anlegen: ", "Chance bei Treffer: ", null, null, "Benutzen: ", "Anlegen: ", "Chance bei Treffer: ", null, null,
null, null null, null
), ),
'bonding' => array ( 'bonding' => array(
"Accountgebunden", "Wird beim Aufheben gebunden", "Wird beim Anlegen gebunden", "Accountgebunden", "Wird beim Aufheben gebunden", "Wird beim Anlegen gebunden",
"Wird bei Benutzung gebunden", "Questgegenstand", "Questgegenstand" "Wird bei Benutzung gebunden", "Questgegenstand", "Questgegenstand"
), ),

View File

@@ -658,7 +658,7 @@ $lang = array(
'AMMOSLOT' => "Ammo", 'STEAM' => "Steam Pressure", 'WRATH' => "Wrath", 'PYRITE' => "Pyrite", 'AMMOSLOT' => "Ammo", 'STEAM' => "Steam Pressure", 'WRATH' => "Wrath", 'PYRITE' => "Pyrite",
'HEAT' => "Heat", 'OOZE' => "Ooze", 'BLOOD_POWER' => "Blood Power" 'HEAT' => "Heat", 'OOZE' => "Ooze", 'BLOOD_POWER' => "Blood Power"
), ),
'relItems' => array ( 'relItems' => array(
'base' => "<small>Show %s related to <b>%s</b></small>", 'base' => "<small>Show %s related to <b>%s</b></small>",
'link' => " or ", 'link' => " or ",
'recipes' => '<a href="?items=9.%s">recipe items</a>', 'recipes' => '<a href="?items=9.%s">recipe items</a>',
@@ -793,7 +793,7 @@ $lang = array(
'tool' => "Tool", 'tool' => "Tool",
'cost' => "Cost", 'cost' => "Cost",
'content' => "Content", 'content' => "Content",
'_transfer' => 'This item will be converted to <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url(static/images/wow/icons/tiny/%s.gif)">%s</a> if you transfer to <span class="icon-%s">%s</span>.', '_transfer' => 'This item will be converted to <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url('.STATIC_URL.'/images/wow/icons/tiny/%s.gif)">%s</a> if you transfer to <span class="icon-%s">%s</span>.',
'_unavailable' => "This item is not available to players.", '_unavailable' => "This item is not available to players.",
'_rndEnchants' => "Random Enchantments", '_rndEnchants' => "Random Enchantments",
'_chance' => "(%s%% chance)", '_chance' => "(%s%% chance)",
@@ -807,17 +807,25 @@ $lang = array(
'gems' => "Gems", 'gems' => "Gems",
'socketBonus' => "Socket Bonus", 'socketBonus' => "Socket Bonus",
'socket' => array( 'socket' => array(
"Meta Socket", "Red Socket", "Yellow Socket", "Blue Socket", -1 => "Prismatic Socket" "Meta Socket", "Red Socket", "Yellow Socket", "Blue Socket", -1 => "Prismatic Socket"
), ),
'quality' => array ( 'gemColors' => array(
"meta", "red", "yellow", "blue"
),
'gemConditions' => array( // ENCHANT_CONDITION_* in GlobalStrings.lua
2 => ["less than %d %s gem", "less than %d %s gems"],
3 => "more %s gems than %s gems",
5 => ["at least %d %s gem", "at least %d %s gems"]
),
'quality' => array(
"Poor", "Common", "Uncommon", "Rare", "Poor", "Common", "Uncommon", "Rare",
"Epic", "Legendary", "Artifact", "Heirloom" "Epic", "Legendary", "Artifact", "Heirloom"
), ),
'trigger' => array ( 'trigger' => array(
"Use: ", "Equip: ", "Chance on hit: ", null, null, "Use: ", "Equip: ", "Chance on hit: ", null, null,
null, null null, null
), ),
'bonding' => array ( 'bonding' => array(
"Binds to account", "Binds when picked up", "Binds when equipped", "Binds to account", "Binds when picked up", "Binds when equipped",
"Binds when used", "Quest Item", "Quest Item" "Binds when used", "Quest Item", "Quest Item"
), ),

View File

@@ -655,7 +655,7 @@ $lang = array(
'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "[Wrath]", 'PYRITE' => "[Pyrite]", 'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "[Wrath]", 'PYRITE' => "[Pyrite]",
'HEAT' => "[Heat]", 'OOZE' => "[Ooze]", 'BLOOD_POWER' => "[Blood Power]" // spellname of 72370 'HEAT' => "[Heat]", 'OOZE' => "[Ooze]", 'BLOOD_POWER' => "[Blood Power]" // spellname of 72370
), ),
'relItems' => array ( 'relItems' => array(
'base' => "<small>Muestra %s relacionados con <b>%s</b></small>", 'base' => "<small>Muestra %s relacionados con <b>%s</b></small>",
'link' => " u ", 'link' => " u ",
'recipes' => '<a href="?items=9.%s">objetos de receta</a>', 'recipes' => '<a href="?items=9.%s">objetos de receta</a>',
@@ -790,7 +790,7 @@ $lang = array(
'tool' => "Herramienta", 'tool' => "Herramienta",
'cost' => "Coste", 'cost' => "Coste",
'content' => "Contenido", 'content' => "Contenido",
'_transfer' => 'Este objeto será convertido a <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url(static/images/wow/icons/tiny/%s.gif)">%s</a> si lo transfieres a la <span class="icon-%s">%s</span>.', '_transfer' => 'Este objeto será convertido a <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url('.STATIC_URL.'/images/wow/icons/tiny/%s.gif)">%s</a> si lo transfieres a la <span class="icon-%s">%s</span>.',
'_unavailable' => "Este objeto no está disponible para los jugadores.", '_unavailable' => "Este objeto no está disponible para los jugadores.",
'_rndEnchants' => "Encantamientos aleatorios", '_rndEnchants' => "Encantamientos aleatorios",
'_chance' => "(probabilidad %s%%)", '_chance' => "(probabilidad %s%%)",
@@ -806,15 +806,23 @@ $lang = array(
'socket' => array( 'socket' => array(
"Ranura meta", "Ranura roja", "Ranura amarilla", "Ranura azul", -1 => "Ranura prismática" "Ranura meta", "Ranura roja", "Ranura amarilla", "Ranura azul", -1 => "Ranura prismática"
), ),
'quality' => array ( 'gemColors' => array( // *_GEM
"meta", "roja(s)", "amarilla(s)", "azul(es)"
),
'gemConditions' => array( // ENCHANT_CONDITION_*
2 => ["menos de %d %s gema", "menos de %d %s gemas"],
3 => "más gemas %s que gemas %s",
5 => ["al menos %d %s gema", "al menos %d %s gemas"]
),
'quality' => array(
"Pobre", "Común", "Poco Común", "Raro", "Pobre", "Común", "Poco Común", "Raro",
"Épica", "Legendaria", "Artefacto", "Reliquia" "Épica", "Legendaria", "Artefacto", "Reliquia"
), ),
'trigger' => array ( 'trigger' => array(
"Uso: ", "Equipar: ", "Probabilidad al acertar: ", null, null, "Uso: ", "Equipar: ", "Probabilidad al acertar: ", null, null,
null, null null, null
), ),
'bonding' => array ( 'bonding' => array(
"Se liga a la cuenta", "Se liga al recogerlo", "Se liga al equiparlo", "Se liga a la cuenta", "Se liga al recogerlo", "Se liga al equiparlo",
"Se liga al usarlo", "Objeto de misión", "Objeto de misión" "Se liga al usarlo", "Objeto de misión", "Objeto de misión"
), ),

View File

@@ -138,7 +138,7 @@ $lang = array(
'bannedRating' => "Vous avez été banni du score des commentaires.", # LANG.tooltip_banned_rating 'bannedRating' => "Vous avez été banni du score des commentaires.", # LANG.tooltip_banned_rating
'tooManyVotes' => "Vous avez voté trop souvent aujourd'hui! Revenez demain." # LANG.tooltip_too_many_votes 'tooManyVotes' => "Vous avez voté trop souvent aujourd'hui! Revenez demain." # LANG.tooltip_too_many_votes
), ),
'game' => array ( 'game' => array(
'achievement' => "haut fait", 'achievement' => "haut fait",
'achievements' => "Hauts faits", 'achievements' => "Hauts faits",
'class' => "classe", 'class' => "classe",
@@ -653,7 +653,7 @@ $lang = array(
'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "courroux", 'PYRITE' => "Pyrite", 'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "courroux", 'PYRITE' => "Pyrite",
'HEAT' => "chaleur", 'OOZE' => "limon", 'BLOOD_POWER' => "puissance de sang" 'HEAT' => "chaleur", 'OOZE' => "limon", 'BLOOD_POWER' => "puissance de sang"
), ),
'relItems' => array ( 'relItems' => array(
'base' => "<small>Montre %s reliés à <b>%s</b></small>", 'base' => "<small>Montre %s reliés à <b>%s</b></small>",
'link' => " ou ", 'link' => " ou ",
'recipes' => "les <a href=\"?items=9.%s\">recettes</a>", 'recipes' => "les <a href=\"?items=9.%s\">recettes</a>",
@@ -788,7 +788,7 @@ $lang = array(
'tool' => "Outil", 'tool' => "Outil",
'cost' => "Coût", 'cost' => "Coût",
'content' => "Contenu", 'content' => "Contenu",
'_transfer' => 'Cet objet sera converti en <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url(static/images/wow/icons/tiny/%s.gif)">%s</a> si vous transférez en <span class="icon-%s">%s</span>.', '_transfer' => 'Cet objet sera converti en <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url('.STATIC_URL.'/images/wow/icons/tiny/%s.gif)">%s</a> si vous transférez en <span class="icon-%s">%s</span>.',
'_unavailable' => "Este objeto no está disponible para los jugadores.", '_unavailable' => "Este objeto no está disponible para los jugadores.",
'_rndEnchants' => "Enchantements aléatoires", '_rndEnchants' => "Enchantements aléatoires",
'_chance' => "(%s%% de chance)", '_chance' => "(%s%% de chance)",
@@ -804,15 +804,23 @@ $lang = array(
'socket' => array( 'socket' => array(
"Méta-châsse", "Châsse rouge", "Châsse jaune", "Châsse bleue", -1 => "Châsse prismatique" "Méta-châsse", "Châsse rouge", "Châsse jaune", "Châsse bleue", -1 => "Châsse prismatique"
), ),
'quality' => array ( 'gemColors' => array( // *_GEM
"Méta", "rouge(s)", "jaune(s)", "bleue(s)"
),
'gemConditions' => array( // ENCHANT_CONDITION_*
2 => ["moins de %d gemme %s", "moins de %d gemmes %s"],
3 => "plus de gemmes %s que de %s", // plus de gemmes %s que |2 %s
5 => ["au moins %d gemme %s", "au moins %d gemmes %s"]
),
'quality' => array(
"Médiocre", "Classique", "Bonne", "Rare", "Médiocre", "Classique", "Bonne", "Rare",
"Épique", "Légendaire", "Artefact", "Héritage" "Épique", "Légendaire", "Artefact", "Héritage"
), ),
'trigger' => array ( 'trigger' => array(
"Utilise : ", "Équipé : ", "Chances quand vous touchez : ", null, null, "Utilise : ", "Équipé : ", "Chances quand vous touchez : ", null, null,
null, null null, null
), ),
'bonding' => array ( 'bonding' => array(
"Lié au compte", "Lié quand ramassé", "Lié quand équipé", "Lié au compte", "Lié quand ramassé", "Lié quand équipé",
"Lié quand utilisé", "Objet de quête", "Objet de quête" "Lié quand utilisé", "Objet de quête", "Objet de quête"
), ),

View File

@@ -660,7 +660,7 @@ $lang = array(
'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "Гневу", 'PYRITE' => "Колчедан", 'AMMOSLOT' => "[Ammo]", 'STEAM' => "[Steam Pressure]", 'WRATH' => "Гневу", 'PYRITE' => "Колчедан",
'HEAT' => "Жар", 'OOZE' => "Слизнюка", 'BLOOD_POWER' => "Сила крови" 'HEAT' => "Жар", 'OOZE' => "Слизнюка", 'BLOOD_POWER' => "Сила крови"
), ),
'relItems' => array ( 'relItems' => array(
'base' => "<small>Показать %s, относящиеся к профессии <b>%s</b></small>", 'base' => "<small>Показать %s, относящиеся к профессии <b>%s</b></small>",
'link' => " или ", 'link' => " или ",
'recipes' => '<a href="?items=9.%s">рецепты</a>', 'recipes' => '<a href="?items=9.%s">рецепты</a>',
@@ -795,7 +795,7 @@ $lang = array(
'tool' => "Инструмент", 'tool' => "Инструмент",
'cost' => "Цена", 'cost' => "Цена",
'content' => "Материал", 'content' => "Материал",
'_transfer' => 'Этот предмет превратится в <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url(static/images/wow/icons/tiny/%s.gif)">%s</a>, если вы перейдете за <span class="icon-%s">%s</span>.', '_transfer' => 'Этот предмет превратится в <a href="?item=%d" class="q%d icontiny tinyspecial" style="background-image: url('.STATIC_URL.'/images/wow/icons/tiny/%s.gif)">%s</a>, если вы перейдете за <span class="icon-%s">%s</span>.',
'_unavailable' => "Этот предмет не доступен игрокам.", '_unavailable' => "Этот предмет не доступен игрокам.",
'_rndEnchants' => "Случайные улучшения", '_rndEnchants' => "Случайные улучшения",
'_chance' => "(шанс %s%%)", '_chance' => "(шанс %s%%)",
@@ -811,15 +811,23 @@ $lang = array(
'socket' => array( 'socket' => array(
"Особое гнездо", "Красное гнездо", "Желтое гнездо", "Синее гнездо", -1 => "Бесцветное гнездо" "Особое гнездо", "Красное гнездо", "Желтое гнездо", "Синее гнездо", -1 => "Бесцветное гнездо"
), ),
'quality' => array ( 'gemColors' => array( // *_GEM
"Особый", "Красный", "Желтый", "Синий"
),
'gemConditions' => array( // ENCHANT_CONDITION_* so whats that pipe-code..?
2 => ["меньше, чем %d камень %s цвета", "меньше, чем %d камня %s цвета"], // меньше, чем %d |4камень:камня:камней; |3-1(%s) цвета
3 => "больше %s, чем %s камней", // больше |3-7(%s), чем |3-7(%s) камней
5 => ["хотя бы %d камень %s цвета", "хотя бы %d камня %s цвета"] // хотя бы %d |4камень:камня:камней; |3-1(%s) цвета; same here
),
'quality' => array(
"Низкий", "Обычный", "Необычный", "Редкий", "Низкий", "Обычный", "Необычный", "Редкий",
"Эпический", "Легендарный", "Артефакт", "Фамильная черта" "Эпический", "Легендарный", "Артефакт", "Фамильная черта"
), ),
'trigger' => array ( 'trigger' => array(
"Использование: ", "Если на персонаже: ", "Возможный эффект при попадании: ", "Использование: ", "Если на персонаже: ", "Возможный эффект при попадании: ",
null, null, null, null null, null, null, null
), ),
'bonding' => array ( 'bonding' => array(
"Привязано к учетной записи", "Персональный при поднятии", "Становится персональным при надевании", "Привязано к учетной записи", "Персональный при поднятии", "Становится персональным при надевании",
"Персональный при использовании", "Предмет, необходимый для задания", "Предмет, необходимый для задания" "Персональный при использовании", "Предмет, необходимый для задания", "Предмет, необходимый для задания"
), ),

View File

@@ -128,7 +128,7 @@ class ItemsPage extends GenericPage
$infoMask |= ITEMINFO_VENDOR; $infoMask |= ITEMINFO_VENDOR;
if (!empty($this->filter['fi']['extraCols'])) if (!empty($this->filter['fi']['extraCols']))
$this->sharedLV['extraCols'] = '$fi_getExtraCols(fi_extraCols, '.($this->filter['gm'] ?: 0).', '.(array_intersect([63], $xCols) ? 1 : 0).')'; $this->sharedLV['extraCols'] = '$fi_getExtraCols(fi_extraCols, '.(isset($this->filter['gm']) ? $this->filter['gm'] : 0).', '.(array_intersect([63], $xCols) ? 1 : 0).')';
if ($this->filterObj->error) if ($this->filterObj->error)
$this->sharedLV['_errors'] = '$1'; $this->sharedLV['_errors'] = '$1';

View File

@@ -347,6 +347,8 @@ class QuestPage extends GenericPage
/* Objectives List */ /* Objectives List */
/*******************/ /*******************/
$this->objectiveList = [];
// gather ids for lookup // gather ids for lookup
$olItems = $olNPCs = $olGOs = $olFactions = []; $olItems = $olNPCs = $olGOs = $olFactions = [];

View File

@@ -1511,7 +1511,7 @@ class SpellPage extends GenericPage
if ($_ = $this->subject->getField('effect'.$i.'Mechanic')) if ($_ = $this->subject->getField('effect'.$i.'Mechanic'))
$foo['mechanic'] = Lang::$game['me'][$_]; $foo['mechanic'] = Lang::$game['me'][$_];
if (!empty($procData['chance']) && $procData['chance'] < 100) if (!empty($procData['chance']))
$foo['procData'] = array( $foo['procData'] = array(
$procData['chance'], $procData['chance'],
$procData['cooldown'] ? Util::formatTime($procData['cooldown'] * 1000, true) : null $procData['cooldown'] ? Util::formatTime($procData['cooldown'] * 1000, true) : null

File diff suppressed because it is too large Load Diff

View File

@@ -3679,10 +3679,13 @@ a:hover.pet-zoom {
padding: 5px 0 5px 0px; padding: 5px 0 5px 0px;
} }
/* still in use */ /* still in use, merge with .hassubmenu */
a#toplinks-language { a#toplinks-language {
padding: 0 0 0 21px; /* padding: 0 0 0 21px; */
background: url(../images/icons/language.gif) left center no-repeat; padding: 0 13px 0 21px;
background-image: url(../images/icons/language.gif), url(../images/Menu/arrow-down-ffcd55.gif);
background-position: left center, right center;
background-repeat: no-repeat, no-repeat;
} }
/* the search.css is basicly empty without the styles for googleseach */ /* the search.css is basicly empty without the styles for googleseach */

View File

@@ -308,7 +308,7 @@
} }
.dragged { .dragged {
z-index: 1000; z-index: 1000 !important;
opacity: 0.35; opacity: 0.35;
filter: alpha(opacity=35); filter: alpha(opacity=35);
} }

View File

@@ -6,4 +6,4 @@ else:
endif; endif;
?> ?>
|<a href="#" id="toplinks-feedback" class="icon-email"><?php echo Lang::$main['feedback']; ?></a> |<a href="#" id="toplinks-feedback" class="icon-email"><?php echo Lang::$main['feedback']; ?></a>
|<a href="javascript:;" id="toplinks-language"><?php echo Lang::$main['language']; ?><small>&#9660;</small></a> |<a href="javascript:;" id="toplinks-language"><?php echo Lang::$main['language']; ?></a>

View File

@@ -184,8 +184,8 @@ foreach ($this->effects as $i => $e):
echo '<br>'; echo '<br>';
if ($e['procData'][0] < 0): if ($e['procData'][0] < 0):
echo sprintf(Lang::$spell['ppm'], $e['procData'][0] * -1); echo sprintf(Lang::$spell['ppm'], -$e['procData'][0]);
else: elseif ($e['procData'][0] < 100.0):
echo Lang::$spell['procChance'].Lang::$main['colon'].$e['procData'][0].'%'; echo Lang::$spell['procChance'].Lang::$main['colon'].$e['procData'][0].'%';
endif; endif;