public override void Unpack(BinaryReader reader) { Id = reader.ReadUInt32(); MaxHealth.Unpack(reader); MaxStamina.Unpack(reader); MaxMana.Unpack(reader); }
public void InitClassAndRace(ActorBornAttributeMeta classMeta, ActorBornAttributeMeta raceMeta, float healthRank) { MaxHealth.InitHealthRatingRank(classMeta.HealthRating + raceMeta.HealthRating, healthRank); MaxHealth.InitResourceFromClassRace(classMeta.Health, raceMeta.Health); MaxMana.InitResourceFromClassRace(classMeta.Mana, raceMeta.Mana); MaxStamina.InitResourceFromClassRace(classMeta.Stamina, raceMeta.Stamina); }
public override void TakeDamage(float damage) { base.TakeDamage(damage); if (currentHealth <= MaxHealth.GetValue() / 2 && !secondPhase) { SecondPhase(); secondPhase = true; } }
void Update() { if (networkView.isMine) { string datas = PlayerName + ";" + MaxHealth.ToString() + ";" + Health.ToString() + ";" + RedBalls.ToString() + ";" + YellowBalls.ToString() + ";" + GreenBalls.ToString() + ";" + NbCollectedFragments.ToString(); networkView.RPC("SynchronizePlayerDatas", RPCMode.Others, datas); AdjustHealth(0); } }
protected override void OnEnable() { if (isInitialized) { audioSource.Play(); ReduceSpawns(); gameManager.StartCoroutine(gameManager.RUIManager.ShowBossText(BossEnterText, TextColor, TextMaterial)); gameManager.RUIManager.InitializeBossBar(MaxHealth.GetValue(), BossIcon); } base.OnEnable(); }
public override void TakeDamage(float damage) { if (Random.Range(0, 100) >= Agility.GetValue()) { damage -= Defence.GetValue(); damage = Mathf.Clamp(damage, 0, int.MaxValue); CurrentHealth -= damage; Healthbar.fillAmount = CurrentHealth / MaxHealth.GetValue(); Debug.Log("Damage has been taken " + damage); } }
public XmlElement Serialize(XmlDocument doc) { XmlElement xmlStats = doc.CreateElement("stats"); xmlStats.SetAttribute("health", Health.ToString()); xmlStats.SetAttribute("maxHealth", MaxHealth.ToString()); xmlStats.SetAttribute("endurance", Endurance.ToString()); xmlStats.SetAttribute("strength", Strength.ToString()); xmlStats.SetAttribute("intelligence", Intelligence.ToString()); xmlStats.SetAttribute("agility", Agility.ToString()); xmlStats.SetAttribute("dexterity", Dexterity.ToString()); xmlStats.SetAttribute("upgradePoint", UpgradePoint.ToString()); return(xmlStats); }
public bool Equals(PlayerInfo other) { if (other == null) { return(false); } return(Money.Equals(other.Money) && MoneyOnScreen.Equals(other.MoneyOnScreen) && PackagesCollected.Equals(other.PackagesCollected) && MaxHealth.Equals(other.MaxHealth) && MaxArmor.Equals(other.MaxArmor) && InfiniteSprint.Equals(other.InfiniteSprint) && FastReload.Equals(other.FastReload) && FireProof.Equals(other.FireProof) && GetOutOfJailFree.Equals(other.GetOutOfJailFree) && GetOutOfHospitalFree.Equals(other.GetOutOfHospitalFree)); }
public string StatsDisplay() { string stats = ("Wizard Joey: \n" + "\nHealth: " + Health.ToString() + "/" + MaxHealth.ToString() + "\nMana: " + Mana.ToString() + "/" + MaxMana.ToString() + "\nHealth Regen: " + statsScript.HealthRegenStat.ToString() + " per second" + "\nMana Regen: " + statsScript.ManaRegenStat.ToString() + " per second" /*+ "\nGold: " + gold.ToString()*/ + "\n" + Armor); // + "\nCurrent Experience: " + experience.ToString() + "/" + nextLvlExp.ToString()); // StatsText.text = ("Wizard Joey: \n" // + "\nHealth: " + health.ToString() + "/" + maxHealth.ToString() // + "\nMana: " + mana.ToString() + "/" + maxMana.ToString() // + "\nGold: " + gold.ToString() // //+ "\nArmor: " + Armor.ToString() // + "\nCurrent Experience: " + experience.ToString() + "/" + nextLvlExp.ToString()); return(stats); }
protected override void OnUpdate() { var maxHealthData = GetComponentDataFromEntity <MaxHealth>(isReadOnly: true); var shieldData = GetComponentDataFromEntity <Shield>(isReadOnly: false); var maxShieldData = GetComponentDataFromEntity <MaxShield>(isReadOnly: false); Entities .WithAll <Enabling>() .WithReadOnly(maxHealthData) .ForEach((in ShieldEquipment shieldEquipment, in Parent parent) => { MaxHealth maxHealth = maxHealthData[parent.Value]; float shieldHP = shieldEquipment.HealthFractionBonus * maxHealth.Base; Shield shield = shieldData[parent.Value]; shield.Health += shieldHP; shieldData[parent.Value] = shield; MaxShield maxShield = maxShieldData[parent.Value]; maxShield.Value += shieldHP; maxShieldData[parent.Value] = maxShield; })
private void Start() { // Health starts and resets to full when starting game again MaxHealth = 100f; CurrentHealth = MaxHealth; healthBar.value = MaxHealth; Debug.Log("Health is " + healthBar.value); currentHealthPoints.text = MaxHealth.ToString(); // Energy starts and resets to 0 when starting game again MaxEnergy = 0f; CurrentEnergy = MaxEnergy; energyBar.value = MaxEnergy; Debug.Log("Health is " + healthBar.value); currentEnergyPoints.text = MaxEnergy.ToString(); ScoreScript.scoreValue = 0; restartButton.SetActive(false); exitButton.SetActive(false); gameOverText.SetActive(false); gameOverScoreText.SetActive(false); gameOverScoreNum.SetActive(false); }
private void InstantiateCharacters(int entityCount) { if (entityCount <= 0) { return; } var entityArray = new NativeArray <Entity>(entityCount, Allocator.TempJob); EntityManager.CreateEntity(m_Archetype, entityArray); var terrain = Terrain.activeTerrain; for (var entityIndex = 0; entityIndex < entityArray.Length; entityIndex++) { var type = (ViewType)m_Random.NextInt(Enum.GetValues(typeof(ViewType)).Length); var entity = entityArray[entityIndex]; var movementSpeed = new MovementSpeed(); var rotationSpeed = new RotationSpeed(); var rotationSpeedModifier = new RotationSpeedModifier(); var walkSpeedModifier = new WalkSpeedModifier(); var chargeSpeedModifier = new ChargeSpeedModifier(); var engageSqrRadius = new EngageSqrRadius(); var attackDistance = new AttackDistance { Min = 1.5f, Max = 2 }; var attackAnimationDuration = new AttackAnimationDuration(); var attackDamage = new AttackDamage(); var attackSpeed = new AttackSpeed(); var maxHealth = new MaxHealth(); var health = new Health(); var healthRegeneration = new HealthRegeneration(); var viewInfo = new ViewInfo(); PostUpdateCommands.SetComponent(entity, new Translation { Value = terrain.GetRandomPosition() }); switch (type) { case ViewType.Knight: PostUpdateCommands.AddComponent(entity, new Knight()); PostUpdateCommands.AddComponent(entity, new Faction { Value = FactionType.Alliance }); movementSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeedModifier.Value = m_Random.NextFloat(1.25f, 2); walkSpeedModifier.Value = m_Random.NextFloat(0.9f, 1.25f); chargeSpeedModifier.Value = m_Random.NextFloat(2, 3); engageSqrRadius.Value = m_Random.NextFloat(400, 2500); attackAnimationDuration.Value = 1; attackDamage.Value = m_Random.NextInt(10, 30); attackSpeed.Value = m_Random.NextFloat(1, 3); maxHealth.Value = m_Random.NextInt(100, 200); health.Value = maxHealth.Value; healthRegeneration.Value = m_Random.NextFloat(1, 3); viewInfo.Type = ViewType.Knight; break; case ViewType.OrcWolfRider: PostUpdateCommands.AddComponent(entity, new OrcWolfRider()); PostUpdateCommands.AddComponent(entity, new Faction { Value = FactionType.Horde }); movementSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeedModifier.Value = m_Random.NextFloat(1.25f, 2); walkSpeedModifier.Value = m_Random.NextFloat(0.9f, 1.25f); chargeSpeedModifier.Value = m_Random.NextFloat(2, 3); engageSqrRadius.Value = m_Random.NextFloat(400, 2500); attackAnimationDuration.Value = 1.333f; attackDamage.Value = m_Random.NextInt(10, 30); attackSpeed.Value = m_Random.NextFloat(1, 3); maxHealth.Value = m_Random.NextInt(100, 200); health.Value = maxHealth.Value; healthRegeneration.Value = m_Random.NextFloat(1, 3); viewInfo.Type = ViewType.OrcWolfRider; break; case ViewType.Skeleton: PostUpdateCommands.AddComponent(entity, new Skeleton()); PostUpdateCommands.AddComponent(entity, new Faction { Value = FactionType.Legion }); movementSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeed.Value = m_Random.NextFloat(1, 3); rotationSpeedModifier.Value = m_Random.NextFloat(1.25f, 2); walkSpeedModifier.Value = m_Random.NextFloat(0.9f, 1.25f); chargeSpeedModifier.Value = m_Random.NextFloat(2, 3); engageSqrRadius.Value = m_Random.NextFloat(400, 2500); attackAnimationDuration.Value = 2.4f; attackDamage.Value = m_Random.NextInt(10, 30); attackSpeed.Value = m_Random.NextFloat(1, 3); maxHealth.Value = m_Random.NextInt(100, 200); health.Value = maxHealth.Value; healthRegeneration.Value = m_Random.NextFloat(1, 3); viewInfo.Type = ViewType.Skeleton; break; } PostUpdateCommands.SetComponent(entity, movementSpeed); PostUpdateCommands.SetComponent(entity, rotationSpeed); PostUpdateCommands.SetComponent(entity, rotationSpeedModifier); PostUpdateCommands.SetComponent(entity, walkSpeedModifier); PostUpdateCommands.SetComponent(entity, chargeSpeedModifier); PostUpdateCommands.SetComponent(entity, engageSqrRadius); PostUpdateCommands.SetComponent(entity, attackDistance); PostUpdateCommands.SetComponent(entity, attackAnimationDuration); PostUpdateCommands.SetComponent(entity, attackDamage); PostUpdateCommands.SetComponent(entity, attackSpeed); PostUpdateCommands.SetComponent(entity, maxHealth); PostUpdateCommands.SetComponent(entity, health); PostUpdateCommands.SetComponent(entity, healthRegeneration); PostUpdateCommands.SetComponent(entity, viewInfo); #if UNITY_EDITOR EntityManager.SetName(entity, $"{viewInfo.Type} AI {entity}"); #endif } entityArray.Dispose(); }
//Set currentvalues to start values private void Start() { currentMana = Mathf.RoundToInt(maxMana.GetValue()); currentStamina = Mathf.RoundToInt(MaxStamina.GetValue()); currentHealth = Mathf.RoundToInt(MaxHealth.GetValue()); }
public void SetLevel(int level) { MaxHealth.SetLevel(level); MaxMana.SetLevel(level); MaxStamina.SetLevel(level); }