// 初期化メソッド public void SetUp() { _Move = GetComponent <MovingAnimation>(); _Move.SetUp(); _Actor = GetComponent <Actor>(); _Element = eMapElement.PLAYER; _Actor.SetUp(_Element); _GameManager = GameObject.Find("GameManager").GetComponent <GameManager>(); _StairsManager = GameObject.Find("StairsManager").GetComponent <StairsManager>(); _MapManager = GameObject.Find("MapManager").GetComponent <MapManager>(); }
public void SetUp() { _Move = GetComponent <MovingAnimation>(); if (_Move != null) { _Move.SetUp(); } _Actor = GetComponent <Actor>(); if (_Actor != null) { _Element = eMapElement.ENEMY; _Actor.SetUp(_Element); } _GameManager = GameObject.Find("GameManager").GetComponent <GameManager>(); }
// Moveの間この関数を呼び続ける public bool UpdatePosition(eMapElement element) { if (transform.position != EndPos) { ElapsedTime += Time.deltaTime; float rate = ElapsedTime / MoveDuration; //rateを0~1の範囲に収める rate = Mathf.Clamp(rate, 0f, 1f); //Lerp:StartPosを0,EndPosを1としたときに、rate(0~1)の位置を返してくれる transform.position = Vector3.Lerp(StartPos, EndPos, rate); return(true); } else { //移動後のグリッド座標の更新 int x = _MapManager.ToGridX(transform.position); int y = _MapManager.ToGridY(transform.position); _MapManager.SetData(x, y, element); return(false); } }
public void SetUp(eMapElement eElement) { _MapManager = GameObject.Find("MapManager").GetComponent <MapManager>(); // ワールド座標の開始位置をマップデータに入力する int x = _MapManager.ToGridX(transform.position); int y = _MapManager.ToGridY(transform.position); _MapManager.SetData(x, y, eElement); // マップデータからワールド座標を決める transform.position = _MapManager.ToWorldPosition(x, y); _MessageMan = GameObject.Find("MessageManager").GetComponent <MessageManager>(); _Attack = GetComponent <AttackAnimation>(); if (_Attack != null) { _Attack.SetUp(); } _GameManager = GameObject.Find("GameManager").GetComponent <GameManager>(); }
// マップデータにデータを追加する public void SetData(int x, int y, eMapElement element) { _layer.Set(x, y, (int)element); }