public BloodState CheckYourState(double[] output) { BloodState state = new BloodState(); if (output[0] < 0.05) { state.Result1 = nameof(Results.Hydrated); } if (output[0] > 0.05 && output[0] < 0.15) { state.Result1 = nameof(Results.Hurt); } if (output[0] > 0.15 && output[0] < 0.25) { state.Result1 = nameof(Results.Kidney); } if (output[0] > 0.25 && output[0] < 0.35) { state.Result1 = nameof(Results.Oxygenation); } if (output[0] > 0.35) { state.Result1 = nameof(Results.Sick); } if (output[1] < 0.05) { state.Result2 = nameof(Results.Hydrated); } if (output[1] > 0.05 && output[0] < 0.15) { state.Result2 = nameof(Results.Hurt); } if (output[1] > 0.15 && output[0] < 0.25) { state.Result2 = nameof(Results.Kidney); } if (output[1] > 0.25 && output[0] < 0.35) { state.Result2 = nameof(Results.Oxygenation); } if (output[1] > 0.35) { state.Result2 = nameof(Results.Sick); } return(state); }
void Update() { currentBloodInt -= LowerBloodLossBasedOnRemaining(BloodLossPerSecond) * Time.deltaTime; canvas.UpdateBloodSlider(currentBloodInt); if (!hasRunOutOfBloodThisLoad && CurrentBlood < 1e-4) { hasRunOutOfBloodThisLoad = true; playerMovement.canMove = false; playerPistol.canFire = false; playerMelee.canAttack = false; playerAbilities.canUseAbilites = false; canvas.PlayerHasNoBlood(); } // Speech sending if (state == BloodState.High && CurrentBlood < LowTransition) { var message = new SwordMessage { Message = "I need blood", Duration = 2f }; GameObject.FindWithTag("SwordSpeech").SendMessage("OnSwordMessage", message); state = BloodState.Low; } else if (state == BloodState.Low && CurrentBlood < VeryLowTransition) { var message = new SwordMessage { Message = "I need blood now!", Duration = 2f }; GameObject.FindWithTag("SwordSpeech").SendMessage("OnSwordMessage", message); state = BloodState.VeryLow; } else if (state == BloodState.Low && CurrentBlood > LowTransition) { state = BloodState.High; } else if (state == BloodState.VeryLow && CurrentBlood > VeryLowTransition) { state = BloodState.Low; } }