Example #1
0
 public void Spawn(Doll doll, int pos)
 {
     if (pos - 1 < 0)
     {
         return;
     }
     doll.Spawn(tiles[pos - 1].tr);
     tiles[pos - 1].doll = doll;
 }
Example #2
0
    /// <summary>
    /// 인형 스폰
    /// </summary>
    /// <param name="doll"></param>
    /// <param name="selecter">인형을 스폰하는 셀렉터</param>
    public void Spawn(Doll doll, DollSelecter.Select selecter)
    {
        if (selecter.gridPos - 1 < 0)
        {
            return;
        }
        //셀렉터가 가르키는 타일에 이미 인형이 있으면 해당 타일의 인형을 디스폰
        if (tiles[selecter.gridPos - 1].doll != null)
        {
            Despawn(selecter.gridPos);
        }
        //셀렉터에 인형의 초상화 설정
        selecter.image.sprite = doll.profilePic;
        //인형 개별버프 초기화
        ResetIndiBuff();
        //모든 이미지오프 딜리게이트 실행
        AllImageOff();

        if (doll.go.activeSelf)
        {
            //스폰하려는 인형이 이미 다른타일에 있으면, 해당인형의 셀렉터의 초상화를 지움
            doll.selecter.image.sprite = SingleTon.instance.nullButtonSprite;
            //이미 다른타일에 있는 인형을 스폰하고자하는 셀렉터의 위치로 옮김
            MoveTo(doll.pos, selecter.gridPos, false);
        }
        else
        {
            //그렇지 않으면 일반 스폰 진행
            doll.Spawn(tiles[selecter.gridPos - 1].tr);
            //인형의 Pos에 셀렉터의 gridPos 할당
            doll.pos = selecter.gridPos;
            //해당 타일의 인형에 스폰한 인형, 셀렉터 할당
            //해당 타일의 미니버프 설정
            tiles[selecter.gridPos - 1].doll     = doll;
            tiles[selecter.gridPos - 1].selecter = selecter;
            tiles[selecter.gridPos - 1].miniBuff.SetMiniBuff(doll.dollData);
        }
        //인형의 셀렉터에 스폰한 셀렉터 할당.
        doll.selecter = selecter;
        //전체 버프 계산
        CalcBuff();
    }