Jaen's fortress start hidden and re-hide after you kill Jaen

This commit is contained in:
2025-05-11 09:25:49 -05:00
parent 9d47262bc4
commit 780dd3a3b9
4 changed files with 17 additions and 3 deletions

View File

@@ -270,7 +270,7 @@
pic 0, 4 pic 0, 4
ex1 -1, -1, -1 ex1 -1, -1, -1
ex2 -1, -1, -1 ex2 -1, -1, -1
goto -1 goto 43
@disp-msg = 39 @disp-msg = 39
sdf -1, -1 sdf -1, -1
msg 59, 60, -1 msg 59, 60, -1
@@ -299,3 +299,10 @@
ex1 1, 34, -1 ex1 1, 34, -1
ex2 -1, -1, -1 ex2 -1, -1, -1
goto -1 goto -1
@town-visible = 43
sdf -1, -1
msg -1, -1, -1
pic 0, 4
ex1 20, -1, -1
ex2 0, -1, -1
goto -1

View File

@@ -12,7 +12,9 @@
<onenter condition="dead">41</onenter> <onenter condition="dead">41</onenter>
<onexit dir="e">37</onexit> <onexit dir="e">37</onexit>
<timer freq="50">42</timer> <timer freq="50">42</timer>
<flags /> <flags>
<hidden>true</hidden>
</flags>
<wandering> <wandering>
<monster>13</monster> <monster>13</monster>
<monster>13</monster> <monster>13</monster>

View File

@@ -72,6 +72,8 @@ void cTown::import_legacy(legacy::town_record_type& old){
specials[i].import_legacy(old.specials[i]); specials[i].import_legacy(old.specials[i]);
difficulty = old.difficulty; difficulty = old.difficulty;
strong_barriers = defy_scrying = defy_mapping = false; strong_barriers = defy_scrying = defy_mapping = false;
// Legacy scenarios store is_hidden in an array on scenario_data_type, so that flag is imported in cScenario::import_legacy()
} }
cTown::cTown(cScenario& scenario, size_t dim) : cArea(dim), scenario(&scenario), lighting(dim, boost::dynamic_bitset<>(dim)) { cTown::cTown(cScenario& scenario, size_t dim) : cArea(dim), scenario(&scenario), lighting(dim, boost::dynamic_bitset<>(dim)) {

View File

@@ -90,7 +90,9 @@ public:
short spec_on_hostile; short spec_on_hostile;
std::array<cTimer,8> timers; std::array<cTimer,8> timers;
bool strong_barriers, defy_mapping, defy_scrying; bool strong_barriers, defy_mapping, defy_scrying;
bool is_hidden, has_tavern; // Whether the town STARTS OUT hidden.
bool is_hidden;
bool has_tavern;
short difficulty; short difficulty;
// Using std::array here so we can have .size() // Using std::array here so we can have .size()
// This'll make the transition smoother once it becomes a vector. // This'll make the transition smoother once it becomes a vector.
@@ -102,6 +104,7 @@ private:
boost::dynamic_bitset<> item_taken; boost::dynamic_bitset<> item_taken;
public: public:
std::vector<location> door_unlocked; std::vector<location> door_unlocked;
// Whether the town IS CURRENTLY visible.
bool can_find; bool can_find;
long m_killed = 0; long m_killed = 0;