Exemple #1
0
    public State checkState()
    {
        StateWithEventMap state = TaskState.Create(delegate {
            return(new Task());
        }, fsm_, delegate {
            if (_ctrl._toX != -1)
            {
                if (_ctrl._toX == _ctrl._currX)
                {
                    return("fall");
                }
                else
                {
                    return("move.x");
                }
            }
            if (_ctrl.check())
            {
                return("move.y");
            }
            else
            {
                _ctrl._sound.fall.Play();
                return("remove");
            }
        });

        return(state);
    }
Exemple #2
0
    private State moveState()
    {//move状态执行完移动任务跳向arise状态
        StateWithEventMap state = TaskState.Create(delegate
        {
            //TaskWait tw = new TaskWait();
            //tw.setAllTime(0.1f);
            //return tw;
            return(taskSet);
        }, _fsm, "arise");

        //StateWithEventMap state = new StateWithEventMap();
        //state.onStart += delegate
        //{
        //    TaskManager.Run(taskSet);
        //    //taskSet.init();
        //};
        state.onOver += delegate
        {
            taskSet.Clear();
            //_fsm.post("toArise");
        };
        //state.addEvent("toArise", "arise");
        //StateWithEventMap state = new StateWithEventMap();
        //state.addEvent("swipe", "arise");
        return(state);
    }
Exemple #3
0
	private State getReset(){
		
		State state = TaskState.Create (delegate() {
			Task task = new TweenTask(delegate() {
				Tween tween = TweenValue.Begin(this.gameObject, 0.1f, pose_, 0f, delegate(float v) {
					this.refreshPose(v);
				});
				return tween;
			});
			TaskManager.PushFront(task,delegate() {
				int idx = offset(this.pose_);
				if(idx  + this._list[0]._index > 0){
					idx = -this._list[0]._index;
				}

				if(idx  + this._list[this._list.Count -1]._index < 0){
					idx = -this._list[this._list.Count -1]._index;
				}
				for (int i = 0; i < this._list.Count; ++i) {
					this._list[i]._index +=  idx;

				}
				this.pose_ = this.pose_ - idx * _distance;

			});
			TaskManager.PushBack(task, delegate {
				this.pose_ = 0;

			});
			return task;
		}, this.fsm_, "input");
	
		return state;
	}
Exemple #4
0
    private State getLogin()
    {
        bool  error = false;
        State state = TaskState.Create(delegate() {
            //得到用户数据
            User data = UserModel.Instance.data;
            //创建网络任务
            WebLoaderTask <UserInfo> web = WebAction.Instance.login(data.id, data.password);
            //错误处理
            web.onError += delegate(string msg) {
                error = true;
            };
            //成功处理
            web.onSucceed += delegate(UserInfo info) {
                error = false;
            };
            return(web);
        }, this.fsm_, delegate {
            if (error)
            {
                //登陆错误,删除用户信息,回到检查状态
                UserModel.Instance.clear();
                return(CheckState);
            }
            else
            {
                //成功去Start状态
                return(StartState);
            }
        });

        return(state);
    }
Exemple #5
0
        private StateBase whoIsGod()
        {
            State state = TaskState.Create(delegate {
                if (_hasAnchor)
                {
                    Root.Instance.view.board.state = InfoBoard.State.Hide;
                }
                else
                {
                    Root.Instance.view.board.state = InfoBoard.State.Scan;
                }

                Task task = new Task();
                TaskManager.AddAndIsOver(task, delegate
                {
                    return(Root.Instance.model.hasGod);
                });
                return(task);
            }, this.fsm_, "running");

            state.addAction(Ctrl.AnchorEvent, delegate
            {
                WhoIsGod wid = Altar.LocalComponent <WhoIsGod>();
                wid.IAmGod();
            });
            state.onStart += delegate
            {
                _stateName = "whoIsGod";

                Debug.Log("state:" + _stateName);
            };


            return(state);
        }
Exemple #6
0
    State removeState()
    {
        bool s = false;
        StateWithEventMap state = TaskState.Create(delegate {
            Task task = new Task();
            TaskManager.PushFront(task, delegate {
                s = checkAndRemove();
            });
            return(task);
        }, fsm_,
                                                   delegate {
            if (s)
            {
                return("fall");
            }
            else
            {
                return("input");
            }
        });

        state.onStart += delegate {
//			Debug.LogWarning("in remove!");
        };
        return(state);
    }
