backup for Phase 2.5
This commit is contained in:
@@ -47,6 +47,13 @@
|
||||
</nav>
|
||||
</div>
|
||||
<main class="main-content">
|
||||
{% if messages %}
|
||||
<div class="messages-banner">
|
||||
{% for message in messages %}
|
||||
<div class="message message-{{ message.tags }}">{{ message }}</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% endif %}
|
||||
{% block content %}{% endblock %}
|
||||
</main>
|
||||
|
||||
|
||||
@@ -64,6 +64,7 @@
|
||||
{% if project.category == 'guide' %}Guide{% else %}Description{% endif %}
|
||||
</button>
|
||||
<button class="tab-btn" data-tab="versions" role="tab">Versions</button>
|
||||
{% if animation_manifest %}<button class="tab-btn" data-tab="animations" role="tab">Animations</button>{% endif %}
|
||||
{% if project.category == 'modpack' %}<button class="tab-btn" data-tab="mods" role="tab">Mods</button>{% endif %}
|
||||
<button class="tab-btn" data-tab="gallery" role="tab">Gallery</button>
|
||||
</div>
|
||||
@@ -138,6 +139,96 @@
|
||||
</div>
|
||||
</section>
|
||||
|
||||
{% if animation_manifest %}
|
||||
<section class="tab-panel" id="tab-animations">
|
||||
<div class="card">
|
||||
<div class="animations-header">
|
||||
<h2><i class="fas fa-film"></i> Animations</h2>
|
||||
{% if animation_manifest.name %}
|
||||
<p class="anim-pack-name">{{ animation_manifest.name }}
|
||||
{% if animation_manifest.version %}<span class="pack-format-badge">v{{ animation_manifest.version }}</span>{% endif %}
|
||||
</p>
|
||||
{% endif %}
|
||||
<p class="anim-authors">
|
||||
<i class="fas fa-user-pen"></i> by
|
||||
{% for author in animation_manifest.authors %}{{ author }}{% if not forloop.last %}, {% endif %}{% empty %}{{ project.owner.username }}{% endfor %}
|
||||
</p>
|
||||
{% if animation_manifest.description %}<p class="anim-description">{{ animation_manifest.description }}</p>{% endif %}
|
||||
{% if not animation_manifest.animation_id %}
|
||||
<p class="anim-warning"><i class="fas fa-exclamation-triangle"></i> This pack has no <code>animationframework.id</code> — it can't be reached through the update-check API.</p>
|
||||
{% endif %}
|
||||
</div>
|
||||
|
||||
{% if anim_stats %}
|
||||
<div class="animations-summary">
|
||||
<span><strong>{{ anim_stats.total }}</strong> animations</span>
|
||||
<span><strong>{{ anim_stats.player }}</strong> Player × Player</span>
|
||||
<span><strong>{{ anim_stats.entity }}</strong> Entity × Player</span>
|
||||
<span><strong>{{ anim_stats.solo }}</strong> solo</span>
|
||||
{% if anim_stats.flagged %}<span class="anim-summary-flagged"><strong>{{ anim_stats.flagged }}</strong> flagged ⚠</span>{% endif %}
|
||||
<span><strong>{{ anim_stats.tags|length }}</strong> tags</span>
|
||||
</div>
|
||||
{% endif %}
|
||||
|
||||
<div class="anim-grid">
|
||||
{% for anim in animation_manifest.animations %}
|
||||
<div class="anim-card">
|
||||
<div class="anim-card-head">
|
||||
<strong class="anim-name">{{ anim.name }}</strong>
|
||||
<span class="anim-type-badge">{{ anim.type }}</span>
|
||||
{% if anim.problem_tags %}
|
||||
<span class="anim-problem" title="{{ anim.problem_tags|join:', ' }}"><i class="fas fa-exclamation-triangle"></i></span>
|
||||
{% endif %}
|
||||
</div>
|
||||
<div class="anim-tags">
|
||||
{% for tag in anim.content_tags %}
|
||||
<span class="tag-chip" style="border-color: var(--md-sys-color-content, #d62828); color: var(--md-sys-color-content, #d62828);">{{ tag }}</span>
|
||||
{% endfor %}
|
||||
{% for tag in anim.animation_tags %}
|
||||
<span class="tag-chip">{{ tag }}</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="anim-actors">
|
||||
{% for actor in anim.actors %}
|
||||
<span class="actor-chip">
|
||||
{% if actor.entity == 'player' %}
|
||||
<i class="fas fa-user"></i> Player
|
||||
{% else %}
|
||||
<i class="fas fa-paw"></i> {{ actor.entity }}
|
||||
{% endif %}
|
||||
{% if actor.gender %}{% if actor.gender == 'male' %} ♂{% elif actor.gender == 'female' %} ♀{% endif %}{% endif %}
|
||||
{% if actor.activity %}<small>· {{ actor.activity }}</small>{% endif %}
|
||||
{% if actor.injector %}
|
||||
<span class="injector-badge"{% if actor.injector != 'injector' %} title="Injector: {{ actor.injector_name }}"{% endif %}>
|
||||
{% if actor.injector == 'injector' %}injector{% else %}{{ actor.injector_name }} ({{ actor.injector }}){% endif %}
|
||||
</span>
|
||||
{% endif %}
|
||||
{% if actor.receiver %}<small>· receiver</small>{% endif %}
|
||||
</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
<div class="anim-stages">
|
||||
<span class="stages-count">{{ anim.stages|length }} stage{{ anim.stages|length|pluralize }}</span>
|
||||
{% for s in anim.stages %}
|
||||
<span class="stage-chip"{% if s.climax %} title="climax stage"{% endif %}>
|
||||
{% if s.climax %}<i class="fas fa-star"></i>{% endif %}{{ s.stage }}{% if s.loop %}↻{% endif %}{% if s.cycle_seconds %} {{ s.cycle_seconds }}s{% endif %}
|
||||
</span>
|
||||
{% endfor %}
|
||||
</div>
|
||||
{% if anim.weight or anim.block_requirements or anim.water %}
|
||||
<div class="anim-extras">
|
||||
{% if anim.weight %}<span class="anim-extra">weight {{ anim.weight }}</span>{% endif %}
|
||||
{% if anim.block_requirements %}<span class="anim-extra"><i class="fas fa-cubes"></i> requires block support</span>{% endif %}
|
||||
{% if anim.water %}<span class="anim-extra"><i class="fas fa-water"></i> water</span>{% endif %}
|
||||
</div>
|
||||
{% endif %}
|
||||
</div>
|
||||
{% endfor %}
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
{% endif %}
|
||||
|
||||
{% if project.category == 'modpack' %}
|
||||
<section class="tab-panel" id="tab-mods">
|
||||
<div class="card">
|
||||
|
||||
Reference in New Issue
Block a user