/* * This function looks up the model list for the model name */ public TowerModel TowerModelFinder(string TowerModelName, TowerListClass EnvTowerModelList) { int EnvFindResultIdx = EnvTowerModelList.FindTowerModelByName(TowerModelName); if (EnvFindResultIdx == -1) { return(null); } else { return(EnvTowerModelList.getTowerModel(EnvFindResultIdx)); } }
public TowerModel TowerModelGetter(LISFileReader EnvLisFileReader, TowerListClass EnvTowerModelList, TowerModel TowerModelOrigin, FormParas EnvFormParams) { /* * First we try to find the model you want */ string TowerModelName = TowerModelNameGetter(EnvLisFileReader); TowerModel EnvRetTowerModel = TowerModelFinder(TowerModelName, EnvTowerModelList); if (EnvRetTowerModel != null) // Get it! { return(EnvRetTowerModel); } else { //Here to build a new model and return return(TowerModelBuilder(TowerModelOrigin, EnvFormParams, EnvLisFileReader, EnvTowerModelList)); } }
/* * This function will decide if you need to build a new model * And how to build the model * And where to put the model */ public TowerModel TowerModelBuilder(TowerModel TowerModelOrigin, FormParas EnvFormParams, LISFileReader EnvLisFileReader, TowerListClass TowerModelList) { // First: Transfer the basic datas TowerModel NewTowerModel = new TowerModel(); NewTowerModel.TowerModelBasicDataCopier(TowerModelOrigin); Models.ModelPropertiesResolver mResolver = new ModelPropertiesResolver(); // Second: Build the color table mResolver.ModelColorTableResolver(EnvLisFileReader.param.ModelTypeId, NewTowerModel, EnvLisFileReader); // Third: Revise the tower elements /* * if (EnvFormParams.ifReviseTowerModelParameters == 1) * mResolver.ModelParameterResolver(EnvLisFileReader.param.ModelTypeId, NewTowerModel, EnvLisFileReader); */ // Last: Put the model in the list //string TowerModelName = TowerModelNameGetter(EnvLisFileReader); //TowerModelList.InsertTowerModel(NewTowerModel, TowerModelName); return(NewTowerModel); }