Exemple #7
0
        private StateBase IAmServer()
        {
            State state = TaskState.Create(delegate {
                Task task = new Task();

                task.isOver = delegate()
                {
                    if (NetworkSystem.Instance.running)
                    {
                        return(true);
                    }
                    return(false);
                };
                TaskManager.PushFront(task, delegate {
                    Root.Instance.view.board.state = InfoBoard.State.Editor;//.SetActive(false);
                    Root.Instance.view.anchor.hide();
                });
                TaskManager.PushBack(task, delegate {
                    if (NetworkSystem.Instance.running)
                    {
                        NetworkSystem.Instance.host();//
                        // networkDiscovery_.startHosting("MrPP.Editor");
                    }
                });

                return(task);
            }, this.fsm_, "whoIsGod");

            return(state);
        }
Exemple #8
0
    public State getStart()
    {
        StateWithEventMap state = TaskState.Create(delegate() {
            Task task = new TaskWait(0.1f);
            TaskManager.PushFront(task, delegate {
                _hp = 5;
                _hpBar.setValue(_hp);
                _number++;
                if (_number % 2 == 1)
                {
                    _girl.SetActive(false);
                    _old.SetActive(true);
                }
                else
                {
                    _girl.SetActive(true);
                    _old.SetActive(false);
                }
            });
            //	_hpBar.setValue (_hp);
            return(task);
        }, this._fsm, "idle");


        return(state);
    }
Exemple #9
0
    private State getSkill()
    {
        StateWithEventMap swie = TaskState.Create(delegate() {
            TaskList tl = new TaskList();
            TaskWait tw = new TaskWait(0.01f);
            TaskManager.PushFront(tw, delegate() {
                this._animator.Play("skill");
            });
            Task task = new Task();

            task.isOver = delegate() {
                var info = _animator.GetCurrentAnimatorStateInfo(0);

                if (!info.IsName("skill"))
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            };

            tl.push(tw);
            tl.push(task);
            tl.push(resetTask());
            return(tl);
        }, fsm_, delegate(FSMEvent evt) {
            return("idle");
        });

        return(swie);
    }
Exemple #10
0
    State getBegin()
    {
        State state = TaskState.Create(delegate() {
            Task task        = new Task();
            AsyncOperation a = null;
            TaskManager.PushFront(task, delegate() {
                a = SceneManager.LoadSceneAsync("QMenu", LoadSceneMode.Additive);
            });
            task.isOver = delegate() {
                if (a.progress >= 1.0f)
                {
                    return(true);
                }
                return(false);
            };
            TaskManager.PushBack(task, delegate() {
                var scene = SceneManager.GetSceneByName("QMenu");
                SceneManager.SetActiveScene(scene);
            });

            TaskList tl = new TaskList();
            tl.push(this._loading.show());
            tl.push(task);
            tl.push(this._loading.hide());

            return(tl);
        }, this.fsm_, MenuLogic.CheckState);

        return(state);
    }
Exemple #11
0
    private State getHit()
    {
        StateWithEventMap swie = TaskState.Create(delegate() {
            TaskList tl = new TaskList();
            TaskWait tw = new TaskWait(0.01f);
            TaskManager.PushFront(tw, delegate() {
                _animator.Play("def");
            });
            Task task = new Task();

            task.isOver = delegate() {
                var info = _animator.GetCurrentAnimatorStateInfo(0);
                if (info.normalizedTime > info.length)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            };

            tl.push(tw);
            tl.push(task);
            tl.push(resetTask());
            return(tl);
        }, fsm_, delegate(FSMEvent evt) {
            return("idle");
        });

        return(swie);
    }
Exemple #12
0
    //消除状态
    private State RemoveState()
    {
        bool isFall             = false;
        StateWithEventMap state = TaskState.Create(delegate
        {
            Task task = new Task();
            TaskManager.PushFront(task, delegate
            {
                isFall = CheckAndRemove();
            });
            return(task);
        }, fsm, delegate
        {
            if (isFall == true)
            {
                return("fall");
            }
            else
            {
                return("input");
            }
        });

        return(state);
    }
Exemple #13
0
    private State ariseState()
    {//方块出现的状态
        int newIndex            = -1;
        StateWithEventMap state = TaskState.Create(delegate
        {
            mappingModel2View();               //出现随机方块前需要先刷新页面
            newIndex = _model.createNewCube(); //model层先创建新的方块出来
            //Task tk = _view.play.AriseTask(newIndex,_model.getCube(newIndex).number);//在此任务中完成view层动画
            //return tk;
            return(new Task());
        }, _fsm, delegate
        {
            if (newIndex >= 0)
            {
                return("input");
            }
            else
            {//游戏结束
                _view.end.Peroration.text = "Game Over!";
                return("end");
            }
        });

        return(state);
    }
Exemple #14
0
    private State getDraw()
    {
        State state = TaskState.Create(delegate {
            return(_board.draw());
        }, this.fsm_, "show");

        return(state);
    }
Exemple #15
0
    private State overState()
    {
        StateWithEventMap state = TaskState.Create(delegate() {
            return(_ctrl.overTask());
        }, fsm_, "end");

        return(state);
    }
