Score calculator for 7 Wonders

A basic calculator using Meta Bind for the board game 7 Wonders. I don’t love the added whitespace for each button, but it works in a pinch and helps tally things up and the end of the game!

Screenshot 2025-01-26 at 08.09.09

The table:

| Component                                | Helpers                                                                                                                                                                              | Victory Points                                                                                                                                                                                             |
| ---------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Military Tokens                          | `BUTTON[military-vp-minus-1, military-vp-plus-1, military-vp-plus-3, military-vp-plus-5]`                                                                                            | `VIEW[{memory^military-vp}]`                                                                                                                                                                               |
| Total Coins                              | `INPUT[number:memory^total-coins]`                                                                                                                                                   | `VIEW[floor({memory^total-coins} / 3)][math:memory^coins-vp]`                                                                                                                                              |
| Wonder Points                            | `INPUT[number:memory^wonder-stages-vp]`                                                                                                                                              | `VIEW[{memory^wonder-stages-vp}]`                                                                                                                                                                          |
| Blue Cards                               | `BUTTON[vp-blue-2, vp-blue-3, vp-blue-4, vp-blue-5, vp-blue-6, vp-blue-7, vp-blue-8]`                                                                                                | `VIEW[{memory^blue-card-vp}]`                                                                                                                                                                              |
| Yellow Card Points                       | `INPUT[number:memory^yellow-card-vp]`                                                                                                                                                | `VIEW[{memory^yellow-card-vp}]`                                                                                                                                                                            |
| Purple Card Points                       | `INPUT[number:memory^purple-card-vp]`                                                                                                                                                | `VIEW[{memory^purple-card-vp}]`                                                                                                                                                                            |
| Science Cards<br>`BUTTON[reset-science]` | `BUTTON[science-compass]` : `VIEW[{memory^science-compass}]`<br>`BUTTON[science-tablet]` : `VIEW[{memory^science-tablet}]`<br>`BUTTON[science-gear]` : `VIEW[{memory^science-gear}]` | `VIEW[({memory^science-compass}^2) + ({memory^science-tablet}^2) + ({memory^science-gear}^2) + (min({memory^science-compass}, {memory^science-tablet}, {memory^science-gear})*7)][math:memory^science-vp]` |
| **TOTAL**                                |                                                                                                                                                                                      | **`VIEW[{memory^military-vp} + {memory^coins-vp} + {memory^wonder-stages-vp} + {memory^blue-card-vp} + {memory^yellow-card-vp} + {memory^purple-card-vp} + {memory^science-vp}]`**                         |

`BUTTON[reset-all]`

The buttons:

```meta-bind-button
style: default
label: "5 VP"
id: military-vp-plus-5
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^military-vp
      evaluate: true
      value: "x + 5"
```

```meta-bind-button
style: default
label: "3 VP"
id: military-vp-plus-3
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^military-vp
      evaluate: true
      value: "x + 3"
```

```meta-bind-button
style: default
label: "1 VP"
id: military-vp-plus-1
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^military-vp
      evaluate: true
      value: "x + 1"
```

```meta-bind-button
style: destructive
label: "-1 VP"
id: military-vp-minus-1
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^military-vp
      evaluate: true
      value: "x - 1"
```

```meta-bind-button
style: default
label: "2️⃣"
id: vp-blue-2
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 2"
```

```meta-bind-button
style: default
label: "3️⃣"
id: vp-blue-3
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 3"
```

```meta-bind-button
style: default
label: "4️⃣"
id: vp-blue-4
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 4"
```

```meta-bind-button
style: default
label: "5️⃣"
id: vp-blue-5
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 5"
```

```meta-bind-button
style: default
label: "6️⃣"
id: vp-blue-6
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 6"
```

```meta-bind-button
style: default
label: "7️⃣"
id: vp-blue-7
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 7"
```

```meta-bind-button
style: default
label: "8️⃣"
id: vp-blue-8
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: true
      value: "x + 8"
```

```meta-bind-button
style: default
label: "Compass"
id: science-compass
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^science-compass
      evaluate: true
      value: "x + 1"
```

```meta-bind-button
style: default
label: "Tablet"
id: science-tablet
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^science-tablet
      evaluate: true
      value: "x + 1"
```

```meta-bind-button
style: default
label: "Gear ⚙️"
id: science-gear
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^science-gear
      evaluate: true
      value: "x + 1"
```

```meta-bind-button
style: primary
label: "Clear"
id: reset-science
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^science-tablet
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-gear
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-compass
      evaluate: false
      value: 0
```

```meta-bind-button
style: destructive
label: "Reset All"
id: reset-all
hidden: true
actions:
    - type: updateMetadata
      bindTarget: memory^military-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^total-coins
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^wonder-stages-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^blue-card-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^yellow-card-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^purple-card-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-vp
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-tablet
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-gear
      evaluate: false
      value: 0
    - type: updateMetadata
      bindTarget: memory^science-compass
      evaluate: false
      value: 0
```
1 Like