Esempio n. 1
0
    // Update is called once per frame
    void Update()
    {
        onGround = IsGrounded();

        if (!isAttack)
        {
            Movenment();
        }

        Jumping();

        if (Input.GetKeyDown(KeyCode.X) && !isAttack)
        {
            isAttack = true;
            StartCoroutine(OnAttack());

            if (onGround != OnGround.onAir)
            {
                rb2d.velocity = Vector2.zero;
            }
        }

        if (onGround == OnGround.onSlope)
        {
            rb2d.gravityScale = 0;
        }
        else
        {
            if (rb2d.gravityScale == 0)
            {
                rb2d.gravityScale = tempGravity;
            }
        }
    }
Esempio n. 2
0
        /// <summary>
        /// Returns the message as parseable BaseStation message text.
        /// </summary>
        /// <param name="emitExtendedBaseStationFormat">True if MLAT-sourced messages should use a message type of MLAT, false if they should use MSG. Ignored for other message types.</param>
        /// <returns>The properties of the message formatted up as a text string that can be sent to any application
        /// that can interpret BaseStation messages.</returns>
        public string ToBaseStationString(bool emitExtendedBaseStationFormat = false)
        {
            StringBuilder result = new StringBuilder();
            var           messageGeneratedLocal = MessageGenerated.ToLocalTime();
            var           messageLoggedLocal    = MessageLogged.ToLocalTime();

            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", BaseStationMessageHelper.ConvertToString(MessageType, IsMlat, emitExtendedBaseStationFormat));
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", MessageType == BaseStationMessageType.Transmission ? BaseStationMessageHelper.ConvertToString(TransmissionType) : "");
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", SessionId);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", AircraftId);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Icao24);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", FlightId);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0:yyyy/MM/dd},", messageGeneratedLocal);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0:HH:mm:ss.fff},", messageGeneratedLocal);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0:yyyy/MM/dd},", messageLoggedLocal);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0:HH:mm:ss.fff},", messageLoggedLocal);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", MessageType == BaseStationMessageType.StatusChange ? BaseStationMessageHelper.ConvertToString(StatusCode) : Callsign);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Altitude);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Round.GroundSpeed(GroundSpeed));
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Round.Track(Track));
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Round.Coordinate(Latitude));
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Round.Coordinate(Longitude));
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", VerticalRate);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Squawk);
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", SquawkHasChanged == null ? "" : SquawkHasChanged.Value ? "-1" : "0");
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", Emergency == null ? "" : Emergency.Value ? "-1" : "0");
            result.AppendFormat(CultureInfo.InvariantCulture, "{0},", IdentActive == null ? "" : IdentActive.Value ? "-1" : "0");
            result.AppendFormat(CultureInfo.InvariantCulture, "{0}", OnGround.GetValueOrDefault() ? "-1" : "0");        // Turns out BaseStation never emits a null OnGround value...

            return(result.ToString());
        }
