public override int GetHashCode() { int hash = 1; if (combatMoveCase_ == CombatMoveOneofCase.PlayerAttack) { hash ^= PlayerAttack.GetHashCode(); } if (combatMoveCase_ == CombatMoveOneofCase.PlayerDefend) { hash ^= PlayerDefend.GetHashCode(); } if (combatMoveCase_ == CombatMoveOneofCase.PlayerAutoAdvance) { hash ^= PlayerAutoAdvance.GetHashCode(); } if (EnemyActionTimeline.Length != 0) { hash ^= EnemyActionTimeline.GetHashCode(); } if (PlayerSucceedTimeline.Length != 0) { hash ^= PlayerSucceedTimeline.GetHashCode(); } if (PlayerFailedTimeline.Length != 0) { hash ^= PlayerFailedTimeline.GetHashCode(); } hash ^= (int)combatMoveCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
public void MergeFrom(CombatMoveType other) { if (other == null) { return; } switch (other.CombatMoveCase) { case CombatMoveOneofCase.PlayerAttack: if (PlayerAttack == null) { PlayerAttack = new global::WUProtos.Data.Combat.CombatPlayerAttack(); } PlayerAttack.MergeFrom(other.PlayerAttack); break; case CombatMoveOneofCase.PlayerDefend: if (PlayerDefend == null) { PlayerDefend = new global::WUProtos.Data.Combat.CombatPlayerDefend(); } PlayerDefend.MergeFrom(other.PlayerDefend); break; case CombatMoveOneofCase.PlayerAutoAdvance: if (PlayerAutoAdvance == null) { PlayerAutoAdvance = new global::WUProtos.Data.Combat.CombatPlayerAutoAdvance(); } PlayerAutoAdvance.MergeFrom(other.PlayerAutoAdvance); break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
void onPlayerDefend(PlayerDefend e) { Vector2 actualSize = StaminaBar.sizeDelta; actualSize.x = e.Stamina * m_StaminaBarSize / 100; StaminaBar.sizeDelta = actualSize; }
public void ResetComboValidated() { m_ComboValidated = false; _anim.SetBool("ComboValidated", false); m_Stamina -= Weapon.StaminaConsomation; PlayerDefend DefendEvent = new PlayerDefend(m_Stamina); Events.instance.Raise(DefendEvent); }
// Start is called before the first frame update void Start() { myRigidBody = GetComponent <Rigidbody2D>(); myBodyCollider = GetComponent <CapsuleCollider2D>(); myFeet = GetComponent <BoxCollider2D>(); if (canDefend) { defendScript = GetComponentInChildren <PlayerDefend>(); } }
public void MergeFrom(ClientCombatMoveType other) { if (other == null) { return; } if (other.EnemyActionTimeline.Length != 0) { EnemyActionTimeline = other.EnemyActionTimeline; } if (other.PlayerSucceedTimeline.Length != 0) { PlayerSucceedTimeline = other.PlayerSucceedTimeline; } if (other.PlayerFailedTimeline.Length != 0) { PlayerFailedTimeline = other.PlayerFailedTimeline; } switch (other.CombatMoveCase) { case CombatMoveOneofCase.PlayerAttack: if (PlayerAttack == null) { PlayerAttack = new global::WUProtos.Data.Client.ClientCombatPlayerAttack(); } PlayerAttack.MergeFrom(other.PlayerAttack); break; case CombatMoveOneofCase.PlayerDefend: if (PlayerDefend == null) { PlayerDefend = new global::WUProtos.Data.Client.ClientCombatPlayerDefend(); } PlayerDefend.MergeFrom(other.PlayerDefend); break; case CombatMoveOneofCase.PlayerAutoAdvance: if (PlayerAutoAdvance == null) { PlayerAutoAdvance = new global::WUProtos.Data.Client.ClientCombatPlayerAutoAdvance(); } PlayerAutoAdvance.MergeFrom(other.PlayerAutoAdvance); break; } _unknownFields = pb::UnknownFieldSet.MergeFrom(_unknownFields, other._unknownFields); }
void Start() { inputManager = GameObject.Find("GameManager").GetComponent <InputManager>(); inputManager.Start(); ground = LayerMask.NameToLayer("ground"); Debug.Log(LayerMask.LayerToName(ground)); PlayerState.Instance.Init(); PlayerState.Instance.playerActionsFreezed = false; PlayerState.Instance.stingDmgCheckPoint = transform.position; curtainAnimator = GameObject.Find("curtain").GetComponent <Animator>(); animator = GetComponent <Animator>(); rigidBody = GetComponent <Rigidbody2D>(); coldDownTimes[0] = 0; //dash coldDownTimes[1] = 0; //bullet coldDownTimes[2] = 0; //slash coldDownTimes[3] = 0; //defend playerDefend = defendObject.GetComponent <PlayerDefend>(); playerSlash = slashObject.GetComponent <PlayerSlash>(); }
public override int GetHashCode() { int hash = 1; if (combatMoveCase_ == CombatMoveOneofCase.PlayerAttack) { hash ^= PlayerAttack.GetHashCode(); } if (combatMoveCase_ == CombatMoveOneofCase.PlayerDefend) { hash ^= PlayerDefend.GetHashCode(); } if (combatMoveCase_ == CombatMoveOneofCase.PlayerAutoAdvance) { hash ^= PlayerAutoAdvance.GetHashCode(); } hash ^= (int)combatMoveCase_; if (_unknownFields != null) { hash ^= _unknownFields.GetHashCode(); } return(hash); }
void Update() { //Gestion du idle _idleTimer += Time.deltaTime; if (m_RigidBody2D.velocity.x != 0 || m_RigidBody2D.velocity.y != 0 || m_BeingHit || m_BeingGroggy || m_Attacking) { SetIdle(false); } if (_idleTimer >= 2) { SetIdle(true); } //Gestion du backdash if ((BSBackDash.CurrentState == ButtonScript.ButtonState.Down || Input.GetButtonDown("BackDash")) && !m_BeingGroggy && !m_BeingHit && !UsingMagic && !m_Attacking && !m_Bumped && !m_BackDashing && !m_Defending && m_BottomTouched) { _anim.SetTrigger(_BackDashHash); } //Gestion des inputs de mouvements _move = 0.0f; bool stopWalk = _anim.GetBool(_StopWalkHash); //Input Mobile + Keyboard if ((BSMoveLeft.CurrentState == ButtonScript.ButtonState.Down || Input.GetKey(KeyCode.LeftArrow)) && !m_BeingGroggy && !m_BeingHit && !UsingMagic && !m_Attacking && !m_Bumped && !m_BackDashing) { _move = -1.0f; } else if ((BSMoveRight.CurrentState == ButtonScript.ButtonState.Down || Input.GetKey(KeyCode.RightArrow)) && !m_BeingGroggy && !m_BeingHit && !UsingMagic && !m_Attacking && !m_Bumped && !m_BackDashing) { _move = 1.0f; } if (_move > 0.1 && m_FacingRight) { Flip(); } else if (_move < -0.1 && !m_FacingRight) { Flip(); } if (m_AttackLongDashing) { return; } //Animation part _anim.SetFloat("velocityX", Mathf.Abs(m_RigidBody2D.velocity.x)); _anim.SetFloat("velocityY", m_RigidBody2D.velocity.y); if (Mathf.Abs(_move) >= 0.1) { _anim.SetBool(_runHash, true); } else { _anim.SetBool(_runHash, false); } if (m_BottomTouched && !_anim.GetBool("jump")) { _anim.SetBool("grounded", true); } else { _anim.SetBool("grounded", false); } // Gestion du jump bool isJumpDown = false; bool isJumpUp = false; isJumpDown = Input.GetButtonDown("Jump") || (BSJump.CurrentState == ButtonScript.ButtonState.Down && !_wasJumpDown); isJumpUp = Input.GetButtonUp("Jump") || (BSJump.CurrentState == ButtonScript.ButtonState.Up && !_wasJumpUp); if (isJumpDown && !m_BeingGroggy && !m_BeingHit && !m_Attacking) { _capJump = false; _wasJumpDown = true; _wasJumpUp = false; if (!_firstJump && m_BottomTouched) { _firstJump = true; _firstJumpEnd = false; Vector3 newScale = transform.localScale; newScale.x = -newScale.x; endJumpDust.transform.localScale = newScale; Vector3 newPos = transform.position; newPos.y -= 10; newPos.x += -10 * newScale.x; begingJumpDust.transform.position = newPos; begingJumpDust.SetActive(true); //m_RigidBody2D.velocity = new Vector2 (m_RigidBody2D.velocity.x, JumpSpeed); StartCoroutine(Jump(JumpSpeed)); } else if (_firstJumpEnd && !_secondJump && _isDoubleJumpCollected) { _secondJump = true; _secondJumpEnd = false; // second jump //m_RigidBody2D.velocity = new Vector2 (m_RigidBody2D.velocity.x, JumpSpeed); StartCoroutine(Jump(JumpSpeed)); } else if (HasJetPack && _secondJumpEnd && _isJetPackCollected) { _thirdJump = true; } } else if (isJumpUp) { _wasJumpDown = false; _wasJumpUp = true; _firstJump = false; _firstJumpEnd = true; _secondJumpEnd = true; _capJump = true; _thirdJump = false; if (m_RigidBody2D.velocity.y > MinJumpSpeed) { m_RigidBody2D.velocity = new Vector2(m_RigidBody2D.velocity.x, MinJumpSpeed); } //StartCoroutine (Jump (MinJumpSpeed)); } //Gestion de la défense bool isDefendDown = Input.GetButton("Defend") || (BSDefend.CurrentState == ButtonScript.ButtonState.Down); bool isDefendUp = Input.GetButtonUp("Defend") || (BSDefend.CurrentState == ButtonScript.ButtonState.Up); if (isDefendDown && m_Stamina > 0 && !m_BeingGroggy && !m_BeingHit && !m_Attacking && _isCounterCollected) { m_Defending = true; _anim.SetBool("Defend", true); } if (isDefendUp && _isCounterCollected) { m_Defending = false; _anim.SetBool("Defend", false); m_CounterTimer = 0; _isInCounterTime = false; } if (m_Defending) { if (m_Stamina < m_StaminaMin) { m_Stamina = 0; return; } m_Stamina -= StaminaConsommation * Time.deltaTime; PlayerDefend DefendEvent = new PlayerDefend(m_Stamina); Events.instance.Raise(DefendEvent); } else if (m_Stamina < m_StaminaMax) { m_Stamina += StaminaRegeneration * Time.deltaTime; if (m_Stamina > m_StaminaMax) { m_Stamina = m_StaminaMax; } PlayerDefend DefendEvent = new PlayerDefend(m_Stamina); Events.instance.Raise(DefendEvent); } //Gestion du contre bool isCounterWasUp = Input.GetButtonDown("Defend"); if (isCounterWasUp && _isCounterCollected) { _isInCounterTime = true; } if (_isInCounterTime) { //Time.timeScale = 0.1f; m_CounterTimer += 1 * Time.deltaTime; if (m_CounterTimer > CounterDelay) { m_CounterTimer = 0; _isInCounterTime = false; } } //Gestion de l'attaque if (BSAttack.CurrentState != ButtonScript.ButtonState.Down && Input.GetAxis("Attack") != 1) { _attackWasUp = true; if (m_AttackLongCasted) { _anim.SetBool(_attackLongReleasedHash, true); Invoke("ResetAttackLongCasted", 0.2f); } else { m_AttackLongCasting = false; _anim.SetBool(_attackLongHash, false); _anim.SetBool(_attackLongCastedHash, false); _anim.SetBool(_attackLongReleasedHash, false); } } else if (_attackWasUp && m_AttackCount < 3 && m_Stamina - Weapon.StaminaConsomation > m_StaminaMin && (m_AttackCount == 0 || m_ComboPossibility == true) && !m_Defending && !m_BeingHit) { Debug.Log("Attack !"); SetIdle(false); _attackWasUp = false; ++m_AttackCount; _attackHoldTime = 0.0f; if (m_AttackCount == 1) { Debug.Log("Attack Count 1"); _anim.SetBool("Attack", true); m_Attacking = true; m_Stamina -= Weapon.StaminaConsomation; PlayerDefend DefendEvent = new PlayerDefend(m_Stamina); Events.instance.Raise(DefendEvent); } else if (m_AttackCount == 2) { Debug.Log("Attack Count 2"); m_ComboValidated = true; m_ComboPossibility = false; _anim.SetBool("ComboValidated", true); } else if (m_AttackCount == 3 && CurrentWeapon == WeaponType.Sword) { Debug.Log("Attack Count 3"); m_ComboValidated = true; m_ComboPossibility = false; _anim.SetBool("ComboValidated", true); } } else if (!m_Defending && !m_BeingHit) { _attackHoldTime += Time.deltaTime; if (_attackHoldTime > AttackLongCastStartAfterTime && _isChargedAttackCollected) { m_AttackLongCasting = true; m_AttackCount = 0; _anim.SetBool(_attackLongHash, true); _anim.SetBool("Attack", false); if (_attackHoldTime > AttackLongCastDuration) { m_AttackLongCasted = true; _anim.SetBool(_attackLongCastedHash, true); } } } //Gestion de la magie bool isMagicDown = Input.GetButton("Magic") || (BSMagic.CurrentState == ButtonScript.ButtonState.Down); bool isMagicUp = Input.GetButtonUp("Magic") || (BSMagic.CurrentState == ButtonScript.ButtonState.Up); if (isMagicDown && !m_BeingGroggy && !m_BeingHit && !m_Attacking && !UsingMagic) { UsingMagic = true; CurrentSpell.launchSort(); } //Gestion du switch d'arme if (BSWeaponSword.CurrentState == ButtonScript.ButtonState.Down) { SwitchWeaponTo(WeaponType.Stick); } else if (BSWeaponStick.CurrentState == ButtonScript.ButtonState.Down) { SwitchWeaponTo(WeaponType.Sword); } }