public string BuildInsert(bool ignore)
{
var ignoreStr = ignore ? "IGNORE " : string.Empty;
var str = "INSERT " + ignoreStr + "INTO " + Table + " (";
for (var i = 0; i < InsertValues.Count; i++)
{
var val = InsertValues[i];
var comma = i == InsertValues.Count - 1 ? string.Empty : ", ";
str += val.Key + comma;
}
str += ") VALUES (";
for (var i = 0; i < InsertValues.Count; i++)
{
var val = InsertValues[i];
var comma = i == InsertValues.Count - 1 ? string.Empty : ", ";
string value;
if (val.Value is float)
value = ((float)val.Value).ToString("R", CultureInfo.InvariantCulture);
else if (val.Value is string)
value = "'" + EscapeString((string)val.Value) + "'";
else
value = val.Value.ToString();
str += value + comma;
}
str += ");";
return str;
}
public string GetCommand(int questId, int idx, int objIndex, int mapId, int wmaId, int floorId, int unk3, int unk4) { var builder = new CommandBuilder("quest_poi"); builder.AddColumnValue("questid", questId); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("id", idx); } builder.AddColumnValue("objIndex", objIndex); builder.AddColumnValue("mapId", mapId); if (SQLOutput.Format == SqlFormat.Trinity) { builder.AddColumnValue("WorldMapAreaId", wmaId); builder.AddColumnValue("FloorId", floorId); } else { builder.AddColumnValue("unk1", wmaId); builder.AddColumnValue("unk2", floorId); } builder.AddColumnValue("unk3", unk3); builder.AddColumnValue("unk4", unk4); return(builder.BuildInsert(true)); }