public bool GetUp(out CCTotem.Route route) { if (!this.Up.Exists) { route = new CCTotem.Route(CCTotem.Direction.None, CCTotem.Direction.None, this.At); return(false); } route = *(this.Up.TotemicFigure); return(true); }
public bool GetDown(out CCTotem.Route route) { if (!this.Down.Exists) { route = new CCTotem.Route(this.At, CCTotem.Direction.None, CCTotem.Direction.None); return(false); } route = *(this.Down.TotemicFigure); return(true); }
private TotemicFigure(CCTotem.Direction Down) : this(Down.TotemicFigure.TotemPole, Down.TotemicFigure.BottomUpIndex + 1) { CCTotem.Direction direction; float bottomUpIndex = (float)this.BottomUpIndex / (float)this.TotemPole.Configuration.numSlidingTotemicFigures; float single = (this.TotemPole.Configuration.numSlidingTotemicFigures != 1 ? (float)(this.BottomUpIndex - 1) / (float)(this.TotemPole.Configuration.numSlidingTotemicFigures - 1) : bottomUpIndex); float single1 = Mathf.Lerp(this.TotemPole.Configuration.poleBottomBufferAmount, this.TotemPole.Configuration.poleContractedHeight - this.TotemPole.Configuration.figureSkinnedHeight, single); float single2 = Mathf.Lerp(this.TotemPole.Configuration.poleBottomBufferAmount, this.TotemPole.Configuration.poleExpandedHeight - this.TotemPole.Configuration.figureSkinnedHeight, bottomUpIndex); this.TotemContractionBottom = CCTotem.Contraction.Define(single1, single2); this.TotemContractionTop = CCTotem.Contraction.Define(single1 + this.TotemPole.Configuration.figureSkinnedHeight, single2 + this.TotemPole.Configuration.figureSkinnedHeight); CCTotem.Direction direction1 = new CCTotem.Direction(this); direction = (this.BottomUpIndex >= this.TotemPole.Configuration.numRequiredTotemicFigures - 1 ? CCTotem.Direction.None : new CCTotem.Direction(new CCTotem.TotemicFigure(direction1))); this.TotemicRoute = new CCTotem.Route(Down, direction1, direction); }
private TotemicFigure(CCTotem.TotemPole TotemPole) : this(TotemPole, 0) { CCTotem.Direction direction = new CCTotem.Direction(this); this.TotemicRoute = new CCTotem.Route(CCTotem.Direction.None, direction, new CCTotem.Direction(new CCTotem.TotemicFigure(direction))); }