public override void CreateBlock(GridNode node, Vector3 rotation) { base.CreateBlock(node, rotation); var dir = LastCreatedBlock.transform.GetDirection(); node.AddNodeUseCase(BlockType.Wall, dir, LastCreatedBlock); switch (dir) { case Direction.Backward: node.staticNeighbour[Neighbour.Backward].useCase[BlockType.Wall][Direction.Forward] = LastCreatedBlock; break; case Direction.Forward: node.staticNeighbour[Neighbour.Forward].useCase[BlockType.Wall][Direction.Backward] = LastCreatedBlock; break; case Direction.Left: node.staticNeighbour[Neighbour.Left].useCase[BlockType.Wall][Direction.Right] = LastCreatedBlock; break; case Direction.Right: node.staticNeighbour[Neighbour.Right].useCase[BlockType.Wall][Direction.Left] = LastCreatedBlock; break; } }
public override void CreateBlock(GridNode node, Vector3 rotation) { base.CreateBlock(node, rotation); var dir = LastCreatedBlock.transform.GetDirection(); node.AddNodeUseCase(BlockType.Ramp, dir, LastCreatedBlock); }
public override void CreateBlock(GridNode node, Vector3 rotation) { base.CreateBlock(node, rotation); node.AddNodeUseCase(BlockType.Floor, Direction.Down, LastCreatedBlock); }