Ejemplo n.º 1
0
    public override void Handle(byte[] PacketBytes)
    {
        using (MemoryStream MemoryStream = new MemoryStream(PacketBytes))
        {
            using (BinaryReader Reader = new BinaryReader(MemoryStream))
            {
                MemoryStream.Position = 2;
                int ClientId = Helper.ReadInt(Reader);
                Debug.Log("Получены данные от клиента " + ClientId);

                EnemyPlayerInfo EnemyInfo = NetworkProfile.GetEnemyByKey(ClientId);

                EnemyInfo.X     = Helper.ReadFloat(Reader);
                EnemyInfo.Y     = Helper.ReadFloat(Reader);
                EnemyInfo.Z     = Helper.ReadFloat(Reader);
                EnemyInfo.Yaw   = Helper.ReadFloat(Reader);
                EnemyInfo.Pitch = Helper.ReadFloat(Reader);
                Debug.Log("X: " + EnemyInfo.X);
                Debug.Log("Y: " + EnemyInfo.Y);
                Debug.Log("Z: " + EnemyInfo.Z);
                Debug.Log("Yaw: " + EnemyInfo.Yaw);
                Debug.Log("Pitch: " + EnemyInfo.Pitch);

                Debug.Log("Данные игрока " + ClientId + " обновлены");
            }
        }
    }
Ejemplo n.º 2
0
    // Use this for initialization
    void Start()
    {
        if (Application.loadedLevelName == "BattleRoom")
        {
            enemyBoom = GameObject.Find("EnemyPlayer").GetComponent <EnemyPlayerInfo>();
        }

        Destroy(this.gameObject, 1f);
    }
Ejemplo n.º 3
0
 void Start()
 {
     AnimationManager = GetComponent <AnimationManager>();
     SoundManager     = GetComponent <SoundManager>();
     EnemyInfo        = NetworkProfile.GetLastEnemyPlayer();//NetworkProfile.GetEnemyByKey(this.IdClient);
     RigidBody        = GetComponent <Rigidbody>();
     TextMeshPro      = Nickname.GetComponent <TextMeshPro>();
     TextMeshPro.text = EnemyInfo.Nickname;
     ClientId         = EnemyInfo.ClientId;
 }
Ejemplo n.º 4
0
    // Use this for initialization
    void Start()
    {
        enemy_Info = GameObject.Find("EnemyPlayer").GetComponent <EnemyPlayerInfo>();

        shootablemask = LayerMask.GetMask("Shootable");

        gunAudio    = GetComponent <AudioSource>();
        gunParticle = GetComponent <ParticleSystem>();
        gunLine     = GetComponent <LineRenderer>();
        gunLight    = GetComponent <Light>();
    }
Ejemplo n.º 5
0
    public static EnemyPlayerInfo GetEnemyByKey(int ClientId)
    {
        EnemyPlayerInfo EnemyPlayer = EnemyPlayerDictionary[ClientId];

        EnemyPlayer.X     = 0f;
        EnemyPlayer.Y     = 0f;
        EnemyPlayer.Z     = 0f;
        EnemyPlayer.Pitch = 0f;
        EnemyPlayer.Yaw   = 0f;

        return(EnemyPlayer);
    }
Ejemplo n.º 6
0
        void Update()
        {
            if (GameStart == 1 && Application.loadedLevelName != "BattleRoom")
            {
                Buffer.BlockCopy(recv_E.Buffer, 4, id_temp, 0, 4);
                Application.LoadLevel("BattleRoom");
            }
            if (GameStart == 1 && Application.loadedLevelName == "BattleRoom")
            {
                readyInfo.SetReady();
                pInfo     = GameObject.Find("Player").GetComponent <PInfo>();
                enemyInfo = GameObject.Find("EnemyPlayer").GetComponent <EnemyPlayerInfo>();

                pInfo.player_Info.user_id = BitConverter.ToInt32(id_temp, 0);

                enemyInfo.transform.position = new Vector3(-10, 0, 0);
                pInfo.transform.position     = new Vector3(0, 0, 0);

                if (pInfo.player_Info.user_id == 2)
                {
                    pInfo.transform.position     = new Vector3(-10, 0, 0);
                    enemyInfo.transform.position = new Vector3(0, 0, 0);
                }

                Packet.Serialize(readyInfo).CopyTo(pbuffer, 0);
                packet.Packet_Create(pbuffer);
                send_E.SetBuffer(packet.GetPacket(), 0, packet.GetPacket().Length);

                send(send_E);

                GameStart++;
            }
            if (GameStart == 2 && Application.loadedLevelName == "BattleRoom")
            {
                if (playerInfo.user_id == pInfo.player_Info.user_id)
                {
                    return;
                }

                enemyInfo.SetPos(playerInfo.playerPos);
                enemyInfo.SetRot(playerInfo.playerRot);
                enemyInfo.SetHealth(playerInfo.health);
                enemyInfo.SetShoot(playerInfo.shoot);
                enemyInfo.SetWalking(playerInfo.walking);
                enemyInfo.SetDeath(playerInfo.death);
                enemyInfo.SetSkill(playerInfo.skill);
                enemyInfo.SetAimPos(playerInfo.CannonPos);
            }
        }
