Beispiel #1
0
    void shootBullet()
    {
        GameObject bullet = Instantiate(bulletPrefab, transform.position + bulletStartPosition, Quaternion.identity);

        // set color
        // set physical layer
        bullet.GetComponent <Renderer>().material.color = ColorLayerInfo.GetColorByLayerName(color);
        bullet.layer = LayerMask.NameToLayer(color);
        Rigidbody2D rb;

        rb          = bullet.GetComponent <Rigidbody2D>() as Rigidbody2D;
        rb.velocity = bulletInitialVelocity;
        bullet.GetComponent <Bullet>().lifeTime = bulletLifeTime;
    }
Beispiel #2
0
 void OnTriggerExit2D(Collider2D collision)
 {
     if (collision.gameObject.CompareTag("Player"))
     {
         string playerColor = ColorLayerInfo.GetPlayerColor(LayerMask.LayerToName(collision.gameObject.layer));
         if (!layer.Equals("Default") && !playerColor.Equals(layer))
         {
             return;
         }
         if (toggleables.Length > 0)
         {
             foreach (GameObject toggleable in toggleables)
             {
                 toggleable.GetComponent <IToggleable>().Toggle(false, "Exit", playerColor);
             }
         }
         toggled = false;
         updateLayerAndColor("Default");
     }
 }
Beispiel #3
0
 void updateLayerAndColor(string layerName)
 {
     gameObject.layer = LayerMask.NameToLayer(layerName);
     gameObject.GetComponent <Renderer>().material.color = ColorLayerInfo.GetColorByLayerName(layerName);
 }