FreeTrainの進化系を目指す
こまかな修正
| @@ -9,7 +9,7 @@ | ||
| 9 | 9 | <condition when="night" src="stationMDNDepart_n.bmp"/> |
| 10 | 10 | </contribution> |
| 11 | 11 | |
| 12 | - <contribution type="station" id="ModernDepartment01"> | |
| 12 | + <contribution type="ignore" id="ModernDepartment01"> | |
| 13 | 13 | <group>デパート駅舎(土色:A)</group> |
| 14 | 14 | <price>18000</price> |
| 15 | 15 | <height>2</height> |
| @@ -38,7 +38,7 @@ | ||
| 38 | 38 | <condition when="night" src="station_shop_n.bmp"/> |
| 39 | 39 | </contribution> |
| 40 | 40 | |
| 41 | - <contribution type="station" id="ArbanShop01"> | |
| 41 | + <contribution type="ignore" id="ArbanShop01"> | |
| 42 | 42 | <group>都市近郊の駅舎</group> |
| 43 | 43 | <price>370</price> |
| 44 | 44 | <height>1</height> |
| @@ -62,7 +62,7 @@ | ||
| 62 | 62 | <condition when="night" src="terminal_domeA_n.bmp"/> |
| 63 | 63 | </contribution> |
| 64 | 64 | |
| 65 | - <contribution type="GenericStructure" id="LargeDome"> | |
| 65 | + <contribution type="ignore" id="LargeDome"> | |
| 66 | 66 | <group>空港国際線ターミナル</group> |
| 67 | 67 | <design>大型ドーム</design> |
| 68 | 68 | <price>100000</price> |
| @@ -91,7 +91,7 @@ | ||
| 91 | 91 | <condition when="night" src="ampark_wheelL_n.bmp"/> |
| 92 | 92 | </contribution> |
| 93 | 93 | |
| 94 | - <contribution type="GenericStructure" id="AmusementPark.Wheel"> | |
| 94 | + <contribution type="ignore" id="AmusementPark.Wheel"> | |
| 95 | 95 | <group>観覧車</group> |
| 96 | 96 | <design>大型</design> |
| 97 | 97 | <structure> |
| @@ -123,7 +123,7 @@ | ||
| 123 | 123 | <default src="tettou-s.bmp"/> |
| 124 | 124 | </contribution> |
| 125 | 125 | |
| 126 | - <contribution type="GenericStructure" id="CableTower_L-1"> | |
| 126 | + <contribution type="ignore" id="CableTower_L-1"> | |
| 127 | 127 | <group>高圧線鉄塔</group> |
| 128 | 128 | <structure> |
| 129 | 129 | <category byname="送電線鉄塔"/> |
| @@ -140,7 +140,7 @@ | ||
| 140 | 140 | </sprite> |
| 141 | 141 | </contribution> |
| 142 | 142 | |
| 143 | - <contribution type="GenericStructure" id="CableTower_M-1"> | |
| 143 | + <contribution type="ignore" id="CableTower_M-1"> | |
| 144 | 144 | <group>高圧線鉄塔</group> |
| 145 | 145 | <structure> |
| 146 | 146 | <category byname="送電線鉄塔"/> |
| @@ -157,7 +157,7 @@ | ||
| 157 | 157 | </sprite> |
| 158 | 158 | </contribution> |
| 159 | 159 | |
| 160 | - <contribution type="GenericStructure" id="CableTower_S-1"> | |
| 160 | + <contribution type="ignore" id="CableTower_S-1"> | |
| 161 | 161 | <group>高圧線鉄塔</group> |
| 162 | 162 | <structure> |
| 163 | 163 | <category byname="送電線鉄塔"/> |
| @@ -189,7 +189,7 @@ | ||
| 189 | 189 | <condition when="night" src="gene_hospitalA3_n.bmp"/> |
| 190 | 190 | </contribution> |
| 191 | 191 | |
| 192 | - <contribution type="GenericStructure" id="Hospital_A"> | |
| 192 | + <contribution type="ignore" id="Hospital_A"> | |
| 193 | 193 | <name>総合病院</name> |
| 194 | 194 | <design>郊外型(主)</design> |
| 195 | 195 | <structure> |
| @@ -211,7 +211,7 @@ | ||
| 211 | 211 | <image ref="pic.Hospital_A"/> |
| 212 | 212 | </sprite> |
| 213 | 213 | </contribution> |
| 214 | - <contribution type="GenericStructure" id="Hospital_B"> | |
| 214 | + <contribution type="ignore" id="Hospital_B"> | |
| 215 | 215 | <name>総合病院</name> |
| 216 | 216 | <design>郊外型(副)</design> |
| 217 | 217 | <structure> |
| @@ -261,7 +261,7 @@ | ||
| 261 | 261 | </contribution> |
| 262 | 262 | |
| 263 | 263 | <!-- 01 --> |
| 264 | - <contribution type="GenericStructure" id="CampusBuilding-01"> | |
| 264 | + <contribution type="ignore" id="CampusBuilding-01"> | |
| 265 | 265 | <group>大学</group> |
| 266 | 266 | <structure> |
| 267 | 267 | <category byname="公立教育施設"/> |
| @@ -284,7 +284,7 @@ | ||
| 284 | 284 | </contribution> |
| 285 | 285 | |
| 286 | 286 | <!--02--> |
| 287 | - <contribution type="GenericStructure" id="CampusBuilding-02"> | |
| 287 | + <contribution type="ignore" id="CampusBuilding-02"> | |
| 288 | 288 | <group>大学</group> |
| 289 | 289 | <structure> |
| 290 | 290 | <category byname="公立教育施設"/> |
| @@ -307,7 +307,7 @@ | ||
| 307 | 307 | </contribution> |
| 308 | 308 | |
| 309 | 309 | <!--03--> |
| 310 | - <contribution type="GenericStructure" id="CampusBuilding-03"> | |
| 310 | + <contribution type="ignore" id="CampusBuilding-03"> | |
| 311 | 311 | <group>大学</group> |
| 312 | 312 | <structure> |
| 313 | 313 | <category byname="公立教育施設"/> |
| @@ -330,7 +330,7 @@ | ||
| 330 | 330 | </contribution> |
| 331 | 331 | |
| 332 | 332 | <!--tower--> |
| 333 | - <contribution type="GenericStructure" id="CampusBuilding-tower"> | |
| 333 | + <contribution type="ignore" id="CampusBuilding-tower"> | |
| 334 | 334 | <group>大学</group> |
| 335 | 335 | <structure> |
| 336 | 336 | <category byname="公立教育施設"/> |
| @@ -353,7 +353,7 @@ | ||
| 353 | 353 | </contribution> |
| 354 | 354 | |
| 355 | 355 | <!--04--> |
| 356 | - <contribution type="GenericStructure" id="CampusBuilding-04"> | |
| 356 | + <contribution type="ignore" id="CampusBuilding-04"> | |
| 357 | 357 | <group>大学</group> |
| 358 | 358 | <structure> |
| 359 | 359 | <category byname="公立教育施設"/> |
| @@ -376,7 +376,7 @@ | ||
| 376 | 376 | </contribution> |
| 377 | 377 | |
| 378 | 378 | <!--05--> |
| 379 | - <contribution type="GenericStructure" id="CampusBuilding-05"> | |
| 379 | + <contribution type="ignore" id="CampusBuilding-05"> | |
| 380 | 380 | <group>大学</group> |
| 381 | 381 | <structure> |
| 382 | 382 | <category byname="公立教育施設"/> |
| @@ -405,7 +405,7 @@ | ||
| 405 | 405 | </contribution> |
| 406 | 406 | |
| 407 | 407 | <!--06--> |
| 408 | - <contribution type="GenericStructure" id="CampusBuilding-06"> | |
| 408 | + <contribution type="ignore" id="CampusBuilding-06"> | |
| 409 | 409 | <group>大学</group> |
| 410 | 410 | <structure> |
| 411 | 411 | <category byname="公立教育施設"/> |
| @@ -428,7 +428,7 @@ | ||
| 428 | 428 | </contribution> |
| 429 | 429 | |
| 430 | 430 | <!--07--> |
| 431 | - <contribution type="GenericStructure" id="CampusBuilding-07"> | |
| 431 | + <contribution type="ignore" id="CampusBuilding-07"> | |
| 432 | 432 | <group>大学</group> |
| 433 | 433 | <structure> |
| 434 | 434 | <category byname="公立教育施設"/> |
| @@ -20,6 +20,12 @@ | ||
| 20 | 20 | <description>Independent contributions decrared without specific factroy.</description> |
| 21 | 21 | <implementation name="nft.framework.plugin.CtbAnonymousCtbFactory"/> |
| 22 | 22 | </contribution> |
| 23 | + <contribution type="factory" id="F_Dummy"> | |
| 24 | + <name>Dummy(for debug)</name> | |
| 25 | + <description>dummy contribtions for debug/development purpose.</description> | |
| 26 | + <implementation name="nft.framework.plugin.DummyContributionFactory"/> | |
| 27 | + <declare type="ignore"/> | |
| 28 | + </contribution> | |
| 23 | 29 | <contribution type="factory" id="F_SubForm"> |
| 24 | 30 | <name>SubForm</name> |
| 25 | 31 | <description>Child GUI forms</description> |
| @@ -13,7 +13,7 @@ | ||
| 13 | 13 | /// Time instant. |
| 14 | 14 | /// </summary> |
| 15 | 15 | [Serializable] |
| 16 | - public class Calendar | |
| 16 | + public class Calendar : IGlobalModule | |
| 17 | 17 | { |
| 18 | 18 | private static Calendar the_calendar; |
| 19 | 19 | public static Calendar ActiveCalendar { |
| @@ -117,5 +117,12 @@ | ||
| 117 | 117 | return null; |
| 118 | 118 | } |
| 119 | 119 | |
| 120 | + #region IGlobalModule implementation | |
| 121 | + public Type RegistType { | |
| 122 | + get { | |
| 123 | + return typeof(Calendar); | |
| 124 | + } | |
| 125 | + } | |
| 126 | + #endregion | |
| 120 | 127 | } |
| 121 | 128 | } |
| @@ -1,24 +0,0 @@ | ||
| 1 | -using System; | |
| 2 | -using System.Xml; | |
| 3 | -using nft.framework.plugin; | |
| 4 | - | |
| 5 | -namespace nft.framework.plugin | |
| 6 | -{ | |
| 7 | - /// <summary> | |
| 8 | - /// commercial structure. | |
| 9 | - /// | |
| 10 | - /// Including everything from convenience stores (like Seven-eleven) | |
| 11 | - /// to shopping malls like Walmart. | |
| 12 | - /// </summary> | |
| 13 | - [Serializable] | |
| 14 | - public class DummyContribution : Contribution | |
| 15 | - { | |
| 16 | - /// <summary> | |
| 17 | - /// Dummy Contribution for Debug | |
| 18 | - /// </summary> | |
| 19 | - /// <exception cref="XmlException">If the parsing fails</exception> | |
| 20 | - public DummyContribution(Plugin p, ParamsReader e) : base(p, e) { } | |
| 21 | - | |
| 22 | - // TODO: additional parameters, like population and attractiveness. | |
| 23 | - } | |
| 24 | -} |
| @@ -497,11 +497,11 @@ | ||
| 497 | 497 | // |
| 498 | 498 | public IContributionFactory GetContributionFactory( string name ) { |
| 499 | 499 | string anam = AdjustFactoryName(name); |
| 500 | - IContributionFactory factory = contributionFactories[anam]; | |
| 501 | - if(factory==null) | |
| 500 | + IContributionFactory factory = null; | |
| 501 | + if(contributionFactories.TryGetValue(anam,out factory)) | |
| 502 | + return factory; | |
| 503 | + else | |
| 502 | 504 | throw new Exception(name + "は未知のコントリビューションです"); |
| 503 | - else | |
| 504 | - return factory; | |
| 505 | 505 | } |
| 506 | 506 | |
| 507 | 507 | static string AdjustFactoryName(string orignam) { |
| @@ -0,0 +1,43 @@ | ||
| 1 | +using System; | |
| 2 | +using System.Xml; | |
| 3 | +using nft.framework.plugin; | |
| 4 | +using System.Diagnostics; | |
| 5 | + | |
| 6 | +namespace nft.framework.plugin | |
| 7 | +{ | |
| 8 | + public class DummyContributionFactory : Contribution, IContributionFactory { | |
| 9 | + public DummyContributionFactory(Plugin p, ParamsReader contrib) | |
| 10 | + : base(p, contrib) { | |
| 11 | + } | |
| 12 | + | |
| 13 | + #region IContributionFactory メンバ | |
| 14 | + public Type OutputType { | |
| 15 | + get { | |
| 16 | + return typeof(DummyContribution); | |
| 17 | + } | |
| 18 | + } | |
| 19 | + | |
| 20 | + public Contribution load(Plugin owner, ParamsReader e) { | |
| 21 | + return new DummyContribution(owner, e); | |
| 22 | + } | |
| 23 | + #endregion | |
| 24 | + } | |
| 25 | + | |
| 26 | + /// <summary> | |
| 27 | + /// commercial structure. | |
| 28 | + /// | |
| 29 | + /// Including everything from convenience stores (like Seven-eleven) | |
| 30 | + /// to shopping malls like Walmart. | |
| 31 | + /// </summary> | |
| 32 | + [Serializable] | |
| 33 | + public class DummyContribution : Contribution | |
| 34 | + { | |
| 35 | + /// <summary> | |
| 36 | + /// Dummy Contribution for Debug | |
| 37 | + /// </summary> | |
| 38 | + /// <exception cref="XmlException">If the parsing fails</exception> | |
| 39 | + public DummyContribution(Plugin p, ParamsReader e) : base(p, e) { } | |
| 40 | + | |
| 41 | + // TODO: additional parameters, like population and attractiveness. | |
| 42 | + } | |
| 43 | +} |