Пример #1
0
 public static void reset()     //resetting game parameters to default
 {
     fruitsAte = 0;
     ObstacleManagerClass.reset();
     FruitManagerClass.reset();
     SnakeManagerClass.reset();
     PlaygroundManagerClass.reset();
 }
Пример #2
0
 public static void init()     //initialising variables
 {
     PlaygroundManagerClass.init(WallTagName);
     SnakeManagerClass.init(FruitTagName, WallTagName);
     FruitManagerClass.init(FruitTagName);
     ObstacleManagerClass.init(WallTagName);
     SnakeManagerClass.onAteCallback   += onAteFruit;
     SnakeManagerClass.onDeathCallback += afterPlayerDeath;
 }
Пример #3
0
    static void checkForObstacleAndInstantiateFruitInRange(float x0, float x1)
    {
        //Fruit is instantiated at point which is inside the playground and below which no obstacle is present
        //if obstacle is present, Snake will not be able to eat it
        Vector3 point = generateRandomPointInsidePlayground(x0, x1);

        while (ObstacleManagerClass.isObstacleBelow(point + 2 * Vector3.up))
        {
            point = generateRandomPointInsidePlayground(x0, x1);
        }
        instantiateFruit(point);
    }
Пример #4
0
    public static void setProceduralLevel(int level = 1)     //setting up Custom level
    {
        if (levelManagerObj.maxProceduralLevel <= 0 && level == levelManagerObj.maxProceduralLevel)
        {
            if (onGameWonCallback != null)
            {
                onGameWonCallback();
            }
            return;
        }
        fruitsAte = 0;
        int numOfSides = level + 2;

        inscribedCircleRadius         = levelManagerObj.inscribedRadiusOfProceduralPolygon;
        circumscribedSquareHalfLength = levelManagerObj.inscribedRadiusOfProceduralPolygon / Mathf.Cos(Mathf.PI / numOfSides);
        PlaygroundManagerClass.setProceduralPlayground(inscribedCircleRadius, numOfSides); //set ground
        SnakeManagerClass.instantiateSnakeHead();                                          //set player

        FruitManagerClass.setFruitParent();                                                //set fruit
        instantiateFruit(generateRandomPointInsidePlayground(-circumscribedSquareHalfLength, circumscribedSquareHalfLength));
        ObstacleManagerClass.setObstacleParent();
    }
Пример #5
0
 static void instantiateObstacle(Vector3 point)
 {
     ObstacleManagerClass.istantiateObstacleAt(point);
 }