Пример #1
0
    public Effect getEffectofType(EffectTypes type)
    {
        // This makes a new effect of specified type
        Effect e;

        switch (type)
        {
        case EffectTypes.test:
            e = new TestEffect("");
            break;

        case EffectTypes.moveUnit:
            e = new MoveEffect();
            break;

        case EffectTypes.enemySpawn:
            e = new EnemyEffect();
            break;

        case EffectTypes.enemyConversion:
            e = new ConversationEffect();
            break;

        default:
            e = new NullEffect();
            break;
        }
        return(e);
    }
 public void updateEnemyIndex(string d)
 {
     if (d.Length > 0)
     {
         Effect e;
         currentEvent.getEffect(currentEffectIndex, out e);
         EnemyEffect enemyEffect = (EnemyEffect)e;
         enemyEffect.setIndex(int.Parse(d));
     }
 }
    public void updateMoveY(string d)
    {
        if (d.Length > 0)
        {
            Effect e;
            currentEvent.getEffect(currentEffectIndex, out e);

            switch (e.getEffectType())
            {
            case EffectTypes.moveUnit:
                MoveEffect moveEffect = (MoveEffect)e;
                moveEffect.setY(int.Parse(d));
                break;

            case EffectTypes.enemySpawn:
                EnemyEffect enemyEffect = (EnemyEffect)e;
                enemyEffect.setY(int.Parse(d));
                break;
            }
        }
    }
Пример #4
0
 public void AddEffect(EnemyEffect effect)
 {
     this.effects.Add(effect);
 }
    public void showEffect(int i)
    {
        if (currentEffectPanel != null)
        {
            currentEffectPanel.SetActive(false);
        }

        Vector2 pos;

        switch ((EffectTypes)i)
        {
        case EffectTypes.test:
            TestEffect effect = (TestEffect)currentEvent.getEffects()[currentEffectIndex];
            currentEffectPanel = transform.FindChild("testPanel").gameObject;
            currentEffectPanel.SetActive(true);

            currentEffectPanel.transform.FindChild("InputField").GetComponent <InputField>().text = "";
            print(effect.getData());
            currentEffectPanel.transform.FindChild("InputField").GetChild(1).GetComponent <Text>().text = effect.getData();
            break;

        case EffectTypes.moveUnit:
            MoveEffect moveEffect = (MoveEffect)currentEvent.getEffects()[currentEffectIndex];
            currentEffectPanel = transform.FindChild("moveUnitPanel").gameObject;
            currentEffectPanel.SetActive(true);

            currentEffectPanel.transform.FindChild("XField").GetComponent <InputField>().text = "";
            currentEffectPanel.transform.FindChild("YField").GetComponent <InputField>().text = "";

            pos = moveEffect.getPosition();
            currentEffectPanel.transform.FindChild("XField").GetChild(1).GetComponent <Text>().text = pos.x.ToString();
            currentEffectPanel.transform.FindChild("YField").GetChild(1).GetComponent <Text>().text = pos.y.ToString();

            break;

        case EffectTypes.enemySpawn:
            EnemyEffect enemyEffect = (EnemyEffect)currentEvent.getEffects()[currentEffectIndex];
            currentEffectPanel = transform.FindChild("EnemyPanel").gameObject;
            currentEffectPanel.SetActive(true);

            currentEffectPanel.transform.FindChild("XField").GetComponent <InputField>().text    = "";
            currentEffectPanel.transform.FindChild("YField").GetComponent <InputField>().text    = "";
            currentEffectPanel.transform.FindChild("UnitIndex").GetComponent <InputField>().text = "";

            pos = enemyEffect.getPosition();
            currentEffectPanel.transform.FindChild("XField").GetChild(1).GetComponent <Text>().text    = pos.x.ToString();
            currentEffectPanel.transform.FindChild("YField").GetChild(1).GetComponent <Text>().text    = pos.y.ToString();
            currentEffectPanel.transform.FindChild("UnitIndex").GetChild(1).GetComponent <Text>().text = enemyEffect.getIndex().ToString();
            break;

        case EffectTypes.enemyConversion:
            ConversationEffect conEffect = (ConversationEffect)currentEvent.getEffects()[currentEffectIndex];
            currentEffectPanel = transform.FindChild("conversationPanel").gameObject;
            currentEffectPanel.SetActive(true);

            currentEffectPanel.transform.FindChild("InputField").GetComponent <InputField>().text = "";
            print(conEffect.getData());
            currentEffectPanel.transform.FindChild("InputField").GetChild(1).GetComponent <Text>().text = conEffect.getData();
            break;

        case EffectTypes.noEffect:
            currentEffectPanel = null;
            break;
        }
    }
