public bool setObjectsCad(int levelNo, List<ObjectList> objLists)
{
LevelRec lr = ConfigScript.getLevelRec(levelNo);
int levelDhack = (levelNo == 4) ? 1 : 0;
int addrBase = lr.objectsBeginAddr;
int objCount = lr.objCount;
var objects = objLists[0].objects;
try
{
for (int i = 0; i < objects.Count; i++)
{
var obj = objects[i];
Globals.romdata[addrBase + i] = (byte)obj.type;
Globals.romdata[addrBase - 4 * objCount + levelDhack + i] = (byte)obj.sx;
Globals.romdata[addrBase - 3 * objCount + levelDhack + i] = (byte)obj.x;
Globals.romdata[addrBase - 2 * objCount + levelDhack + i] = (byte)obj.sy;
Globals.romdata[addrBase - objCount + i] = (byte)obj.y;
}
for (int i = objects.Count; i < objCount; i++)
{
Globals.romdata[addrBase + i] = 0xFF;
Globals.romdata[addrBase - 4 * objCount + levelDhack + i] = 0xFF;
Globals.romdata[addrBase - 3 * objCount + levelDhack + i] = 0xFF;
Globals.romdata[addrBase - 2 * objCount + levelDhack + i] = 0xFF;
Globals.romdata[addrBase - objCount + levelDhack + i] = 0xFF;
}
return true;
}
catch (System.IndexOutOfRangeException ex)
{
return false;
}
}