public override IPositionable CreateUnit(XElement wallData) { if (wallData == null) { throw new ArgumentNullException(nameof(wallData)); } String orientationData = wallData.Element("orientation")?.Value; Enum.TryParse <EWallOrientation>(orientationData, true, out EWallOrientation orientation); return(CWall.Create(orientation)); }
public void WallRegen() { Vector3 pos = new Vector3(_trLastWall.position.x + 1.6f, _trLastWall.position.y, _trLastWall.position.z); CWall obj = Instantiate(_prefWall, pos, Quaternion.identity).GetComponent <CWall>(); obj.transform.SetParent(_trWallParent); _trLastWall = obj.transform; int randidx = Random.Range(0, _imageWalls.Length); obj.DoInit(_imageWalls[randidx]); _bIsDestroyedWall = false; }