Пример #6
0
 public void PoolEffect(EnemyEffect enemy, Tile pos)
 {
     enemyEffectPools[enemy].ActiveObject(pos.transform.position + new Vector3(0, 0.5f));
 }
Пример #7
0
 public void PoolEffect(EnemyEffect enemy, Vector3 pos)
 {
     enemyEffectPools[enemy].ActiveObject(pos + new Vector3(0, 0.5f));
 }
Пример #8
0
    /*===============================================================*/

    /*===============================================================*/
    /// <summary>攻撃や防御などの先頭コマンド選択処理</summary>
    /// <param name="combat">MyOnClickから呼び出されたゲームオブジェクトが入ります</param>
    void InputEvent(GameObject combat)
    {
        switch (combat.GetComponent <Text>( ).text)
        {
        default: {
            // スキル ( 攻撃名 ) 表示
            if (skillMessageFlg)
            {
                HUD_BattleScene.ApplyMessageText(combat.GetComponent <Text>( ).text);
            }
            break;
        }

        case "攻撃": {
            // エフェクト再生関数を呼ぶ
            EnemyEffect.SetEffectPlay(0, "IsSword", 1.0f, 1.0f, 0.0f, 0.0f);
            HUD_BattleScene.ApplyMessageText("攻撃");
            skillMessageFlg = false;                     // 元に戻す

            /////////////////////////////////////////////////
            /// TODO 攻勢チェンジテスト
            Combat.GetCombatState[0].isAction = false;
            Combat.GetCombatState[1].isAction = true;
            /////////////////////////////////////////////////

            break;
        }

        case "防御": {
            // エフェクト再生関数を呼ぶ
            EnemyEffect.SetEffectPlay(0, "IsSpear", 1.0f, 1.0f, 0.0f, -0.5f);
            skillMessageFlg = false;                     // 元に戻す
            break;
        }

        case "スキル": {
            // スクロールバーを閉じる
            combat.transform.parent.parent.parent.GetChild(4).gameObject.SetActive(false);
            combat.transform.parent.parent.parent.GetChild(5).gameObject.SetActive(false);
            // スクロールバーを出現させる
            combat.transform.parent.parent.parent.GetChild(3).gameObject.SetActive(true);
            // スキルスクロールバーを操作できるようにする
            pocketElement = 0;
            // カウント変数の初期化
            slvCnt = 0;
            // スキル ( 攻撃名 ) を表示できるようにする
            skillMessageFlg = true;
            break;
        }

        case "入れ替え": {
            // スクロールバーを閉じる
            combat.transform.parent.parent.parent.GetChild(3).gameObject.SetActive(false);
            combat.transform.parent.parent.parent.GetChild(5).gameObject.SetActive(false);
            // スクロールバーを出現させる
            combat.transform.parent.parent.parent.GetChild(4).gameObject.SetActive(true);
            // 入れ替えスクロールバーを操作できるようにする
            pocketElement = 1;
            // カウント変数の初期化
            slvCnt          = 0;
            skillMessageFlg = false;                     // 元に戻す
            break;
        }

        case "アイテム": {
            // スクロールバーを閉じる
            combat.transform.parent.parent.parent.GetChild(3).gameObject.SetActive(false);
            combat.transform.parent.parent.parent.GetChild(4).gameObject.SetActive(false);
            // スクロールバーを出現させる
            combat.transform.parent.parent.parent.GetChild(5).gameObject.SetActive(true);
            // アイテムスクロールバーを操作できるようにする
            pocketElement = 2;
            // カウント変数の初期化
            slvCnt          = 0;
            skillMessageFlg = false;                     // 元に戻す
            break;
        }

        case "逃走": {
            break;
        }
        }
    }