Files
devplacepy/devplacepy/templates/_game_quests.html
T
retoorandClaude Sonnet 5 34f76aad65 Code Farm economy rebalance: market saturation, infrastructure/defense/cosmetics, mastery track, secondary leaderboards, admin eras, underdog bonus and weekly contracts
Every purchase/upgrade path (new and pre-existing) is now race-safe against concurrent requests via atomic conditional SQL updates.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-22 23:55:46 +02:00

21 lines
1.1 KiB
HTML

{% for quest in farm.quests %}
<li class="quest-item{% if quest.claimed %} quest-done{% endif %}">
<div class="quest-head"><span>{{ quest.label }}</span><span class="quest-reward">{% if quest.reward_stars %}+{{ quest.reward_stars }} &#9733;{% else %}+{{ quest.reward_coins }}c{% endif %}</span></div>
<div class="quest-bar"><span class="quest-fill" style="--quest-pct: {% if quest.goal %}{{ (100 * quest.progress / quest.goal)|round(0, 'floor') }}{% else %}0{% endif %}%"></span></div>
<div class="quest-foot">
<span class="quest-progress">{{ quest.progress }}/{{ quest.goal }}</span>
{% if quest.can_claim %}
<form method="post" action="/game/quests/claim" data-game-action="claim-quest">
<input type="hidden" name="quest" value="{{ quest.kind }}">
<input type="hidden" name="scope" value="{{ quest.scope }}">
<button type="submit" class="btn btn-sm btn-primary">Claim</button>
</form>
{% elif quest.claimed %}
<span class="quest-claimed">Done</span>
{% endif %}
</div>
</li>
{% else %}
<li class="game-lb-empty">No quests today.</li>
{% endfor %}