@@ -94,6 +94,7 @@ public class TableParser {
9494 private readonly XmlSerializer weddingPackageSerializer ;
9595 private readonly XmlSerializer weddingRewardSerializer ;
9696 private readonly XmlSerializer weddingSkillSerializer ;
97+ private readonly XmlSerializer smartPushSerializer ;
9798
9899 public TableParser ( M2dReader xmlReader ) {
99100 this . xmlReader = xmlReader ;
@@ -180,6 +181,7 @@ public TableParser(M2dReader xmlReader) {
180181 weddingPackageSerializer = new XmlSerializer ( typeof ( WeddingPackageRoot ) ) ;
181182 weddingRewardSerializer = new XmlSerializer ( typeof ( WeddingRewardRoot ) ) ;
182183 weddingSkillSerializer = new XmlSerializer ( typeof ( WeddingSkillRoot ) ) ;
184+ smartPushSerializer = new XmlSerializer ( typeof ( SmartPushRoot ) ) ;
183185
184186 // var seen = new HashSet<string>();
185187 // this.bankTypeSerializer.UnknownAttribute += (sender, args) => {
@@ -1303,4 +1305,15 @@ public IEnumerable<JobTable> ParseJobTable() {
13031305 yield return ( entry . id , entry ) ;
13041306 }
13051307 }
1308+
1309+ public IEnumerable < ( int Id , SmartPush Button ) > ParseSmartPush ( ) {
1310+ string xml = Sanitizer . RemoveEmpty ( xmlReader . GetString ( xmlReader . GetEntry ( "table/na/smartpush.xml" ) ) ) ;
1311+ var reader = XmlReader . Create ( new StringReader ( xml ) ) ;
1312+ var data = smartPushSerializer . Deserialize ( reader ) as SmartPushRoot ;
1313+ Debug . Assert ( data != null ) ;
1314+
1315+ foreach ( SmartPush entry in data . push ) {
1316+ yield return ( entry . id , entry ) ;
1317+ }
1318+ }
13061319}
0 commit comments