public void SetPositionVictim(Victim pVictim, float pX, float pY) { pVictim.SetXY(pX, pY); if (_level.victimList.Count > 0) { foreach (Victim otherVictim in _level.victimList) { if (pVictim.HitTest(otherVictim)) { SetPositionVictim(pVictim, pVictim.Boardwalk(pX), pY); } } } }
private void CreateVictim() { string facing = (OurUtils.RandomBool()) ? "up" : "down"; Victim newVictim = new Victim(this, facing); _victimLayer.AddChild(newVictim); newVictim.SetScaleXY(GROUND_LAYER_SCALE, GROUND_LAYER_SCALE); float positionModifier = MyGame.OldY() * ((facing == "up") ? 1 : -1); float positionX = 0; float positionY = Utils.Random(newVictim.height / 2, MyGame.OldY() - newVictim.height / 2) + positionModifier; positionX = newVictim.Boardwalk(positionX); newVictim.SetPositionVictim(newVictim, positionX, positionY); victimList.Add(newVictim); }