Exemple #16
0
    public State moveXState()
    {
        StateWithEventMap state = TaskState.Create(delegate() {
            return(_ctrl.moveXTask());
        }, fsm_, "fall");

        return(state);
    }
Exemple #17
0
    public State moveYState()
    {
        StateWithEventMap state = TaskState.Create(delegate {
            return(_ctrl.fallOneTask());
        }, fsm_, "check");

        return(state);
    }
Exemple #18
0
        private State waitState()
        {
            State state = TaskState.Create(delegate {
                Debug.Log("wait state is ...");
                return(new Task());
            }, fsm_, "running");

            return(state);
        }
Exemple #19
0
    private State getBegin()
    {
        StateWithEventMap swem = TaskState.Create(delegate {
            return(new Task());
        }, this.fsm_, "fighting");


        return(swem);
    }
Exemple #20
0
    //下落状态
    private State FallState()
    {
        StateWithEventMap state = TaskState.Create(delegate
        {
            Task doFallTask = DoFallTask();
            return(doFallTask);
        }, fsm, "remove");

        return(state);
    }
Exemple #21
0
    private State getSubmit()
    {
        State state = TaskState.Create(delegate() {
            User data = UserModel.Instance.data;
            WebLoaderTask <TopInfo> web = WebAction.Instance.submitScore(data.id, data.password, PlayModel.Instance._coin.ToString());
            return(web);
        }, this.fsm_, "resetting");

        return(state);
    }
Exemple #22
0
        private StateBase whoIsGod()
        {
            State state = TaskState.Create(delegate {
                Task task = new Task();
                TaskManager.AddAndIsOver(task, delegate
                {
                    return(Root.Instance.model.hasGod);
                });
                return(task);
            }, this.fsm_, "running");

            return(state);
        }
Exemple #23
0
        private StateBase logo()
        {
            State state = TaskState.Create(delegate {
                Task task = new TaskWait(1.0f);
                TaskManager.PushFront(task, delegate {
                    Root.Instance.view.anchor.hide();
                    Root.Instance.view.board.state = InfoBoard.State.Logo;
                });
                return(task);
            }, this.fsm_, "whoIsServer");

            return(state);
        }
Exemple #24
0
    private State getInit()
    {
        StateWithEventMap init = TaskState.Create(delegate() {
            _buoy.transform.localScale = Vector3.one * _unit * 1.01f;

            TaskSet ts = new TaskSet();

            ts.push(goLine());
            return(ts);
        }, this.fsm_, "draw");

        return(init);
    }
Exemple #25
0
        private StateBase alone()
        {
            State state = TaskState.Create(delegate {
                Task task = new Task();
                TaskManager.PushFront(task, delegate
                {
                    NetworkSystem.Instance.alone();
                });
                return(task);
            }, this.fsm_, "running");

            return(state);
        }
Exemple #26
0
    State endState()
    {
        StateWithEventMap state = TaskState.Create(delegate { return(this._ctrl.endTask()); }, fsm_, "");

        state.addEvent("end", "begin");
        state.onStart += delegate {
            _ctrl._view.end.gameObject.SetActive(true);
            _ctrl._sound.end.Play();
        };
        state.onOver += delegate {
            _ctrl._view.end.gameObject.SetActive(false);
        };
        return(state);
    }
Exemple #27
0
        private State aloneState()
        {
            State state = TaskState.Create(delegate
            {
                Task task = new TaskWait(0.3f);
                TaskManager.PushFront(task, delegate {
                    Debug.Log("alone state task...");
                    // NetworkState.Instance?.doAlone();
                });
                return(task);
            }, this.fsm_, "single");

            return(state);
        }
Exemple #28
0
        private StateBase autoStart()
        {
            State state = TaskState.Create(delegate()
            {
                Task task = new Task();
                TaskManager.PushFront(task, delegate
                {
                    Network.NetworkSystem.Instance.startHost();
                });
                return(task);
            }, this.fsm_, "start");

            return(state);
        }
Exemple #29
0
    public State getHurt()
    {
        StateWithEventMap state = TaskState.Create(delegate() {
            Task task = new TaskWait(0.3f);
            TaskManager.PushFront(task, delegate() {
                _animator.Play("Hurt");
                Debug.Log("in attack");
            });

            return(task);
        }, this._fsm, "idle");


        return(state);
    }
Exemple #30
0
        private StateBase listening()
        {
            State state = TaskState.Create(delegate {
                return(new TaskWait(5));
            }, this.fsm_, "alone");

            state.onStart += delegate
            {
                HudManager.Instance.gameObject.SetActive(false);
                this.stateName = "listening";
                NetworkSystem.Instance.listening();
            };
            state.addAction("session", "join");
            return(state);
        }