static PacketBase AddType(this PacketBase packet, TypeOfGun.myType info)
    {
        var list = packet.typeInfo != null?packet.typeInfo.ToList() : new List <TypeOfGun.myType>();

        list.Add(info);
        packet.typeInfo = list.ToArray();
        return(packet);
    }
Example #2
0
    void PlayerSpawnLargeBox(Player player, TypeOfGun.myType type)
    {
        DestroyableObject largeBox = Instantiate(ServerManager.instance.objectsToSpawn[3]).GetComponent <DestroyableObject>();

        largeBox.transform.position = player.gun.transform.position;
        largeBox.transform.right    = player.transform.right;
        largeBox.playerId           = player.connectionId;
        largeBox.Setup(lifeLargeBox);
        NetworkServer.Spawn(largeBox.gameObject);
    }
Example #3
0
    void PlayerThrowGrenade(Player player, TypeOfGun.myType type)
    {
        Grenade grenade = Instantiate(ServerManager.instance.objectsToSpawn[1]).GetComponent <Grenade>();

        grenade.playerId           = player.connectionId;
        grenade.transform.position = player.gun.transform.position;
        grenade.transform.right    = player.transform.right;
        grenade.Setup(grenadeSpeed, grenadeLife, grenadeDamage, Server_Dammaged, player.transform.right);
        NetworkServer.Spawn(grenade.gameObject);
    }
Example #4
0
    void PlayerShoot(Player player, TypeOfGun.myType type)
    {
        Bullet bullet = Instantiate(ServerManager.instance.objectsToSpawn[0]).GetComponent <Bullet>();

        bullet.transform.position = player.gun.transform.GetChild(0).transform.position;
        bullet.transform.right    = player.gun.transform.GetChild(0).transform.right;
        bullet.playerId           = player.connectionId;
        bullet.Setup(bulletSpeed, bulletDamage, Server_Dammaged);
        NetworkServer.Spawn(bullet.gameObject);
    }
Example #5
0
    //Shoot
    public void Server_ShootCommand(TypeOfGun.myType type, int playerId)
    {
        var player = ServerManager.instance.myPlayers[playerId];

        if (type == TypeOfGun.myType.pistol)
        {
            PlayerShoot(player, type);
            return;
        }

        if (player.ammoAmount[type] <= 0)
        {
            return;
        }

        if (type == TypeOfGun.myType.rifle)
        {
            PlayerShoot(player, type);
        }
        else if (type == TypeOfGun.myType.throwable)
        {
            PlayerThrowGrenade(player, type);
        }
        else if (type == TypeOfGun.myType.box)
        {
            PlayerSpawnBox(player, type);
        }
        else if (type == TypeOfGun.myType.largebox)
        {
            PlayerSpawnLargeBox(player, type);
        }

        player.ammoAmount[type]--;
        player.UpdateAmmo();

        new PacketBase(PacketIDs.UpdateAmmo_Command).Add(type).Add(playerId).Add(1).SendAsServer();
    }
Example #6
0
 public void UpdateAmmo_Command(TypeOfGun.myType type, int playerid, int less)
 {
     myPlayers[playerid].ammoAmount[type] -= less;
     myPlayers[playerid].UpdateAmmo();
 }