| Line 15... | Line 15... | 
          
            | 15 | 	this->shipToolStripMenuItem1->Image = this->imageList1->Images[1];
 | 15 | 	this->shipToolStripMenuItem1->Image = this->imageList1->Images[1];
 | 
          
            | 16 | 	this->multiPackageToolStripMenuItem->Image = this->imageList1->Images[this->imageList1->Images->IndexOfKey("multi")];
 | 16 | 	this->multiPackageToolStripMenuItem->Image = this->imageList1->Images[this->imageList1->Images->IndexOfKey("multi")];
 | 
          
            | 17 | 	this->Closed += gcnew System::EventHandler(this, &Form1::CloseEvent);
 | 17 | 	this->Closed += gcnew System::EventHandler(this, &Form1::CloseEvent);
 | 
          
            | 18 |  
 | 18 |  
 | 
          
            | 19 | 	this->Text = "Package Creator " + GetVersionString();
 | 19 | 	this->Text = "Package Creator " + GetVersionString();
 | 
          
            | 20 | 	m_pLoadedList = new CyStringList;
 | 20 | 	m_pLoadedList = new Utils::WStringList;
 | 
          
            | 21 | 	_pGameDir = new CGameDirectories(_S(mydoc));
 | 21 | 	_pGameDir = new CGameDirectories(_S(mydoc));
 | 
          
            | 22 | 	_pGameDir->setLanguage(44);
 | 22 | 	_pGameDir->setLanguage(44);
 | 
          
            | 23 |  
 | 23 |  
 | 
          
            | 24 | 	// default settings
 | 24 | 	// default settings
 | 
          
            | 25 | 	m_settings = new SSettings;
 | 25 | 	m_settings = new SSettings;
 | 
          
            | Line 119... | Line 119... | 
          
            | 119 | }
 | 119 | }
 | 
          
            | 120 |  
 | 120 |  
 | 
          
            | 121 |  
 | 121 |  
 | 
          
            | 122 | String ^Form1::getShipSelection(CVirtualFileSystem *pVfs, System::String ^*shipName)
 | 122 | String ^Form1::getShipSelection(CVirtualFileSystem *pVfs, System::String ^*shipName)
 | 
          
            | 123 | {
 | 123 | {
 | 
          
            | 124 | 	Utils::CStringList*ships = pVfs->getTShipsEntries();
 | 124 | 	Utils::WStringList *ships = pVfs->getTShipsEntries();
 | 
          
            | 125 | 	if ( ships ) {
 | 125 | 	if ( ships ) {
 | 
          
            | 126 | 		this->LoadText(pVfs);
 | 126 | 		this->LoadText(pVfs);
 | 
          
            | 127 |  
 | 127 |  
 | 
          
            | 128 | 		LoadShip ^ls = gcnew LoadShip();
 | 128 | 		LoadShip ^ls = gcnew LoadShip();
 | 
          
            | 129 | 		for(Utils::SStringList*str = ships->first(); str; str = ships->next()) {
 | 129 | 		for(Utils::WStringNode *str = ships->first(); str; str = ships->next()) {
 | 
          
            | 130 | 			int tId = str->str.token(";", 7).toLong();
 | 130 | 			int tId = str->str.token(L";", 7).toLong();
 | 
          
            | 131 | 			String ^name = _US(pVfs->findText(0, 17, tId));
 | 131 | 			String ^name = _US(pVfs->findText(0, 17, tId));
 | 
          
            | 132 | 			String ^race = (str->str.token(";", 46).toLong() == 0) ? "" : _US(pVfs->findText(0, 1266, str->str.token(";", 46).toLong()));
 | 132 | 			String ^race = (str->str.token(L";", 46).toLong() == 0) ? "" : _US(pVfs->findText(0, 1266, str->str.token(L";", 46).toLong()));
 | 
          
            | 133 | 			String ^text = race + " " + name;
 | 133 | 			String ^text = race + " " + name;
 | 
          
            | 134 | 			int variation = str->str.token(";", 51).toLong();
 | 134 | 			int variation = str->str.token(L";", 51).toLong();
 | 
          
            | 135 | 			if ( variation && variation != 20 )
 | 135 | 			if ( variation && variation != 20 )
 | 
          
            | 136 | 				text = text + " " + _US(pVfs->findText(0, 17, 10000 + variation));
 | 136 | 				text = text + " " + _US(pVfs->findText(0, 17, 10000 + variation));
 | 
          
            | 137 | 			ls->AddShip(_US(str->data), text);
 | 137 | 			ls->AddShip(_US(str->data), text);
 | 
          
            | 138 | 		}
 | 138 | 		}
 | 
          
            | 139 |  
 | 139 |  
 | 
          
            | 140 | 		if ( ls->ShowDialog(this) == System::Windows::Forms::DialogResult::OK )	{
 | 140 | 		if ( ls->ShowDialog(this) == System::Windows::Forms::DialogResult::OK )	{
 | 
          
            | 141 | 			Utils::Stringline = pVfs->getTShipsEntry(_S(ls->GetData()));
 | 141 | 			Utils::WString line = pVfs->getTShipsEntry(_S(ls->GetData()));
 | 
          
            | 142 | 	
 | 142 | 	
 | 
          
            | 143 | 			if ( !line.empty() ) {
 | 143 | 			if ( !line.empty() ) {
 | 
          
            | 144 | 				if ( shipName ) {
 | 144 | 				if ( shipName ) {
 | 
          
            | 145 | 					(*shipName) = ls->GetShipName();
 | 145 | 					(*shipName) = ls->GetShipName();
 | 
          
            | 146 | 				}
 | 146 | 				}
 | 
          
            | Line 227... | Line 227... | 
          
            | 227 | 	SelectFilesystem ^Filesystem = gcnew SelectFilesystem(_pGameDir);
 | 227 | 	SelectFilesystem ^Filesystem = gcnew SelectFilesystem(_pGameDir);
 | 
          
            | 228 | 	if ( Filesystem->ShowDialog(this) != System::Windows::Forms::DialogResult::OK ) {
 | 228 | 	if ( Filesystem->ShowDialog(this) != System::Windows::Forms::DialogResult::OK ) {
 | 
          
            | 229 | 		return;
 | 229 | 		return;
 | 
          
            | 230 | 	}
 | 230 | 	}
 | 
          
            | 231 |  
 | 231 |  
 | 
          
            | 232 | 	Utils::Stringdir = Filesystem->gameDir();
 | 232 | 	Utils::WString dir = Filesystem->gameDir();
 | 
          
            | 233 | 	CyStringmod;
 | 233 | 	Utils::WString mod;
 | 
          
            | 234 | 	if ( Filesystem->gameMod() ) {
 | 234 | 	if ( Filesystem->gameMod() ) {
 | 
          
            | 235 | 		mod = CyString(dir)+ "/mods/" +CyStringFromSystemString(Filesystem->gameMod()) + ".cat";
 | 235 | 		mod = dir + L"/mods/" + _WS(Filesystem->gameMod()) + L".cat";
 | 
          
            | 236 | 	}
 | 236 | 	}
 | 
          
            | 237 |  
 | 237 |  
 | 
          
            | 238 | 	CVirtualFileSystem *vfs = _pGameDir->selectedVFS();
 | 238 | 	CVirtualFileSystem *vfs = _pGameDir->selectedVFS();
 | 
          
            | 239 |  
 | 239 |  
 | 
          
            | 240 | 	if ( !vfs ) {
 | 240 | 	if ( !vfs ) {
 | 
          
            | 241 | 		MessageBox::Show(this, "Error: Couldn't open Virtual File System", "Error Importing Ship", MessageBoxButtons::OK, MessageBoxIcon::Error);
 | 241 | 		MessageBox::Show(this, "Error: Couldn't open Virtual File System", "Error Importing Ship", MessageBoxButtons::OK, MessageBoxIcon::Error);
 | 
          
            | 242 | 		return;
 | 242 | 		return;
 | 
          
            | 243 | 	}
 | 243 | 	}
 | 
          
            | 244 |  
 | 244 |  
 | 
          
            | 245 | 	// load a mod on top of the VFS
 | 245 | 	// load a mod on top of the VFS
 | 
          
            | 246 | 	if ( !mod.Empty() ) {
 | 246 | 	if ( !mod.empty() ) {
 | 
          
            | 247 | 		if ( !vfs->loadMod(mod.ToString()) ) {
 | 247 | 		if ( !vfs->loadMod(mod) ) {
 | 
          
            | 248 | 			MessageBox::Show(this, "There was a problem trying to open the mod file\n" + Filesystem->gameMod(), "Error Importing Ship", MessageBoxButtons::OK, MessageBoxIcon::Error);
 | 248 | 			MessageBox::Show(this, "There was a problem trying to open the mod file\n" + Filesystem->gameMod(), "Error Importing Ship", MessageBoxButtons::OK, MessageBoxIcon::Error);
 | 
          
            | 249 | 			return;
 | 249 | 			return;
 | 
          
            | 250 | 		}
 | 250 | 		}
 | 
          
            | 251 | 		vfs->updateModTexts(17);
 | 251 | 		vfs->updateModTexts(17);
 | 
          
            | 252 | 	}
 | 252 | 	}
 |