public override void Draw() { Random.InitState((int)DateTime.Now.Ticks); var placeholderList = new List <Placeholder>() { Placeholder.EAST, Placeholder.NORTH, Placeholder.SOUTH, Placeholder.WEST }; Placeholder actualPlaceholder; int rand; int positionIndex = 0; EnvironmentPosition actualPos; EnvironmentVirus actualVirus; while (placeholderList.Count > 0) { rand = Random.Range(0, placeholderList.Count - 1); actualPlaceholder = placeholderList[rand]; placeholderList.RemoveAt(rand); actualVirus = _viruses[positionIndex]; actualPos = new EnvironmentPosition(actualPlaceholder, _positionHelper.GetPosition(actualPlaceholder), _rotationHelper.GetRotation(actualPlaceholder)); actualVirus.InitPosition(actualPos); //Debug.Log(actualVirus.type + " at " + actualPlaceholder + " place"); actualVirus.Instance = Instantiate(actualVirus.Prefab, actualPos.Position, actualPos.Rotation); _virusesInstances.Add(actualVirus.Instance); positionIndex++; } }
public void SwapVirusPlace(EnvironmentVirus.Type type) { EnvironmentVirus virus = GetVirus(type); EnvironmentVirus installer = GetVirus(EnvironmentVirus.Type.INSTALLER); EnvironmentPosition savedPos = virus.Pos; virus.Move(installer.Pos); installer.Move(savedPos); }
public void Move(EnvironmentPosition pos) { Pos = pos; Instance.GetComponent <Transform>().SetPositionAndRotation(pos.Position, pos.Rotation); }
public void InitPosition(EnvironmentPosition pos) { Pos = pos; }