proc-gen equipment drops from monsters can be picked up
[sketchy-heroes.git] / src / public / app / dom.ts
index 4929feb72f42f13da4e59975be4f5781d18da98d..d37cd6450063085bd89bcfddccec278d19f8756f 100644 (file)
@@ -7,3 +7,57 @@ export function $fightButton() {
 export function $exploreButton() {
   return $('#explore-action');
 }
+
+export function $pickItemButton() {
+  return $('#take-world-drop');
+}
+
+export function outOfStamina() {
+  // only disable buttons, don't hide them
+  $fightButton().addClass('disabled').prop('disabled', true);
+  $exploreButton().addClass('disabled').prop('disabled', true);
+}
+
+export function hasStaminaAgain() {
+  if(!$fightButton().hasClass('hidden'))
+    $fightButton().removeClass('disabled').prop('disabled', false);
+
+  if(!$exploreButton().hasClass('hidden'))
+    $exploreButton().removeClass('disabled').prop('disabled', false);
+}
+
+export function enableFightButton(attrs: Record<'fightId', string>) {
+  $fightButton().prop('disabled', false)
+    .removeClass(['disabled', 'hidden'])
+    .attr('data-fight-id', attrs.fightId);
+}
+
+export function disableFightButton() {
+  $fightButton().prop('disabled', true)
+    .addClass(['disabled', 'hidden'])
+    .attr('data-fight-id', 'unset');
+}
+
+export function enablePickItemButton(attrs: Record<'itemId', string>, itemName: string) {
+  $pickItemButton().prop('disabled', false)
+    .removeClass(['disabled', 'hidden'])
+    .attr('data-drop-id', attrs.itemId.toString())
+
+  $pickItemButton().html(`Take ${itemName}`);
+}
+
+export function disablePickItemButton() {
+  $pickItemButton().prop('disabled', true)
+    .addClass(['disabled', 'hidden'])
+    .attr('data-fight-id', 'unset');
+}
+
+export function enableExploreButton() {
+  $exploreButton().prop('disabled', false)
+    .removeClass(['disabled', 'hidden']);
+}
+
+export function disableExploreButton() {
+  $exploreButton().prop('disabled', true)
+    .addClass(['disabled', 'hidden']);
+}