Spelunky is © 2008, 2009 Derek Yu and Mossmouth, LLC, and is used under the [Spelunky User License v1.1b](https://spelunky.ai/LICENSE.txt). spelunky.ai is an unofficial fan project, not affiliated with or endorsed by Mossmouth. The game and its assets may not be sold.

Music by George Buzinkai and Jonathan Perry; sound effects made in SFXR. From Spelunky Classic 1.1, © 2008, 2009 Derek Yu and Mossmouth, LLC.

# Shop Sign

From the spelunky.ai wiki: <https://spelunky.ai/wiki/shop-sign>.

*For the Tutorial's and custom levels' signs, see [Sign](https://spelunky.ai/wiki/sign).*

A Shop Sign is terrain in Spelunky Classic, the painted board over a shop's entrance that shows what the shop sells: a bomb, a pistol, a shirt, a pair of lips.

![A wooden sign hanging from two chains, with a round black bomb painted on it](https://spelunky.ai/wiki/media/sprites/sSignBomb/frames/0%404x.png)

| Shop Sign    |                                                                                                                                                                                                                                                                                                        |
| ------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| Effect       | Shows the shop's kind                                                                                                                                                                                                                                                                                  |
| Destroyed by | Bombs, the Mattock, boulders                                                                                                                                                                                                                                                                           |
| Object       | `oSign`                                                                                                                                                                                                                                                                                                |
| Found in     | [The Mines](https://spelunky.ai/wiki/mines), [The Jungle](https://spelunky.ai/wiki/jungle), [The Ice Caves](https://spelunky.ai/wiki/ice-caves), [The Temple](https://spelunky.ai/wiki/temple), [Black Market](https://spelunky.ai/wiki/black-market), [Yeti Lair](https://spelunky.ai/wiki/yeti-lair) |

Every shop but the Black Market's Ankh shop has a sign over its entrance, a board painted with what the shop
sells, so the player can tell a [General Store](https://spelunky.ai/wiki/general-store) from a [Weapon Shop](https://spelunky.ai/wiki/weapon-shop) before he walks
in. It's solid, and what breaks blocks breaks it.

## How it works

**Clip: A shop's sign.** In the Mines, the player drops down beside a Bomb Shop's sign, a board with a bomb painted on it hanging over the shop's entrance, and walks in; the shopkeeper welcomes him. ([video](https://spelunky.ai/wiki/media/clips/shop-sign/bomb-shop/clip.mp4))

As a shop's room is laid out, its sign tile makes the sign, and the shop's kind picks its picture[^1]:

| Shop                                                      | The sign shows     |
| --------------------------------------------------------- | ------------------ |
| [General Store](https://spelunky.ai/wiki/general-store)   | A sack             |
| [Bomb Shop](https://spelunky.ai/wiki/bomb-shop)           | A bomb             |
| [Weapon Shop](https://spelunky.ai/wiki/weapon-shop)       | A pistol           |
| [Clothing Shop](https://spelunky.ai/wiki/clothing-shop)   | A shirt            |
| [Rare Shop](https://spelunky.ai/wiki/rare-shop)           | A magnifying glass |
| [Dice House](https://spelunky.ai/wiki/dice-house)         | A die              |
| [Kissing Parlor](https://spelunky.ai/wiki/kissing-parlor) | A pair of lips     |

The clip shows a Bomb Shop's: the player drops down beside its sign, a bomb on a board over the entrance, and
walks in, and the shopkeeper welcomes him[^2].

A [Bomb](https://spelunky.ai/wiki/bomb), a [Mattock](https://spelunky.ai/wiki/mattock) or a rolling [Boulder](https://spelunky.ai/wiki/boulder) breaks a sign, and its destroy event, its
own, makes rubble and nothing else[^3]. Breaking it doesn't by itself anger
the [Shopkeeper](https://spelunky.ai/wiki/shopkeeper): unlike the shop's walls and floor, the sign isn't marked as part of the shop, and
its destroy event doesn't run the check the walls' does[^4][^5]. A lit bomb in the shop within 96 pixels of him angers him anyway,
before it goes off[^6] ([Every Shopkeeper angered by one bomb](https://spelunky.ai/wiki/bomb-angers-every-shopkeeper)).

## Locations

Every area's room script makes shop signs the same way: [the Mines](https://spelunky.ai/wiki/mines)'[^1], [the Jungle](https://spelunky.ai/wiki/jungle)'s[^7],
[the Ice Caves](https://spelunky.ai/wiki/ice-caves)'[^8], [the Temple](https://spelunky.ai/wiki/temple)'s[^9], [the Black Market](https://spelunky.ai/wiki/black-market)'s, which has no Kissing Parlor[^10], and a [Yeti lair](https://spelunky.ai/wiki/yeti-lair)'s[^11]. The [level editor](https://spelunky.ai/wiki/level-editor) has no tile for it. The Black Market's
[Ankh shop](https://spelunky.ai/wiki/ankh-shop), a room open only from above, has no sign[^12].

## FAQ

### How do you tell what a shop sells in Spelunky Classic?

By the sign over its entrance: a sack for a [General Store](https://spelunky.ai/wiki/general-store), a bomb for a [Bomb Shop](https://spelunky.ai/wiki/bomb-shop), a pistol for a [Weapon Shop](https://spelunky.ai/wiki/weapon-shop), a shirt for a [Clothing Shop](https://spelunky.ai/wiki/clothing-shop), a magnifying glass for a [Rare Shop](https://spelunky.ai/wiki/rare-shop), a die for the [Dice House](https://spelunky.ai/wiki/dice-house) and a pair of lips for the [Kissing Parlor](https://spelunky.ai/wiki/kissing-parlor).

### Does breaking a shop's sign anger the shopkeeper in Spelunky Classic?

Not by itself: breaking the shop's walls or floor does, but the sign isn't marked as one of them. A [Mattock](https://spelunky.ai/wiki/mattock) breaks it with no trouble, but a lit [Bomb](https://spelunky.ai/wiki/bomb) in the shop near the Shopkeeper angers him before it goes off, whatever it's thrown at.

### Does every shop have a sign in Spelunky Classic?

Every shop but one: the Black Market's [Ankh shop](https://spelunky.ai/wiki/ankh-shop), a room with no entrance of its own, has none.

## See also

- **Related:** [General Store](https://spelunky.ai/wiki/general-store), [Bomb Shop](https://spelunky.ai/wiki/bomb-shop), [Weapon Shop](https://spelunky.ai/wiki/weapon-shop), [Clothing Shop](https://spelunky.ai/wiki/clothing-shop), [Rare Shop](https://spelunky.ai/wiki/rare-shop), [Dice House](https://spelunky.ai/wiki/dice-house), [Kissing Parlor](https://spelunky.ai/wiki/kissing-parlor)

## References

[^1]: [`scripts/scrRoomGen.gml:437-447`](https://spelunky.ai/wiki/source/scripts/scrRoomGen#L437-L447)

[^2]: Clip [shop-sign/bomb-shop](https://spelunky.ai/wiki/shop-sign#clip-shop-sign-bomb-shop)

[^3]: [`objects/oSign/destroy.gml:1-9`](https://spelunky.ai/wiki/source/objects/oSign/destroy#L1-L9)

[^4]: [`scripts/scrRoomGen.gml:413-426`](https://spelunky.ai/wiki/source/scripts/scrRoomGen#L413-L426)

[^5]: [`objects/oSolid/destroy.gml:1-7`](https://spelunky.ai/wiki/source/objects/oSolid/destroy#L1-L7)

[^6]: [`objects/oBomb/step.gml:6-17`](https://spelunky.ai/wiki/source/objects/oBomb/step#L6-L17)

[^7]: [`scripts/scrRoomGen2.gml:452-462`](https://spelunky.ai/wiki/source/scripts/scrRoomGen2#L452-L462)

[^8]: [`scripts/scrRoomGen3.gml:379-389`](https://spelunky.ai/wiki/source/scripts/scrRoomGen3#L379-L389)

[^9]: [`scripts/scrRoomGen4.gml:481-491`](https://spelunky.ai/wiki/source/scripts/scrRoomGen4#L481-L491)

[^10]: [`scripts/scrRoomGenMarket.gml:347-356`](https://spelunky.ai/wiki/source/scripts/scrRoomGenMarket#L347-L356)

[^11]: [`scripts/scrRoomGenYeti.gml:398-408`](https://spelunky.ai/wiki/source/scripts/scrRoomGenYeti#L398-L408)

[^12]: [`scripts/scrRoomGenMarket.gml:112-116`](https://spelunky.ai/wiki/source/scripts/scrRoomGenMarket#L112-L116)

### Source code

- [`objects/oSign/destroy.gml`](https://spelunky.ai/wiki/source/objects/oSign/destroy)
- [`scripts/scrRoomGen.gml`](https://spelunky.ai/wiki/source/scripts/scrRoomGen)
