private void Spawn(KritterData kritter) { Kritter newKritter = Instantiate(_kritterPrefab, GameManager.Current.KorralCollider.transform); newKritter.name = kritter.name; newKritter.Data = kritter; newKritter.transform.position = GameManager.Current.GetLegalKritterPosition(); _kritters.Add(newKritter); }
public static void AssertKritterKillsPlayerRight() { /*TEST 2: Player vs Kritter Right*/ Player player = new Player(); player.Body.BottomCenter = new Vector2(300, 300); IGameObject testObj = new Kritter(); testObj.Body.BottomCenter = new Vector2(290, 300); Assert.IsTrue(player.State is DKDeadState); }
public static void AssertPlayerKillsKritter() { /*TEST 2: Player vs Kritter*/ Player player = new Player(); player.Body.BottomCenter = new Vector2(300, 300); IGameObject testObj = new Kritter(); testObj.Body.BottomCenter = new Vector2(300, 310); Kritter testConcrete = (Kritter)testObj; Assert.AreNotEqual(testConcrete.Body.Velocity.Y, 0); }
void Update() { if (!GameOver) { #if UNITY_EDITOR if (Input.GetKeyDown(KeyCode.Space)) { AddFailure(); } #endif if (Input.GetMouseButtonDown(1)) { SetNeedMode(KritterNeeds.None); } if (!EventSystem.current.IsPointerOverGameObject() && Input.GetMouseButtonDown(0)) { var hits = Physics2D.RaycastAll(Camera.main.ScreenToWorldPoint(Input.mousePosition), Vector2.zero); foreach (var hit in hits) { if (hit.transform.CompareTag("Kritter")) { _kritter = hit.transform.GetComponent <Kritter>(); if (_currentNeedMode == KritterNeeds.None) { _kritter.StartDrag(); break; } else { if (_kritter.FillNeed(_currentNeedMode)) { SetNeedMode(KritterNeeds.None); break; } } } } } if (Input.GetMouseButtonUp(0)) { if (_kritter != null) { _kritter.EndDrag(); _kritter = null; } } } }
public Kritter GetNearestKritterToFight(Kritter instigator) { float shortestDistance = float.MaxValue; Kritter nearest = null; foreach (Kritter k in _kritters) { if ((instigator.IsStarving || instigator.Type != k.Type) && instigator != k) { float dist = Vector3.Distance(instigator.transform.position, k.transform.position); if (dist < shortestDistance) { shortestDistance = dist; nearest = k; } } } return(nearest); }
public Kritter GetNearestKritterToFight(Kritter instigator) { return(KritterManager.GetNearestKritterToFight(instigator)); }