summaryrefslogtreecommitdiffstats
path: root/crawl-ref/source/tags.cc
diff options
context:
space:
mode:
authordshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-20 18:53:40 +0000
committerdshaligram <dshaligram@c06c8d41-db1a-0410-9941-cceddc491573>2008-11-20 18:53:40 +0000
commitf1d9756f8c577019f9446fbf22cec49d41babd28 (patch)
treef37ea2ea8086aa331978e151e336bb9c77cc97b4 /crawl-ref/source/tags.cc
parent683599a4fa6300d6517c0f75d60c028bd62136cc (diff)
downloadcrawl-ref-f1d9756f8c577019f9446fbf22cec49d41babd28.tar.gz
crawl-ref-f1d9756f8c577019f9446fbf22cec49d41babd28.zip
Spadework for ziggurats and other multilevel portal vaults.
git-svn-id: https://crawl-ref.svn.sourceforge.net/svnroot/crawl-ref/trunk@7520 c06c8d41-db1a-0410-9941-cceddc491573
Diffstat (limited to 'crawl-ref/source/tags.cc')
-rw-r--r--crawl-ref/source/tags.cc10
1 files changed, 10 insertions, 0 deletions
diff --git a/crawl-ref/source/tags.cc b/crawl-ref/source/tags.cc
index 1414019b59..a03e3f1d98 100644
--- a/crawl-ref/source/tags.cc
+++ b/crawl-ref/source/tags.cc
@@ -852,6 +852,7 @@ static void tag_construct_you(writer &th)
marshallLong(th, you.sage_bonus_degree);
marshallByte(th, you.level_type);
marshallString(th, you.level_type_name);
+ marshallString(th, you.level_type_tag);
marshallByte(th, you.entry_cause);
marshallByte(th, you.entry_cause_god);
marshallByte(th, you.synch_time);
@@ -1012,6 +1013,8 @@ static void tag_construct_you(writer &th)
// minorVersion 7 starts here
marshallByte(th, you.friendly_pickup);
+
+ dlua.callfn("dgn_save_data", "u", &th);
}
static void tag_construct_you_items(writer &th)
@@ -1244,6 +1247,10 @@ static void tag_read_you(reader &th, char minorVersion)
you.sage_bonus_degree = unmarshallLong(th);
you.level_type = static_cast<level_area_type>( unmarshallByte(th) );
you.level_type_name = unmarshallString(th);
+
+ if (minorVersion >= TAG_MINOR_LUADGN)
+ you.level_type_tag = unmarshallString(th);
+
you.entry_cause = static_cast<entry_cause_type>( unmarshallByte(th) );
you.entry_cause_god = static_cast<god_type>( unmarshallByte(th) );
you.synch_time = unmarshallByte(th);
@@ -1408,6 +1415,9 @@ static void tag_read_you(reader &th, char minorVersion)
if (minorVersion >= TAG_MINOR_FPICKUP)
you.friendly_pickup = unmarshallByte(th);
+
+ if (minorVersion >= TAG_MINOR_LUADGN)
+ dlua.callfn("dgn_load_data", "u", &th);
}
static void tag_read_you_items(reader &th, char minorVersion)