Esempio n. 1
0
    public void updateAnimation()
    {
        if (gameAnimation != null)
        {
            gameAnimation.clearAnimation();
            Destroy(gameAnimation);
            gameAnimation = null;
        }

        GameUnit gameUnit = GameUnitData.instance.getData(userID);

        string path = "Prefab/Sprite/man" + GameDefine.getString3(gameUnit.Sprite) + "/";

        path += (GameDefine.getString3(gameUnit.Sprite) + "man");

        GameObject obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));

        gameAnimation    = obj.GetComponent <GameAnimation>();
        gameAnimation.UI = true;
        gameAnimation.playAnimationBattle(GameAnimationType.Stand, GameAnimationDirection.South, null);
        gameAnimation.transform.SetParent(unitUIStage.transform);
        gameAnimation.transform.localScale    = Vector3.one;
        gameAnimation.transform.localPosition = new Vector3(-165.0f, 150.0f, 0.0f);
    }
Esempio n. 2
0
    void onStartMoveOver()
    {
        string path = "";

        int offsetX = 0;
        int offsetY = 0;

        switch (skill.BattleType)
        {
        case GameSkillBattleType.Normal:
        {
            path  = "Prefab/Magic/magic" + GameDefine.getString3(skill.AnimationID) + "/";
            path += "M";
            path += skill.AnimationID;
        }
        break;

        case GameSkillBattleType.UI:
        {
            return;
        }

        case GameSkillBattleType.Map:
        {
            if (skill.AnimationID > 0 && skill.BattleSprite == 0)
            {
                path  = "Prefab/Magic/magic" + GameDefine.getString3(skill.AnimationID) + "/";
                path += "M";
                path += skill.AnimationID;
            }
            else
            {
                unit.stopAnimation();
                unit.clearAnimation();

                path = "Prefab/Sprite/man" + GameDefine.getString3(unit.Sprite) + "/" +
                       GameDefine.getString3(unit.Sprite);
                path += (skill.BattleSprite > 0 ? "-" + skill.BattleSprite : "");
                path += "s";

//                         offsetX = GameDefine.TEXTURE_WIDTH_HALF - 5;
//                         offsetY = GameDefine.TEXTURE_HEIGHT_HALF;
            }
        }
        break;

        case GameSkillBattleType.UIMap:
        {
            path = "Prefab/Sprite/man" + GameDefine.getString3(unit.Sprite) + "/" +
                   GameDefine.getString3(unit.Sprite);
            path += (skill.BattleSprite > 0 ? "-" + skill.BattleSprite : "");
            path += "sm";
        }
        break;
        }

        clear();

        GameObject obj1 = Resources.Load <GameObject>(path);

        if (obj1 == null)
        {
            onAttackOver();
            return;
        }

        GameObject    obj = Instantiate <GameObject>(obj1);
        GameAnimation attackerAnimation = obj.GetComponent <GameAnimation>();

        attackerAnimation.offsetX = offsetX;
        attackerAnimation.offsetY = offsetY;

        Transform trans = obj.transform;

        trans.SetParent(transform);
        trans.localScale    = Vector3.one;
        trans.localPosition = Vector3.zero;

        GameBattleSceneMovement.instance.updatePositionToCamera();

        transform.localPosition = new Vector3(GameBattleSceneMovement.instance.PosXReal,
                                              GameBattleSceneMovement.instance.PosYReal + GameBattleManager.instance.LayerHeight,
                                              transform.localPosition.z);

        attackerAnimation.transform.localScale = new Vector3(GameCameraManager.instance.sceneWidth / GameDefine.SCENE_WIDTH, 1.0f, 1.0f);

        if (direction != GameBattleAttackMapDirection.Count)
        {
            int c = attackerAnimation.safHead.count3[0];
            int f = c * (int)direction;

            attackerAnimation.playAnimation(f, f + c, false, onAttackOver);
        }
        else
        {
            attackerAnimation.playAnimation(0, GameDefine.INVALID_ID, false, onAttackOver);
        }
    }
