IEnumerator Game() { yield return(new WaitForSeconds(1.0f)); while (true) { // 動物発生 phase = PHASE.PREPARE; CreateAnimal(); yield return(new WaitForSeconds(5.0f)); // 落下開始 phase = PHASE.FALL; FallAnimal(); // 動物が止まるまで待つ yield return(new WaitUntil(DidStopFalling)); animalManager.AddAnimal(fallingAnimal); fallingAnimal = null; // カメラスクロール開始 phase = PHASE.CAMERA_MOVE; float maxYPos = animalManager.GetMaxYPos(); cameraController.StartMove(new Vector3(0, maxYPos, 0)); // カメラスクロールが終わるまで待つ yield return(new WaitWhile(cameraController.IsMoving)); } }
//[Ignore] public void AddingAnimalObjects() { // Setup Animal p = new Penguin("Tux", Gender.Male, 0, 0, 0); var p2 = new Penguin("Tux", Gender.Male, 0, 0, 0); var mgr = new AnimalManager(); // Exercise mgr.AddAnimal(p); // an Animal mgr.AddAnimal(p2); // a Penguin // Verify var x = mgr.AnimalssAsRows; Assert.AreEqual(2, x.Count()); }
public void SortByName() { // Setup var mgr = new AnimalManager(); Animal bear1 = new Bear("Adam", Gender.Male, 5, 32, 147); var bear2 = new Bear("David", Gender.Male, 4, 32, 147); var p1 = new Penguin("Caesar", Gender.Male, 3, 32, 147); Animal e1 = new Eagle("Bertil", Gender.Female, 2, 11, 100); mgr.AddAnimal(bear1); mgr.AddAnimal(bear2); mgr.AddAnimal(p1); mgr.AddAnimal(e1); // pre-check Assert.AreNotEqual(bear1.Name, bear2.Name); // Execute mgr.SortBy("Name"); // We should be able to sort on Id, gender, name, age, eatertype, species or in general all properties that every Animal has. // Verify Assert.AreEqual("Adam", mgr.GetAnimal(0).Name); Assert.AreEqual("Bertil", mgr.GetAnimal(1).Name); // Execute again mgr.SortBy("ID"); // Verify Assert.AreEqual("Adam", mgr.GetAnimal(0).Name); Assert.AreEqual("David", mgr.GetAnimal(1).Name); // Execute again mgr.SortBy("Age"); // Verify Assert.AreEqual("Bertil", mgr.GetAnimal(0).Name); Assert.AreEqual("Caesar", mgr.GetAnimal(1).Name); }
//添加实体 public IEntity AddEntity(string strName, EntityType type, uint nBaseID, int nState) { EntityCreateData data = BuildCreateEntityData(type, nBaseID, nState); if (data == null) { return(null); } data.strName = strName; IEntitySystem es = ClientGlobal.Instance().GetEntitySystem(); if (es == null) { Engine.Utility.Log.Error("严重错误:EntitySystem is null!"); return(null); } IEntity entity = es.CreateEntity(type, data); if (entity == null) { Engine.Utility.Log.Error("AddEntity:创建家园对象失败!"); return(null); } if (entity.GetEntityType() == EntityType.EntityType_Animal) { m_AnimalManager.AddAnimal(entity as IAnimal); } m_dicEntity.Add((int)entity.GetID(), entity); return(entity); }