// Update is called once per frame void Update() { if (!MenuController.instance.isMenuActive) { return; } if (MenuController.instance.currentMenuState != MenuController.MenuState.GAME_OVER) { maximumStars = 0; return; } if (maximumStars == 0) { maximumStars = GameObject.FindObjectsOfType <SunNode> ().Length; } PlayerMetrics metrics = GameController.instance.activePlayer.GetComponent <PlayerMetrics> (); if (metrics != null) { targetProgress.localScale = new Vector3((float)metrics.completedPlanets / (float)maximumStars, 1f); targetProgressText.text = ((int)(((float)metrics.completedPlanets / (float)maximumStars) * 100)) + "%"; } }
public void NodeCompleted() { PlayerMetrics playerMetrics = GameObject.FindObjectOfType <PlayerMetrics>(); playerMetrics.boostLeft += .4f; playerMetrics.completedPlanets++; }
// Use this for initialization void Start() { physics = GetComponent <PlayerPhysics>(); interactor = GetComponent <PlayerInteractor>(); metrics = GetComponent <PlayerMetrics>(); system = GetComponentInChildren <ParticleSystem>(); trail = GetComponentInChildren <TrailRenderer>(); createdTime = Time.time; }
public Dashboard(Player p) { InitializeComponent(); player = p; _viewModel = p.Metrics; _viewModel.isPaused = false; btnContinue.IsEnabled = false; this.DataContext = _viewModel; // change source depending on game state, if WIN, put a gif that looks like winning, etc myGif.Source = new Uri(AppDomain.CurrentDomain.BaseDirectory + "Images/flash.gif", UriKind.Absolute); }
// Update is called once per frame void Update() { float score = 0; if (playerMetrics == null) { playerMetrics = PlayerMetrics.instance; } if (playerMetrics != null) { score = playerMetrics.IsDoingGreat(); gameGoodTrack.volume = Mathf.Max(0, score); gameBadTrack.volume = Mathf.Min(0, score) * -1.0f; } }
private IEnumerable <List <Text> > PopulateMetrics() { var metricConfigs = _simulationSummary.PlayersData.Count > 1 ? _multiplayerMetrics : _singleplayerMetrics; var sumByPlayerByMetrics = MetricProcessor.GetSumByPlayerByMetric(_simulationSummary.Events); var playerNameBestFitGroup = new List <Text>(); var metricTitleBestFitGroup = new List <Text>(); var metricValueBestFitGroup = new List <Text>(); var column = CreateColumn(); playerNameBestFitGroup.ForEach(playerText => playerText.gameObject.AddComponent <TextCutoff>()); AddPlayers(column.GetComponentInChildren <LayoutGroup>().gameObject, _simulationSummary.PlayersData, playerNameBestFitGroup); // Set players box to be wider than the rest var layoutElement = column.GetComponent <LayoutElement>(); layoutElement.preferredWidth = layoutElement.preferredWidth * 3; layoutElement.minWidth = layoutElement.minWidth * 3; foreach (var metricConfig in metricConfigs) { sumByPlayerByMetrics.TryGetValue(metricConfig.KeyMetric, out var valueByPlayer); column = CreateColumn(); SetLocalizedTitle(column, metricConfig.KeyMetric, metricTitleBestFitGroup); SetIcon(column, metricConfig.IconPath); AddItems( column.GetComponentInChildren <LayoutGroup>().gameObject, _simulationSummary.PlayersData, valueByPlayer, 0, metricConfig.HighlightHighest, metricValueBestFitGroup); } var playerMetrics = PlayerMetrics.GetPlayerBestMetrics(sumByPlayerByMetrics, _simulationSummary); AddMetricItems(playerMetrics); return(new[] { playerNameBestFitGroup, metricTitleBestFitGroup, metricValueBestFitGroup }); }
// Use this for initialization void Awake() { this.rigid_body = GetComponent<Rigidbody>(); this.animator = GetComponent<Animator>(); this.metrics = GetComponent<PlayerMetrics>(); this.controller = GetComponent<CharacterController>(); this.collider_ = GetComponent<CapsuleCollider>(); this.controller_height = this.controller.height; this.collider_height = this.collider_.height; this.controller_center = this.controller.center; this.collider_center = this.collider_.center; sfx = GetComponent<AudioSource>(); //No longer needed as I have set rig's layer(i.e. Ragdoll) to not //interact with Character Model's layer(aka Character) in the Physics settings //make the ragdoll kinematic for now //makeRagdollKinematic(true); }
void Awake() { playerMetricsObject = new PlayerMetrics(); rulesObject = new DiagnosticRules(); logObj = new Logger(); //in order to print the data at the end the objects need to point to the same thing logObj.rulesObj = rulesObject; //playerMetricsObject.activityMetricsObject = taskObj; rulesObject.playerMetricsObject = playerMetricsObject; //playerMetricsObject.rulesObject = rulesObject; the_score=0; }
// Use this for initialization void Start() { _instance = this; lastAvgPoint = 0; }
IEnumerator SetNodeEnabled() { PlayerAudio audio = GameController.instance.activePlayer.GetComponent <PlayerAudio> (); PlayerMetrics metrics = GameController.instance.activePlayer.GetComponent <PlayerMetrics> (); metrics.completedPlanets++; metrics.boostLeft += 1.0f; sunState = SunState.ENABLED; audio.PlayActivateSfx(gameObject); Renderer renderer = GetComponent <Renderer> (); float c = renderer.material.color.r; float e = renderer.material.GetColor("_EmissionColor").r; ParticleSystem.EmissionModule emission = system.emission; emission.rateOverTime = 25 * nodeRadius; while (e < 2 || c < 1f) { c = Mathf.Lerp(c, 1.01f, Time.deltaTime * 5f); e = Mathf.Lerp(e, 2.02f, Time.deltaTime * 5f); renderer.material.color = new Color(c, c, c); renderer.material.SetColor("_EmissionColor", new Color(e, e, e)); yield return(null); } c = 1f; e = 2f; renderer.material.color = new Color(c, c, c); renderer.material.SetColor("_EmissionColor", new Color(e, e, e)); float timeoutTime = 0; if (sunType == SunType.YELLOW) { timeoutTime = 1f * Mathf.Pow(nodeRadius, 0.72f); } else if (sunType == SunType.BLUE) { timeoutTime = 0.3f * Mathf.Pow(nodeRadius, 0.72f); } else if (sunType == SunType.RED) { timeoutTime = 3f * Mathf.Pow(nodeRadius, 0.72f); } yield return(new WaitForSeconds(timeoutTime)); sunState = SunState.DORMANT; emission = system.emission; emission.rateOverTime = 5 * nodeRadius; while (e > 1 || c > 0.9f) { c = Mathf.Lerp(c, 0.89f, Time.deltaTime * 4f); e = Mathf.Lerp(e, 0.89f, Time.deltaTime * 4f); renderer.material.color = new Color(c, c, c); renderer.material.SetColor("_EmissionColor", new Color(e, e, e)); yield return(null); } c = 0.9f; e = 1f; renderer.material.color = new Color(c, c, c); renderer.material.SetColor("_EmissionColor", new Color(e, e, e)); }