Exemple #1
0
        private void OnEntityDeath(BaseCombatEntity entity, HitInfo info)
        {
            if (entity == null)
            {
                return;
            }

            if (animalList.Contains(entity))
            {
                AnimalController baseNpc = entity.GetComponent <AnimalController>();
                if (baseNpc != null)
                {
                    baseNpc.naturalDeath = true;
                    timer.In(configData.Settings.Respawn, () => SpawnAnimalEntity(baseNpc.prefabName, baseNpc.homePos));
                    UnityEngine.Object.Destroy(entity.GetComponent <AnimalController>());
                }

                HumanController npcPlayer = entity.GetComponent <HumanController>();
                if (npcPlayer != null)
                {
                    npcPlayer.naturalDeath = true;
                    timer.In(configData.Settings.Respawn, () => SpawnNpcEntity(npcPlayer.prefabName, npcPlayer.homePos));
                    UnityEngine.Object.Destroy(entity.GetComponent <HumanController>());
                }

                animalList.Remove(entity);
            }
        }
        /// <summary>
        /// Ponto de entrada principal para o aplicativo.
        /// </summary>
        //[STAThread]
        static void Main(string[] args)
        {
            /*Application.EnableVisualStyles();
             * Application.SetCompatibleTextRenderingDefault(false);
             * Application.Run(new Form1());*/

            //String path = "C:\\teste-tecnico-programador\\teste_mov_animais_1.csv";
            AnimalController animalController = new AnimalController();
            EntityContext    db            = new EntityContext();
            AnimalService    animalService = new AnimalService();

            //animalService.Salvar(animalController.ImportaArquivoCSV(path));

            animalService.GetAnimais().ForEach(p => Console.WriteLine(p.Codigo));

            /*Animal animal = new Animal();
             * animal.Codigo = 1;
             *
             * List<Animal> animais = new List<Animal>();
             * animais.Add(animal);
             *
             * animalService.Salvar(animais);*/

            //db.Animal.ToList().ForEach(p => Console.WriteLine(p.Codigo));
        }
Exemple #3
0
    // Update is called once per frame
    void Update()
    {
        timer -= Time.deltaTime;
        if (timer <= 0)
        {
            timer = 2.0f;

            if (NowCount >= max_animal)
            {
                return;
            }

            GameObject AniPrefab = (GameObject)Resources.Load("Animal1");

            float cameraZ = Camera.main.transform.position.z;

            Vector3 InitPos   = Camera.main.WorldToViewportPoint(AniPrefab.transform.position);
            Vector3 RandomPos = new Vector3(Random.value, InitPos.y, -cameraZ);

            RandomPos = Camera.main.ViewportToWorldPoint(RandomPos);

            Target _target = Random.value > 0.5f ? Target.Right : Target.Left;

            AnimalController animal = AnimalController.Create(AniPrefab, _target, RandomPos);

            NowCount++;
            animal.OnArrested += whenCapture;
        }
    }
