public void RemoveAllAnnotation() { this.currentArrangemtnInfo = null; foreach (var appearObject in currentAnnotation) { Object.DisAppear(appearObject); } this.currentAnnotation.Clear(); this.isSelectByFrame = false; }
static public ArrangementInfo Generate(Vector3 position, MonoInfo mono) { var arrangementX = Mathf.FloorToInt(position.x / ArrangementAnnotater.ArrangementWidth + 0.5f); var arrangementZ = Mathf.FloorToInt(position.z / ArrangementAnnotater.ArrangementHeight + 0.5f); var info = new ArrangementInfo() { x = arrangementX, z = arrangementZ, mono = mono }; return(info); }
public void Annotate(ArrangementInfo arrangementInfo) { this.currentArrangemtnInfo = arrangementInfo; currentAnnotation.Clear(); currentArrangementPositions.Clear(); for (int x = 0; x < arrangementInfo.mono.Width; x++) { for (int z = 0; z < arrangementInfo.mono.Height; z++) { var appear = Object.AppearToFloor(annotationPrefab, objectParent, new Vector3( (arrangementInfo.x + x) * ArrangementWidth, 0, (arrangementInfo.z + z) * ArrangementHeight)); currentAnnotation.Add(appear); currentArrangementPositions.Add(new ArrangementPosition() { x = arrangementInfo.x + x, z = arrangementInfo.z + z }); } } }
public YesPlayerArrangementTarget(List <GameObject> gameObjectList, List <ArrangementPosition> arrangementPositions, ArrangementInfo arrangementInfo) { // 中心座標 this.centerPosition = new Vector3(); foreach (var gameObject in gameObjectList) { this.centerPosition += gameObject.transform.position; } this.centerPosition = centerPosition / gameObjectList.Count(); // 半径 this.range = (arrangementInfo.mono.Height * ArrangementAnnotater.ArrangementHeight + arrangementInfo.mono.Width * ArrangementAnnotater.ArrangementWidth) / 2 / 2; // 配列位置 this.arrangementPositions = new List <ArrangementPosition> (arrangementPositions); // はじめは予約 this.arrangementTargetState = ArrangementTargetState.Reserve; }