示例#1
0
 public void OnSelect(bool multiplayer)
 {
     if (multiplayer)
     {
         if (Topan.Network.isConnected && wm.rootNetView != null)
         {
             wm.rootNetView.RPC(Topan.RPCMode.Others, "NetworkSelectGrenade", (byte)curGrenade.grenadeID);
         }
     }
     else
     {
         DeselectAll();
         curGrenade = availableGrenades[Mathf.Clamp(grenadeIndex, 0, availableGrenades.Count - 1)];
         curGrenade.gameObject.SetActive(true);
         curGrenade.OnSelect();
         dm.sao = curGrenade.GetComponent <SprintAnimOverride>();
     }
 }
示例#2
0
    public void Initialize()
    {
        if (nadeList != null)
        {
            GrenadeDatabase.savedGrenadeList = nadeList;
        }

        PlayerReference playerRef = GeneralVariables.playerRef;

        wm  = playerRef.wm;
        dm  = playerRef.dm;
        gam = playerRef.gam;

        grenadeInventory[0] = AddGrenadeToInventory(gam.grenadeTypeOne);
        grenadeInventory[1] = AddGrenadeToInventory(gam.grenadeTypeTwo);

        CheckGrenades();

        curGrenade = availableGrenades[0];
        curGrenade.OnSelect();
        canSwitch = true;
        gameObject.SetActive(false);
    }
示例#3
0
    public IEnumerator SelectGrenade(GrenadeController grenade, bool immediate)
    {
        if (Topan.Network.isConnected && wm.rootNetView != null)
        {
            wm.rootNetView.RPC(Topan.RPCMode.Others, "NetworkSelectGrenade", (byte)grenade.grenadeID);
        }

        if (!immediate)
        {
            dm.Draw(wm.drawTime);
            canSwitch = false;
            yield return(new WaitForSeconds(wm.drawTime));

            wm.GetComponent <AudioSource>().PlayOneShot(wm.drawSound, 0.2f);
        }

        DeselectAll();
        curGrenade = grenade;
        curGrenade.gameObject.SetActive(true);
        curGrenade.OnSelect();
        dm.sao = curGrenade.GetComponent <SprintAnimOverride>();

        canSwitch = true;
    }