Exemple #4
0
    void FarmObjectOK()
    {
        shopList.SetActive(true);
        productImage = GameObject.Find("arrangeImage");
        int putable = 0;

        for (int i = 0; i < farmAnimal.transform.childCount; i++)
        {
            //Debug.Log("동물" + i + "번 : " + farmAnimal.transform.GetChild(i).transform.position.x);
            //Debug.Log("productImage : " + productImage.transform.position.x);
            //Debug.Log(i+"번 차이 : "+Mathf.Abs(farmAnimal.transform.GetChild(i).transform.position.x - productImage.transform.position.x));
            //Debug.Log(i+"번 차이 : "+ Mathf.Abs(farmAnimal.transform.GetChild(i).transform.position.y - productImage.transform.position.y));
            if (Mathf.Abs(farmAnimal.transform.GetChild(i).transform.position.x - productImage.transform.position.x) > 3 || Mathf.Abs(farmAnimal.transform.GetChild(i).transform.position.y - productImage.transform.position.y) > 3)
            {
                putable++;
            }
        }
        for (int i = 0; i < farmFarmObject.transform.childCount; i++)
        {
            //Debug.Log("설치물" + i + "번 : " + farmFarmObject.transform.GetChild(i).transform.position.x);
            //Debug.Log("productImage : " + productImage.transform.position.x);
            //Debug.Log(i + "번 차이 : " + Mathf.Abs(farmFarmObject.transform.GetChild(i).transform.position.x - productImage.transform.position.x));
            //Debug.Log(i + "번 차이 : " + Mathf.Abs(farmFarmObject.transform.GetChild(i).transform.position.y - productImage.transform.position.y));
            if (Mathf.Abs(farmFarmObject.transform.GetChild(i).transform.position.x - productImage.transform.position.x) > 3 || Mathf.Abs(farmFarmObject.transform.GetChild(i).transform.position.y - productImage.transform.position.y) > 3)
            {
                putable++;
            }
        }
        //Debug.Log("농장동물"+farmAnimal.transform.childCount+"마리");
        //Debug.Log("농장설치물"+farmFarmObject.transform.childCount+"개");
        //Debug.Log(putable);
        if (putable == farmAnimal.transform.childCount + farmFarmObject.transform.childCount)
        {
            text.gameObject.SetActive(false);
            ShopButtonManager productSBM = productImage.GetComponent <ShopButtonManager>();
            product = productSBM.product;
            FarmObject productFarmObject = product.GetComponent <FarmObject>();
            producted = Instantiate(productSBM.product, new Vector2(productImage.transform.position.x, productImage.transform.position.y), Quaternion.identity);
            producted.transform.parent = farmFarmObject.transform;
            Drag PIDrag = productImage.GetComponent <Drag>();
            PIDrag.PItransformBack();
            FarmObject productedObject = producted.GetComponent <FarmObject>();
            productedObject.farmObjectIndex = Spawner._instance.farmObjects.Count;
            productedObject.isField         = true;
            OKButton.gameObject.SetActive(false);
            cancelButton.gameObject.SetActive(false);
            shopCloseButton.SetActive(true);
            MoneyManager.money -= productedObject.shopCost;
            DataManager._instance.SaveMoney(MoneyManager.money, MoneyManager.heart);

            Spawner._instance.BuyNewFarmObject(producted);
            DataManager._instance.ParseFarmObjectData(Spawner._instance.farmObjects);

            for (int i = 0; i < farmAnimal.transform.childCount; i++)
            {
                AnimalController animalController = farmAnimal.transform.GetChild(i).GetComponent <AnimalController>();
                animalController.pathStart();
            }
        }
    }
Exemple #5
0
        public void TestSetup()
        {
            HelperMethods.InitialiseAutoMapper();

            Mock <IContext> context = new Mock <IContext>();

            context.Setup(x => x.Animals).Returns(mockAnimals);
            context.Setup(x => x.Users).Returns(mockUsers);
            context.Setup(x => x.AnimalTypes).Returns(mockAnimalTypes);


            userRepository = new UserRepository(context.Object);

            userManager = new UserManager(userRepository);

            animalTypeRepository = new AnimalTypeRepository(context.Object);
            animalTypeManager    = new AnimalTypeManager(animalTypeRepository);

            animalRepository = new AnimalRepository(context.Object);

            animalStateManager = new AnimalStateManager();

            animalManager = new AnimalManager(animalRepository, animalTypeManager, animalStateManager);


            animalController = new AnimalController(userManager, animalManager, animalTypeManager);
        }
