//Return the event name followed by each parameter paired with its type. public string GetDefaultSyntax(Event eventData) { string script = GetEventInfo(eventData.eventEvent)._name + (eventData.lParameters > 0 ? ": " : ""); for (int i = 0; i < eventData.lParameters; i++) { script += eventData.parameters[i]._type + "-"; switch ((int)eventData.parameters[i]._type) { case 0: script += GetValue(eventData.eventEvent, i, eventData.parameters[i]._data); break; case 1: script += MParams.UnScalar(eventData.parameters[i]._data).ToString(); break; case 2: script += ResolvePointer(eventData.pParameters + i * 8 + 4, eventData.parameters[i]); break; case 3: script += (eventData.parameters[i]._data != 0 ? "true" : "false"); break; case 4: script += MParams.Hex(eventData.parameters[i]._data); break; case 5: script += ResolveVariable(eventData.parameters[i]._data); break; case 6: script += GetRequirement(eventData.parameters[i]._data); break; } if (i != eventData.lParameters) { script += ", "; } } return(script); }
//Return a string of the parameter in the format corresponding to it's type. public string[] ResolveParamTypes(Event eventData) { string[] p = new string[eventData.parameters.Length]; for (int i = 0; i < p.Length; i++) { switch ((int)eventData.parameters[i]._type) { case 0: p[i] = GetValue(eventData.eventEvent, i, eventData.parameters[i]._data); break; case 1: p[i] = MParams.UnScalar(eventData.parameters[i]._data).ToString(); break; case 2: p[i] = ResolvePointer(eventData.pParameters + i * 8 + 4, eventData.parameters[i]); break; case 3: p[i] = (eventData.parameters[i]._data != 0 ? "true" : "false"); break; case 4: p[i] = MParams.Hex(eventData.parameters[i]._data); break; case 5: p[i] = ResolveVariable(eventData.parameters[i]._data); break; case 6: p[i] = GetRequirement(eventData.parameters[i]._data); break; } } return(p); }