-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMazeBuilder.cs
97 lines (82 loc) · 2.42 KB
/
MazeBuilder.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
using System;
using System.Runtime.InteropServices;
using Colorful;
using Spectre.Console.Rendering;
using Resourses.Tools;
namespace Resourses.Logic;
public partial class Maze
{
//[i] - Second stage of the building
// process. Here the room cels are
// added and the MapObjects
//-------------------------------------
public enum Type
{
//this could be eliminated...
//...read all the coments
Tutorial,
FindPlayer,
TeamWork,
Standard
}
private void Builder (Type type)
{
switch (type)
{
case Type.Tutorial :
BuildTutorial();
break;
case Type.FindPlayer :
BuildFindPlayer();
break;
case Type.TeamWork :
BuildTeamWork();
break;
case Type.Standard :
Builder();
break;
}
}
private void BuildTutorial()
{
//[i]-A litle maze with a how to play
// info and instrucions
}
private void BuildFindPlayer()
{
//[i]-A maze where due to the players position
// obstacules will be availabe to overcome
// from bouth sides
//
// +-[Important]-----------------------------------[x]-+
// | [!]-Notice that maybe this could be generaliced |
// | without the need of specific builders, by |
// | knowing if they start near or separated. |
// | And also by finding where the lee numbers are |
// | ecual, so from that coincidences team work |
// | obstacules may be placed. |
// +---------------------------------------------------+
//...
//if player 1 -> [room] <- p 2
//--...
//remembeeeeeeeerrrrrr
//the exit have a hard team work puzle
}
private void BuildTeamWork()
{
}
private void Builder()
{
//standard maze builder
for(int i = 0; i < mazeRooms.GetLength(0); i++)
{
for(int j = 0; j < mazeRooms.GetLength(1); j++)
{
//build the rooms
//System.Console.WriteLine(" ");
//System.Console.WriteLine($"Building room {i},{j}");
mazeRooms[i,j].Build();
}
}
}
}