// Update is called once per frame void LateUpdate() { if (characterBehavior.player == null) { return; } if (characterBehavior.state == CharacterBehavior.states.CRASH || characterBehavior.state == CharacterBehavior.states.DEAD) { return; } if (Time.deltaTime == 0) { return; } if (mobileController) { moveByAccelerometer(); } else if (!isAutomata) { if (InputManager.getFireDown(player.id)) { characterBehavior.shooter.StartPressingFire(); } if (InputManager.getFireUp(player.id)) { characterBehavior.shooter.CheckFire(); } if (InputManager.getJump(player.id)) { characterBehavior.Jump(); if (childs.Count > 0) { StartCoroutine(ChildsJump()); } } else if (Input.GetButton("Jump1")) { characterBehavior.JumpPressed(); } else { characterBehavior.AllButtonsReleased(); } moveByKeyboard(); } characterBehavior.UpdateByController(rotationY); }
//InputSaverData lastSavedDataUsed; //void Update () { // if (Data.Instance.playMode == Data.PlayModes.PARTYMODE) // return; // if (allPlayersSavedData.Count == 0 || !isPlaying || characters.Count==0) // return; // foreach(CharacterBehavior cb in characters) // { // if (cb.state == CharacterBehavior.states.DEAD || // cb.state == CharacterBehavior.states.FALL || // cb.state == CharacterBehavior.states.CRASH) // { // //is dead; // } else if(cb.player != null){ // UpdatePlayer (cb); // } // } //} void UpdatePlayer(CharacterBehavior cb) { int playerID = cb.player.id; SavedData savedData = allPlayersSavedData [playerID - 1]; if (savedData.lastIdDataUsed >= savedData.data.Count) { return; } InputSaverData isdata = savedData.data [savedData.lastIdDataUsed]; InputSaverData nextdata = null; if (savedData.data.Count > savedData.lastIdDataUsed + 1) { nextdata = savedData.data [savedData.lastIdDataUsed + 1]; } if (charactersManager.distance >= isdata.distance) { savedData.lastIdDataUsed++; if (isdata.shoot) { //shoot cb.shooter.CheckFire(); } else if (isdata.jump) { //jump cb.Jump(); } else { //move //savedData.lastDirection = isdata.direction; // Vector3 pos = cb.transform.position; // pos.x = isdata.posX; // cb.transform.position = pos; } //savedData.data.RemoveAt (0); } if (nextdata != null) { float moveX = 0.5f; if (isdata.posX > nextdata.posX) { moveX *= -1; } if (isdata.posX < nextdata.posX) { moveX *= 1; } else { return; } cb.controls.MoveInX(moveX); } }
void LoopJump() { if (cb.state == CharacterBehavior.states.RUN) { cb.Jump(); } Invoke("LoopJump", Random.Range(1, 8)); }
void JumpLoop() { if (CanDoIt()) { int rand = Random.Range(0, 100); if (rand < 30) { cb.Jump(); } } if (Game.Instance.state != Game.states.GAME_OVER) { Invoke("JumpLoop", jumpRandomTry); } }
private void Update() { if (cb == null) { return; } if (cb.grounded) { num += Time.deltaTime; } if (num > 0.05f) { num = 0; RaycastHit coverHit; Vector3 dest = transform.position; dest.y -= 4; if (!Physics.Raycast(transform.position, transform.TransformDirection(-Vector3.up), out coverHit, Mathf.Infinity, 1 << 8)) { cb.Jump(); cb.JumpingPressed(); } } }
void UpdatePlayer(CharacterBehavior cb) { int playerID = cb.player.id; SavedData savedData = allPlayersSavedData [playerID - 1]; if (savedData.lastIdDataUsed >= savedData.data.Count) { return; } InputSaverData isdata = savedData.data [savedData.lastIdDataUsed]; if (charactersManager.distance >= isdata.distance) { savedData.lastIdDataUsed++; if (isdata.shoot) { //shoot cb.shooter.CheckFire(); } else if (isdata.jump) { //jump cb.Jump(); } else { //move savedData.lastDirection = isdata.direction; Vector3 pos = cb.transform.position; pos.x = isdata.posX; cb.transform.position = pos; } //savedData.data.RemoveAt (0); } cb.controls.MoveInX(savedData.lastDirection); }
void Jump() { jumpingPressedSince = 0; characterBehavior.Jump(); }