Na začátku hry se mapa na serveru synchronizuje s mapou u clienta. Rozšířen spritesheet monitoru o remote dveře. Přidána GlobalClassLib pro kód sdílený mezi clientem a serverem. Základ pro implementaci ovládání remote dveří.
This commit is contained in:
parent
8801a7c919
commit
7e6b3d724b
25 changed files with 374 additions and 67 deletions
|
|
@ -1,18 +1,45 @@
|
|||
using GlobalClassLib;
|
||||
|
||||
namespace FNAF_Server.Map;
|
||||
|
||||
public struct TileConnector(MapTile tile1, MapTile tile2, TileConnector.ConnectorType type, int value) {
|
||||
public (MapTile, MapTile) Tiles { get; set; } = (tile1, tile2);
|
||||
public ConnectorType Type { get; set; } = type;
|
||||
public bool Blocked { get; set; } = false;
|
||||
public int Value{ get; set; } = value;
|
||||
public class TileConnector : GlobalTileConnector<MapTile,TileConnector> {
|
||||
public int Value{ get; set; }
|
||||
public bool Blocked { get; set; }
|
||||
public TileConnector(MapTile tile1, MapTile tile2, ConnectorType type, int value) : base(tile1, tile2, type) {
|
||||
Value = value;
|
||||
}
|
||||
|
||||
public MapTile OtherTile(MapTile tile) => Tiles.Item1 == tile ? Tiles.Item2 : Tiles.Item1;
|
||||
|
||||
public override string ToString() => $"Con ({Tiles.Item1.PositionAsString} -> {Tiles.Item2.PositionAsString})";
|
||||
public enum ConnectorType {
|
||||
HALL,
|
||||
DOOR,
|
||||
VENT
|
||||
public TileConnector(MapTile tile2, ConnectorType type, int value) : base(tile2, type) {
|
||||
Value = value;
|
||||
}
|
||||
|
||||
|
||||
|
||||
// private readonly MapTile _tile1;
|
||||
// private readonly MapTile _tile2;
|
||||
//
|
||||
// public TileConnector(MapTile tile1, MapTile tile2, TileConnector.ConnectorType type, int value) {
|
||||
// _tile1 = tile1;
|
||||
// _tile2 = tile2;
|
||||
// Type = type;
|
||||
// Value = value;
|
||||
// }
|
||||
//
|
||||
// public (MapTile, MapTile) Tiles => (tile1: _tile1, tile2: _tile2);
|
||||
//
|
||||
// public ConnectorType Type { get; set; }
|
||||
// public bool Blocked { get; set; } = false;
|
||||
// public int Value{ get; set; }
|
||||
//
|
||||
// public MapTile OtherTile(MapTile tile) => Tiles.Item1 == tile ? Tiles.Item2 : Tiles.Item1;
|
||||
//
|
||||
// public override string ToString() => $"Con ({Tiles.Item1.PositionAsString} -> {Tiles.Item2.PositionAsString})";
|
||||
// public enum ConnectorType {
|
||||
// HALL,
|
||||
// DOOR_REMOTE,
|
||||
// DOOR_OFFICE,
|
||||
// VENT
|
||||
// }
|
||||
|
||||
public override TileConnector Clone() => new(Tiles.tile1, Tiles.tile2, Type, Value);
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue