Ejemplo n.º 1
0
Archivo: Player.cs Proyecto: GodTaeja/-
    private void initFsm()
    {
        fsm = new Currency_FSMSystem();
        Currency_FSMState runState = new Player_RunState(fsm, (int)StateID.Run);

        Currency_FSMState desthState = new Player_DeathState(fsm, (int)StateID.Desth);

        fsm.addState(runState);
        fsm.addState(desthState);
        fsm.performTransition((int)StateID.Run);
        UpdateManager.add_playerEventList_(updateFsmSystem);
    }
Ejemplo n.º 2
0
Archivo: Canvas.cs Proyecto: GodTaeja/-
    /// <summary>
    /// 各项初始化
    /// </summary>
    private void init()
    {
        /**   组件初始化内容 ↓**/
        map          = GameObject.Find("Map").transform;
        sprite       = GameObject.Find("myCanvas").GetComponent <SpriteRenderer>();
        colliderLine = sprite.GetComponent <EdgeCollider2D>();
        r2d          = sprite.GetComponent <Rigidbody2D>();
        /**   数据初始化内容 ↓**/
        int height = Screen.height >> sample;
        int width  = Screen.width >> sample;

        Debug.Log(height + " " + width);
        mousePos_List = new List <Vector2>();
        colorBuff     = new Color[width * height];
        td            = new Texture2D(width, height);
        spriteScale   = (Camera.main.orthographicSize * 1000 / 5) / (float)td.height;
        sprite.transform.localScale = Vector3.one * spriteScale;
        canvasWidth = width;



        /*for (int i = 0; i<height* width; i++)
         *  colorBuff[i] = new Color(0, 1, 0, 1);
         * td.SetPixels(colorBuff);
         * td.Apply(true);
         * Sprite spriteA = Sprite.Create(td, new Rect(0, 0,td.width , td.height), new Vector2(0.5f, 0.5f));
         * sprite.sprite = spriteA;*/

        /** 状态机初始化内容 ↓**/
        fsm = new Currency_FSMSystem();
        Currency_FSMState canvasState        = new Canvas_DrawState(fsm, (int)StateID.Draw, sprite, r2d, colliderLine, mousePos_List, colorBuff, td, map, spriteScale, canvasWidth, sample, outLine);
        Currency_FSMState instantiationState = new Canvas_InstantiationState(fsm, (int)StateID.instantiation);

        fsm.addState(canvasState);
        fsm.addState(instantiationState);
        /**       启用       ↓**/
        UpdateManager.add_playerEventList_(updateFsmSystem);
    }
Ejemplo n.º 3
0
 public Currency_FSMState(Currency_FSMSystem fsm, int id)
 {
     this.fsm = fsm;
     stateID  = id;
 }
Ejemplo n.º 4
0
 public Player_RunState(Currency_FSMSystem fsm, int id) : base(fsm, id)
 {
 }
Ejemplo n.º 5
0
 public Canvas_InstantiationState(Currency_FSMSystem fsm, int id) : base(fsm, id)
 {
 }
Ejemplo n.º 6
0
    int sample;                         //用于优化画布绘制的数值

    public Canvas_DrawState(Currency_FSMSystem fsm, int id, SpriteRenderer sp, Rigidbody2D r2d, EdgeCollider2D ecol, List <Vector2> m_list, Color[] colorBuff, Texture2D td, Transform map, float spriteScale, int canvasWidth, int sample, int outLine) : base(fsm, id)
    {
        initOver = false;
        setBaseGetComponent(sp, r2d, ecol, m_list, colorBuff, td, map, spriteScale, canvasWidth, sample, outLine);
    }