public static void SetLocation(LevelscriptCommand cmd, Vector3 loc)
 {
     cmd.Position = 4;
     cmd.Write(Conversions.ToShort(loc.X));
     cmd.Write(Conversions.ToShort(loc.Y));
     cmd.Write(Conversions.ToShort(loc.Z));
     cmd.Position = 0;
 }
 public static void SetPosition(LevelscriptCommand Command, Vector3 Pos)
 {
     Command.Position = 4;
     Command.Write(Conversions.ToShort(Pos.X));
     Command.Write(Conversions.ToShort(Pos.Y));
     Command.Write(Conversions.ToShort(Pos.Z));
     Command.Position = 0;
 }
 public static void SetRotation(LevelscriptCommand Command, Vector3 Rot)
 {
     Command.Position = 10;
     Command.Write(Conversions.ToShort(Rot.X));
     Command.Write(Conversions.ToShort(Rot.Y));
     Command.Write(Conversions.ToShort(Rot.Z));
     Command.Position = 0;
 }
 public static void SetPosition(LevelscriptCommand Command, Vector3 value)
 {
     Command.Position = 6;
     Command.Write(Conversions.ToShort(value.X));
     Command.Write(Conversions.ToShort(value.Y));
     Command.Write(Conversions.ToShort(value.Z));
     Command.Position = 0;
 }
 public static void SetParams(LevelscriptCommand Command, ObjBParams Params)
 {
     Command.Position = 16;
     Command.Write(Params.BParam1);
     Command.Write(Params.BParam2);
     Command.Write(Params.BParam3);
     Command.Write(Params.BParam4);
     Command.Position = 0;
 }
            public static void SetCreateCheckpoint(LevelscriptCommand cmd, bool value)
            {
                cmd.Position = 6;
                byte b = cmd.ReadByte();

                b             = Bits.SetInByte(b, 0, value);
                cmd.Position -= 1;
                cmd.Write(b);
            }
 public static void SetRotation(LevelscriptCommand Command, short value)
 {
     Command.Position = 4;
     if (value < 0)
     {
         value *= -1;
     }
     value = Conversions.ToShort(value % 360);
     Command.Write(value);
     Command.Position = 0;
 }
 public static void SetRomEnd(LevelscriptCommand Command, int Address)
 {
     Command.Position = 8;
     Command.Write(Conversions.ToUInteger(Address));
     Command.Position = 0;
 }
 public static void SetGroupID(LevelscriptCommand Command, short id)
 {
     Command.Position = 14;
     Command.Write(id);
     Command.Position = 0;
 }
 public static void SetVertexPointer(LevelscriptCommand cmd, uint ptr)
 {
     cmd.Position = 0x10;
     cmd.Write(Conversions.ToInteger(ptr));
     cmd.Position = 0;
 }
 public static void SetCountOfFaces(LevelscriptCommand cmd, ushort count)
 {
     cmd.Position = 4;
     cmd.Write(count);
     cmd.Position = 0;
 }
 public static void SetModelID(LevelscriptCommand Command, byte ModelID)
 {
     Command.Position = 3;
     Command.Write(ModelID);
     Command.Position = 0;
 }
 public static void SetAreaCollision(LevelscriptCommand Command, uint AreaCollision)
 {
     Command.Position = 4;
     Command.Write(AreaCollision);
     Command.Position = 0;
 }
 public static void SetDestinationWarpID(LevelscriptCommand Command, byte ID)
 {
     Command.Position = 5;
     Command.Write(ID);
     Command.Position = 0;
 }
 public static void SetSegBehaviorAddr(LevelscriptCommand Command, uint SegBehaviorAddr)
 {
     Command.Position = 20;
     Command.Write(SegBehaviorAddr);
     Command.Position = 0;
 }
 public static void SetSegmentedAddressToJump(LevelscriptCommand Command, int Address)
 {
     Command.Position = 12;
     Command.Write(Conversions.ToUInteger(Address));
     Command.Position = 0;
 }
 public static void SetTerrainType(LevelscriptCommand Command, byte Type)
 {
     Command.Position = 3;
     Command.Write(Type);
     Command.Position = 0;
 }
 public static void SetMusicID(LevelscriptCommand Command, byte MusicID)
 {
     Command.Position = 5;
     Command.Write(MusicID);
     Command.Position = 0;
 }
 public static void SetDrawingLayer(LevelscriptCommand Command, byte layer)
 {
     Command.Position = 3;
     Command.Write(layer << 4);
     Command.Position = 0;
 }
 public static void SetParam1(LevelscriptCommand Command, byte value)
 {
     Command.Position = 2;
     Command.Write(value);
     Command.Position = 0;
 }
 public static void SetSegAddress(LevelscriptCommand Command, int SegAddress)
 {
     Command.Position = 4;
     Command.Write(SegAddress);
     Command.Position = 0;
 }
 public static void SetSegmentedID(LevelscriptCommand Command, byte ID)
 {
     Command.Position = 3;
     Command.Write(ID);
     Command.Position = 0;
 }
 public static void SetAreaID(LevelscriptCommand Command, byte AreaID)
 {
     Command.Position = 2;
     Command.Write(AreaID);
     Command.Position = 0;
 }
 public static void SetRomStart(LevelscriptCommand Command, int Address)
 {
     Command.Position = 4;
     Command.Write(Address);
     Command.Position = 0;
 }
 public static void SetScrollSpeed(LevelscriptCommand cmd, short count)
 {
     cmd.Position = 8;
     cmd.Write(Conversions.ToShort(Math.Min((int)count, 0xFFF)));
     cmd.Position = 0;
 }
 public static void SetSegJumpAddr(LevelscriptCommand Command, int SegJumpAddr)
 {
     Command.Position = 4;
     Command.Write(Conversions.ToUInteger(SegJumpAddr));
     Command.Position = 0;
 }
 public static void SetSegGeolayoutAddr(LevelscriptCommand Command, uint SegGeolayoutAddr)
 {
     Command.Position = 4;
     Command.Write(SegGeolayoutAddr);
     Command.Position = 0;
 }
 public static void SetActs(LevelscriptCommand Command, byte Acts)
 {
     Command.Position = 2;
     Command.Write(Acts);
     Command.Position = 0;
 }