Subversion Repositories spk

Rev

Rev 196 | Rev 203 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 196 Rev 197
Line 98... Line 98...
98
	else if ( first == "PackageType:" )
98
	else if ( first == "PackageType:" )
99
		m_iPackageType = rest;
99
		m_iPackageType = rest;
100
	else if ( first == "Ware:" )
100
	else if ( first == "Ware:" )
101
		AddWare ( rest );
101
		AddWare ( rest );
102
	else if ( (first == "WareText:") && (m_pLastWare) )
102
	else if ( (first == "WareText:") && (m_pLastWare) )
103
		AddWareText ( rest );
103
		addWareText ( rest );
104
	else if ( first == "Setting:" )
104
	else if ( first == "Setting:" )
105
	{
105
	{
106
		SSettingType *t = AddSetting ( rest.token("|", 2), rest.token("|", 1) );
106
		SSettingType *t = AddSetting ( rest.token("|", 2), rest.token("|", 1) );
107
		ConvertSetting ( t, rest.tokens("|", 3));
107
		ConvertSetting ( t, rest.tokens("|", 3));
108
	}
108
	}
Line 134... Line 134...
134
		values += Utils::String("Setting: ") + (long)node->Data()->iType + "|" + node->Data()->sKey + "|" + GetSetting(node->Data()) + "\n";
134
		values += Utils::String("Setting: ") + (long)node->Data()->iType + "|" + node->Data()->sKey + "|" + GetSetting(node->Data()) + "\n";
135
 
135
 
136
	for ( CListNode<SWares> *wNode = m_lWares.Front(); wNode; wNode = wNode->next() ) {
136
	for ( CListNode<SWares> *wNode = m_lWares.Front(); wNode; wNode = wNode->next() ) {
137
		SWares *ware = wNode->Data();
137
		SWares *ware = wNode->Data();
138
		if ( wNode->Data()->iTextID > 0 )
138
		if ( wNode->Data()->iTextID > 0 )
139
			values += Utils::String("Ware: ") + ware-&gt;cType + &quot;:" + ware->iPrice + ":" + (long)ware->iSize + ";:&quot; + (long)ware-&gt;iVolumn + ":&quot; + ware->sID + ":" + (long)ware->iNotority + ":" + (long)ware->iTextID + "," + (long)ware->iTextPage + "\n";
139
			values += Utils::String("Ware: ") + Utils::WString(ware-&gt;cType).toString() + ":" + ware->iPrice + ":" + (long)ware-&gt;iSize + ":&quot; + (long)ware-&gt;iVolumn + ":&quot; + ware->sID.toString() + ":" + (long)ware->iNotority + ":" + (long)ware->iTextID + "," + (long)ware->iTextPage + "\n";
140
		else
140
		else
141
			values += Utils::String("Ware: ") + ware-&gt;cType + &quot;:" + ware->iPrice + ":" + (long)ware->iSize + ";:&quot; + (long)ware-&gt;iVolumn + ":&quot; + ware->sID + ":" + (long)ware->iNotority + "\n";
141
			values += Utils::String("Ware: ") + Utils::WString(ware-&gt;cType).toString() + ":" + ware->iPrice + ":" + (long)ware-&gt;iSize + ":&quot; + (long)ware-&gt;iVolumn + ":&quot; + ware->sID.toString() + ":" + (long)ware->iNotority + "\n";
142
		for ( CListNode<SWaresText> *wtNode = ware->lText.Front(); wtNode; wtNode = wtNode->next() )
142
		for ( CListNode<SWaresText> *wtNode = ware->lText.Front(); wtNode; wtNode = wtNode->next() )
143
			values += Utils::String("WareText: ") + (long)wtNode->Data()->iLang + " " + wtNode->Data()->sName + "|" + wtNode->;Data()->sDesc + "\n";
143
			values += Utils::String("WareText: ") + (long)wtNode->Data()->iLang + " " + wtNode->Data()->sName.toString() + "|" + wtNode->;Data()->sDesc.toString() + "\n";
144
	}
144
	}
145
 
145
 
146
	return values;
146
	return values;
147
}
147
}
148
 
148
 
Line 219... Line 219...
219
bool CSpkFile::writeHeader(CFileIO &file, int valueheader, int valueComprLen) const
219
bool CSpkFile::writeHeader(CFileIO &file, int valueheader, int valueComprLen) const
220
{
220
{
221
	return file.write("SPKCycrow;%.2f;%d;%d\n", FILEVERSION, valueheader, valueComprLen);
221
	return file.write("SPKCycrow;%.2f;%d;%d\n", FILEVERSION, valueheader, valueComprLen);
222
}
222
}
223
 
