C# is nice but it is still quite a developing language. Perhaps when Vista comes out with the .net SDK 3.0 we will see it mature more.
I will probably do the same thing I did with Alanah but keep it on 1 function. That way im not opening up new buffers.
ADDITION:
Heres a question, flags are stored as bits.
Would you prefer all the flags sent over as a int\string or having to request them from the function indivdually? I'm guessing sending them all over as a string? That would allow you to take a substring and read each flag.
There will be a seperate function for retrieving flags except for triggers\mission briefings.
For Triggers I am going to probably do something like this,
TriggerNumber is obviously what trigger number it is
Type would be 0 for condition and 1 for action
Entry would be what condition\action.
LPCSTR ReadTrig(int Triggernumber, int Type, int entry)
{
}
how it would return is this:
First 2 numbers in the string = condition\action number
Example: 00, 01, 02, 10, 11, etc..
For conditions, the next bytes. Based on what condition you should be able to figure out what the next bytes are. They are also in the same order as they are found in the CHK:
If there is a location the next 3 numbers
Example: 001, 002, 003, 004 etc...
If there is a group the next 2 numbers
Example: 01, 02, 03 etc..
If there is a number I can't anticipate for I will put "" around them so therefor when you find a " you keep reading until you find another " and the number between them is the qualified number.
I think you get the point, anyway I'll document it
extensively. If you want to know what numbers come next just take a look at the documentation:
http://www.campaigncreations.org/starcraft...chkformat.shtmlThe next section I have to do is the MRGN & Trig section and once I get that done I will work back on Surfus. Then I will have every section to make a complete trigger editor.