コード例 #1
0
    public override void Execute(INotification notification)
    {
        int            level          = (int)notification.Body;
        LevelProxy     levelProxy     = AppFacade.Instance.RetrieveProxy(LevelProxy.NAME) as LevelProxy;
        LevelMediator  levelMediator  = AppFacade.Instance.RetrieveMediator(LevelMediator.NAME) as LevelMediator;
        PlayerMediator playerMediator = AppFacade.Instance.RetrieveMediator(PlayerMediator.NAME) as PlayerMediator;
        CameraMediator cameraMediator = AppFacade.Instance.RetrieveMediator(CameraMediator.NAME) as CameraMediator;

        levelProxy.LoadLevelData(level);            //加载数据
        levelMediator.StartLevel();                 //显示地形
        playerMediator.CreateRole();                //加载人物
        cameraMediator.LookAt(playerMediator.Role); //移动相机
        levelProxy.RegisterInputListener();         //注册输入事件
        SendNotification(MsgType.PLAYER_MOVE, true);
    }
コード例 #2
0
ファイル: LevelProxy.cs プロジェクト: garsonlab/GCube
 public void SetMediator(LevelMediator mediator)
 {
     m_mediator = mediator;
 }