It currently returns a ship name rather than the class name which leads to some confusing dockscreens in Korolov / Battle Arena
You can get the old behavior by explicitly adding the generic name flag - e.g. (shpGetClassName &scCharonFrigateRaider; 0x4000)
Should the generic name flag be assumed inside fnShipClass e.g.: https://github.com/kronosaur/Mammoth/blob/master/TSE/CCExtensions.cpp#L8279 change to:
DWORD dwFlags = pCtx->AsNameFlags(pArgs->GetElement(1)) | nounGeneric;
george moromisato 28 May 2017:
Yeah, I think that's right.
I also need to look at a couple of other places where we probably need the nounGeneric flag:
C:\Users\GPM\Documents\Elysium\Mammoth\TSE\CGameRecord.cpp(348): m_sShipClass = pClass->GetNounPhrase();
C:\Users\GPM\Documents\Elysium\Mammoth\TSE\CPlayerGameStats.cpp(382): CString sName = pClass->GetNounPhrase(0);
C:\Users\GPM\Documents\Elysium\Mammoth\TSUI\CListSaveFilesTask.cpp(113): CString sShipClass = (pClass ? pClass->GetNounPhrase() : NULL_STR);
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\EncounterSim.cpp(81): printf("\t%s", pAttackerClass->GetNounPhrase().GetASCIIZPointer());
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipImageChart.cpp(209): pClass->GetNounPhrase().GetASCIIZPointer(),
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipImageChart.cpp(216): pClass->GetNounPhrase().GetASCIIZPointer(),
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipImageChart.cpp(221): wsprintf(szBuffer, "%s%x", pClass->GetNounPhrase().GetASCIIZPointer(), pClass);
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipImageChart.cpp(293): pClass->GetNounPhrase(0));
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipImageChart.cpp(543): int cxName = Desc.pHeader->MeasureText(pClass->GetNounPhrase(0), &cyName);
C:\Users\GPM\Documents\Elysium\Transcendence\TransData\ShipTable.cpp(106): pClass->GetNounPhrase(0).GetASCIIZPointer(),
Thank you!
george moromisato 31 May 2017:
Fixed and merged into master. Thank you!
Resolve
Archive
Reopen
Create
Edit
Save
Attach File
Cancel Edit