private void OnEvent(byte eventcode, object content, int senderid)
    {
        //if (this.id != mainID) return;

        byte[] c = (byte[])content;
        //Debug.Log("Event Triggered: " + eventcode + " " + c[0]);
        if (eventcode == 0) //Player shot
        {
            NetworkPlayer sender;
            players.TryGetValue(c[0], out sender);
            if (sender == this)
            {
                return;
            }
            sender.gun.GetComponent <Gun>().NetworkShoot();
            //return;
        }
        if (eventcode == 1) //Player was hit
        {
            //Debug.Log("Not yet Hits: " + c[1] + " " + c[0]);
            if (c[1] == mainID)
            {
                //Debug.Log("Hits: " + c[1] + " " + c[0]);
                this.Hit(c[0]);
            }
            return;
        }
        if (eventcode == 2) //Player was killed
        {
            Leaderboards.ReportKill(c[0], c[1]);
            return;
        }
    }
 public void Die(int id)
 {
     GetComponent <UnityStandardAssets.Characters.FirstPerson.FirstPersonController>().enabled = false; //stop moving
     Leaderboards.ReportKill(id, this.id);
     PhotonNetwork.RaiseEvent(2, new byte[] { (byte)id, (byte)this.id }, true, null);
     invulnurable = true;
     respawntime  = RESPAWN_DELAY;
     //Color c = this.gameObject.GetComponentInChildren<Renderer>().material.color;
     //c.a = 0;
     //this.gameObject.GetComponentInChildren<Renderer>().material.color = c;
 }