Exemple #6
0
    private AnimalController NewAnimal(int r, int c)
    {
        AnimalController animal = AnimalPool.Instance.Get();

        animal.setCell(r, c);
        return(animal);
    }
 public Put()
 {
     animalRepository  = new InMemoryAnimalRepository(AnimalDataUtilities.AnimalData(UserId));
     animalFindService = new AnimalFindService(animalRepository);
     animalController  = new AnimalController(animalFindService);
     pettingController = new PettingController(animalFindService, new AnimalPettingService(animalFindService, animalRepository));
 }
    private void GenerateAnimal(AnimalController animal)
    {
        var temp = Instantiate <AnimalController>(animal, _animalParent);

        temp.Init(animal.GetAnimalType());

        var angles = _planet.EcosystemAngles[_planet.EcosystemByAnimal[animal.GetAnimalType()]];
        int value  = UnityEngine.Random.Range(0, angles.Count);
        var area   = angles[value];

        int finalAngle = UnityEngine.Random.Range(area.StartAngle, area.EndAngle);

        float   radians       = Mathf.Deg2Rad * finalAngle;
        Vector2 finalPosition = new Vector2(Mathf.Sin(radians), Mathf.Cos(radians));

        //Debug.Log(animal.GetAnimalType().ToString() + " : "+ finalAngle);
        //Vector2 finalPosition = Rotate(Vector2.up, finalAngle);

        /*
         * GameObject go = GameObject.CreatePrimitive(PrimitiveType.Sphere);
         * go.name = animal.GetAnimalType().ToString();
         * go.transform.position = finalPosition;
         */

        //Vector2 point = UnityEngine.Random.insideUnitCircle;
        Vector2 point = finalPosition;

        temp.transform.position = point;

        _allAnimals.Add(temp);
    }
Exemple #9
0
 /// <summary>
 /// Lässt das Tier etwas "sagen"
 /// </summary>
 /// <param name="animal">Tier</param>
 /// <param name="text">Auszugebender Text</param>
 public void LetAnimalSaySomething(AnimalController animal, string text)
 {
     if (animal != null)
     {
         animal.Speak(text);
     }
 }
Exemple #10
0
        private void button1_Click(object sender, EventArgs e)
        {
            Animal animal = new Animal
            {
                Id     = Guid.NewGuid().ToString(),
                Name   = Name.Text,
                Age    = (int)Age.Value,
                Gender = man.Checked?"man":notman.Checked?"women":"xyuznaet",
                Class  = ClassBox.Text
            };

            if (animal.Age == 0 || animal.Class == string.Empty || animal.Name == string.Empty)
            {
                MessageBox.Show("Все поля заполните ПОЖАЛУЙСТА");
                return;
            }

            AnimalController animalController = new AnimalController();

            animalController.AddAnumal(animal);

            Name.Text = "";
            Age.Value = 0;

            status.Text = "Животное успешно добавлено";
        }
        public void Animal_ShouldReturnsTrue_WhenViewResult_IsValid()
        {
            // Arrange
            Mapper.Initialize(cfg =>
            {
                cfg.CreateMap <Animal, AnimalsViewModel>();
                cfg.CreateMap <AnimalsViewModel, Animal>();
            });

            var verificationProviderMock = new Mock <IVerificationProvider>();
            var mapperMock         = new Mock <IMapper>();
            var mockedUsersService = new Mock <IUsersService>();
            var animalServiceMock  = new Mock <IAnimalsService>();

            var animalController = new AnimalController(verificationProviderMock.Object, mapperMock.Object, mockedUsersService.Object, animalServiceMock.Object);

            // Act
            var animal = new Animal
            {
                Id = Guid.NewGuid()
            };
            var animalsCollection = new List <Animal>()
            {
                animal
            };

            animalServiceMock.Setup(c => c.GetAll()).Returns(animalsCollection.AsQueryable());


            //Assert
            animalController.WithCallTo(c => c.Animal(animal.Id))
            .ShouldRenderView("Animal");
        }
        public void GetAllData_Test()
        {
            Mock <IAnimalRepository> repoMock = new Mock <IAnimalRepository>();


            Animal firstAnimal = new Animal
            {
                Id          = 1,
                Name        = "Bobita",
                Description = "Cat"
            };

            Animal secondAnimal = new Animal
            {
                Id          = 2,
                Name        = "Rex",
                Description = "Dog"
            };

            List <Animal> personList = new List <Animal>
            {
                firstAnimal,
                secondAnimal
            };

            repoMock.Setup(x => x.GetAll()).Returns(personList);

            AnimalController animalController = new AnimalController(repoMock.Object);
            List <Animal>    result           = animalController.GetAll().ToList();

            Assert.AreEqual(2, result.Count);
        }
        public void ControllerSelectsGroup()
        {
            // arrange
            // Контекст контроллера
            var controllerContext = new ControllerContext();
            // Макет HttpContext
            var moqHttpContext = new Mock <HttpContext>();

            moqHttpContext.Setup(c => c.Request.Headers).Returns(new HeaderDictionary());
            controllerContext.HttpContext = moqHttpContext.Object;
            //заполнить DB данными
            using (var context = new ApplicationDbContext(_options))
            {
                TestData.FillContext(context);
            }
            using (var context = new ApplicationDbContext(_options))
            {
                var controller = new AnimalController(context)
                {
                    ControllerContext = controllerContext
                };
                var comparer = Comparer <Animal> .GetComparer((d1, d2) =>
                                                              d1.AnimalId.Equals(d2.AnimalId));

                // act
                var result = controller.Index(2) as ViewResult;
                var model  = result.Model as List <Animal>;
                // assert
                Assert.Equal(2, model.Count);
                Assert.Equal(context.Animals
                             .ToArrayAsync()
                             .GetAwaiter()
                             .GetResult()[2], model[0], comparer);
            }
        }
