private void InitCollisionCheckers(ISnakeController snakeController) { foreach (var checker in snakeController.CollisionCheckers) { checker.OnCollisionEnter += CheckCollisions; } }
public GameSession(IServiceLocator gameController) { this.gameController = gameController; snakeController = gameController.GetService <ISnakeController>(); InitCollisionCheckers(snakeController); gameController.GetService <IInput>().OnInputChange += StartGame; }
private void Awake() { moveSpeed = GameMode.MAX_FORWARD_SPEED; turnSpeed = GameMode.TURNING_RATE; maxSpeedDelay = GameMode.DELAY_UNTIL_MAXSPEED; myRigidbody2D = GetComponent <Rigidbody2D>(); myController = GetComponent <ISnakeController>(); }
// Use this for initialization void Awake() { m_Segments = new LinkedList <SnakeSegment>(); m_Controller = GetComponent <ISnakeController>(); m_ShrinkFilter = new SnakeShrinkFilter(); m_SegmentPool.Init(transform); enabled = false; }
internal GameInstance(GridDescription gridDescription, Snake snake, ISnakeController controller, RandomFoodGenerator randomFoodGenerator) { this.gridDescription = gridDescription; this.snake = snake; this.controller = controller; this.randomFoodGenerator = randomFoodGenerator; foodPosition = GenerateFoodPosition(); elapsedTimeSinceMove = 0; speed = 10; IsSnakeAlive = true; Score = 0; }