示例#1
0
        public void SaveProperties(LevelscriptCommand Command)
        {
            // Acts
            var acts = new[] { false, false, false, false, false, false, false, false };

            acts[7] = Act1;
            acts[6] = Act2;
            acts[5] = Act3;
            acts[4] = Act4;
            acts[3] = Act5;
            acts[2] = Act6;
            clNormal3DObject.SetActs(Command, Bits.ArrayToByte(acts));

            // Position
            clNormal3DObject.SetPosition(Command, Position);

            // Rotation
            clNormal3DObject.SetRotation(Command, Rotation);

            // Model-ID
            clNormal3DObject.SetModelID(Command, ModelID);

            // Behavior-ID
            clNormal3DObject.SetSegBehaviorAddr(Command, BehaviorID);

            // B. Params
            var bParams = new ObjBParams();

            bParams.BParam1 = BParam1;
            bParams.BParam2 = BParam2;
            bParams.BParam3 = BParam3;
            bParams.BParam4 = BParam4;
            clNormal3DObject.SetParams(Command, bParams);
        }
 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 ObjBParams GetParams(LevelscriptCommand Command)
            {
                Command.Position = 16;
                var Params = new ObjBParams();

                Params.BParam1   = Command.ReadByte();
                Params.BParam2   = Command.ReadByte();
                Params.BParam3   = Command.ReadByte();
                Params.BParam4   = Command.ReadByte();
                Command.Position = 0;
                return(Params);
            }