Exemple #14
0
        private void button1_Click(object sender, EventArgs e)
        {
            AnimalController animalController = new AnimalController();

            var selectedName = listBox1.SelectedValue.ToString();

            var selectedAnimal = animalController.GetAnimalByName(selectedName);

            Animal newAnimal = new Animal
            {
                Id     = selectedAnimal.Id,
                Name   = Namei.Text,
                Class  = Classi.Text,
                Age    = (int)Agei.Value,
                Gender = man.Checked ? "man" : notman.Checked ? "women" : "xyuznaet"
            };

            animalController.EditAnimal(selectedAnimal, newAnimal);

            Reset();

            status.Text = "Successful edit";

            listBox1.DataSource = animalController.GetNamesList();
        }
        public void TestPostAnimal()
        {
            _context    = DbContextMocker.GetAnimalsGameContext(Guid.NewGuid().ToString());
            _service    = new AnimalsGameService(_context, null);
            _controller = new AnimalController(_context, _service);

            Animal newAnimal = new Animal
            {
                AnimalId  = 123,
                Type      = AnimalType.SMALL,
                Name      = "Penguin",
                Happiness = Constants.NEUTRAL,
                Hunger    = Constants.NEUTRAL,
                UserId    = 0 // No user assigned
            };

            _controller.AddAnimal(newAnimal);

            List <Animal> animals = _controller.GetAnimals();

            Assert.NotNull(animals);
            Assert.Equal(4, animals.Count);

            _context.Database.EnsureDeleted();
        }
 private void PlaySelect(AnimalController _)
 {
     float randomPitch = Random.Range(LowPitchRange, HighPitchRange);
     // this.gameObject.GetComponent<AudioSource>().pitch = randomPitch;
     // this.gameObject.GetComponent<AudioSource>().clip = select;
     // this.gameObject.GetComponent<AudioSource>().Play();
 }
Exemple #17
0
    public override bool Activate(Activator activator = null)
    {
        if (SecondTarget != null)
        {
            SecondTarget.SetActive(true);
        }

        if (Target != null)
        {
            Target.SetActive(true);
            Target.transform.position = SpawnPoint.transform.position;

            AnimalController animalController = Target.GetComponent <AnimalController>();
            if (animalController != null && animalController.AnimalType == AnimalType.Fox)
            {
                GameManager.Instance.SwitchActiveAnimalController();
            }

            DeathController    deathController    = Target.GetComponent <DeathController>();
            MovementController movementController = Target.GetComponent <MovementController>();
            if (deathController != null)
            {
                deathController.IsDead = false;
            }
            if (movementController != null)
            {
                movementController.TryMoveNone();
                movementController.CanMove = true;
            }

            return(true);
        }

        return(false);
    }
