// Use this for initialization void Start() { m_PlayerAnime = GameObject.Find("Player").GetComponent <PlayerAnime>(); m_StartTime = Time.time; this.enabled = false; }
void Start() { PlayerStatesList.Add(this); anim = this.GetComponent <PlayerAnime>(); returnUI = GameObject.Find("UIController").GetComponent <ReturnUI>(); this.ObserveEveryValueChanged(x => runningFlag) .Subscribe(x => Debug.Log(x)); this.ObserveEveryValueChanged(x => lastFlag) .Where(x => x == true) .First() .Subscribe(x => { playerStateSubject.OnCompleted(); returnUI.ReturnFlashing(); }); foreach (PlayerStatus playerStatue in PlayerStatesList) { playerStateSubject.Where(x => x == PlayerState.Runnimg) .Subscribe(_ => runningFlag = true); playerStateSubject.Where(x => x == PlayerState.Attack) .Subscribe(_ => { runningFlag = false; anim.Attack(); }); playerStateSubject.Where(x => x == PlayerState.Roll) .Subscribe(_ => { cancelFlag = false; runningFlag = false; anim.Roll(); }); playerStateSubject.Where(x => x == PlayerState.Down) .ThrottleFirstFrame(10) .Subscribe(_ => { cancelFlag = false; runningFlag = false; anim.Damage(); }); playerStateSubject.Where(x => x == PlayerState.Deth) .Subscribe(_ => { runningFlag = false; anim.Deth(); }); playerStateSubject.Where(x => x == PlayerState.Idle) .Subscribe(_ => { runningFlag = false; anim.IdleStart(); }); } }
IEnumerator GetInstance() { obj = GameObject.Find("Player_Pack(Clone)"); player = GameObject.Find("Player"); anim = player.GetComponent <PlayerAnime>(); playerRunning = obj.GetComponent <PlayerRunning>(); playerStatus = player.GetComponent <PlayerStatus>(); startComplete.startSubject.OnNext(3); yield return(null); }
//マップ変更処理 public void changeMap() { //マップ差し替え GameObject obj = Instantiate(Resources.Load <GameObject>(changeMapName), MapLayer); Destroy(MapObj); MapObj = obj; MapObj.SetActive(true); //プレイヤー位置・向き設定 PlayerAnime playerAnime = PlayerObj.GetComponent <PlayerAnime>(); playerAnime.rigidBody.velocity = Vector2.zero; playerAnime.inputAxis = Vector2.zero; PlayerObj.transform.localPosition = new Vector3(changeMapPos.x, changeMapPos.y, 0); playerAnime.charaDirection = changeMapDirection; playerAnime.ChangeDirection(); //カメラ可動範囲の当たり判定を設定 //cameraController.setCameraBound(MapObj.GetComponent<CompositeCollider2D>()); //フェードアウト screenManager.changeColor(Color.clear, 0.7f, "changeMapEnd"); }