You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

77 lines
2.0 KiB
C#

using System;
using System.Collections.Generic;
using DotNetCTFDumper.MMFParser.EXE;
using DotNetCTFDumper.Utils;
namespace DotNetCTFDumper.MMFParser.MFA.Loaders.mfachunks
{
public class Movements : DataLoader
{
public List<Movement> Items = new List<Movement>();
public override void Write(ByteWriter Writer)
{
throw new NotImplementedException();
}
public override void Print()
{
throw new NotImplementedException();
}
public override void Read()
{
var count = Reader.ReadInt32();
for (int i = 0; i < count; i++)
{
var item = new Movement(Reader);
item.Read();
Items.Add(item);
}
}
public Movements(ByteReader reader) : base(reader) { }
}
public class Movement : DataLoader
{
public string Name="ERROR";
public override void Write(ByteWriter Writer)
{
throw new NotImplementedException();
}
public override void Print()
{
throw new NotImplementedException();
}
public override void Read()
{
Name = Helper.AutoReadUnicode(Reader);
var extension = Helper.AutoReadUnicode(Reader);
var identifier = Reader.ReadInt32();
var dataSize = Reader.ReadInt32();
if(extension.Length>0)
{
var newReader = new ByteReader(Reader.ReadBytes(dataSize));
}
else
{
var player = Reader.ReadInt16();
var type = Reader.ReadInt16();
var movingAtStart = Reader.ReadByte();
Reader.Skip(3);
var directionAtStart = Reader.ReadInt32();
//implement types, but i am tired, fuck this shit
}
}
public Movement(ByteReader reader) : base(reader) { }
}
}