Exemplo n.º 1
0
 void StrafeTank(TankComponentMovementMsg msg)
 {
     //dir tid, fno
     if (msg.TankID == TankID)
     {
         if (msg.Direction)
         {//strafeleft
             if (Stamina > 0.0f)
             {
                 transform.position -= transform.right * Time.deltaTime * StrafeSpeed;
                 Stamina            -= (2.0f + Math.Abs(Stamina / 100f) + .01f);
                 UpdateHealthOrStamina(Stamina, 0.0f, 100.0f, 1);
             }
         }
         else
         {//straferight
             if (Stamina > 0.0f)
             {
                 transform.position += transform.right * Time.deltaTime * StrafeSpeed;
                 Stamina            -= (2.0f + Math.Abs(Stamina / 100f) + .01f);
                 UpdateHealthOrStamina(Stamina, 0.0f, 100.0f, 1);
             }
         }
     }
 }
Exemplo n.º 2
0
 static string DeconstructTankComponentMovementMsg(int id, TankComponentMovementMsg msg)
 {
     return
         (id
          + "," + msg.Direction
          + "," + msg.FrameNo
          + "," + msg.TankID);
 }
Exemplo n.º 3
0
 void StrafeTank(TankComponentMovementMsg msg)
 {
     if (msg.External)
     {
         return;
     }
     WebsockAdaptorSend(DeconstructTankComponentMovementMsg(StrafeTankID, msg));
 }
Exemplo n.º 4
0
 void MoveGunHorizontal(TankComponentMovementMsg msg)
 {
     if (msg.External)
     {
         return;
     }
     WebsockAdaptorSend(DeconstructTankComponentMovementMsg(MoveGunHorizontalID, msg));
 }
Exemplo n.º 5
0
    static TankComponentMovementMsg ReconstructTankComponentMovementMsg(string message)
    {
        string[] parts = message.Split(new char[] { ',' });
        TankComponentMovementMsg msg = new TankComponentMovementMsg();

        msg.Direction = bool.Parse(parts [0]);
        msg.FrameNo   = int.Parse(parts [1]);
        msg.TankID    = byte.Parse(parts [2]);
        return(msg);
    }
Exemplo n.º 6
0
 void CheckStrafeTank()
 {
     if (Input.GetKey(StrafeLeft))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, true);
         OwningGame.BroadcastMessage("StrafeTank", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
     if (Input.GetKey(StrafeRight))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, false);
         OwningGame.BroadcastMessage("StrafeTank", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
 }
Exemplo n.º 7
0
 void CheckMoveTank()
 {
     if (Input.GetKey(Forward))
     {   //forward
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, true);
         OwningGame.BroadcastMessage("MoveTank", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
     if (Input.GetKey(Backward))
     {   //backward
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, false);
         OwningGame.BroadcastMessage("MoveTank", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
 }
Exemplo n.º 8
0
 void CheckMoveTank()
 {
     if (Input.GetKey(Forward))
     {   //forward
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, true);
         GameUtilities.Broadcast("MoveTank", msg);
     }
     if (Input.GetKey(Backward))
     {   //backward
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, false);
         GameUtilities.Broadcast("MoveTank", msg);
     }
 }
Exemplo n.º 9
0
 void CheckStrafeTank()
 {
     if (Input.GetKey(StrafeLeft))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, true);
         GameUtilities.Broadcast("StrafeTank", msg);
     }
     if (Input.GetKey(StrafeRight))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, false);
         GameUtilities.Broadcast("StrafeTank", msg);
     }
 }
Exemplo n.º 10
0
 void TurnTank(TankComponentMovementMsg msg) //rotate Left or Right
 {
     if (msg.TankID == TankID)
     {
         if (msg.Direction)
         {
             transform.Rotate(0.0f, Input.GetAxis("Horizontal") * RotateSpeed, 0.0f);
         }
         else
         {
             transform.Rotate(0.0f, Input.GetAxis("Horizontal") * RotateSpeed, 0.0f);
         }
     }
 }
Exemplo n.º 11
0
 void MoveTank(TankComponentMovementMsg msg)
 {
     if (msg.TankID == TankID)
     {
         if (msg.Direction)
         {   //forward
             transform.position += transform.forward * Time.deltaTime * PlayerSpeed;
         }
         else
         {   //backward
             transform.position -= transform.forward * Time.deltaTime * PlayerSpeed;
         }
     }
 }