Exemple #18
0
    /// <summary>
    ///  Erkennt die Kollision eines Tieres mit der Hütte
    /// </summary>
    void OnTriggerEnter2D(Collider2D col)
    {
        Manager.VisitHut(col.name); //Merkt sich im Manager, dass Tier gerade auf Hütte ist
        AnimalController animal = Manager.GetAnimalByName(col.name);

        if (Manager.GetVistors().Count == Manager.PlayerCount) //Schaut, ob alle Tiere auf der Hütte sind
        {
            if (Manager.GetFoundAllFood())                     //Schaut, ob alles Essen gesammelt wurde
            {
                finished = true;                               //Spiel ist fertig
                Manager.Reset();                               //Manger wird resettet
                SceneManager.LoadScene("Closing");             //Endszene wird geladen
            }
            else
            {
                String s = "Wir haben noch nicht genug zu essen!";
                Manager.LetAnimalSaySomething(col.name, s, 4); //Lässt kollidierendes Tier 4 Sek etwas sagen
            }
        }
        else
        {
            String s = "";
            if (animal.GetHasFood())
            {
                s += "Ich warte noch auf meine Freunde!";
                animal.Speak(s, 4); //Lässt kollidierendes Tier 4 Sek etwas sagen
            }
            else
            {
                s += "Ich habe noch nichts zu essen!";
                animal.Speak(s); //Lässt kollidierendes Tier etwas sagen, bis es die Hütte wieder verlässt
            }
        }
    }
Exemple #19
0
 /// <summary>
 ///  Fügt ein Tier dem Tier-Array hinzu
 /// </summary>
 public void AddAnimal(AnimalController animal)
 {
     if (animal != null && !AnimalList.Contains(animal))
     {
         this.AnimalList.Add(animal);
     }
 }
Exemple #20
0
    private Sprite[] img; //0 animal,1 football,2 poolball, 3 pokeball

    void Awake()
    {
        if (instance = null)
        {
            instance = this;
        }
    }
Exemple #21
0
        public void AnimalController_GetsAnimalFromDatabase()
        {
            DbContextOptionsBuilder <AppDbContext> optionsBuilder = new();

            optionsBuilder.UseInMemoryDatabase(MethodBase.GetCurrentMethod().Name);

            using (AppDbContext ctx = new(optionsBuilder.Options))
            {
                ctx.Add(new Animal {
                    Name = "Foo", Type = "Bar"
                });
                ctx.SaveChanges();
            }

            IActionResult result;

            using (AppDbContext ctx = new(optionsBuilder.Options))
            {
                result = new AnimalController(ctx).Get(1);
            }

            var okResult = Assert.IsType <OkObjectResult>(result);
            var animal   = Assert.IsType <Animal>(okResult.Value);

            Assert.NotNull(animal);
            Assert.Equal(1, animal.Id);
            Assert.Equal("Foo", animal.Name);
            Assert.Equal("Bar", animal.Type);
        }
Exemple #22
0
    //methode which selects animal and spawn position
    void SelectAnimal()
    {
        int i = Random.Range(0, spawnPoints.Length);

        while (i == lastI)
        {
            i = Random.Range(0, spawnPoints.Length);
        }


        if (i == 0)
        {
            //we get the object from object pooling
            GameObject newRed = ObjectPooling.instance.GetRed();
            //changes its transform
            newRed.transform.position = spawnPoints[i].transform.position;
            //change its rotation
            newRed.transform.rotation = this.transform.rotation;
            //get the script attached to that oject
            AnimalController code = newRed.GetComponent <AnimalController>();
            //make the object active
            newRed.SetActive(true);
            //apply the force
            code.applyForce = true;
            //play the sound
            sound.PlayOneShot(swingClips[0]);
        }
        else if (i == 1)
        {
            GameObject newBlue = ObjectPooling.instance.GetBlue();
            newBlue.transform.position = spawnPoints[i].transform.position;
            newBlue.transform.rotation = this.transform.rotation;
            AnimalController code = newBlue.GetComponent <AnimalController>();
            newBlue.SetActive(true);
            code.applyForce = true;
            sound.PlayOneShot(swingClips[1]);
        }
        else if (i == 2)
        {
            GameObject newGreen = ObjectPooling.instance.GetGreen();
            newGreen.transform.position = spawnPoints[i].transform.position;
            newGreen.transform.rotation = this.transform.rotation;
            AnimalController code = newGreen.GetComponent <AnimalController>();
            newGreen.SetActive(true);
            code.applyForce = true;
            sound.PlayOneShot(swingClips[2]);
        }
        else if (i == 3)
        {
            GameObject newYellow = ObjectPooling.instance.GetYellow();
            newYellow.transform.position = spawnPoints[i].transform.position;
            newYellow.transform.rotation = this.transform.rotation;
            AnimalController code = newYellow.GetComponent <AnimalController>();
            newYellow.SetActive(true);
            code.applyForce = true;
            sound.PlayOneShot(swingClips[3]);
        }

        lastI = i;
    }
