Repository navigation
Blockilization: city-states marked on the map, and spoken to with a click - #40
Merged
Merged
Conversation
…lick A city-state's banner looked just like a civ's capital (a crown, its people, its name). Now it carries a "City-state" tab, its kind's glyph in place of the crown, a gold "!" while it asks something of you, and your influence with it on a bar beneath, marked at friendship and alliance and coloured by how it stands with you. The tooltip over its city says the same in words. Clicking a city-state's city (with no unit of yours selected) opens its card alone in Diplomacy, Civ V's way: its envoy greets you by your standing, and everything that can be done with it is there (gifts, quests, pledges, tribute, war and peace). The leaders' ribbon, its notes and the advisor's tip open the same card, and a name on the city-states' list does too. Another civ's city opens Diplomacy with its leader. Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01W9EYvwEihXHZKXCYU2v8g7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Requested by Patrick · project thread
What this is
A city-state's banner on the map looked exactly like a civ's capital (a crown, its people, its name), and clicking its city did nothing. Both are fixed, client side only.
On the map (
overlay.ts), a city-state's banner now has:The tooltip over its city says it too ("Maritime city-state · Your friend · influence 45"), with "Click to talk to Venice".
Clicking a city-state's city (its banner or its tile, with no unit of yours selected) opens its card alone in Diplomacy, the way Civ V's city-state screen greets you:
The same card opens from the city-state's emblem on the leaders' ribbon, from its notes (requests, thanks, pledges), and from the advisor's city-state tip ("Speak to Venice"). With a unit selected, a click on the city still sends the unit, as before.
Clicking another civ's city (no unit selected) opens Diplomacy with its leader, as in Civ V.
The Civilopedia's Diplomacy article and the advisor's tip mention the banner and the click.
Screenshot or clip
Screenshots are in the project thread: the banners next to a civ's capital, a close-up, and the card opened from a click on Venice.
Checklist
npm run build:tsc --noEmit, the boundary and presentation checks,BUNDLE_REPORT=1 vite buildandcheck:bundleall pass. (npm run wasmcouldn't download binaryen'swasm-opthere, so the engine was built without it.)npm run test:headless: all 99 pass.Tested in the browser (dev server, Chromium): banners for friend, ally and neutral city-states and a quest "!", clicking a city-state's banner opens its card, gifts update it, the list's names open cards, clicking Berlin opens Bismarck's diplomacy, a click with a unit selected still moves the unit, and the card on a phone-width screen.
🤖 Generated with Claude Code
https://claude.ai/code/session_01W9EYvwEihXHZKXCYU2v8g7