Exemplo n.º 12
0
 void TurnTank(TankComponentMovementMsg msg) //rotate Left or Right
 {
     if (msg.TankID == TankID)
     {
         if (msg.Direction)
         {
             transform.Rotate(Vector3.up, RotateSpeed * Time.deltaTime);
         }
         else
         {
             transform.Rotate(Vector3.up, -RotateSpeed * Time.deltaTime);
         }
     }
 }
Exemplo n.º 13
0
 void CheckVerticalMove()
 {
     if (Input.GetKey(Up))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, true);
         GameUtilities.Broadcast("MoveGunVertical", msg);
     }
     if (Input.GetKey(Down))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, false);
         GameUtilities.Broadcast("MoveGunVertical", msg);
     }
 }
Exemplo n.º 14
0
 void CheckHorizontalMove()
 {
     if (Input.GetKey(Right))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, true);
         GameUtilities.Broadcast("MoveGunHorizontal", msg);
     }
     if (Input.GetKey(Left))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, false);
         GameUtilities.Broadcast("MoveGunHorizontal", msg);
     }
 }
Exemplo n.º 15
0
 void CheckVerticalMove()
 {
     if (Input.GetKey(Up))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, true);
         OwningGame.BroadcastMessage("MoveGunVertical", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
     if (Input.GetKey(Down))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(OwningTank.GetComponent <TankBody>().TankID,
                                                                     Time.frameCount, false);
         OwningGame.BroadcastMessage("MoveGunVertical", msg, GameUtilities.DONT_CARE_RECIEVER);
     }
 }
Exemplo n.º 16
0
 void CheckTurnTank()
 {
     if (Input.GetKey(Left))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, false);
         GameUtilities.Broadcast("TurnTank", msg);
         MarkSyncNeeded();
     }
     if (Input.GetKey(Right))
     {
         TankComponentMovementMsg msg = new TankComponentMovementMsg(TankID, CurrentFrame, true);
         GameUtilities.Broadcast("TurnTank", msg);
         MarkSyncNeeded();
     }
 }
Exemplo n.º 17
0
 void MoveGunHorizontal(TankComponentMovementMsg msg)
 {
     if (msg.TankID == OwningTank.GetComponent <TankBody>().TankID)
     {
         if (msg.Direction)
         {
             Vector3 EAng = transform.rotation.eulerAngles;
             EAng.y            += DeltaY;
             transform.rotation = Quaternion.Euler(EAng);
         }
         else
         {   //madbrew : workaround. If I use the Rotate function with Vector3.forward, I get a Z axis rotation that rotates the gun
             // in a plane created by the x rotation
             Vector3 EAng = transform.rotation.eulerAngles;
             EAng.y            -= DeltaY;
             transform.rotation = Quaternion.Euler(EAng);
         }
     }
 }
Exemplo n.º 18
0
 void MoveGunVertical(TankComponentMovementMsg msg)
 {   //
     if (msg.TankID == OwningTank.GetComponent <TankBody>().TankID)
     {
         if (msg.Direction)
         {
             if (DeviationX < UpperDeviationLimit)
             {
                 transform.Rotate(Vector3.right, -5 * GunRotateSpeed * Time.deltaTime);
                 DeviationX++;
             }
         }
         else
         {
             if (DeviationX > LowerDeviationLimit)
             {
                 transform.Rotate(Vector3.right, 5 * GunRotateSpeed * Time.deltaTime);
                 DeviationX--;
             }
         }
     }
 }
Exemplo n.º 19
0
 void MoveGunHorizontal(TankComponentMovementMsg msg)
 {
     WebsockAdaptorSend(DeconstructTankComponentMovementMsg(MoveGunHorizontalID, msg));
 }
Exemplo n.º 20
0
 void StrafeTank(TankComponentMovementMsg msg)
 {
     WebsockAdaptorSend(DeconstructTankComponentMovementMsg(StrafeTankID, msg));
 }
Exemplo n.º 21
0
 void TurnTank(TankComponentMovementMsg msg)
 {
     WebsockAdaptorSend(DeconstructTankComponentMovementMsg(TurnTankID, msg));
 }