Ejemplo n.º 7
0
    // Use this for initialization
    void Start()
    {
        shootablemask = LayerMask.GetMask("Shootable");

        gunAudio    = GetComponent <AudioSource>();
        gunParticle = GetComponent <ParticleSystem>();
        gunLine     = GetComponent <LineRenderer>();
        gunLight    = GetComponent <Light>();
        playerBuff  = GameObject.Find("Player").GetComponent <PlayerBuff>();

        if (Application.loadedLevelName == "BattleRoom")
        {
            enemy_Player = GameObject.Find("EnemyPlayer").GetComponent <EnemyPlayerInfo>();
        }
    }
Ejemplo n.º 8
0
 private void FixedUpdate()
 {
     //Создание игрового объекта на сцене
     if (NetworkProfile.IsSessionHaveNewPlayer())
     {
         EnemyPlayerInfo Enemy = NetworkProfile.GetLastEnemyPlayer();
         if (Enemy.StartPosition != -1)
         {
             InstantiateEnemyPlayer(Enemy.StartPosition);
         }
         else
         {
             InstantiateExistedEnemyPlayer(Enemy.X, Enemy.Y, Enemy.Z, Enemy.Pitch, Enemy.Yaw);
         }
     }
 }
Ejemplo n.º 9
0
    private void Fire()
    {
        if (PlayerInputHandler.GetFireInput() && CanFire && PlayerStats.IsMagazineNotEmpty() && !IsReloading)
        {
            HitInfo = new RaycastHit();

            if (Physics.Raycast(Camera.transform.position, Camera.transform.forward, out HitInfo))
            {
                ShootParticle.Play();
                SoundManager.FireSound();
                PlayerStats.MinusAmmo();

                Debug.Log(HitInfo.transform.name);

                if (HitInfo.transform.name == "Enemy(Clone)")
                {
                    GameObject Target = HitInfo.transform.gameObject;
                    EnemyPlayerCharacterController EnemyController = Target.GetComponent <EnemyPlayerCharacterController>();
                    EnemyPlayerInfo EnemyInfo = EnemyController.EnemyInfo;

                    Debug.Log("Попаданиe по игроку: " + EnemyInfo.ClientId + " c ником " + EnemyInfo.Nickname);
                    ShootPacket ShootPacket = new ShootPacket(EnemyInfo.ClientId);
                    NetworkManager.SendPacket(ShootPacket);
                }
                else
                {
                    ShootPacket ShootPacket = new ShootPacket(0);
                    NetworkManager.SendPacket(ShootPacket);
                }

                CanFire = false;
                StartCoroutine(LockFire(0.1f));
            }
        }
        else if (PlayerInputHandler.GetReloadInput() && PlayerStats.IsMagazineNotFull() && !IsReloading)
        {
            IsReloading = true;
            SoundManager.ReloadSound();
            CanFire = false;
            StartCoroutine(LockFireForReloading(2f));
        }
    }
Ejemplo n.º 10
0
    public static EnemyPlayerInfo GetLastEnemyPlayer()
    {
        HaveNewPlayer = false;

        Dictionary <int, EnemyPlayerInfo> .KeyCollection KeyCol = EnemyPlayerDictionary.Keys;
        EnemyPlayerInfo LastEnemy = new EnemyPlayerInfo();
        int             i         = 0;

        foreach (int Key in KeyCol)
        {
            i++;
            if (i == KeyCol.Count)
            {
                LastEnemy = EnemyPlayerDictionary[Key];
                break;
            }
        }

        return(LastEnemy);
    }