Esempio n. 3
0
 /**
  *  @param onGroundState 땅위에서 애니메이션 상태
  *  @param offGroundState 공중에서 애니메이션 상태
  *  @param onClimbing 벽타기 중 애니메이션 상태
  *  @param playerAction 플레이어만이 행동 애니메이션 상태
  */
 public virtual void NotifyState(OnGround onGroundState, OffGround offGroundState, OnClimbing onClimbing, PlayerAction playerAction)
 {
     _onGroundState  = onGroundState;
     _offGroundState = offGroundState;
     _onClimbing     = onClimbing;
     _playerAction   = playerAction;
     HandleAnim();
 }
        override public void Draw(SpriteBatch spriteBatch)
        {
            if (Sprite != null)
            {
                Sprite.DrawAnimation(spriteBatch, GetDrawingLocation(), Depth);
            }

            spriteBatch.DrawString(FontContent.GetFont("FontArial16"), OnGround.ToString(), new Vector2(Location.X, Location.Y - 100), Color.White);
        }
 private void Awake()
 {
     _input     = new MyInput(new DefaultControl());
     _mover     = new MoveRigidbody(this);
     _jump      = new JumpRigidbody(this);
     _onGround  = GetComponent <OnGround>();
     _flip      = new Flip(this);
     _animation = new CharacterAnimation(this);
     _rigidbody = GetComponent <Rigidbody2D>();
     _attacker  = GetComponent <Attacker>();
 }
 private void Awake()
 {
     _characterAnimation = GetComponent <CharacterAnimation>();
     _mover       = GetComponent <Mover>();
     _jump        = GetComponent <Jump>();
     _flip        = GetComponent <Flip>();
     _onGround    = GetComponent <OnGround>();
     _climbing    = GetComponent <Climbing>();
     _health      = GetComponent <Health>();
     _damage      = GetComponent <Damage>();
     _audioSource = GetComponent <AudioSource>();
     _input       = new PcInput(); //instance
 }
 public void ApplyStateVector(StateVector stateVector, long version)
 {
     lock (_SyncLock) {
         LastSeenInOpenSkyUtc = DateTime.UtcNow;
         Version = Math.Max(Version, Callsign.UpdateValue(stateVector.Callsign, version));
         Version = Math.Max(Version, OriginCountry.UpdateValue(stateVector.OriginCountry, version));
         Version = Math.Max(Version, LastPositionTime.UpdateValue(stateVector.TimeOfLastPosition, version));
         Version = Math.Max(Version, LastMessageTime.UpdateValue(stateVector.TimeOfLastMessage, version));
         Version = Math.Max(Version, Latitude.UpdateValue(stateVector.Latitude, version));
         Version = Math.Max(Version, Longitude.UpdateValue(stateVector.Longitude, version));
         Version = Math.Max(Version, AltitudeFeet.UpdateValue(stateVector.AltitudeFeet, version));
         Version = Math.Max(Version, OnGround.UpdateValue(stateVector.OnGround, version));
         Version = Math.Max(Version, GroundSpeedKnots.UpdateValue(stateVector.GroundSpeedKnots, version));
         Version = Math.Max(Version, Track.UpdateValue(stateVector.Track, version));
         Version = Math.Max(Version, VerticalRateFeetPerSecond.UpdateValue(stateVector.VerticalRateFeetPerSecond, version));
         Version = Math.Max(Version, Squawk.UpdateValue(stateVector.Squawk, version));
         Version = Math.Max(Version, SpecialPurposeIndicator.UpdateValue(stateVector.SpecialPurposeIndicator, version));
         Version = Math.Max(Version, PositionSource.UpdateValue(stateVector.PositionSource, version));
     }
 }
Esempio n. 8
0
 void Jumping()
 {
     if (Input.GetKeyDown(KeyCode.Z) && onGround != OnGround.onAir)
     {
         //print("Jump");
         rb2d.velocity = new Vector2(rb2d.velocity.x, jumpForce);
         onGround      = OnGround.onAir;
         isJump        = true;
         StartCoroutine(OnWait());
     }
     else
     if (Input.GetKeyUp(KeyCode.Z))
     {
         //print("no jump");
         if (rb2d.velocity.y > 0 && rb2d.velocity.y <= jumpForce)
         {
             rb2d.velocity = new Vector2(rb2d.velocity.x, jumpForceMin);
         }
     }
 }
Esempio n. 9
0
 public override void NotifyState(OnGround onGroundState, OffGround offGroundState)
 {
     base.NotifyState(onGroundState, offGroundState);
     _onClimbing   = PlayerState.OnClimbing.NONE;
     _playerAction = PlayerState.PlayerAction.NONE;
 }
Esempio n. 10
0
 /**
  * @brief
  * 객체에게 데이터를 받는 함수
  * 단, 데이터는 애니메이션을 위한 값
  */
 public virtual void NotifyState(OnGround onGroundState, OffGround offGroundState)
 {
     _onGroundState  = onGroundState;
     _offGroundState = offGroundState;
     this.HandleAnim();
 }
 void Start()
 {
     onGround = GetComponent <OnGround>();
     rb       = GetComponent <Rigidbody>();
     speed    = moveSpeed;
 }
Esempio n. 12
0
    private InteractionManager interaction;  //interaction manager

    private void Awake()
    {
        rig       = GetComponent <Rigidbody2D>();
        onGround  = GetComponentInChildren <OnGround>();
        jumpSound = GetComponent <AudioSource>();
    }
 private void Awake()
 {
     playerSpriteRen = playerAnimator.GetComponent <SpriteRenderer>();
     onGround        = playerAnimator.GetComponentInChildren <OnGround>();
 }