Data.getObjectsDt2 C# (CSharp) Method

getObjectsDt2() public method

public getObjectsDt2 ( int levelNo ) : List
levelNo int
return List
    public List<ObjectList> getObjectsDt2(int levelNo)
    {
        LevelRec lr = ConfigScript.getLevelRec(levelNo);
        int objCount = lr.objCount, addr = lr.objectsBeginAddr;
        var objects = new List<ObjectRec>();

        int objectsReaded = 0;
        int currentHeight = 0;
        while (objectsReaded < objCount)
        {
        byte command = Globals.romdata[addr];
        if (command == 0xFF)
        {
            currentHeight = Globals.romdata[addr + 1];
            if (currentHeight == 0xFF)
                break;
            addr += 2;
        }
        else
        {
            byte v = Globals.romdata[addr + 2];
            byte xbyte = Globals.romdata[addr + 0];
            byte ybyte = Globals.romdata[addr + 1];
            byte sx = (byte)(xbyte >> 5);
            byte x = (byte)((xbyte & 0x1F) << 3);
            byte sy = (byte)currentHeight;
            byte y = ybyte;
            var obj = new ObjectRec(v, sx, sy, x, y);
            objects.Add(obj);
            objectsReaded++;
            addr += 3;
        }
        }
        return new List<ObjectList> { new ObjectList { objects = objects, name = "Objects" } };
    }
Data