예제 #1
0
 ///<summary>マップ読み込み</summary>
 public void load(string aFilePath)
 {
     if (mEncountSystem == null)
     {
         mEncountSystem = new MapEncoutSystem();
     }
     //ワールドを再生成
     if (mWorld != null)
     {
         mWorld.delete();
     }
     mWorld      = MapWorldFactory.create(aFilePath, this);
     mWorld.mMap = this;
     mWorld.name = "world";
     mWorld.transform.SetParent(this.transform, false);
 }
예제 #2
0
    /// <summary>マップ移動</summary>
    public void moveMap(MapEventMoveMap aMoveEvent)
    {
        //マップ再生成
        load(aMoveEvent.mMapPath);
        aMoveEvent.mEndSide.mEntranceData = mWorld.mFileData.mEntrances[aMoveEvent.mEndSide.mEntrance];
        //移動先座標計算
        MapCharacter tCharacter = MapWorldFactory.createCharacter(mPlayerData);

        aMoveEvent.mEndSide.calculatePositionFromPercentagePosition(tCharacter.mEntityPhysicsBehaviour.mAttriubteCollider);
        tCharacter.delete();
        //プレイヤー追加
        mPlayerData.mPosition  = aMoveEvent.mEndSide.mPosition;
        mPlayerData.mDirection = aMoveEvent.mPlayerDirection;
        MapWorldFactory.addCharacter(mPlayerData, mWorld);
        //マップ移動後イベント実行
        mWorld.mEventSystem.addMoveMapEventEndSide(aMoveEvent.mEndSide, mWorld.getPlayer());
        mWorld.updateWorld();
    }
예제 #3
0
    ///<summary>セーブデータ読み込み</summary>
    public void loadSaveData(string aFilePath)
    {
        //セーブデータ読み込み
        MapSaveFileData tSaveData = new MapSaveFileData(aFilePath);

        mEncountSystem = new MapEncoutSystem();
        mEncountSystem.setCount(tSaveData.mEncountCount);

        //ワールドを再生成
        if (mWorld != null)
        {
            mWorld.delete();
        }
        mWorld      = MapWorldFactory.createFromSave(aFilePath, this);
        mWorld.mMap = this;
        mWorld.name = "world";
        mWorld.transform.SetParent(this.transform, false);
    }