Esempio n. 3
0
    public void showSkillMap(byte f, GameSkill m, GameBattleUnit lt, GameBattleUnit rt, GameBattleAttackMapDirection dir, GameBattleAttackResultSide s, List <GameBattleAttackResultSkill> r, OnEventOver over)
    {
        if (m.BattleType == GameSkillBattleType.Normal ||
            m.BattleType == GameSkillBattleType.Map)
        {
            return;
        }

        clear();

        skill     = m;
        direction = dir;

        onEventOver = over;
        resultSkill = r;
        result      = null;
        side        = s;
        isShow      = true;
        mapAttack   = true;
        overUnShow  = true;
        showAdd     = false;

        GameUserData.instance.LastSkillID = skill.ID;

        gameObject.SetActive(true);

        leftUnit  = lt;
        rightUnit = rt;


        string path = "Prefab/Stage/Stage" + GameDefine.getString2(GameUserData.instance.Stage) + "/FLOOR_";

        path += GameDefine.getString2(GameUserData.instance.Stage);

        GameObject gameObjectFloor = Instantiate <GameObject>(Resources.Load <GameObject>(path));

        floorAnimation    = gameObjectFloor.GetComponent <GameAnimation>();
        floorAnimation.UI = true;
        floorAnimation.showFrame(f);
        floorAnimation.transform.SetParent(floorTrans);
        floorAnimation.transform.localScale    = Vector3.one;
        floorAnimation.transform.localPosition = Vector3.zero;


        if (side == GameBattleAttackResultSide.Left)
        {
            path  = "Prefab/Sprite/man" + GameDefine.getString3(lt.Sprite) + "/";
            path += (GameDefine.getString3(lt.Sprite) + "MISC");

            GameObject obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));
            leftAnimation    = obj.GetComponent <GameAnimation>();
            leftAnimation.UI = true;
            leftAnimation.showFrame(6 + (leftAnimation.safHead.count3[0] == 0 ? 1 : leftAnimation.safHead.count3[0]));
            Transform trans = obj.transform;
            trans.SetParent(left.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            leftInfoUI.gameObject.SetActive(true);
            leftInfoUI.setValue(lt.HP, lt.HPMax, lt.Name);
            rightInfoUI.gameObject.SetActive(false);


            path = "Prefab/Sprite/man" + GameDefine.getString3(lt.Sprite) + "/" +
                   GameDefine.getString3(lt.Sprite);
            path += (m.BattleSprite > 0 ? "-" + m.BattleSprite : "");
            path += "s";

            obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));
            attackerAnimation    = obj.GetComponent <GameAnimation>();
            attackerAnimation.UI = true;
            attackerAnimation.onAnimationEvent = onAnimationEvent;
            trans = obj.transform;
            trans.SetParent(left.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            defencerAnimation = null;
        }
        else
        {
            path  = "Prefab/Sprite/man" + GameDefine.getString3(rt.Sprite) + "/";
            path += (GameDefine.getString3(rt.Sprite) + "MISC");

            GameObject obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));
            rightAnimation    = obj.GetComponent <GameAnimation>();
            rightAnimation.UI = true;
            rightAnimation.showFrame(6 + (rightAnimation.safHead.count3[0] == 0 ? 1 : rightAnimation.safHead.count3[0]));
            Transform trans = obj.transform;
            trans.SetParent(right.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            rightInfoUI.gameObject.SetActive(true);
            rightInfoUI.setValue(rt.HP, rt.HPMax, rt.Name);
            leftInfoUI.gameObject.SetActive(false);


            path = "Prefab/Sprite/man" + GameDefine.getString3(rt.Sprite) + "/" +
                   GameDefine.getString3(rt.Sprite);
            path += (m.BattleSprite > 0 ? "-" + m.BattleSprite : "");
            path += "s";

            obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));
            attackerAnimation    = obj.GetComponent <GameAnimation>();
            attackerAnimation.UI = true;
            attackerAnimation.onAnimationEvent = onAnimationEvent;
            trans = obj.transform;
            trans.SetParent(right.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            defencerAnimation = null;
        }

        scale     = 2.0f;
        alpha     = 0.1f;
        time      = 0.0f;
        alphaAdd  = true;
        startFade = true;

        updateStage();
    }
