/// <summary> /// Constructor. /// </summary> /// <param name="id">character identifier</param> /// <param name="name">character name</param> /// <param name="commandHint">command hint for interaction with character</param> /// <param name="kind">character kind</param> /// <param name="sceneId">reference to scene by its identifier</param> /// <param name="age">character age</param> /// <param name="gender">character gender</param> /// <param name="statistics">character statistics</param> /// <param name="inventory">character inventory</param> public CharacterModel(string id, string name, string commandHint, CharacterKind kind, string sceneId, int age, CharacterGender gender, CharacterStatisticsModel statistics, InventoryModel inventory) : base(id, name, commandHint) { SceneId = sceneId; Age = age; Gender = gender; CharacterType = kind; Statistics = statistics; statistics.SetCharacterModel(this); Inventory = inventory; TimeStamp = DateTime.UtcNow; }
public override void OnCharacterStatisticChanged(CharacterStatisticsModel statistics) { if (IsMultiplayer) { return; } var healthObject = GameObject.FindGameObjectWithTag(UnityObjectTagName.HealthBar); var staminaObject = GameObject.FindGameObjectWithTag(UnityObjectTagName.StaminaBar); if (healthObject != null) { SetSliderValue(healthObject, statistics.CurrentHealth); } if (staminaObject) { SetSliderValue(staminaObject, statistics.CurrentStamina); } }
public override CharacterModel CreatCharacter(string name, string commandHint, string sceneId, int age, CharacterGender gender) { var statistics = new CharacterStatisticsModel( 0, CalculateDamageLevel(age, gender), CalculateHealthLevel(age, gender), CalculateStaminahLevel(age, gender), CalculateCarriedWeigthLevel(age, gender), 1, 0); var inventory = new InventoryModel(Guid.NewGuid().ToString(), "PlayerInventory", "inventory (i)", InventoryKind.Character); return(new CharacterModel( Guid.NewGuid().ToString(), name, commandHint, CharacterKind.Player, sceneId, age, gender, statistics, inventory)); }
public virtual void OnCharacterStatisticChanged(CharacterStatisticsModel statistics) { }