Exemple #23
0
    // Start is called before the first frame update
    void Start()
    {
        _animalController       = GetComponent <AnimalController>();
        _foodDistributionScript = GetComponent <FoodDistributionScript>();
        _populations            = _animalController.GetAnimalPopulations();

        InitializeGrowthTimers();
    }
 public Put()
 {
     animalFindRepository = new InMemoryAnimalRepository(AnimalDataUtilities.AnimalData(UserId));
     animalFindService    = new AnimalFindService(animalFindRepository);
     animalController     = new AnimalController(animalFindService);
     animalFeedingService = new AnimalFeedingService(animalFindService);
     feedingController    = new FeedingController(animalFeedingService);
 }
Exemple #25
0
        public void GetAnimal_WhenAnimalDoesNotExist_Returns404()
        {
            var animalController = new AnimalController(new UnknownAnimalService());

            var response = animalController.GetAnimal(123);

            Assert.IsType <NotFoundResult>(response.Result);
        }
Exemple #26
0
        private void button1_Click(object sender, EventArgs e)
        {
            AnimalController animalController = new AnimalController();
            var selectedName = listBox1.SelectedItem.ToString();

            var selectedAnimal = animalController.GetAnimalByName(selectedName);

            result.Text = selectedAnimal.ToString();
        }
Exemple #27
0
        private void button1_Click(object sender, EventArgs e)
        {
            AnimalController animalController = new AnimalController();
            var animal = animalController.GetAnimalByName(listBox1.SelectedItem.ToString());
            var d      = animal;

            animalController.DeleteAnimal(d);
            Update();
        }
Exemple #28
0
    // Use this for initialization
    void Start()
    {
        animalProperty   = this.gameObject.GetComponent <AnimalProperties>();
        animalController = this.gameObject.GetComponent <AnimalController>();

        animalProperty.currentVel   = new Vector3(Random.Range(500.0F, 1000.0F), Random.Range(100.0F, 1000.0F), 0);
        animalProperty.currentVel   = Vector3.Normalize(animalProperty.currentVel) * animalProperty.maxSpeed * Time.deltaTime;
        animalProperty.acceleration = Vector3.zero;
    }
Exemple #29
0
    /// <summary>
    /// Blendet die Sprechblase des Tieres aus
    /// </summary>
    /// <param name="name">Tiername, des zu sprechenden Tieres</param>
    public void LetAnimalBeQuiet(string name)
    {
        AnimalController animal = GetAnimalByName(name);

        if (animal != null)
        {
            animal.BeSilent();
        }
    }
Exemple #30
0
    /// <summary>
    /// Lässt das Tier mit gesuchtem Namen eine bestimmte Zeit lang etwas "sagen"
    /// </summary>
    /// <param name="name">Tiername, des zu sprechenden Tieres</param>
    /// <param name="text">Auszugebender Text</param>
    public void LetAnimalSaySomething(string name, string text, float x)
    {
        AnimalController animal = GetAnimalByName(name);

        if (animal != null)
        {
            animal.Speak(text, x);
        }
    }
 private void Awake()
 {
     m_animator = GetComponent<Animator>();
     m_animal = GetComponent<AnimalController>();
 }