1
1
mirror of https://github.com/OpenDiablo2/OpenDiablo2 synced 2024-10-16 07:03:52 -04:00
OpenDiablo2/OpenDiablo2.Common/Interfaces/IGameState.cs
2018-12-08 13:31:50 -05:00

32 lines
1.0 KiB
C#

using System;
using System.Collections.Generic;
using System.Drawing;
using OpenDiablo2.Common.Enums;
using OpenDiablo2.Common.Models;
namespace OpenDiablo2.Common.Interfaces
{
public interface IGameState : IDisposable
{
object ThreadLocker { get; }
int Act { get; }
int Seed { get; }
string MapName { get; }
Palette CurrentPalette { get; }
IEnumerable<PlayerInfo> PlayerInfos { get; }
Item SelectedItem { get; }
void SelectItem(Item item);
int CameraOffset { get; set; }
void Initialize(string characterName, eHero hero, eSessionType sessionType);
void Update(long ms);
IEnumerable<MapCellInfo> GetMapCellInfo(int cellX, int cellY, eRenderCellType renderCellType);
void UpdateMapCellInfo(int cellX, int cellY, eRenderCellType renderCellType, IEnumerable<MapCellInfo> mapCellInfo);
MapInfo LoadMap(eLevelId levelId, Point origin);
MapInfo LoadSubMap(int levelDefId, Point origin);
}
}