Inheritance: MonoBehaviour
示例#1
0
    public override void OnInspectorGUI()
    {
        spawnPosition = EditorGUILayout.Vector3Field("Spawn Position", spawnPosition);
        sizes         = EditorGUILayout.Vector3IntField("Grid Sizes", sizes);
        prefabName    = EditorGUILayout.TextField("Prefab Name", prefabName);

        if (GUILayout.Button("Construct Board"))
        {
            var prefab = GetPrefabFromKeyword(prefabName);
            var test   = new GameObject("Board Test");
            test.transform.position = spawnPosition;
            GridSpawner.ConstructPlanes(sizes, test, prefab);
        }
        if (GUILayout.Button("Construct Plane"))
        {
            var prefab = GetPrefabFromKeyword(prefabName);
            var test   = new GameObject("Plane Test");
            test.transform.position = spawnPosition;
            GridSpawner.ConstructPlane(new Vector2Int(sizes.x, sizes.y), test, prefab);
        }
        if (GUILayout.Button("Construct Column"))
        {
            var prefab = GetPrefabFromKeyword(prefabName);
            var test   = new GameObject("Column Test");
            test.transform.position = spawnPosition;
            GridSpawner.ConstructColumn(sizes.y, test, prefab);
        }
    }
示例#2
0
 // Use this for initialization
 void Start()
 {
     player    = GameObject.Find("Player").GetComponent <Player>();
     spawner   = GameObject.Find("Spawners").GetComponent <GridSpawner>();
     gameState = GameState.MainMenu;
     musicControl.startMusic();
     UIEventListener.Get(muteButton1).onClick += toggleSound;
     UIEventListener.Get(muteButton2).onClick += toggleSound;
     pauseLock = false;
 }
示例#3
0
 // Update is called once per frame
 void OnMouseDown()
 {
     currentHealth--;
     UpdateScale();
     if (currentHealth < 1)
     {
         Die(true);
         GridSpawner gridSpawner = transform.parent.parent.GetComponent <GridSpawner>();
         gridSpawner.RemoveFromGrid(posX, posY);
     }
 }
示例#4
0
    public void Defeat()
    {
        currentGameState = GameState.Defeat;
        UILabel score = GameObject.Find("score_value").GetComponent <UILabel>();

        score.text = "0";

        if (band == Band.Skull)
        {
            defeatSymbolKiss.SetActive(false);
            defeatSymbolSkull.SetActive(true);
            defeatSymbolWing.SetActive(false);
        }
        if (band == Band.Kiss)
        {
            defeatSymbolKiss.SetActive(true);
            defeatSymbolSkull.SetActive(false);
            defeatSymbolWing.SetActive(false);
        }
        if (band == Band.Wing)
        {
            defeatSymbolKiss.SetActive(false);
            defeatSymbolSkull.SetActive(false);
            defeatSymbolWing.SetActive(true);
        }



        //NGUITools.SetActive( gameplayPanel,false);
        NGUITools.SetActive(blockPanel, true);

        if (player.Score > PlayerPrefs.GetInt("topScore"))
        {
            PlayerPrefs.SetInt("topScore", player.Score);
        }
        NGUITools.SetActive(defeatPanel, true);
        UILabel defeatScore = GameObject.Find("defeat_score_value").GetComponent <UILabel>();
        UILabel topScore    = GameObject.Find("top_score_value").GetComponent <UILabel>();
        UILabel distance    = GameObject.Find("distance_value").GetComponent <UILabel>();

        defeatScore.text = player.Score.ToString();
        topScore.text    = PlayerPrefs.GetInt("topScore").ToString();

        GridSpawner gs = GameObject.Find("Spawners").GetComponent <GridSpawner> ();

        distance.text = gs.TileCounter.ToString() + " m";
        GA.API.Design.NewEvent("Distance when defeat", gs.TileCounter);
    }
    public void ConstructNewBoard(Vector3Int size, bool shouldReplace = true)
    {
        if (shouldReplace)
        {
            Destroy(zoneBoard);
        }

        zoneBoard = Instantiate(tokenBoardPrefab, spawnPoint, new Quaternion());
        var planes = new GameObject("Planes");

        planes.SetParentRelative(zoneBoard);
        zoneData = GridSpawner.ConstructPlanes(size, planes, tokenZonePrefab);

        FitCollider(size);
        FitBase(size);
        InitZoneData();
    }
示例#6
0
    // Use this for initialization
    void Start()
    {
        originalColliderSize = transform.gameObject.GetComponent <BoxCollider> ().size;
        // Random color
        //gameObject.renderer.material.color = new Color (Random.value, Random.value, Random.value);
        player        = GameObject.Find("Player");
        currentHealth = Random.Range(minHealth, maxHealth + 1);
        UpdateScale();
        // Get Spawner
        Spawner spawner = transform.parent.GetComponent <Spawner> ();

        posX = spawner.posX;
        posY = spawner.posY;
        // Get GridSpawner
        GridSpawner gridSpawner = spawner.transform.parent.GetComponent <GridSpawner>();

        gridSpawner.InsertToGrid(posX, posY, gameObject);
    }
    // Use this for initialization
    void Start()
    {
        grid = GameObject.Find("Grid");
        gridSpawner = grid.GetComponent<GridSpawner>();

        float Xoffset = (this.transform.position.x + 0.4f) % 0.8f;
        if (Xoffset >= 0.4f) { Xoffset -= 0.8f; };
        float Yoffset = (this.transform.position.y + 0.4f) % 0.8f;
        if (Yoffset >= 0.4f) { Yoffset -= 0.8f; };
        float newx = this.transform.position.x - Xoffset;
        float newy = this.transform.position.y - Yoffset;
        this.transform.position = new Vector3(newx, newy, this.transform.position.z);

        int currentX = FindCellPositionX(transform.position.x);
        int currentY = FindCellPositionY(transform.position.y);

        RoomManager.get().register(this, currentX, currentY);
    }