223
 
224
void CSpkFile::AddWareText(const Utils::String &sData)
224
void CSpkFile::addWareText(const Utils::WString &sData)
225
{
225
{
226
	if ( !m_pLastWare )
226
	if ( !m_pLastWare )
227
		return;
227
		return;
228
 
228
 
229
	SWaresText *wt = new SWaresText;
229
	SWaresText *wt = new SWaresText;
230
	wt->iLang = sData.token(" ", 1);
230
	wt->iLang = sData.token(L" ", 1);
231
	wt->sName = sData.tokens(" ", 2).token("|", 1);
231
	wt->sName = sData.tokens(L" ", 2).token(L"|", 1);
232
	wt->sDesc = sData.tokens(" ", 2).tokens("|", 2);
232
	wt->sDesc = sData.tokens(L" ", 2).tokens(L"|", 2);
233
	m_pLastWare->lText.push_back ( wt );
233
	m_pLastWare->lText.push_back ( wt );
234
 
234
 
235
	_changed();
235
	_changed();
236
}
236
}
237
 
237
 
Line 242... Line 242...
242
	ware->iTextPage = 0;
242
	ware->iTextPage = 0;
243
	ware->cType = sData.token(":", 1)[0];
243
	ware->cType = sData.token(":", 1)[0];
244
	ware->iPrice = sData.token(":", 2);
244
	ware->iPrice = sData.token(":", 2);
245
	ware->iSize = sData.token(":", 3);
245
	ware->iSize = sData.token(":", 3);
246
	ware->iVolumn = sData.token(":", 4);
246
	ware->iVolumn = sData.token(":", 4);
247
	ware->sID = sData.token(":", 5);
247
	ware->sID = sData.token(":", 5).toWString();
248
	ware->iNotority = sData.token(":", 6);
248
	ware->iNotority = sData.token(":", 6);
249
	if ( !sData.token(":", 7).empty() )
249
	if ( !sData.token(":", 7).empty() )
250
	{
250
	{
251
		Utils::String r = sData.token(":", 7);
251
		Utils::String r = sData.token(":", 7);
252
		ware->iTextID = r.token(",", 1);
252
		ware->iTextID = r.token(",", 1);
Line 309... Line 309...
309
 
309
 
310
void CSpkFile::AddWare(SWares *ware)
310
void CSpkFile::AddWare(SWares *ware)
311
{
311
{
312
	ware->sID.remove(' ');
312
	ware->sID.remove(' ');
313
 
313
 
314
	SWares *newware = this->FindWare(ware->sID);
314
	SWares *newware = this->FindWare(ware->sID.toString());
315
	if ( newware ) {
315
	if ( newware ) {
316
		m_lWares.remove(newware);
316
		m_lWares.remove(newware);
317
	}
317
	}
318
 
318
 
319
	m_lWares.push_back(ware);
319
	m_lWares.push_back(ware);
320
	_changed();
320
	_changed();
321
}
321
}
322
 
322
 
323
void CSpkFile::AddWareText(SWares *pWare, int iLang, const Utils::String &sName, const Utils::String &sDesc)
323
void CSpkFile::addWareText(SWares *pWare, int iLang, const Utils::WString &sName, const Utils::WString &sDesc)
324
{
324
{
325
	SWaresText *wt;
325
	SWaresText *wt;
326
	for ( CListNode<SWaresText> *node = pWare->lText.Front(); node; node = node->next() ) {
326
	for ( CListNode<SWaresText> *node = pWare->lText.Front(); node; node = node->next() ) {
327
		wt = node->Data();
327
		wt = node->Data();
328
		if ( wt->iLang == iLang ) {
328
		if ( wt->iLang == iLang ) {
Line 379... Line 379...
379
	{
379
	{
380
		C_File *file = node->Data();
380
		C_File *file = node->Data();
381
		if ( file->GetFileType() != FILETYPE_SCRIPT )
381
		if ( file->GetFileType() != FILETYPE_SCRIPT )
382
			continue;
382
			continue;
383
 
383
 
384
		Utils::String basename = file->baseName();
384
		Utils::WString basename = file->baseName();
385
		if ( basename.right(15).Compare(".initplayership") )
385
		if ( basename.right(15).Compare(L".initplayership") )
386
			return 0;
386
			return 0;
387
	}
387
	}
388
	if ( !IsAnotherMod() )
388
	if ( !IsAnotherMod() )
389
		return 1;
389
		return 1;
390
	else
390
	else
Line 489... Line 489...
489
			continue;
489
			continue;
490
 
490
 
491
		if ( file->IsFakePatch() )
491
		if ( file->IsFakePatch() )
492
			continue;
492
			continue;
493
 
493
 
494
		Utils::String filename = file->baseName();
494
		Utils::WString filename = file->baseName();
495
		if ( filename.Compare(mod) )
495
		if ( filename.Compare(mod) )
496
			return true;
496
			return true;
497
	}
497
	}
498
	return false;
498
	return false;
499
}
499
}
Line 588... Line 588...
588
	}
588
	}
589
 
589
 
590
	return "Other";
590
	return "Other";
591
}
591
}
592
 
