mixin boss(tavern) //-.panel.panel-default(bindonce='group', ng-if='group.type==="party" && group.quest.key') .panel.panel-default(bindonce='group', ng-if='group.quest.key') .panel-heading h3.panel-title(ng-if='group.quest.active==false')=env.t('questInvitation') + ' {{Content.quests[group.quest.key].text()}}' h3.panel-title(ng-if='group.quest.active==true') {{Content.quests[group.quest.key].text()}} .panel-body.modal-fixed-height div(ng-if='group.quest.active==false') table.table.table-striped tr(ng-repeat='member in group.members') td {{member.profile.name}} td {{group.quest.members[member._id] === true ? env.t('accepted') : group.quest.members[member._id] === false ? env.t('rejected') : env.t('pending')}} hr .npc_ian.pull-left p=env.t('questStart') button.btn.btn-sm.btn-warning(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='party.$questAccept({"force":true})')=env.t('begin') //-TODO Cancel button //-TODO Both force-start & cancel should only be available to quest-initiator div(ng-if='group.quest.active==true') div(ng-if='Content.quests[group.quest.key].boss') div(class="quest_{{group.quest.key}}") //- .progress .bar(style='width: {{Shared.percent(group.quest.hp, Content.quests[group.quest.key].hp)}}%;') span.meter-text span.glyphicon.glyphicon-heart | {{group.quest.hp | number:0}} / {{Content.quests[group.quest.key].hp}} .hero-stats .meter.health(tooltip=env.t('bossHP')) .bar(style='width: {{Shared.percent(group.quest.progress.hp, Content.quests[group.quest.key].boss.hp)}}%;') span.meter-text.title span.glyphicon.glyphicon-heart | HP span.meter-text.value | {{Math.ceil(group.quest.progress.hp)}} / {{Content.quests[group.quest.key].boss.hp}} div(ng-if='Content.quests[group.quest.key].collect') h4=env.t('collected') + ':' table.table.table-striped tr(ng-repeat='(k,v) in group.quest.progress.collect', class='quest_collected_{{v >= Content.quests[group.quest.key].collect[k].count}}') td div.pull-left(class='quest_{{group.quest.key}}_{{k}}') | {{Content.quests[group.quest.key].collect[k].text()}} td {{v}} / {{Content.quests[group.quest.key].collect[k].count}} div(ng-bind-html='Content.quests[group.quest.key].notes()') unless tavern hr h5=env.t('participants') table.table.table-striped tr(ng-repeat='(k,v) in group.members', ng-show='group.quest.members[v._id]') td {{v.profile.name}} quest-rewards(key='{{group.quest.key}}') div(ng-if='Content.quests[group.quest.key].boss') .npc_ian.pull-left if tavern p!=env.t('tavernBossInfo') else p!=env.t('bossDmg1') br p=env.t('bossDmg2') div(ng-if='Content.quests[group.quest.key].collect') .npc_ian.pull-left p=env.t('bossColl1') br p=env.t('bossColl2') unless tavern button.btn.btn-xs.btn-danger(ng-if='!group.quest.leader || group.quest.leader==user._id', ng-click='questAbort()')=env.t('abort')