|
|
@@ -33,237 +33,244 @@
|
|
|
<?php
|
|
|
include __DIR__ . "/inc/header.php";
|
|
|
?>
|
|
|
- <section class='filters'>
|
|
|
- <h2>
|
|
|
- <span>
|
|
|
- Monster filters
|
|
|
- </span>
|
|
|
- </h2>
|
|
|
- <form action='/report/skillup/' method='get'>
|
|
|
- <div class='filter' id='filter_stars'>
|
|
|
- <span>Min. stars:</span>
|
|
|
- <input type='number' name='min_stars' id='filter_stars_min' min='1' max='6' value='<?=$page->filters["min_stars"]?>'/>
|
|
|
- <br/>
|
|
|
- <span>Max. stars:</span>
|
|
|
- <input type='number' name='max_stars' id='filter_stars_max' min='1' max='6' value='<?=$page->filters["max_stars"]?>'/>
|
|
|
- </div>
|
|
|
- <div class='filter' id='filter_stars'>
|
|
|
- <span>Min. natural stars:</span>
|
|
|
- <input type='number' name='min_natural_stars' id='filter_stars_min' min='1' max='5' value='<?=$page->filters["min_natural_stars"]?>'/>
|
|
|
- <br/>
|
|
|
- <span>Max. natural stars:</span>
|
|
|
- <input type='number' name='max_natural_stars' id='filter_stars_max' min='1' max='5' value='<?=$page->filters["max_natural_stars"]?>'/>
|
|
|
- </div>
|
|
|
- <div class='filter'>
|
|
|
+ <section class='filters'>
|
|
|
+ <h2>
|
|
|
+ <span>
|
|
|
+ Monster filters
|
|
|
+ </span>
|
|
|
+ </h2>
|
|
|
+ <form action='/report/skillup/' method='get'>
|
|
|
+ <table>
|
|
|
+ <tr>
|
|
|
+ <td class='filter' id='filter_stars'>
|
|
|
+ <span>Stars:</span>
|
|
|
+ <input type='number' name='min_stars' min='1' max='6' value='<?=$page->filters["min_stars"]?>'/>
|
|
|
+ -
|
|
|
+ <input type='number' name='max_stars' min='1' max='6' value='<?=$page->filters["max_stars"]?>'/>
|
|
|
+ </td>
|
|
|
+ <td class='filter' id='filter_stars'>
|
|
|
+ <span>Natural stars:</span>
|
|
|
+ <input type='number' name='min_natural_stars' min='1' max='6' value='<?=$page->filters["min_natural_stars"]?>'/>
|
|
|
+ -
|
|
|
+ <input type='number' name='max_natural_stars' min='1' max='6' value='<?=$page->filters["max_natural_stars"]?>'/>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class='filter' colspan='2'>
|
|
|
<?php
|
|
|
- $checked = "";
|
|
|
- if ($page->filters["in_storage"]){
|
|
|
- $checked = "checked";
|
|
|
- }
|
|
|
+ $checked = "";
|
|
|
+ if ($page->filters["in_storage"]){
|
|
|
+ $checked = "checked";
|
|
|
+ }
|
|
|
?>
|
|
|
- <input type='checkbox' name='in_storage' <?=$checked?>/>
|
|
|
- Show monsters in storage
|
|
|
- <br/>
|
|
|
+ <input type='checkbox' name='in_storage' <?=$checked?>/>
|
|
|
+ Show monsters in storage
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class='filter' colspan='2'>
|
|
|
<?php
|
|
|
- $checked = "";
|
|
|
- if ($page->filters["without_runes"]){
|
|
|
- $checked = "checked";
|
|
|
- }
|
|
|
+ $checked = "";
|
|
|
+ if ($page->filters["without_runes"]){
|
|
|
+ $checked = "checked";
|
|
|
+ }
|
|
|
?>
|
|
|
- <input type='checkbox' name='without_runes' <?=$checked?>/>
|
|
|
- Show monsters without runes
|
|
|
- </div>
|
|
|
- <div id='filter_apply'>
|
|
|
- <input type='submit' value='Apply'/>
|
|
|
- </div>
|
|
|
- </form>
|
|
|
- </section> <!-- #filters -->
|
|
|
+ <input type='checkbox' name='without_runes' <?=$checked?>/>
|
|
|
+ Show monsters without runes
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ <div id='filter_apply'>
|
|
|
+ <input type='submit' value='Apply'/>
|
|
|
+ </div>
|
|
|
+ </form>
|
|
|
+ </section> <!-- #filters -->
|
|
|
<?php
|
|
|
- $index = 1;
|
|
|
- foreach ($page->monsters as $mon){
|
|
|
- if ($mon->monster->awakens_from == "" && $mon->monster->awakens_to == ""){
|
|
|
- // No to, no from, silver monster.
|
|
|
- $star_src = $path["img"]["layout"] . "icon/star_silver.png";
|
|
|
- $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
- }
|
|
|
- elseif ($mon->monster->awakens_from =! "" && $mon->monster->awakens_to == ""){
|
|
|
- // Already awakened.
|
|
|
- $star_src = $path["img"]["layout"] . "icon/star_aw.png";
|
|
|
- $mon_title = $mon->monster->name;
|
|
|
- }
|
|
|
- elseif ($mon->monster->awakens_to =! ""){
|
|
|
- // Awakeable.
|
|
|
- $star_src = $path["img"]["layout"] . "icon/star.png";
|
|
|
- $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
- }
|
|
|
- if ($mon->monster->awakens_from == "" && $mon->monster->awakens_to == ""){
|
|
|
- // No to, no from, silver monster.
|
|
|
- $star_class ="star_silver";
|
|
|
- $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
- }
|
|
|
- elseif ($mon->monster->awakens_from =! "" && $mon->monster->awakens_to == ""){
|
|
|
- // Already awakened
|
|
|
- if ($mon->monster->base_stars - $mon->monster->natural_stars == 1){
|
|
|
- // Normal awaken.
|
|
|
- $star_class = "star_purple";
|
|
|
- }
|
|
|
- else{
|
|
|
- // Second awaken.
|
|
|
- $star_class = "star_red";
|
|
|
- }
|
|
|
- $mon_title = $mon->monster->name;
|
|
|
- }
|
|
|
- elseif ($mon->monster->awakens_to =! ""){
|
|
|
- // Awakeable.
|
|
|
- $star_class = "star_gold";
|
|
|
- $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
- }
|
|
|
- switch ($index % 10){
|
|
|
- case 1:
|
|
|
- $index_title = $index . "<span class='superindex'>st</span> - " . $mon_title;
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- $index_title = $index . "<span class='superindex'>nd</span> - " . $mon_title;
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- $index_title = $index . "<span class='superindex'>rd</span> - " . $mon_title;
|
|
|
- break;
|
|
|
- default:
|
|
|
- $index_title = $index . "<span class='superindex'>th</span> - " . $mon_title;
|
|
|
- break;
|
|
|
+ $index = 1;
|
|
|
+ foreach ($page->monsters as $mon){
|
|
|
+ if ($mon->monster->awakens_from == "" && $mon->monster->awakens_to == ""){
|
|
|
+ // No to, no from, silver monster.
|
|
|
+ $star_src = $path["img"]["layout"] . "icon/star_silver.png";
|
|
|
+ $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
+ }
|
|
|
+ elseif ($mon->monster->awakens_from =! "" && $mon->monster->awakens_to == ""){
|
|
|
+ // Already awakened.
|
|
|
+ $star_src = $path["img"]["layout"] . "icon/star_aw.png";
|
|
|
+ $mon_title = $mon->monster->name;
|
|
|
+ }
|
|
|
+ elseif ($mon->monster->awakens_to =! ""){
|
|
|
+ // Awakeable.
|
|
|
+ $star_src = $path["img"]["layout"] . "icon/star.png";
|
|
|
+ $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
+ }
|
|
|
+ if ($mon->monster->awakens_from == "" && $mon->monster->awakens_to == ""){
|
|
|
+ // No to, no from, silver monster.
|
|
|
+ $star_class ="star_silver";
|
|
|
+ $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
+ }
|
|
|
+ elseif ($mon->monster->awakens_from =! "" && $mon->monster->awakens_to == ""){
|
|
|
+ // Already awakened
|
|
|
+ if ($mon->monster->base_stars - $mon->monster->natural_stars == 1){
|
|
|
+ // Normal awaken.
|
|
|
+ $star_class = "star_purple";
|
|
|
}
|
|
|
- switch ($index % 100){
|
|
|
- case 11:
|
|
|
- case 12:
|
|
|
- case 13:
|
|
|
- $index_title = $index . "<span class='superindex'>th</span> - " . $mon_title;
|
|
|
- break;
|
|
|
+ else{
|
|
|
+ // Second awaken.
|
|
|
+ $star_class = "star_red";
|
|
|
}
|
|
|
+ $mon_title = $mon->monster->name;
|
|
|
+ }
|
|
|
+ elseif ($mon->monster->awakens_to =! ""){
|
|
|
+ // Awakeable.
|
|
|
+ $star_class = "star_gold";
|
|
|
+ $mon_title = $mon->monster->element . " " . $mon->monster->name;
|
|
|
+ }
|
|
|
+ switch ($index % 10){
|
|
|
+ case 1:
|
|
|
+ $index_title = $index . "<span class='superindex'>st</span> - " . $mon_title;
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ $index_title = $index . "<span class='superindex'>nd</span> - " . $mon_title;
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ $index_title = $index . "<span class='superindex'>rd</span> - " . $mon_title;
|
|
|
+ break;
|
|
|
+ default:
|
|
|
+ $index_title = $index . "<span class='superindex'>th</span> - " . $mon_title;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ switch ($index % 100){
|
|
|
+ case 11:
|
|
|
+ case 12:
|
|
|
+ case 13:
|
|
|
+ $index_title = $index . "<span class='superindex'>th</span> - " . $mon_title;
|
|
|
+ break;
|
|
|
+ }
|
|
|
?>
|
|
|
- <section class='content'>
|
|
|
- <h2>
|
|
|
- <span>
|
|
|
- <?=$index_title?>
|
|
|
- </span>
|
|
|
- </h2>
|
|
|
- <article>
|
|
|
- <div class='monster'>
|
|
|
- <div class='profile'>
|
|
|
- <div class='monster_panel'>
|
|
|
- <span class='stars'>
|
|
|
+ <section class='content'>
|
|
|
+ <h2>
|
|
|
+ <span>
|
|
|
+ <?=$index_title?>
|
|
|
+ </span>
|
|
|
+ </h2>
|
|
|
+ <article>
|
|
|
+ <div class='monster'>
|
|
|
+ <div class='profile'>
|
|
|
+ <div class='monster_panel'>
|
|
|
+ <span class='stars'>
|
|
|
<?php
|
|
|
- for ($i = 0; $i < $mon->stars; $i ++){
|
|
|
+ for ($i = 0; $i < $mon->stars; $i ++){
|
|
|
?>
|
|
|
- <img class='star <?=$star_class?>' src='<?=$path["img"]["layout"] . "icon/star.png"?>'/>
|
|
|
+ <img class='star <?=$star_class?>' src='<?=$path["img"]["layout"] . "icon/star.png"?>'/>
|
|
|
<?php
|
|
|
- }
|
|
|
+ }
|
|
|
?>
|
|
|
- </span>
|
|
|
- <img title='<?=$mon_title?>' class='monster border_<?=$mon->monster->element?>' src='<?=$mon->monster->get_image()?>'/>
|
|
|
- <span class='level'>
|
|
|
- <?=$mon->level?>
|
|
|
- </span>
|
|
|
- </div>
|
|
|
- </div> <!-- .profile -->
|
|
|
- <div class='skills'>
|
|
|
+ </span>
|
|
|
+ <img title='<?=$mon_title?>' class='monster border_<?=$mon->monster->element?>' src='<?=$mon->monster->get_image()?>'/>
|
|
|
+ <span class='level'>
|
|
|
+ <?=$mon->level?>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
+ </div> <!-- .profile -->
|
|
|
+ <div class='skills'>
|
|
|
<?php
|
|
|
- $skill_num = 1;
|
|
|
- $absolute_level = 0;
|
|
|
- $absolute_max_level = 0;
|
|
|
- $ponderated_level = 0;
|
|
|
- $ponderated_max_level = 0;
|
|
|
- foreach ($mon->monster->skill as $skill){
|
|
|
+ $skill_num = 1;
|
|
|
+ $absolute_level = 0;
|
|
|
+ $absolute_max_level = 0;
|
|
|
+ $ponderated_level = 0;
|
|
|
+ $ponderated_max_level = 0;
|
|
|
+ foreach ($mon->monster->skill as $skill){
|
|
|
+ if ($skill->max_level > 1){
|
|
|
+ $absolute_max_level += $skill->max_level - 1;
|
|
|
+ }
|
|
|
+ switch ($skill_num){
|
|
|
+ case 1:
|
|
|
+ $cur_lvl = $mon->skill_1_level;
|
|
|
if ($skill->max_level > 1){
|
|
|
- $absolute_max_level += $skill->max_level - 1;
|
|
|
+ $absolute_level += $cur_lvl - 1;
|
|
|
+ $ponderated_level += $cur_lvl - 1;
|
|
|
+ $ponderated_max_level += $skill->max_level - 1;
|
|
|
}
|
|
|
- switch ($skill_num){
|
|
|
- case 1:
|
|
|
- $cur_lvl = $mon->skill_1_level;
|
|
|
- if ($skill->max_level > 1){
|
|
|
- $absolute_level += $cur_lvl - 1;
|
|
|
- $ponderated_level += $cur_lvl - 1;
|
|
|
- $ponderated_max_level += $skill->max_level - 1;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 2:
|
|
|
- $cur_lvl = $mon->skill_2_level;
|
|
|
- if ($skill->max_level > 1){
|
|
|
- $absolute_level += $cur_lvl - 1;
|
|
|
- $ponderated_level += ($cur_lvl - 1) * 1.5;
|
|
|
- $ponderated_max_level += ($skill->max_level - 1) * 1.5;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 3:
|
|
|
- $cur_lvl = $mon->skill_3_level;
|
|
|
- if ($skill->max_level > 1){
|
|
|
- $absolute_level += $cur_lvl - 1;
|
|
|
- $ponderated_level += ($cur_lvl - 1) * 2.0;
|
|
|
- $ponderated_max_level += ($skill->max_level - 1) * 2.0;
|
|
|
- }
|
|
|
- break;
|
|
|
- case 4:
|
|
|
- $cur_lvl = $mon->skill_4_level;
|
|
|
- if ($skill->max_level > 1){
|
|
|
- $absolute_level += $cur_lvl - 1;
|
|
|
- $ponderated_level += ($cur_lvl - 1) * 2.5;
|
|
|
- $ponderated_max_level += ($skill->max_level - 1) * 2.5;
|
|
|
- }
|
|
|
- break;
|
|
|
+ break;
|
|
|
+ case 2:
|
|
|
+ $cur_lvl = $mon->skill_2_level;
|
|
|
+ if ($skill->max_level > 1){
|
|
|
+ $absolute_level += $cur_lvl - 1;
|
|
|
+ $ponderated_level += ($cur_lvl - 1) * 1.5;
|
|
|
+ $ponderated_max_level += ($skill->max_level - 1) * 1.5;
|
|
|
}
|
|
|
- $max_lvl = $skill->max_level;
|
|
|
- if ($max_lvl == $cur_lvl){
|
|
|
- $maxed = "maxed";
|
|
|
+ break;
|
|
|
+ case 3:
|
|
|
+ $cur_lvl = $mon->skill_3_level;
|
|
|
+ if ($skill->max_level > 1){
|
|
|
+ $absolute_level += $cur_lvl - 1;
|
|
|
+ $ponderated_level += ($cur_lvl - 1) * 2.0;
|
|
|
+ $ponderated_max_level += ($skill->max_level - 1) * 2.0;
|
|
|
}
|
|
|
- else{
|
|
|
- $maxed = "";
|
|
|
+ break;
|
|
|
+ case 4:
|
|
|
+ $cur_lvl = $mon->skill_4_level;
|
|
|
+ if ($skill->max_level > 1){
|
|
|
+ $absolute_level += $cur_lvl - 1;
|
|
|
+ $ponderated_level += ($cur_lvl - 1) * 2.5;
|
|
|
+ $ponderated_max_level += ($skill->max_level - 1) * 2.5;
|
|
|
}
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ $max_lvl = $skill->max_level;
|
|
|
+ if ($max_lvl == $cur_lvl){
|
|
|
+ $maxed = "maxed";
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ $maxed = "";
|
|
|
+ }
|
|
|
?>
|
|
|
- <div class='skill'>
|
|
|
- <img title='<?=$skill->description?>' src='<?=$skill->get_image()?>'/>
|
|
|
- <span class='skill_level <?=$maxed?>'>
|
|
|
- <?=$cur_lvl?>/<?=$max_lvl?>
|
|
|
- </span>
|
|
|
- <span class='skill_name'>
|
|
|
- <?=$skill->name?>
|
|
|
- </span>
|
|
|
- </div>
|
|
|
+ <div class='skill'>
|
|
|
+ <img title='<?=$skill->description?>' src='<?=$skill->get_image()?>'/>
|
|
|
+ <span class='skill_level <?=$maxed?>'>
|
|
|
+ <?=$cur_lvl?>/<?=$max_lvl?>
|
|
|
+ </span>
|
|
|
+ <span class='skill_name'>
|
|
|
+ <?=$skill->name?>
|
|
|
+ </span>
|
|
|
+ </div>
|
|
|
<?php
|
|
|
- $skill_num ++;
|
|
|
- }
|
|
|
+ $skill_num ++;
|
|
|
+ }
|
|
|
?>
|
|
|
- </div> <!-- #skills -->
|
|
|
- <table id='skill_averages'>
|
|
|
- <tr>
|
|
|
- <td class='title'>
|
|
|
- Absolute skill-ups:
|
|
|
- </td>
|
|
|
- <td class='value'>
|
|
|
- <?=number_format($absolute_level * 100 / $absolute_max_level, 2)?>%
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class='title'>
|
|
|
- Ponderated skill-ups:
|
|
|
- </td>
|
|
|
- <td class='value'>
|
|
|
- <?=number_format($ponderated_level * 100 / $ponderated_max_level, 2)?>%
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- <tr>
|
|
|
- <td class='title'>
|
|
|
- Remaining skill-ups:
|
|
|
- </td>
|
|
|
- <td class='value'>
|
|
|
- <?=$absolute_max_level - $absolute_level?>
|
|
|
- </td>
|
|
|
- </tr>
|
|
|
- </table>
|
|
|
- </div>
|
|
|
- </article>
|
|
|
- </section>
|
|
|
+ </div> <!-- #skills -->
|
|
|
+ <table id='skill_averages'>
|
|
|
+ <tr>
|
|
|
+ <td class='title'>
|
|
|
+ Absolute skill-ups:
|
|
|
+ </td>
|
|
|
+ <td class='value'>
|
|
|
+ <?=number_format($absolute_level * 100 / $absolute_max_level, 2)?>%
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class='title'>
|
|
|
+ Ponderated skill-ups:
|
|
|
+ </td>
|
|
|
+ <td class='value'>
|
|
|
+ <?=number_format($ponderated_level * 100 / $ponderated_max_level, 2)?>%
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ <tr>
|
|
|
+ <td class='title'>
|
|
|
+ Remaining skill-ups:
|
|
|
+ </td>
|
|
|
+ <td class='value'>
|
|
|
+ <?=$absolute_max_level - $absolute_level?>
|
|
|
+ </td>
|
|
|
+ </tr>
|
|
|
+ </table>
|
|
|
+ </div>
|
|
|
+ </article>
|
|
|
+ </section>
|
|
|
<?php
|
|
|
- $index ++;
|
|
|
- }
|
|
|
+ $index ++;
|
|
|
+ }
|
|
|
?>
|
|
|
|
|
|
|