private static void AddNewInst(string map, string room, InstDef def) { if (def.id == 0) { def.id = unusedIDs.Dequeue(); } if (def.inst == "") { def.inst = $"inst{GetNewInst(map, room)}"; } def.map = map; def.room = room; InstDef.All.Add(def); Randomizer.Maps[map][room][def.inst] = def.ToJSONObject(); Debug.WriteLine($"Adding inst to {map} - {room}:"); Debug.WriteLine(def.ToString("--")); }
private static void AddTile(string map, string room, string spr, int i, int j) { InstDef newDef = new InstDef(); newDef.obj = "obj_tile"; newDef.spr = spr; newDef.layer = "player"; newDef.i = i; newDef.j = j; newDef.image_xscale = 1; newDef.image_yscale = 1; newDef.image_angle = 0; newDef.direction = 0; newDef.randomizer_new = true; AddNewInst(map, room, newDef); }
private static void InitAll() { pAll = new List <InstDef>(); foreach (string mkey in Randomizer.Maps.Keys) { JSONNode map_data = Randomizer.Maps[mkey]; foreach (string rkey in map_data.Keys) { { string[] skipped_keys = new[] { "default_room", //map3 weird stuff "diffY", "posY", "touch", "guistartposY", "rawdiffX", "viewstartposY", "guiposY", "rawposY", "guidiffX", "rawstartposX", "guistartposX", "posX", "diffX", "rawdiffY", "viewstartposX", "guidiffY", "gesture", "rawposX", "guiposX", "rawstartposY", }; if (skipped_keys.Contains(rkey)) { continue; } } JSONNode room_data = map_data[rkey]; foreach (string ikey in room_data.Keys) { { string[] skipped_keys = new[] { "downopen", "upopen", "rightopen", "leftopen", "doors", "quest", //Elevator triggers? "maptarget", "roomtarget_x", "roomtarget_y", }; if (skipped_keys.Contains(ikey)) { continue; } } InstDef item = new InstDef(mkey, rkey, ikey, room_data[ikey]); pAll.Add(item); } } } }