592
 
593
bool CSpkFile::LoadPackageData(const Utils::String &sFirst, const Utils::String &sRest, const Utils::String &sMainGame, Utils::CStringList &otherGames, Utils::CStringList &gameAddons, CProgressInfo *progress)
593
bool CSpkFile::loadPackageData(const Utils::WString &sFirst, const Utils::WString &sRest, const Utils::WString &sMainGame, Utils::WStringList &otherGames, Utils::WStringList &gameAddons, CProgressInfo *progress)
594
{
594
{
595
	if ( sFirst.Compare("ScriptType") )
595
	if ( sFirst.Compare(L"ScriptType") )
596
	{
596
	{
597
		if ( sRest.Compare("Library") || sRest.Compare("Library Script") )
597
		if ( sRest.Compare(L"Library") || sRest.Compare(L"Library Script") )
598
			this->SetLibrary();
598
			this->SetLibrary();
599
		else if ( sRest.Compare("Update") || sRest.Compare("Package Update") || sRest.Compare("Mod Update") )
599
		else if ( sRest.Compare(L"Update") || sRest.Compare(L"Package Update") || sRest.Compare(L"Mod Update") )
600
			this->SetPackageUpdate();
600
			this->SetPackageUpdate();
601
		else if ( sRest.Compare("Start") || sRest.Compare("Custom Start") )
601
		else if ( sRest.Compare(L"Start") || sRest.Compare(L"Custom Start") )
602
			this->SetCustomStart();
602
			this->SetCustomStart();
603
		else if ( sRest.Compare("Patch") || sRest.Compare("Patch Mod") )
603
		else if ( sRest.Compare(L"Patch") || sRest.Compare(L"Patch Mod") )
604
			this->SetPatch();
604
			this->SetPatch();
605
		else
605
		else
606
		{
606
		{
607
			int check = sRest;
607
			int check = sRest;
608
			if ( check || sRest == "0" )
608
			if ( check || sRest == L"0" )
609
				m_iScriptType = check;
609
				m_iScriptType = check;
610
			else
610
			else
611
			{
611
			{
612
				m_iScriptType = CSpkFile::ConvertScriptType(sRest);
612
				m_iScriptType = CSpkFile::ConvertScriptType(sRest.toString());
613
				if ( m_iScriptType == -1 )
613
				if ( m_iScriptType == -1 )
614
					m_sScriptType = sRest;
614
					m_sScriptType = sRest.toString();
615
			}
615
			}
616
		}
616
		}
617
	}
617
	}
618
	else if ( sFirst.Compare("AnotherMod") )
618
	else if (sFirst.Compare(L"AnotherMod"))
619
	{
619
	{
620
		m_sOtherName = sRest.token("|", 1);
620
		m_sOtherName = sRest.token(L"|", 1).toString();
621
		m_sOtherAuthor = sRest.tokens("|", 2);
621
		m_sOtherAuthor = sRest.tokens(L"|", 2).toString();
622
	}
622
	}
623
	else if ( sFirst.Compare("WareName") || sFirst.Compare("WareDesc") )
623
	else if ( sFirst.Compare(L"WareName") || sFirst.Compare(L"WareDesc") )
624
	{
624
	{
625
		// find the ware to use
625
		// find the ware to use
626
		SWares *useWare = m_pLastWare;
626
		SWares *useWare = m_pLastWare;
627
		Utils::String id = sRest.token(" ", 1);
627
		Utils::WString id = sRest.token(L" ", 1);
628
		for ( CListNode<SWares> *wNode = m_lWares.Front(); wNode; wNode = wNode->next() )
628
		for ( CListNode<SWares> *wNode = m_lWares.Front(); wNode; wNode = wNode->next() )
629
		{
629
		{
630
			if ( wNode->Data()->sID.Compare(id.c_str()) )
630
			if ( wNode->Data()->sID.Compare(id.c_str()) )
631
			{
631
			{
632
				useWare = wNode->Data();
632
				useWare = wNode->Data();
Line 635... Line 635...
635
		}
635
		}
636
 
636
 
637
		// check if we have the id already
637
		// check if we have the id already
638
		if ( useWare )
638
		if ( useWare )
639
		{
639
		{
640
			int lang = sRest.token(" ", 2);
640
			int lang = sRest.token(L" ", 2);
641
			SWaresText *wt = NULL;
641
			SWaresText *wt = NULL;
642
			for ( CListNode<SWaresText> *tNode = useWare->lText.Front(); tNode; tNode = tNode->next() )
642
			for ( CListNode<SWaresText> *tNode = useWare->lText.Front(); tNode; tNode = tNode->next() )
643
			{
643
			{
644
				if ( tNode->Data()->iLang == lang )
644
				if ( tNode->Data()->iLang == lang )
645
				{
645
				{
Line 653... Line 653...
653
				wt = new SWaresText;
653
				wt = new SWaresText;
654
				wt->iLang = lang;
654
				wt->iLang = lang;
655
				useWare->lText.push_back(wt);
655
				useWare->lText.push_back(wt);
656
			}
656
			}
657
 
657
 
658
			if ( sFirst.Compare("WareName") )
658
			if ( sFirst.Compare(L"WareName") )
659
				wt->sName = sRest.tokens(" ", 3);
659
				wt->sName = sRest.tokens(L" ", 3);
660
			else
660
			else
661
				wt->sDesc = sRest.tokens(" ", 3);
661
				wt->sDesc = sRest.tokens(L" ", 3);
662
		}
662
		}
663
	}
663
	}
664
	else if ( sFirst.left(4).Compare("Ware") )
664
	else if ( sFirst.left(4).Compare(L"Ware") )
665
	{
665
	{
666
		SWares *ware = new SWares;
666
		SWares *ware = new SWares;
667
		ware->iTextID = -1;
667
		ware->iTextID = -1;
668
		ware->iTextPage = 0;
668
		ware->iTextPage = 0;
669
		ware->cType = sFirst[4];
669
		ware->cType = sFirst[4];
670
		ware->iPrice = sRest.token(" ", 2);
670
		ware->iPrice = sRest.token(L" ", 2);
671
		ware->iSize = sRest.token(" ", 3);
671
		ware->iSize = sRest.token(L" ", 3);
672
		ware->iVolumn = sRest.token(" ", 4);
672
		ware->iVolumn = sRest.token(L" ", 4);
673
		ware->sID = sRest.token(" ", 1);
673
		ware->sID = sRest.token(L" ", 1);
674
		ware->iNotority = sRest.token(" ", 5);
674
		ware->iNotority = sRest.token(L" ", 5);
675
		if ( !sRest.token(" ", 6).empty() )
675
		if ( !sRest.token(L" ", 6).empty() )
676
		{
676
		{
677
			ware->iTextID = sRest.token(" ", 6).token(",", 2);
677
			ware->iTextID = sRest.token(L" ", 6).token(L",", 2);
678
			ware->iTextPage = sRest.token(" ", 6).token(",", 1);
678
			ware->iTextPage = sRest.token(L" ", 6).token(L",", 1);
679
		}
679
		}
680
		m_lWares.push_back ( ware );
680
		m_lWares.push_back ( ware );
681
		m_pLastWare = ware;
681
		m_pLastWare = ware;
682
	}
682
	}
683
 
683
 
684
	else if ( CBaseFile::LoadPackageData(sFirst, sRest, sMainGame, otherGames, gameAddons, progress) )
684
	else if ( CBaseFile::loadPackageData(sFirst, sRest, sMainGame, otherGames, gameAddons, progress) )
685
		return true;
685
		return true;
686
	else
686
	else
687
		return false;
687
		return false;
688
 
688
 
689
	return true;
689
	return true;
Line 723... Line 723...
723
		list->pushBack("# Custom Wares, Ware<type>: <id> <price> <size> <volumn> <notority>");
723
		list->pushBack("# Custom Wares, Ware<type>: <id> <price> <size> <volumn> <notority>");
724
		for ( CListNode<SWares> *node = m_lWares.Front(); node; node = node->next() )
724
		for ( CListNode<SWares> *node = m_lWares.Front(); node; node = node->next() )
725
		{
725
		{
726
			SWares *w = node->Data();
726
			SWares *w = node->Data();
727
			if ( w->iTextID > 0 )
727
			if ( w->iTextID > 0 )
728
				list->pushBack(Utils::String("Ware") + (char)w->cType + ": " + w->sID + " " + (long)w->iPrice + " " + (long)w->iSize + " " + (long)w->iVolumn + " " + (long)w->iNotority + " " + (long)w->iTextPage + "," + (long)w->iTextID);
728
				list->pushBack(Utils::String("Ware") + (char)w->cType + ": " + w->sID.toString() + " " + (long)w->iPrice + " " + (long)w->iSize + " " + (long)w->iVolumn + " " + (long)w->iNotority + " " + (long)w->iTextPage + "," + (long)w->iTextID);
729
			else
729
			else
730
				list->pushBack(Utils::String("Ware") + (char)w->cType + ": " + w->sID + " " + (long)w->iPrice + " " + (long)w->iSize + " " + (long)w->iVolumn + " " + (long)w->iNotority);
730
				list->pushBack(Utils::String("Ware") + (char)w->cType + ": " + w->sID.toString() + " " + (long)w->iPrice + " " + (long)w->iSize + " " + (long)w->iVolumn + " " + (long)w->iNotority);
731
			for ( CListNode<SWaresText> *wNode = w->lText.Front(); wNode; wNode = wNode->next() )
731
			for ( CListNode<SWaresText> *wNode = w->lText.Front(); wNode; wNode = wNode->next() )
732
			{
732
			{
733
				SWaresText *wt = wNode->Data();
733
				SWaresText *wt = wNode->Data();
734
				if ( !wt->sName.empty() )
734
				if ( !wt->sName.empty() )
735
					list->pushBack("WareName: " + w->sID + " " + (long)wt->iLang + " " + wt->sName);
735
					list->pushBack("WareName: " + w->sID.toString() + " " + (long)wt->iLang + " " + wt->sName.toString());
736
				if ( !wt->sDesc.empty() )
736
				if ( !wt->sDesc.empty() )
737
					list->pushBack("WareDesc: " + w->sID + " " + (long)wt->iLang + " " + wt->sDesc);
737
					list->pushBack("WareDesc: " + w->sID.toString() + " " + (long)wt->iLang + " " + wt->sDesc.toString());
738
			}
738
			}
739
			list->pushBack("");
739
			list->pushBack("");
740
		}
740
		}
741
	}
741
	}
742
 
742
 
Line 748... Line 748...
748
 
748
 
749
	return true;
749
	return true;
750
 
750
 
751
}
751
}
752
 
752
 
753
Utils::String CSpkFile::GetWareText(SWares *w, int lang)
753
Utils::WString CSpkFile::GetWareText(SWares *w, int lang)
754
{
754
{
755
	// return the text page if being used
755
	// return the text page if being used
756
	if ( w->iTextID > 0 && w->iTextPage > 0 )
756
	if ( w->iTextID > 0 && w->iTextPage > 0 )
757
		return Utils::String("{") + (long)w->iTextPage + "," + (long)w->iTextID + "}";
757
		return Utils::WString(L"{") + (long)w->iTextPage + L"," + (long)w->iTextID + L"}";
758
 
758
 
759
	Utils::String name;
759
	Utils::WString name;
760
	for ( CListNode<SWaresText> *wt = w->lText.Front(); wt; wt = wt->next() )
760
	for ( CListNode<SWaresText> *wt = w->lText.Front(); wt; wt = wt->next() )
761
	{
761
	{
762
		if ( wt->Data()->sName.empty() )
762
		if ( wt->Data()->sName.empty() )
763
			continue;
763
			continue;
764
		if ( wt->Data()->iLang == lang )
764
		if ( wt->Data()->iLang == lang )
Line 769... Line 769...
769
			name = wt->Data()->sName;
769
			name = wt->Data()->sName;
770
	}
770
	}
771
 
771
 
772
	return name;
772
	return name;
773
}
773
}
774
Utils::String CSpkFile::GetWareDesc(SWares *w, int lang)
774
Utils::WString CSpkFile::GetWareDesc(SWares *w, int lang)
775
{
775
{
776
	// return the text page if being used
776
	// return the text page if being used
777
	if ( w->iTextID > 0 && w->iTextPage > 0 )
777
	if ( w->iTextID > 0 && w->iTextPage > 0 )
778
		return Utils::String("{") + (long)w->iTextPage + "," + ((long)w->iTextID + 1) + "}";
778
		return Utils::WString(L"{") + (long)w->iTextPage + L"," + ((long)w->iTextID + 1) + L"}";
779
 
779
 
780
	Utils::String name;
780
	Utils::WString name;
781
	for ( CListNode<SWaresText> *wt = w->lText.Front(); wt; wt = wt->next() )
781
	for ( CListNode<SWaresText> *wt = w->lText.Front(); wt; wt = wt->next() )
782
	{
782
	{
783
		if ( wt->Data()->sDesc.empty() )
783
		if ( wt->Data()->sDesc.empty() )
784
			continue;
784
			continue;
785
 
785
 
Line 801... Line 801...
801
 
801
 
802
	// else find the custom start script
802
	// else find the custom start script
803
	C_File *file = NULL;
803
	C_File *file = NULL;
804
	for ( file = this->GetFirstFile(FILETYPE_SCRIPT); file; file = this->GetNextFile(file) )
804
	for ( file = this->GetFirstFile(FILETYPE_SCRIPT); file; file = this->GetNextFile(file) )
805
	{
805
	{
806
		if ( file->filename().contains("initplayership") && file->filename().token(".", 1).Compare("galaxy") )
806
		if ( file->filename().contains(L"initplayership") && file->filename().token(L".", 1).Compare(L"galaxy") )
807
			break;
807
			break;
808
	}
808
	}
809
 
809
 
810
	if ( !file )
810
	if ( !file )
811
		return "";
811
		return "";
812
 
812
 
813
	return file->filename().token(".", 2);
813
	return file->filename().token(L".", 2).toString();
814
}
814
}
815
 
815
 
816
void CSpkFile::MergePackage(CBaseFile *base)
816
void CSpkFile::MergePackage(CBaseFile *base)
817
{
817
{
818
	// update possible changes
818
	// update possible changes
Line 846... Line 846...
846
	// copy settings from base class
846
	// copy settings from base class
847
	_merge(base);
847
	_merge(base);
848
 
848
 
849
	for ( CListNode<SGameCompat> *gNode = base->GetGameCompatabilityList()->Front(); gNode; gNode = gNode->next() ) {
849
	for ( CListNode<SGameCompat> *gNode = base->GetGameCompatabilityList()->Front(); gNode; gNode = gNode->next() ) {
850
		if ( !gNode->Data()->sVersion.empty() )
850
		if ( !gNode->Data()->sVersion.empty() )
851
			this->AddGameCompatability(gNode->Data()->iGame, gNode->Data()->sVersion);
851
			this->AddGameCompatability(gNode->Data()->iGame, gNode->Data()->sVersion.toString());
852
		else
852
		else
853
			this->AddGameCompatability(gNode->Data()->iGame, (long)gNode->Data()->iVersion);
853
			this->AddGameCompatability(gNode->Data()->iGame, (long)gNode->Data()->iVersion);
854
	}
854
	}
855
 
855
 
856
	// copy over needed librarys
856
	// copy over needed librarys
Line 1090... Line 1090...
1090
	{
1090
	{
1091
		this->AddWare ( sRest );
1091
		this->AddWare ( sRest );
1092
		CLog::logf(CLog::Log_EditPackage, 3, "\tAdding Custom Ware" );
1092
		CLog::logf(CLog::Log_EditPackage, 3, "\tAdding Custom Ware" );
1093
	}
1093
	}
1094
	else if ( sCmd == "WareText:" )
1094
	else if ( sCmd == "WareText:" )
1095
		this->AddWareText ( sRest );
1095
		this->addWareText ( sRest );
1096
	else if ( sCmd == "UninstallAfter:" )	this->addUninstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1096
	else if ( sCmd == "UninstallAfter:" )	this->addUninstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1097
	else if ( sCmd == "UninstallBefore:" )	this->addUninstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1097
	else if ( sCmd == "UninstallBefore:" )	this->addUninstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1098
	else if ( sCmd == "InstallAfter:" )		this->addInstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1098
	else if ( sCmd == "InstallAfter:" )		this->addInstallText(sRest.token(" ", 1).toLong(), false, sRest.tokens(" ", 2));
1099
	else if ( sCmd == "InstallBefore:" )	this->addInstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1099
	else if ( sCmd == "InstallBefore:" )	this->addInstallText(sRest.token(" ", 1).toLong(), true, sRest.tokens(" ", 2));
1100
	else if ( sCmd == "ScriptName:" )
1100
	else if ( sCmd == "ScriptName:" )