mirror of
https://gitlab.com/hashborgir/d2tools.git
synced 2025-09-18 17:42:09 +00:00
Armor.txt generator almost done
This commit is contained in:
213
genDocs.php
213
genDocs.php
@@ -489,7 +489,7 @@ EOT;
|
||||
// Type codes are in ItemTypes in itemtypes.Code
|
||||
// Type code's string name entry is in itemtypes.ItemType table--
|
||||
// first find in $strings. if not there, look in itemtypes
|
||||
//
|
||||
//
|
||||
|
||||
$htmlRow = "<tr>";
|
||||
$htmlRow .= "<td class='desc'>" . $output['desc'] . "</td>";
|
||||
@@ -1021,23 +1021,20 @@ if ($cmd == "genDocMisc") {
|
||||
$filter = "smh";
|
||||
|
||||
$sql = "SELECT DISTINCT * FROM misc WHERE spawnable='1'";
|
||||
// LEFT JOIN gems ON misc.code = gems.code
|
||||
//WHERE gems.code IS NULL AND misc.spawnable=1
|
||||
// ";// AND misc.namestr NOT LIKE '%$filter%'
|
||||
|
||||
// LEFT JOIN gems ON misc.code = gems.code
|
||||
//WHERE gems.code IS NULL AND misc.spawnable=1
|
||||
// ";// AND misc.namestr NOT LIKE '%$filter%'
|
||||
|
||||
$res = PDO_FetchAll($sql);
|
||||
$res = array_reverse($res);
|
||||
|
||||
|
||||
//$sql = "SELECT * FROM armor WHERE spawnable=1";
|
||||
//$res = array_merge(PDO_FetchAll($sql), $res);
|
||||
|
||||
//$sql = "SELECT * FROM weapons WHERE spawnable=1";
|
||||
//$res = array_merge(PDO_FetchAll($sql), $res);
|
||||
|
||||
//$res = array_merge(PDO_FetchAll($sql), $res);
|
||||
// ddump(array_keys($res[0]));
|
||||
|
||||
|
||||
|
||||
|
||||
$tableTop = <<<EOT
|
||||
<table border=1 class="mtable">
|
||||
<thead>
|
||||
@@ -1060,23 +1057,20 @@ EOT;
|
||||
$data = null;
|
||||
$stats = null;
|
||||
|
||||
|
||||
//ddump($r);
|
||||
|
||||
|
||||
// if hammers, then get itemcode's string
|
||||
if ($r['namestr'] == 'smh'){
|
||||
if ($r['namestr'] == 'smh') {
|
||||
$data['name'] = $strings[$r['namestr']] . "<br>" . $strings[$r['code']];
|
||||
|
||||
|
||||
$p = "/ÿc[\d:;\/.]/i";
|
||||
$data['name'] = preg_replace($p, "", $data['name']);
|
||||
$data['name'] = preg_replace($p, "", $data['name']);
|
||||
$data['name'] = array_reverse(explode('\n', $data['name']));
|
||||
$data['name'] = (implode('\n', $data['name']));
|
||||
$data['name'] = (implode('\n', $data['name']));
|
||||
} else {
|
||||
$data['name'] = $strings[$r['namestr']];
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
if (str_contains($data['name'], "ÿc")) {
|
||||
$p = "/ÿc[\d:;\/.]/i";
|
||||
$data['name'] = preg_replace($p, "", $data['name']);
|
||||
@@ -1101,11 +1095,11 @@ EOT;
|
||||
$data['durability'] = "Base durability: <span class=''>{$r['durability']}</span>";
|
||||
}
|
||||
|
||||
if ($r['hasinv']) {
|
||||
|
||||
if ($r['hasinv']) {
|
||||
|
||||
$sql = "SELECT MaxSock40 FROM itemtypes WHERE `Code`='{$r['type']}'";
|
||||
$data["maxsock"] = PDO_FetchOne($sql);
|
||||
|
||||
|
||||
if ($r['gemapplytype'] == "0") {
|
||||
$data['gemapplytype'] = "Socketing gives <span class='gold'>Weapon</span> stats";
|
||||
} else if ($r['gemapplytype'] == "1") {
|
||||
@@ -1113,24 +1107,23 @@ EOT;
|
||||
} else if ($r['gemapplytype'] == "2") {
|
||||
$data['gemapplytype'] = "Socketing gives <span class='gold'>Shield</span> stats";
|
||||
}
|
||||
|
||||
$data['hasinv'] = "Sockets <span class='blue' style='' font-size: 1.25em;'>({$data['maxsock']})</span>";
|
||||
|
||||
$data['hasinv'] = "Sockets <span class='blue' style='' font-size: 1.25em;'>({$data['maxsock']})</span>";
|
||||
}
|
||||
|
||||
|
||||
if ($r['Transmogrify']) {
|
||||
$tmogtype = ($strings[$r['TMogType']]);
|
||||
$data['Transmogrify'] = "Can right click transmogrify into ";
|
||||
$p = "/ÿc[\d:;\/.]/i";
|
||||
$data['Transmogrify'] = preg_replace($p, "", $data['Transmogrify']);
|
||||
$tmogtype = preg_replace($p, "", $tmogtype);
|
||||
|
||||
|
||||
$tmogtype = array_reverse(explode('\n', $tmogtype));
|
||||
$tmogtype = (implode(' ', $tmogtype));
|
||||
$tmogtype = str_replace(" Ess", '<br>Ess', $tmogtype);
|
||||
$tmogtype = str_replace(" Cube", '<br>Cube', $tmogtype);
|
||||
$data['tmogtype'] = $tmogtype;
|
||||
|
||||
|
||||
$transmogrify = array_reverse(explode('\n', $data['Transmogrify']));
|
||||
$data['Transmogrify'] = (implode('<br>', $transmogrify));
|
||||
}
|
||||
@@ -1157,7 +1150,7 @@ EOT;
|
||||
$data['spelldesc'] = preg_replace($p, "", $data['spelldesc']);
|
||||
|
||||
$spelldesc = array_reverse(explode('\n', $data['spelldesc']));
|
||||
$data['spelldesc'] = (implode('<br>', $spelldesc));
|
||||
$data['spelldesc'] = (implode('<br>', $spelldesc));
|
||||
}
|
||||
|
||||
if ($r['nameable']) {
|
||||
@@ -1186,8 +1179,9 @@ EOT;
|
||||
|
||||
|
||||
$data = array_filter($data);
|
||||
if($stats) $stat = array_filter($stats);
|
||||
|
||||
if ($stats)
|
||||
$stat = array_filter($stats);
|
||||
|
||||
$tr .= <<<EOT
|
||||
<tr>
|
||||
<td>{$data['name']}</td>
|
||||
@@ -1204,19 +1198,19 @@ EOT;
|
||||
<li class="text-success">{$data['rarity']}</li>
|
||||
<li class="blue">{$data['speed']}</li>
|
||||
<li class="blue">{$data['durability']}</li>
|
||||
<li class="">{$data['hasinv']}</li>
|
||||
<li class="blue">{$data['gemapplytype']}</li>
|
||||
<li class="">{$data['hasinv']}</li>
|
||||
<li class="blue">{$data['gemapplytype']}</li>
|
||||
<li class="blue">{$data['throwable']}</li>
|
||||
<li class="blue">{$data['useable']}</li>
|
||||
<li class="blue">{$data['useable']}</li>
|
||||
<li class="blue">{$data['unique']}</li>
|
||||
<li class="blue">{$data['stackable']}</li>
|
||||
<li class="text-info">{$data['Transmogrify']}{$data['tmogtype']}</li>
|
||||
<li class="text-info">{$data['Transmogrify']}{$data['tmogtype']}</li>
|
||||
<li class="text-secondary">{$data['quest']}</li>
|
||||
<li class="text-info">{$data['nameable']}</li>
|
||||
<li class="blue">{$data['spelldesc']}</li>
|
||||
<li class="blue">{$stats['stat1']} <span class="gold" style="font-size: 1.25em;">{$stats['calc1']}</span></li>
|
||||
<li class="blue">{$stats['stat2']} <span class="gold" style="font-size: 1.25em;">{$stats['calc2']}</span></li>
|
||||
<li class="blue">{$stats['stat3']} <span class="gold" style="font-size: 1.25em;">{$stats['calc3']}</span></li>
|
||||
<li class="blue">{$stats['stat3']} <span class="gold" style="font-size: 1.25em;">{$stats['calc3']}</span></li>
|
||||
</ul>
|
||||
</p>
|
||||
|
||||
@@ -1226,9 +1220,148 @@ EOT;
|
||||
}
|
||||
|
||||
$htmlFinal = $htmltop . $tableTop . $tr . $tableBottom . $htmlbottom;
|
||||
|
||||
|
||||
|
||||
|
||||
file_put_contents("$dir/misc.html", $htmlFinal);
|
||||
header("Location: docs/{$_SESSION['modname']}/misc.html");
|
||||
header("Location: docs/{$_SESSION['modname']}/misc.html");
|
||||
}
|
||||
|
||||
|
||||
|
||||
if ($cmd == 'genDocArmor') {
|
||||
|
||||
$tableTop = <<<EOT
|
||||
<style>
|
||||
body { font-family: Tahoma,Arial,Sans-Serif}
|
||||
table { font-family: ExocetHeavy;}
|
||||
</style>
|
||||
<table border=1 class="mtable">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>Name</th>
|
||||
<th>Lvl</th>
|
||||
<th>Required Lvl</th>
|
||||
<th>Required Str</th>
|
||||
<th>Min AC</th>
|
||||
<th>Max AC</th>
|
||||
<th>Block Chance</th>
|
||||
<th>Set/Unique Exceptional & Elite</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
EOT;
|
||||
$tableBottom = '</tbody> </table>';
|
||||
|
||||
$sql = "SELECT * FROM armor WHERE spawnable=1 AND namestr != ''";
|
||||
$res = PDO_FetchAll($sql);
|
||||
|
||||
foreach ($res as $r) {
|
||||
|
||||
$name = (!empty($strings[$r['namestr']])) ? $strings[$r['namestr']] : $r['name'];
|
||||
|
||||
if ($r['indestructible'] == '1') {
|
||||
$indestructable = "Yes";
|
||||
} else {
|
||||
$indestructable = "No";
|
||||
}
|
||||
|
||||
$imgUnique = (!empty($r['uniqueinvfile'])) ? "{$strings[$r['ultracode']]}<br><img src='img/items/{$r['uniqueinvfile']}.png'>" : "";
|
||||
$imgSet = (!empty($r['setinvfile'])) ? "{$strings[$r['ubercode']]}<br><img src='img/items/{$r['setinvfile']}.png'>" : "";
|
||||
|
||||
if (!empty($r['auto prefix'])) {
|
||||
$sql = "SELECT * FROM automagic WHERE `group` = ?";
|
||||
$ret = PDO_FetchRow($sql, [$r['auto prefix']]);
|
||||
|
||||
// ddump($isc[$ret['mod1code']]);
|
||||
|
||||
for ($i = 1; $i <= 3; $i++) {
|
||||
if ($ret["mod{$i}code"] != '') {
|
||||
|
||||
// ddump($isc[$ret["mod{$i}code"]]['string1']);
|
||||
$params = [
|
||||
"string1" => $isc[$ret["mod{$i}code"]]["string1"],
|
||||
"string2" => $isc[$ret["mod{$i}code"]]["string2"],
|
||||
"gstring1" => $isc[$ret["mod{$i}code"]]["gstring"],
|
||||
"gstring2" => $isc[$ret["mod{$i}code"]]["gstring2"],
|
||||
"descfunc" => $isc[$ret["mod{$i}code"]]["descfunc"],
|
||||
"descval" => $isc[$ret["mod{$i}code"]]["descval"],
|
||||
"dgrp" => $isc[$ret["mod{$i}code"]]["dgrp"],
|
||||
"dgrpfunc" => $isc[$ret["mod{$i}code"]]["dgrpfunc"],
|
||||
"dgrpval" => $isc[$ret["mod{$i}code"]]["dgrpval"],
|
||||
"prop" => $isc[$ret["mod{$i}code"]]["prop"]
|
||||
];
|
||||
$params["par"] = $ret["mod{$i}param"];
|
||||
$params["min"] = $ret["mod{$i}min"];
|
||||
$params["max"] = $ret["mod{$i}max"];
|
||||
|
||||
$props[$i] = $idesc->getDesc($params);
|
||||
}
|
||||
}
|
||||
|
||||
// dump($props);
|
||||
$autoprefix = "Automagic/Auto prefix Mods";
|
||||
}
|
||||
|
||||
$strbonus = (!empty($r['StrBonus'])) ? "Strength Bonus: <span class='white'>{$r['StrBonus']}" : "";
|
||||
|
||||
$block = (!empty($r['block'])) ? "Block: <span class='white'>{$r['block']}</span>" : "";
|
||||
|
||||
$tr .= <<<EOT
|
||||
<tr>
|
||||
<td>
|
||||
<ul>
|
||||
<li class="white h1">$name</li>
|
||||
<li class=""><img src="img/items/{$r['invfile']}.png"</li>
|
||||
<li class="blue">Defense: <span class="white">[{$r['minac']} - {$r['maxac']}]</span></li>
|
||||
<li class="blue">Weight: <span class="blue">{$r['speed']}</span></li>
|
||||
<li class="blue">Level: <span class="white">{$r['level']}</span></li>
|
||||
<li class="blue">Required Level: <span class="white">{$r['levelreq']}</span></li>
|
||||
<li class="blue">Required Strength: <span class="white">{$r['reqstr']}</span></li>
|
||||
<li class="blue">Indestructable: <span class="gold">$indestructable</span></li>
|
||||
<li class="blue">Durability: <span class="gold">{$r['durability']}</span></li>
|
||||
<li class="blue">Cost: <span class="gold">{$r['cost']}</span></li>
|
||||
|
||||
<li class="blue">Normal:
|
||||
<spap class="white">{$strings[$r['normcode']]}</span>
|
||||
</li>
|
||||
<li class="blue">Exceptional:
|
||||
<span class="white">{$strings[$r['ubercode']]}</span>
|
||||
</li>
|
||||
<li class="blue">Elite:
|
||||
<span class="white">{$strings[$r['ultracode']]}</span>
|
||||
</li>
|
||||
<li class="blue">Sockets: <span class="white">{$r['gemsockets']}</span></li>
|
||||
<li class="blue" style="margin-top: 30px;">$autoprefix<span class="white">{$props[0]}</span></li>
|
||||
<li class="blue"><span class="white">{$props[1]}</span></li>
|
||||
<li class="blue" style="margin-bottom: 30px;"><span class="white">{$props[2]}</span></li>
|
||||
<li class="blue">$strbonus</li>
|
||||
<li class="blue">$block</li>
|
||||
|
||||
|
||||
|
||||
</ul>
|
||||
</td>
|
||||
<td>Level: <br> {$r['level']}</td>
|
||||
<td>Level Required: <br> {$r['levelreq']}</td>
|
||||
<td>Requird Strength: <br> {$r['reqstr']}</td>
|
||||
<td>Min AC: <br> {$r['minac']}</td>
|
||||
<td>Max AC: <br> {$r['maxac']}</td>
|
||||
<td>Block: <br> {$r['block']}</td>
|
||||
<td style="width: 100px;">
|
||||
<li>$imgUnique <br> $imgUnique</li>
|
||||
</td>
|
||||
|
||||
</tr>
|
||||
|
||||
EOT;
|
||||
}
|
||||
|
||||
|
||||
|
||||
$htmlFinal = $htmltop . $tableTop . $tr . $tableBottom . $htmlbottom;
|
||||
|
||||
// ob_flush();
|
||||
// echo $htmlFinal;
|
||||
|
||||
file_put_contents("$dir/armor.html", $htmlFinal);
|
||||
header("Location: docs/{$_SESSION['modname']}/armor.html");
|
||||
}
|
Reference in New Issue
Block a user