コード例 #1
0
    private void SpawnPowerUp()
    {
        GameObject go = Instantiate(powerupPrefab[Random.Range(0, powerupPrefab.Length)]);

        APowerUp currentType = go.GetComponent <APowerUp>();

        //NW_PowerUp pu = go.GetComponent<NW_PowerUp>();
        //pu.Init();

        Transform spawnVolume = spawnAreas[Random.Range(0, spawnAreas.Length)].transform;
        Vector3   pos         = spawnVolume.position + new Vector3(Random.Range(-spawnVolume.transform.localScale.x, spawnVolume.transform.localScale.x),
                                                                   Random.Range(-spawnVolume.transform.localScale.y, spawnVolume.transform.localScale.y),
                                                                   Random.Range(-spawnVolume.transform.localScale.z, spawnVolume.transform.localScale.z));

        go.transform.position = pos;

        NetworkServer.Spawn(go);

        if (_spawnPowerupTimer.interval > _minSpawnRate)
        {
            _spawnPowerupTimer.interval -= _spawnPowerUpRateDecrase;
        }
        else
        {
            _spawnPowerupTimer.interval = _minSpawnRate;
        }

        print("  " + _spawnPowerupTimer.interval);
    }
コード例 #2
0
    public void Init()
    {
        ChangeColor  _colorChanger = GetComponent <ChangeColor>();
        MeshRenderer _meshRenderer = GetComponent <MeshRenderer>();

        _puwerUp = GetComponentInChildren <APowerUp>();
        if (_puwerUp.IsABadPowerUp)
        {
            _colorChanger.SetDeselectionColor(negativePower);
        }
        else
        {
            _colorChanger.SetDeselectionColor(positivePower);
        }

        Destroy(gameObject, _lifeTime);
    }
コード例 #3
0
 public void PowerUpPickUp(GameObject powerGo, int player_guid, APowerUp power)
 {
     Debug.Log("Power picked by player " + player_guid + " power id is " + powerGo.GetComponent <Guid>().GetGUID() + " power is " + power);
     power.OnPickUp(powerGo, player_guid);
 }