sc: inline damage type indicators in html
authorMischa POSLAWSKY <perl@shiar.org>
Fri, 19 Jun 2015 05:49:04 +0000 (07:49 +0200)
committerMischa POSLAWSKY <perl@shiar.org>
Mon, 22 Jun 2015 13:38:51 +0000 (15:38 +0200)
Distinguish metadata without CSS styling, preparing for additional classes
without depending on stylesheet updates.

sc.css
sc.plp

diff --git a/sc.css b/sc.css
index 95f53a310427f67827acb6b41961dbe0382c87ac..6c2d151778739b0efab03861d94a6154823bdbf2 100644 (file)
--- a/sc.css
+++ b/sc.css
@@ -44,18 +44,10 @@ table h2 {
        color: #C88;
        font-size: 70%;
 }
-.unit.unit-s {color: #770}
-.unit.unit-m {color: #C70}
-.unit.unit-l {color: #D22}
-.unit.unit-h {color: #804}
-.hurt.unit-s::before {
-       content: '~';
-       color: #773;
-}
-.hurt.unit-l::before {
-       content: '*';
-       color: #C66;
-}
+.unit-s {color: #770}
+.unit-m {color: #C70}
+.unit-l {color: #D22}
+.unit-h {color: #804}
 td .unit-massive,
 td .unit-jump,
 .hurt .unit-splash {
diff --git a/sc.plp b/sc.plp
index 0a0f16173be95073323877a3b213622b9aff0e0a..b06f22ec11f38b5ba190f174a78323f2f7abedfc 100644 (file)
--- a/sc.plp
+++ b/sc.plp
@@ -111,16 +111,7 @@ sub showrange {
                my $out = '';
                $out .= '<td class="unit hurt-g">' . '▽' x !!($attack->{anti} & 1);
                $out .= '<td class="unit hurt-a">' . '△' x !!($attack->{anti} & 2);
-               $out .= '<td class="val hurt';
-               if (ref $attack and $attack->{type}) {
-                       if ($attack->{type} eq 'explosive') {
-                               $out .= ' unit-l';
-                       }
-                       elsif ($attack->{type} eq 'implosive') {
-                               $out .= ' unit-s';
-                       }
-               }
-               $out .= '">';
+               $out .= '<td class="val hurt">';
 
                my $upattack = $row->{upgraded}->{attack}->[$area];
                my $damage = $attack->{damage};
@@ -129,6 +120,10 @@ sub showrange {
                $maxdamage = $maxdamage->[-1] if ref $maxdamage;
 
                $out .= "<small>$attack->{count}× </small>" if $attack->{count} > 1;
+               $out .= '<span class="unit-l" title="explosive">*</span>'
+                       if $attack->{type} eq 'explosive';
+               $out .= '<span class="unit-s" title="implosive">~</span>'
+                       if $attack->{type} eq 'implosive';
                $out .= showrange($damage, $maxdamage);
                $out .= sprintf('<span class="unit-splash" title="%s">%s</span>',
                        $attack->{splash} eq 'line' ? ('linear', '×') : ('splash', '+')
@@ -360,9 +355,9 @@ if ($scver{major} > 1) {
                1 second of in-game time
        <dd>splash damage hits all objects nearby <span class="unit-splash">+</span>
                or in a straight line <span class="unit-splash">×</span>.
-       <dd><span class="hurt unit-l">explosive</span> damage does only
+       <dd><span class="unit-l">*</span>explosive damage does only
                50% damage to small units, 75% to medium, 100% to large
-       <dd><span class="hurt unit-s">concussive/plasma</span> damage does
+       <dd><span class="unit-s">~</span>concussive/plasma damage does
                25% to large, 50% medium, 100% to small units
 <dt>sight
        <dd>range in which the unit detects other units