Esempio n. 4
0
    public void show(byte f, GameBattleUnit lt, GameBattleUnit rt, GameBattleAttackResultSide s, GameBattleAttackResultPhysical rs, bool o, OnEventOver over)
    {
        clear();

        skill = null;

        onEventOver = over;
        result      = rs;
        resultSkill = null;
        side        = s;
        isShow      = true;
        overUnShow  = false;
        showAdd     = false;
        mapAttack   = false;

        gameObject.SetActive(true);

        leftUnit  = lt;
        rightUnit = rt;

        string path = "Prefab/Stage/Stage" + GameDefine.getString2(GameUserData.instance.Stage) + "/FLOOR_";

        path += GameDefine.getString2(GameUserData.instance.Stage);

        GameObject gameObjectFloor = Instantiate <GameObject>(Resources.Load <GameObject>(path));

        floorAnimation    = gameObjectFloor.GetComponent <GameAnimation>();
        floorAnimation.UI = true;
        floorAnimation.showFrame(f);
        floorAnimation.transform.SetParent(floorTrans);
        floorAnimation.transform.localScale    = Vector3.one;
        floorAnimation.transform.localPosition = Vector3.zero;


        //        string ab = result.type == GameBattleAttackResultType.Block ? "ab" : "a";

        path  = "Prefab/Sprite/man" + GameDefine.getString3(rt.Sprite) + "/";
        path += (GameDefine.getString3(rt.Sprite) + "MISC");

        GameObject obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));

        rightAnimation    = obj.GetComponent <GameAnimation>();
        rightAnimation.UI = true;
        rightAnimation.showFrame(6 + (rightAnimation.safHead.count3[0] == 0 ? 1 : rightAnimation.safHead.count3[0]));
        Transform trans = obj.transform;

        trans.SetParent(right.transform);
        trans.localScale    = Vector3.one;
        trans.localPosition = Vector3.zero;

        rightInfoUI.gameObject.SetActive(true);
        rightInfoUI.setValue(rt.HP, rt.HPMax, rt.Name);



        path  = "Prefab/Sprite/man" + GameDefine.getString3(lt.Sprite) + "/";
        path += (GameDefine.getString3(lt.Sprite) + "MISC");

        obj              = Instantiate <GameObject>(Resources.Load <GameObject>(path));
        leftAnimation    = obj.GetComponent <GameAnimation>();
        leftAnimation.UI = true;
        leftAnimation.showFrame(6 + (leftAnimation.safHead.count3[0] == 0 ? 1 : leftAnimation.safHead.count3[0]));
        trans = obj.transform;
        trans.SetParent(left.transform);
        trans.localScale    = Vector3.one;
        trans.localPosition = Vector3.zero;

        leftInfoUI.gameObject.SetActive(true);
        leftInfoUI.setValue(lt.HP, lt.HPMax, lt.Name);



        if (side == GameBattleAttackResultSide.Left)
        {
            path = "Prefab/Sprite/man" + GameDefine.getString3(lt.Sprite) + "/" +
                   GameDefine.getString3(lt.Sprite);
            path += (result.type == GameBattleAttackResultPhysical.Type.Block ? "ab" : "a");

            GameObject object1 = Resources.Load <GameObject>(path);

            if (object1 == null)
            {
                onShowOver();
                return;
            }

            obj = Instantiate <GameObject>(object1);
            attackerAnimation    = obj.GetComponent <GameAnimation>();
            attackerAnimation.UI = true;
            attackerAnimation.onAnimationEvent = onAnimationEvent;
            trans = obj.transform;
            trans.SetParent(left.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            defencerAnimation = rightAnimation;

            RectTransform trans1 = left.GetComponent <RectTransform>();
            trans1.SetSiblingIndex(3);

            rangedAttack = (lt.AttackType == GameUnitAttackType.Ranged);

            if (rangedAttack)
            {
                rightAnimation.clearAnimation();
            }
        }
        else
        {
            path = "Prefab/Sprite/man" + GameDefine.getString3(rt.Sprite) + "/" +
                   GameDefine.getString3(rt.Sprite);
            path += (result.type == GameBattleAttackResultPhysical.Type.Block ? "ab" : "a");

            GameObject object1 = Resources.Load <GameObject>(path);

            if (object1 == null)
            {
                onShowOver();
                return;
            }

            obj = Instantiate <GameObject>(object1);
            attackerAnimation    = obj.GetComponent <GameAnimation>();
            attackerAnimation.UI = true;
            attackerAnimation.onAnimationEvent = onAnimationEvent;
            trans = obj.transform;
            trans.SetParent(right.transform);
            trans.localScale    = Vector3.one;
            trans.localPosition = Vector3.zero;

            defencerAnimation = leftAnimation;

            RectTransform trans1 = right.GetComponent <RectTransform>();
            trans1.SetSiblingIndex(3);

            rangedAttack = (rt.AttackType == GameUnitAttackType.Ranged);

            if (rangedAttack)
            {
                leftAnimation.clearAnimation();
            }
        }

        attackerAnimation.otherGameAnimation = defencerAnimation;

        if (o)
        {
            onShowOver();
        }
        else
        {
            scale     = 2.0f;
            alpha     = 0.1f;
            time      = 0.0f;
            alphaAdd  = true;
            startFade = true;

            updateStage();
        }
    }
