Ejemplo n.º 1
0
 // Use this for initialization
 void Start()
 {
     MyTransform            = transform;
     MyTransform.localScale = new Vector3(0.0f, 6.0f, 1.0f);
     HeroPos   = GameObject.Find("HeroSprite").transform;
     scHeroTag = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
 }
Ejemplo n.º 2
0
 void Start()
 {
     MyFSprite    = transform.GetComponent <UIFilledSprite>();
     MonsterSpeed = GameObject.Find("Manager(Clone)").GetComponent <Manager>();
     LiveHero     = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
     scFeverMng   = GameObject.Find("Main Camera").GetComponent <FeverManager>();
 }
Ejemplo n.º 3
0
 // Use this for initialization
 void Start()
 {
     HeroSP     = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
     goDiePart  = GameObject.Find("Die_Sprite");
     MainCamera = GameObject.Find("Main Camera").transform;
     goDiePart.gameObject.SetActiveRecursively(false);
 }
Ejemplo n.º 4
0
 // Use this for initialization
 void Start()
 {
     Uiimage   = transform.GetComponent <UILabel>();
     scManager = GameObject.Find("Manager(Clone)").GetComponent <Manager>();
     goHero    = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
     Prefab    = false;
     num       = 1;
 }
Ejemplo n.º 5
0
 // Use this for initialization
 void Start()
 {
     MyTransform       = transform;
     scMouseScrip      = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
     AlphaTag[0]       = GameObject.Find("TouchImage").GetComponent <UISlicedSprite>();
     AlphaTag[1]       = GameObject.Find("SensorImage").GetComponent <UISlicedSprite>();
     AlphaTag[1].color = new Color(1.0f, 1.0f, 1.0f, 0.5f);
 }
Ejemplo n.º 6
0
    int GetLiveCheckHero()
    {
        if (LiveHero == null)
        {
            LiveHero = GameObject.Find("HeroSprite").GetComponent <MouseScripts>();
        }

        if (LiveHero.GetHeroLive() == false)
        {
            return(1);
        }
        else
        {
            return(0);
        }
    }
Ejemplo n.º 7
0
    // 타일 위치에 관한 이벤트 처리
    IEnumerator RoundResult()
    {
        int          occPlayerId, checkPlayer, checkCard;
        List <Tiles> resultTiles = new List <Tiles>();

        //실행을 받으면 타일 하나씩 순회하면서 해당 타일의 최종 점령 playerId를 확인한다.
        //종료시점에 occPlayerId에 playerId를 넣고 occTile에 occPlayerId값을 입력, 종료시 타일 clear()
        for (int i = 0; i < tileLocX.Count; ++i)
        {
            resultTiles.Clear();
            occPlayerId = 0;
            LocX        = tileLocX[i];
            LocY        = tileLocY[i];

            Debug.Log("<color=red>Prefab create : </color>" + LocX + ", " + LocY);


            PrefebManager.CreateArrowPrefeb(arrow_tile, LocX, LocY);
            SoundManager.instance.PlayArrowSound();
            yield return(new WaitForSeconds(1));

            SoundManager.instance.PlayArrowSound();
            yield return(new WaitForSeconds(1));

            MouseScripts.result_pannel_roundover(LocX, LocY);
            for (int j = 0; j < selectTiles[LocX][LocY].Count; ++j)
            {
                checkPlayer = selectTiles[LocX][LocY][j].playerId;
                checkCard   = selectTiles[LocX][LocY][j].cardId;

                //사용 카드 처리
                switch (checkCard)
                {
                case 1:     //점령
                {
                    resultTiles.Add(new Tiles(checkPlayer, checkCard));
                    break;
                }

                case 2:     //방어
                {
                    //방어카드를 사용한 플레이어의 땅이라면?
                    if (occTiles[LocX, LocY] == checkPlayer)
                    {
                        int idx = 0;
                        while (idx < resultTiles.Count)
                        {
                            if (resultTiles[idx].playerId != checkPlayer)
                            {
                                Debug.Log("삭제! " + resultTiles[idx].playerId);
                                resultTiles.RemoveAt(idx);
                                break;
                            }
                            ++idx;
                        }
                    }
                    break;
                }

                case 3:     //매수
                {
                    int idx = 0;
                    while (idx < resultTiles.Count)
                    {
                        if (resultTiles[idx].cardId == 1)
                        {
                            resultTiles.RemoveAt(idx);
                        }
                        else
                        {
                            ++idx;
                        }
                    }
                    resultTiles.Add(new Tiles(checkPlayer, checkCard));
                    break;
                }

                default:     //블러핑
                    break;
                }
            }

            /* 게임창의 카드사용 개수가
             * 3개 이하이면 2초
             * 3개 초과이면 4초
             * 7개 이상이면 6초
             */
            GameObject content_go = GameObject.Find("war_result_Content");

            if (content_go.transform.childCount <= 10)
            {
                yield return(new WaitForSeconds(4));
            }



            //if (content_go.transform.childCount <= 3) {
            //    yield return new WaitForSeconds(2);
            //}
            //else if (3 < content_go.transform.childCount && content_go.transform.childCount < 6){
            //    yield return new WaitForSeconds(4);
            //}
            //else { yield return new WaitForSeconds(6); }
            MouseScripts.war_result_off();
            //탐색이 끝난 타일 초기화
            selectTiles[LocX][LocY].Clear();

            //프리팹 삭제
            PrefebManager.DestroyPrefebs(LocX, LocY);

            //변경값이 있는가
            if (resultTiles.Count > 0)
            {
                Debug.Log($"({LocX} , {LocY}) = {resultTiles[0].playerId}");
                occPlayerId = resultTiles[0].playerId;
            }

            //해당 타일 프리팹 생성
            if (occPlayerId != 0)
            {
                occTiles[LocX, LocY] = occPlayerId;
                PrefebManager.CreatePrefeb(flag[occPlayerId - 1], LocX, LocY, NetworkRoundManager.getMyColor(occPlayerId));
            }
            else if (occTiles[LocX, LocY] != 0)
            {
                int tempid = occTiles[LocX, LocY];
                PrefebManager.CreatePrefeb(flag[tempid - 1], LocX, LocY, NetworkRoundManager.getMyColor(tempid));
            }
            yield return(new WaitForSeconds(1));
        }

        //최종적으로 player_count를 재탐색하고 타일 초기화 -> occTile에 따른 결과 반영
        tileLocX.Clear();
        tileLocY.Clear();

        //라운드결과 종료 => 점령지, 점수 계산
        RoundResultEnd();

        NetworkRoundManager.nowRound += 1;

        Debug.Log("<color=red>nowRound, roundLimit : </color>" + NetworkRoundManager.nowRound + ", " + NetworkRoundManager.roundLimit);
        if (NetworkRoundManager.nowRound > NetworkRoundManager.roundLimit)
        {
            yield return(new WaitForSeconds(1));

            if (GameOver.player_is_win == true)
            {
                SoundManager.instance.audioSource.Stop();
                SoundManager.instance.PlayWinSound();
            }
            else
            {
                SoundManager.instance.audioSource.Stop();
                SoundManager.instance.PlayLoseSound();
            }
            game_result_pannel.SetActive(true);
        }
        else
        {
            yield return(new WaitForSeconds(1));

            //라운드 텍스트 이동
            NetworkRoundManager.roundProcessBool = false;
            TweenMoveObj();
        }
    }