CnC_Remastered_Collection

Command and Conquer: Red Alert
Log | Files | Refs | README | LICENSE

IGamePlugin.cs (1559B)


      1 //
      2 // Copyright 2020 Electronic Arts Inc.
      3 //
      4 // The Command & Conquer Map Editor and corresponding source code is free 
      5 // software: you can redistribute it and/or modify it under the terms of 
      6 // the GNU General Public License as published by the Free Software Foundation, 
      7 // either version 3 of the License, or (at your option) any later version.
      8 
      9 // The Command & Conquer Map Editor and corresponding source code is distributed 
     10 // in the hope that it will be useful, but with permitted additional restrictions 
     11 // under Section 7 of the GPL. See the GNU General Public License in LICENSE.TXT 
     12 // distributed with this program. You should have received a copy of the 
     13 // GNU General Public License along with permitted additional restrictions 
     14 // with this program. If not, see https://github.com/electronicarts/CnC_Remastered_Collection
     15 using MobiusEditor.Model;
     16 using MobiusEditor.Utility;
     17 using System;
     18 using System.Collections.Generic;
     19 using System.Drawing;
     20 using System.IO;
     21 
     22 namespace MobiusEditor.Interface
     23 {
     24     public enum FileType
     25     {
     26         None,
     27         INI,
     28         BIN,
     29         MEG,
     30         PGM
     31     }
     32 
     33     public enum GameType
     34     {
     35         None,
     36         TiberianDawn,
     37         RedAlert
     38     }
     39 
     40     public interface IGamePlugin : IDisposable
     41     {
     42         GameType GameType { get; }
     43 
     44         Map Map { get; }
     45 
     46         Image MapImage { get; }
     47 
     48         bool Dirty { get; set; }
     49 
     50         void New(string theater);
     51 
     52         IEnumerable<string> Load(string path, FileType fileType);
     53 
     54         bool Save(string path, FileType fileType);
     55     }
     56 }