Ejemplo n.º 1
0
    public IEnumerator Collecting(AdvancedTwippie twippie)
    {
        if (_rigidBody != null)
        {
            _rigidBody.isKinematic = false;
            _rigidBody.mass        = 5;
            _rigidBody.AddForce(transform.up * 10, ForceMode.Impulse);
        }
        yield return(new WaitForSeconds(1));

        Collect(twippie);
    }
Ejemplo n.º 2
0
 private void SetSensibilities()
 {
     SkillType[] skillArray = (SkillType[])Enum.GetValues(typeof(SkillType));
     _skills = new Skill[skillArray.Length - 1];
     for (int a = 0; a < skillArray.Length - 1; a++)
     {
         _skills[a] = new Skill(skillArray[a], UnityEngine.Random.Range(.1f, .3f));
     }
     if (_dad != null && _mom != null)
     {
         if (_dad is AdvancedTwippie && _mom is AdvancedTwippie)
         {
             AdvancedTwippie aPapa  = (AdvancedTwippie)_dad;
             AdvancedTwippie aMaman = (AdvancedTwippie)_mom;
             for (int a = 0; a < skillArray.Length - 1; a++)
             {
                 float ponderation = UnityEngine.Random.value;
                 _skills[a] = new Skill(skillArray[a], aPapa.Skills[a].SkillValue * ponderation + aMaman.Skills[a].SkillValue * (1 - ponderation));
             }
         }
         else
         {
             if (_dad is AdvancedTwippie)
             {
                 AdvancedTwippie aPapa = (AdvancedTwippie)_dad;
                 for (int a = 0; a < skillArray.Length - 1; a++)
                 {
                     float ponderation = UnityEngine.Random.value;
                     _skills[a] = new Skill(skillArray[a], aPapa.Skills[a].SkillValue * ponderation + UnityEngine.Random.Range(.1f, .3f) * (1 - ponderation));
                 }
             }
             else if (_mom is AdvancedTwippie)
             {
                 AdvancedTwippie aMaman = (AdvancedTwippie)_mom;
                 for (int a = 0; a < skillArray.Length - 1; a++)
                 {
                     float ponderation = UnityEngine.Random.value;
                     _skills[a] = new Skill(skillArray[a], aMaman.Skills[a].SkillValue * ponderation + UnityEngine.Random.Range(.1f, .3f) * (1 - ponderation));
                 }
             }
             else
             {
                 for (int a = 0; a < skillArray.Length - 1; a++)
                 {
                     _skills[a] = new Skill(skillArray[a], UnityEngine.Random.Range(.1f, .3f));
                 }
             }
         }
     }
 }
Ejemplo n.º 3
0
    public void Collect(AdvancedTwippie twippie)
    {
        Debug.Log("Tree collected");
        twippie.Collecting = null;
        Zone.Taken         = false;
        var resource = twippie.Ressources.FirstOrDefault(x => x.ResourceType == ResourceType.Food);

        if (resource != null)
        {
            resource.Quantity += _woodCost;
        }
        else
        {
            twippie.Ressources.Add(new Resource(ResourceType.Food, _woodCost));
        }

        twippie.FinishExternalAction();
        _objectManager.RemoveObject(this);
        //_stats.enabled = false;
        Destroy(_rigidBody);
        Destroy(this);
    }