示例#8
0
 void HitWithinRange(GridSpawner gridSpawner)
 {
     for (int x = posX - radius; x <= posX + radius; x++)
     {
         for (int y = posY - radius; y <= posY + radius; y++)
         {
             GameObject obj = gridSpawner.LookupGrid(x, y);
             if (obj)
             {
                 Mole mole = obj.GetComponent <Mole>();
                 if (true)
                 {
                     mole.Die();
                 }
             }
         }
     }
 }
示例#9
0
    // Update is called once per frame
    void Update()
    {
        Vector3 scale = transform.localScale;

        scale.x += Time.deltaTime * expandSpeed / lifetime;
        scale.z += Time.deltaTime * expandSpeed / lifetime;
        transform.localScale = scale;

        GridSpawner gridSpawner = GameObject.Find("GridSpawner").GetComponent <GridSpawner>();

        HitWithinRange(gridSpawner);

        currentLifetime += Time.deltaTime;

        if (currentLifetime >= lifetime)
        {
            Destroy(gameObject);
        }
    }
示例#10
0
    private void Init()
    {
        aStarGrid        = GameObject.FindGameObjectWithTag("AStar").GetComponent <ASGrid>();
        camController    = Camera.main.GetComponent <CameraController>();
        gridSpawner      = GetComponent <GridSpawner>();
        bonusTestManager = FindObjectOfType <BonusManager>();
        gridSpawner.SetGridTransformr(transform);
        thisTransform = transform;
        camController.SetCamSize(gridSize.x, gridSize.y, cellDiameter);
        Action <Vector3[, ]> level1 = SetLevel1;
        Action <Vector3[, ]> level2 = SetLevel2;
        Action <Vector3[, ]> level3 = SetLevel3;

        levelsList = new Dictionary <int, Action <Vector3[, ]> >
        {
            { 1, level1 },
            { 2, level2 },
            { 3, level3 }
        };
    }
示例#11
0
    public Constraints boundingPositionBox; // Used to enter the coords to bound the Snirts to.
    #endregion

    void Start()
    {
        anim = GetComponent <Animator>();

        gridManager = GameObject.FindGameObjectWithTag("NodeSpawner").GetComponent <GridSpawner>();

        predator = GameObject.FindGameObjectWithTag("Enemy");                     // TEMP

        behaviourTreeRoot = new Selector(                                         // <ROOT>
            new Sequence(                                                         // [Starvation Check]
                new StarvationCheck(gameObject),                                  // (Hunger at Complete 0?)
                new Die(gameObject)),                                             // (PERISH)
            new Sequence(                                                         // [Predator Check]
                new PredatorInRangeCheck(gameObject),                             // (Can See Predator?)
                new FleeFromPredator(gameObject)),                                // (Flee)
            new Sequence(                                                         // [Food]
                new LowFoodCheck(gameObject),                                     // (Low on Food?)
                new Selector(                                                     // <Pathfinding>
                    new Sequence(                                                 // [Path]
                        new NeedPathCheck(gameObject),                            // (Need a Path?)
                        new CreatePathToFood(gameObject, gridManager.foodNodes)), // (Create a Path)
                    new SeekAlongPathToFood(gameObject))),                        // (Seek Along Path)
            new Selector(                                                         // <Wander>
                new Sequence(                                                     // [Move]
                    new StaminaCheck(gameObject),                                 // (Stamina High Enough?)
                    new WanderFlock(gameObject)),                                 // (Wander)
                new Rest(gameObject)));                                           // (Rest)

        hunger        = Random.Range(hungerMax - 20, hungerMax);
        stamina       = Random.Range(staminaMax - 20, staminaMax);
        waterSpeed    = speed / 2;
        originalSpeed = speed;
        snirtName     = RandomName();

        RandomVelocity();
    }
示例#12
0
 void Awake()
 {
     staticRef = this;
 }
示例#13
0
 private void Awake()
 {
     gridSpawner = GetComponent <GridSpawner>();
 }
示例#14
0
 private void GetSpawners()
 {
     swarmSpawner = GameObject.Find("SwarmSpawner").GetComponent <SwarmSpawner>();
     gridSpawner  = GameObject.Find("GridSpawner").GetComponent <GridSpawner>();
     lightSpawner = GameObject.Find("LightSpawner").GetComponent <LightSpawner>();
 }
示例#15
0
 public ScoringLoop(PlayLoop playLoop, TweenerLib tweenerLib) : base(playLoop, tweenerLib)
 {
     player      = playLoop.Player;
     gridSpawner = playLoop.GridSpawner;
 }
示例#16
0
 public NewRoundLoop(PlayLoop playLoop, TweenerLib tweenerLib) : base(playLoop, tweenerLib)
 {
     player      = playLoop.Player;
     gridSpawner = playLoop.GridSpawner;
 }