Esempio n. 5
0
    public void initUnits()
    {
        GameBattleStage stage = GameBattleManager.instance.ActiveBattleStage;


        units = new GameBattleUnit[stage.Man.Length];

        for (int i = 0; i < stage.Man.Length; i++)
        {
            GameUnit unit = GameUnitData.instance.getData(stage.Man[i].UnitBase.UnitID);

            string path = "Prefab/Sprite/man" + GameDefine.getString3(unit.Sprite) + "/";
            path += (GameDefine.getString3(unit.Sprite) + "man");

            GameObject    obj = Instantiate <GameObject>(Resources.Load <GameObject>(path));
            GameAnimation ani = obj.GetComponent <GameAnimation>();
            obj.name = "man" + GameDefine.getString3(unit.Sprite) + " " + i + " " + stage.Man[i].UnitBase.UnitID;

            Transform trans = obj.transform;
            trans.SetParent(unitTransform);
            trans.localScale = new Vector3(1.0f, 1.0f, 1.0f);

            GameBattleMovement movement   = obj.AddComponent <GameBattleMovement>();
            GameBattleUnit     battleUnit = obj.AddComponent <GameBattleUnit>();

            battleUnit.init(unit, stage.Man[i].clone());

            if (battleUnit.UnitID < GameDefine.MAX_USER)
            {
                battleUnit.setUnitBase(GameUserData.instance.getUnitBase(battleUnit.UnitID));
            }

            battleUnit.updateUnitData();
            battleUnit.initHPMP();
            battleUnit.clearMove();

            if (battleUnit.IsUser)
            {
                addUser(battleUnit);
            }
            else if (battleUnit.IsEnemy)
            {
                addEnemy(battleUnit);
            }
            else if (battleUnit.IsNpc)
            {
                addNpc(battleUnit);
            }

            units[i] = battleUnit;

            if (stage.XY.Length <= i)
            {
            }
            else
            {
                GameBattleXY xy = stage.XY[i];
                movement.setPos(xy.X, xy.Y);
            }
        }
    }