コード例 #1
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            try
            {
                var container = new ObjectContainer(false);
                container.Register(typeof(Database)).In(Lifetime.Container());
                container.Register(typeof(ILoginService), typeof(LoginService)).In(Lifetime.Container());
                container.Register(typeof(IContactService), typeof(ContactService)).In(Lifetime.Container());

                IIocWrapper  iocWrapper  = new IoCWrapper(container);
                IPairManager pairManager = new PairManager();
                pairManager.RegisterAssembly(typeof(LoginView).Assembly);
                pairManager.RegisterAssembly(typeof(Program).Assembly);

                ICoordinator coordinator = new Coordinator(pairManager, iocWrapper);
                coordinator.StartApplication("LoginController");
            }
            catch (Exception ex)
            {
                Console.WriteLine("...初始化应用程序请联系管理员出错的...");
                Environment.Exit(Environment.ExitCode);
            }
        }
コード例 #2
0
/*	public static string pairRegDate {
 *              get{return _player.pairRegDate;}
 *              set{ _player.pairRegDate = value; }
 *      }*/


    // P:pri  N:PlayerNum  Q:weight  Nq:pair  Nr:match
    //  Score = P + 2NG + (QN+1)(Aq+Bq+Cq)+(QN-1)(Ar+Br+Cr)
    public static bool getPositionA(bool pairAllowFlg)                          // Aポジションになる選手をワークに移す
    {
        int    n       = getPlayerCount();
        int    saveScr = 0;
        string regDate = "";
        var    q1      = GameList.Instance.playerList.Where(p => p.lockStat == 0 && p.placeStat == 24);

        foreach (_Player p in q1)                                                                                       // 全選手で選択可能な選手を対象とする
        {
            if (!pairAllowFlg)                                                                                          // PositonBがLockされている場合、Pairの選手は対象から除外する
            {
                if (PairManager.getPairRegDate(p.regDate) != null)
                {
                    continue;
                }
            }

            // score部分計算 P + 2NG
            int scr = p.idxPriority + 2 * n * (p.game + p.gameAjust);
            if (scr < saveScr || saveScr == 0)
            {
                saveScr = scr;
                regDate = p.regDate;
            }
        }
        if (posPlayerOfRegDate(regDate))
        {
            return(true);
        }
        else
        {
            return(false);
        }
    }
コード例 #3
0
//	public Transform TargetListMember;		// toggle(script) から設定
    public void _changeMemberStat(Transform tListMember, int idxPrefub)         // toggle(script) から関節呼び出し
    {
        bool actFlag = false;

        MemberManager.posMember(tListMember.transform.GetSiblingIndex());
        Color cl = tListMember.transform.Find("BaseWhite").GetComponent <Image>().color;

        if (cl == Colors.male || cl == Colors.maleDisable)
        {
            if (MemberManager.activeStat == 0)
            {
                cl      = Colors.male;
                actFlag = true;
            }
            else
            {
                cl      = Colors.maleDisable;
                actFlag = false;
            }
        }
        else
        {
            if (cl == Colors.female || cl == Colors.femaleDisable)
            {
                if (MemberManager.activeStat == 0)
                {
                    cl      = Colors.female;
                    actFlag = true;
                }
                else
                {
                    cl      = Colors.femaleDisable;
                    actFlag = false;
                }
            }
            else
            {
                Debug.Log("ERROR: SelectView _changeMemberStat   DATAがおかしい");
                return;
            }
        }

        if (actFlag == true)
        {
            tListMember.transform.Find("BaseWhite").GetComponent <Image> ().color = cl;
            MemberManager.idxRec     = MemberManager.getActiveMemberLastNum() + 1;
            MemberManager.activeStat = 1;             // Activeにする場合は、status更新前の最大Activeidx取得後にstatusを更新すること
        }
        else
        {
            PairManager.clearPairMemberOfRegDate(MemberManager.getRegDateOfListIdx(idxPrefub));                 // メンバー非選択時はペア解除
            PairManager.Save();

            tListMember.transform.Find("BaseWhite").GetComponent <Image> ().color = cl;
            MemberManager.idxRec     = MemberManager.MAX_IDXREC;
            MemberManager.activeStat = 0;

            loadView();
        }
    }
コード例 #4
0
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);

            try
            {
                var container = new ObjectContainer(false);
                container.Register(typeof(Database)).In(Lifetime.Container());
                container.Register(typeof(ILoginService), typeof(LoginService)).In(Lifetime.Container());
                container.Register(typeof(IContactService), typeof(ContactService)).In(Lifetime.Container());

                IIocWrapper  iocWrapper  = new IoCWrapper(container);
                IPairManager pairManager = new PairManager();
                pairManager.RegisterAssembly(typeof(LoginView).Assembly);
                pairManager.RegisterAssembly(typeof(Start).Assembly);

                ICoordinator coordinator = new Coordinator(pairManager, iocWrapper);
                coordinator.StartApplication("ListController");
            }
            catch (Exception e)
            {
                Console.WriteLine("...Error while initializing the application please contact thhe administrator...");
                Environment.Exit(Environment.ExitCode);
            }
        }
コード例 #5
0
ファイル: ScriptMainView.cs プロジェクト: AFSINC/iMatchup
    void Start()
    {
        audioSrc = this.transform.GetComponent <AudioSource> ();
        MemberManager.initMember();      //MemberManagerの初期化(ここで1回のみ)
        PairManager.initPair();          //PairManagerの初期化(ここで1回のみ)
        this.transform.Find("TitlePanel/btnDEBUG").gameObject.SetActive(SettingManager.DEBUG_MODE);
        viewManager = GameObject.Find("ViewManager").GetComponent <ViewManager>();
        Vector2 rectMainPanel = this.transform.TransformVector(new Vector3((this.transform as RectTransform).rect.width, (this.transform as RectTransform).rect.height));

        viewManager.MOVE_DEST = (this.transform as RectTransform).rect.width;
        lblActive             = this.transform.Find("ActiveMemberListPanel/lblActive").GetComponent <Text> ();
        tPfbParent            = this.transform.Find("ActiveMemberListPanel/ListScroll/LayoutVertical");
        if (SettingManager.form == 0)
        {
            SettingManager.initSetData();
        }

//		GameObject.Find ("Game/MainPanel/PlayPanel/SclGame").GetComponent<PageScrollRect>().pageNum = (SettingManager.courtNum + 1) / 2;
        SettingManager.Save();
        MemberManager.Save();
        GameManager.Save();
        PairManager.Save();

        //if (GameManager.gameStatus != 0)
        //	viewManager.scriptGameView.dispExec (true);
        loadView();
    }
コード例 #6
0
ファイル: ScriptPairView.cs プロジェクト: AFSINC/iMatchup
    // Use this for initialization
    void Start()
    {
        viewManager = GameObject.Find("ViewManager").GetComponent <ViewManager>();
        tPfbParent  = this.transform.Find("PairMemberPanel/ListScroll/LayoutVertical");
        PairManager.initPair();

        this.gameObject.SetActive(false);
    }
コード例 #7
0
    public static bool getPositionD(string iRegDatePosA, string iRegDatePosB, string iRegDatePosC, bool pairAllowFlg)                   // Dポジションになる選手をワークに移す
    {
        int n = getPlayerCount();

//		int priority = 0;
//		int game = 0;
        int    saveScr = 0;
        string regDate = "";
        var    q1      = GameList.Instance.playerList.Where(p => p.lockStat == 0 && p.placeStat == 24 && (p.regDate != iRegDatePosA && p.regDate != iRegDatePosB && p.regDate != iRegDatePosC));

        foreach (_Player p in q1)                                       // ABCポジションの選手以外で選択可能な選手を対象とする
        {
            if (!pairAllowFlg)                                          // PositonCがLockされている場合、Pairの選手は対象から除外する
            {
                if (PairManager.getPairRegDate(p.regDate) != null)
                {
                    continue;
                }
            }
            // score部分計算 P + 2NG
            int scr1 = p.idxPriority + 2 * n * (p.game + p.gameAjust);
            int scr2 = 0;
            int scr3 = 0;
            int scr4 = 0;
            var q2   = GameList.Instance.matchList.Where(ma => ma.youRegDate == iRegDatePosA && ma.myRegDate == p.regDate);
            foreach (_Match ma in q2)                           // A と p(A,B,C以外) のpair,match履歴
            // score部分計算 (QN+1)(Aq)+(QN-1)(Ar)
            {
                scr2 += (SettingManager.weight * n + 1) * (ma.pair + ma.pairAjust) + (SettingManager.weight * n - 1) * (ma.match + ma.matchAjust);
            }
            var q3 = GameList.Instance.matchList.Where(mb => mb.youRegDate == iRegDatePosB && mb.myRegDate == p.regDate);
            foreach (_Match mb in q3)                           // B と p(A,B,C以外) のpair,match履歴
            // score部分計算 (QN+1)(Bq)+(QN-1)(Br)
            {
                scr3 += (SettingManager.weight * n + 1) * (mb.pair + mb.pairAjust) + (SettingManager.weight * n - 1) * (mb.match + mb.matchAjust);
            }
            var q4 = GameList.Instance.matchList.Where(mc => mc.youRegDate == iRegDatePosC && mc.myRegDate == p.regDate);
            foreach (_Match mc in q4)                           // C と p(A,B,C以外) のpair,match履歴
            // score部分計算 (QN+1)(Cq)+(QN-1)(Cr)
            {
                scr4 += (SettingManager.weight * n + 1) * (mc.pair + mc.pairAjust) + (SettingManager.weight * n - 1) * (mc.match + mc.matchAjust);
            }
            int scr = scr1 + scr2 + scr3 + scr4;
            if (scr < saveScr || saveScr == 0)
            {
                saveScr = scr;
                regDate = p.regDate;
            }
        }
        if (posPlayerOfRegDate(regDate))
        {
            return(true);
        }
        else
        {
            return(false);
        }
    }
コード例 #8
0
 public void updateView2()           // for pairView
 {
     debugTxt.text = "";
     for (int i = 0; i < PairManager.getPairCount(); i++)
     {
         PairManager.posPair(i);
         debugTxt.text = debugTxt.text + "[" + i + "] [L]reg:" + PairManager.pairRegDateL + " N:" + PairManager.pairNameKnji_familyL + PairManager.pairNameKnji_firstL + " Gen:" + PairManager.pairGenderL + " -- [R]reg:" + PairManager.pairRegDateR + " N:" + PairManager.pairNameKnji_familyR + PairManager.pairNameKnji_firstR + " Gen:" + PairManager.pairGenderR + "\n";
     }
 }
コード例 #9
0
ファイル: ScriptPairView.cs プロジェクト: AFSINC/iMatchup
 public void deletePair(GameObject o, int idx)       // pareMemberからdoubletap(長押し)で呼ばれる
 {
     PairManager.tempCurrentLR = PairManager.INIT;
     PairManager.clearPairMemberOfRegDate(idx);
     PairManager.cleanEmptyPair();
     MemberManager.Save();
     PairManager.Save();
     loadView();
 }
コード例 #10
0
ファイル: ScriptPairView.cs プロジェクト: AFSINC/iMatchup
 public void _CallBackBtnCancel()
 {
     PairManager.tempCurrentLR = PairManager.INIT;
     PairManager.cleanEmptyPair();
     PairManager.Save();
     MemberManager.Save();
     viewManager.scriptSelectView.loadView();
     viewManager.chgSelsectView(myView, viewManager.OUT_RIGHT);
 }
コード例 #11
0
ファイル: ScriptPairView.cs プロジェクト: AFSINC/iMatchup
    private void _deletePairAll()
    {
        PairManager.tempCurrentLR = PairManager.INIT;
        PairManager.cleanPairAll();
//		MemberManager.cleanPairAll ();
        MemberManager.Save();
        PairManager.Save();
//		PairManager.Load ();
        loadView();
    }
コード例 #12
0
 public static void updateMemberInfo()
 {
     for (int i = 0; i < MemberList.Instance.memberList.Count; i++)
     {
         if (MemberList.Instance.memberList [i].regDate == _member.regDate)
         {
             MemberList.Instance.memberList.RemoveAt(i);
             MemberList.Instance.memberList.Insert(i, _member);
             PairManager.updateName(_member.regDate, _member.nameKaji_family, _member.nameKaji_first, _member.gender);
         }
     }
     Save();
 }
コード例 #13
0
ファイル: GamePlayer.cs プロジェクト: AFSINC/iMatchup
    void OnLongPressPara(PointerEventData e)
    {
        if (flgDrag)
        {
            return;
        }

        if (!longPressFlg)
        {
            if (GameManager.chkLock(myRegDate) == GameManager.LOCK)
            {
                longPressFlg = false;
                return;
            }
            else
            {
                longPressFlg = true;
            }
            playerPos = this.transform.position;

            Transform pp = this.transform;
            pp.gameObject.AddComponent <Shadow> ();
            sd                = pp.GetComponent <Shadow> ();
            sd.effectColor    = new Vector4(0f, 0f, 0f, 20f / 255f);
            sd.effectDistance = new Vector2(20f, -30f);
            pp.gameObject.AddComponent <Outline> ();
            ol                 = pp.GetComponent <Outline> ();
            ol.effectColor     = new Vector4(0f, 0f, 0f, 30f / 255f);
            ol.effectDistance  = new Vector2(3.0f, 3.0f);
            ol.useGraphicAlpha = true;

            tfOrignParent = this.transform.parent;
            this.transform.SetParent(tfPlayPanel);

            parentPos.x = this.transform.position.x;
            parentPos.y = this.transform.position.y;
            posOffset.x = this.transform.position.x - e.position.x;
            posOffset.y = this.transform.position.y - e.position.y;
            this.transform.SetAsLastSibling();

            // PairがいたらRingを移動のときに消す
            string myPairRegDate = PairManager.getPairRegDate(myRegDate);
            if (myPairRegDate != null)
            {
                GameManager.posPlayerOfRegDate(myPairRegDate);                          //Pairのワーク移動
                flgMyPariMk = this.transform.FindChild("Ring").gameObject.activeSelf;   // 自分のRing有無を保存
                this.transform.FindChild("Ring").gameObject.SetActive(false);
                GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
            }
        }
    }
コード例 #14
0
ファイル: GamePlayer.cs プロジェクト: AFSINC/iMatchup
    void onDoubleTap()
    {
        // 待機中、休憩中はLockできない
        int iPlaceNum = GameManager.getPlayerPlace(myRegDate);

        if (iPlaceNum != GameManager.PLACE_WAIT && iPlaceNum != GameManager.PLACE_BREAK)
        {
            int iCourtNum = GameManager.getCourtOfRegdate(myRegDate);
            // コートがLockされていたら、選手単位ではLock,unLockはできない
            if (iCourtNum < SettingManager.courtNum && GameManager.chkCourtLockOfCortnum(iCourtNum) == GameManager.UNLOCK)
            {
                if (GameManager.chkLock(myRegDate) == GameManager.LOCK)
                {
                    this.transform.FindChild("Lock").gameObject.SetActive(false);
                    GameManager.setLock(myRegDate, GameManager.UNLOCK);
                    // Pairも同じようにLock解除する
                    string myPairRegDate = PairManager.getPairRegDate(myRegDate);
                    if (myPairRegDate != null)
                    {
                        GameManager.getTransformOfRegDate(myPairRegDate).FindChild("Lock").gameObject.SetActive(false);
                        GameManager.setLock(myPairRegDate, GameManager.UNLOCK);
                    }

                    viewManager.scriptGameView.loadView();
                }
                else
                {
                    this.transform.FindChild("Lock").gameObject.SetActive(true);
                    GameManager.setLock(myRegDate, GameManager.LOCK);
                    // Pairも同じようにLockする
                    string myPairRegDate = PairManager.getPairRegDate(myRegDate);
                    if (myPairRegDate != null)
                    {
                        GameManager.getTransformOfRegDate(myPairRegDate).FindChild("Lock").gameObject.SetActive(true);
                        GameManager.setLock(myPairRegDate, GameManager.LOCK);
                    }
                }
            }
        }
        else
        {
            this.transform.FindChild("Lock").gameObject.SetActive(false);
            GameManager.setLock(myRegDate, GameManager.UNLOCK);
        }
        GameManager.Save();
    }
コード例 #15
0
    public static bool getPositionB(string iRegDatePosA, bool pairAllowFlg)                     // Bポジションになる選手をワークに移す
    {
        int n = getPlayerCount();

//		int priority = 0;
//		int game = 0;
        int    saveScr = 0;
        string regDate = "";
        var    q1      = GameList.Instance.playerList.Where(p => p.lockStat == 0 && p.placeStat == 24 && (p.regDate != iRegDatePosA));

        foreach (_Player p in q1)                                                                       // Aポジションの選手以外で選択可能な選手を対象とする
        {
            if (!pairAllowFlg)                                                                          // PositonAがLockされている場合、Pairの選手は対象から除外する
            {
                if (PairManager.getPairRegDate(p.regDate) != null)
                {
                    continue;
                }
            }
            // score部分計算 P + 2NG
            int scr1 = p.idxPriority + 2 * n * (p.game + p.gameAjust);
            int scr2 = 0;
            var q2   = GameList.Instance.matchList.Where(m => m.youRegDate == iRegDatePosA && m.myRegDate == p.regDate);
            foreach (_Match m in q2)
            {
                // score部分計算 (QN+1)(Aq)+(QN-1)(Ar)
//              scr2 += (SettingManager.weight * n + 1) * m.pair + (SettingManager.weight * n - 1) * m.match;
                scr2 += (SettingManager.weight * n + 1) * (m.pair + m.pairAjust) + (SettingManager.weight * n - 1) * (m.match + m.matchAjust);
            }
            int scr = scr1 + scr2;
            if (scr < saveScr || saveScr == 0)
            {
                saveScr = scr;
                regDate = p.regDate;
            }
        }
        if (posPlayerOfRegDate(regDate))
        {
            return(true);
        }
        else
        {
            return(false);
        }
    }
コード例 #16
0
ファイル: BitfinexExchange.cs プロジェクト: vinhins/IntTrader
        public BitfinexExchange(ExchangeManager exchangeManager)
            : base(exchangeManager)
        {
            Name        = "Bitfinex";
            ExchangeAPI = new ExchangeAPI
            {
                Name = Name
            };

            PublicFunctions.Add(APIFunction.RequestOrderBook);
            PublicFunctions.Add(APIFunction.RequestTicker);
            PublicFunctions.Add(APIFunction.RequestTrades);

            AvailableFunctions.Add(APIFunction.RequestTicker);
            AvailableFunctions.Add(APIFunction.RequestBalances);
            AvailableFunctions.Add(APIFunction.RequestTrades);
            AvailableFunctions.Add(APIFunction.RequestOrderBook);
            AvailableFunctions.Add(APIFunction.RequestOpenOrders);
            AvailableFunctions.Add(APIFunction.RequestNewOrder);
            AvailableFunctions.Add(APIFunction.CancelOrder);

            OrderSides.Add(OrderSide.Buy);
            OrderSides.Add(OrderSide.Sell);

            DefaultOrderType = new OrderType("exchange limit", "exchange limit");

            OrderTypes.Add(new OrderType("exchange market", "exchange market"));
            OrderTypes.Add(DefaultOrderType);
            OrderTypes.Add(new OrderType("exchange stop", "exchange stop"));
            OrderTypes.Add(new OrderType("exchange trailing-stop", "exchange trailing-stop"));
            OrderTypes.Add(new OrderType("exchange fill-or-kill", "exchange fill-or-kill"));

            OrderTypes.Add(new OrderType("market", "market"));
            OrderTypes.Add(new OrderType("limit", "limit"));
            OrderTypes.Add(new OrderType("stop", "stop"));
            OrderTypes.Add(new OrderType("trailing-stop", "trailing-stop"));
            OrderTypes.Add(new OrderType("fill-or-kill", "fill-or-kill"));

            PairManager.AddSupportedPair(PairBase.BTCUSD, "btcusd");
            PairManager.AddSupportedPair(PairBase.LTCUSD, "ltcusd");
            PairManager.AddSupportedPair(PairBase.LTCBTC, "ltcbtc");
            PairManager.AddSupportedPair(PairBase.DRKUSD, "drkusd");
            PairManager.AddSupportedPair(PairBase.DRKBTC, "drkbtc");
        }
コード例 #17
0
    public void deleteMember(GameObject o, int idx)
    {
        string regDate = MemberManager.getRegDateOfListIdx(idx);

        if (GameManager.chkLock(regDate) == GameManager.LOCK)                   // Lockされた選手が選択から外されてはいけない
        {
            string title   = "試合ロック中の制限";
            string message = "試合ロック中のメンバーは削除できせません。";
            DialogViewController.Show(title, message, null);
            return;
        }

        PairManager.clearPairMemberOfRegDate(regDate);          // メンバー削除時はペア解除
        PairManager.Save();

        DestroyImmediate(o);
        MemberManager.removeMember(idx);
        updeteView();
    }
コード例 #18
0
ファイル: ScriptSettingView.cs プロジェクト: AFSINC/iMatchup
    private void singlesSettingOK()
    {
        PairManager.tempCurrentLR = PairManager.INIT;
        PairManager.cleanPairAll();             // Dialogの2度呼び出しにならないように、Singles.isOnを再設定するまえにPairをクリアする

        bPairFix.SetActive(false);
        //DoublesKind.SetActive (false);
        //SinglesKind.SetActive (true);
        formSingles.isOn      = true;               // Dialog確認前にDoublesにした可能性があるので、Singlesを設定する
        formSinglesText.color = Colors.White;
        sgsFree.isOn          = true;

        MemberManager.Save();
        PairManager.Save();
//		PairManager.Load ();

        SettingManager.form = formSingles.isOn ? 1: 2;
        SettingManager.Save();
    }
コード例 #19
0
        public KrakenExchange(ExchangeManager exchangeManager)
            : base(exchangeManager)
        {
            Name        = "Kraken";
            ExchangeAPI = new ExchangeAPI
            {
                Name = Name
            };

            PublicFunctions.Add(APIFunction.RequestOrderBook);
            PublicFunctions.Add(APIFunction.RequestTicker);
            PublicFunctions.Add(APIFunction.RequestTrades);

            AvailableFunctions.Add(APIFunction.RequestTicker);
            AvailableFunctions.Add(APIFunction.RequestOrderBook);
            AvailableFunctions.Add(APIFunction.RequestBalances);
            AvailableFunctions.Add(APIFunction.RequestOpenOrders);
            AvailableFunctions.Add(APIFunction.RequestNewOrder);

            OrderSides.Add(OrderSide.Buy);
            OrderSides.Add(OrderSide.Sell);

            DefaultOrderType = new OrderType("limit", "limit");
            OrderTypes.Add(new OrderType("market", "market"));
            OrderTypes.Add(DefaultOrderType); // limit
            OrderTypes.Add(new OrderType("stop-loss", "stop Loss"));
            OrderTypes.Add(new OrderType("take-profit", "take profit"));
            OrderTypes.Add(new OrderType("stop-loss-profit", "stop-loss-profit"));
            OrderTypes.Add(new OrderType("stop-loss-profit-limit", "stop-loss-profit-limit"));
            OrderTypes.Add(new OrderType("stop-loss-limit", "stop-loss-limit"));
            OrderTypes.Add(new OrderType("trailing-stop", "trailing-stop"));
            OrderTypes.Add(new OrderType("trailing-stop-limit", "trailing-stop-limit"));
            OrderTypes.Add(new OrderType("stop-loss-and-limit", "stop-loss-and-limit"));

            PairManager.AddSupportedPair(PairBase.BTCEUR, "XBTEUR");
            PairManager.AddSupportedPair(PairBase.LTCEUR, "LTCEUR");
            PairManager.AddSupportedPair(PairBase.BTCUSD, "XBTUSD");
            PairManager.AddSupportedPair(PairBase.LTCUSD, "LTCUSD");
            PairManager.AddSupportedPair(PairBase.BTCLTC, "XBTLTC");
            PairManager.AddSupportedPair(PairBase.BTCXRP, "XBTXRP");
        }
コード例 #20
0
    // Start is called before the first frame update
    void Start()
    {
        Invoke("Memorize", 0);

        JogadorText.text  = " ";
        vezDoJogador.text = " ";
        instance          = this;
        Invoke("StartJogador1", 4.5f);

        notI  = -1;
        allow = true;

        highlightPlayer1.SetActive(true);
        highlightPlayer2.SetActive(false);

        turno = Turno.jogador1;

        whatPackCarta = 0;
        play          = true;

        //cartasToSpawn = GameObject.FindGameObjectWithTag("CartaParent");


        for (int i = 0; i < carta.Length; i++)
        {
            if (whatPackCarta == 0)
            {
                cartaNova[0].SetActive(true);
            }

            if (carta[i] == null)
            {
                carta[i] = GameObject.Find("Carta " + i);
            }
        }


        audioSource = GetComponent <AudioSource>();
    }
コード例 #21
0
ファイル: InitialSystem.cs プロジェクト: AFSINC/iMatchup
    // データ初期化
    public void _OnInit()
    {
        string title   = "初期化の確認";
        string message = "すべてのデータを削除してダウンロード時の状態にしますか?";

        DialogViewController.Show(title, message, new DialogViewOptions {
            btnCancelTitle    = "キャンセル",
            btnCancelDelegate = () => {
                return;
            },
            btnOkTitle    = "初期化",
            btnOkDelegate = () => {
                SettingManager.Reset();
                MemberManager.Reset();
                PairManager.Reset();
                GameManager.Reset();
                ResultManager.Reset();
                NoticeManager.Reset();
            },
            btnOkTitleSub    = null,
            btnOkDelegateSub = null,
        });
    }
コード例 #22
0
ファイル: ScriptSettingView.cs プロジェクト: AFSINC/iMatchup
    public void _OnFormSingles()
    {
        if (formSingles.isOn == true && PairManager.getPairCount() != 0)
        {
            formDoubles.isOn      = true;                       // Dialog表示中に落とされたらSinglesになっていまうので、一旦Doublesにする
            formDoublesText.color = Colors.White;

            string title   = "ペア解除の確認";
            string message = "ペアが設定されています。\nシングルスではペアは設定できません。\n全てのペアを解除してシングルスに変更しますか?";
            DialogViewController.Show(title, message, new DialogViewOptions {
                btnCancelTitle = "キャンセル", btnCancelDelegate = () => {
                    singlesSettingCancel();
                },
                btnOkTitle = "OK", btnOkDelegate = () => {
                    singlesSettingOK();
                },
            });
        }
        else if (formSingles.isOn == true)
        {
            singlesSettingOK();
        }
    }
コード例 #23
0
ファイル: DraggablePlayer.cs プロジェクト: AFSINC/iMatchup
    public void OnEndDrag(PointerEventData e)
    {
        flgDrag = false;
        Object.Destroy(sd);
        sd = null;
        Object.Destroy(ol);
        ol = null;

        int pageoffset = 0;

        if (minReceiveParentNum > 23)
        {
            pageoffset = 0;
        }
        else
        {
            pageoffset = GameManager.currentPage;                               // 何ページ目かを計算する  page0:0~7    page1:8~15   page2:16~23
        }
//		Debug.Log (" position num on page   min[" + minReceiveParentNum +"]  +  ["+ pageoffset * -8+"]");

        GameManager.posPlayerOfRegDate(myRegDate);
        float dis;

        dis = Vector3.Distance(receiveParentPosition[minReceiveParentNum], playerPos);

        bool existChild = true;

        if (receiveParentTransform [minReceiveParentNum + pageoffset * -8].childCount == 0 || minReceiveParentNum == 24 || minReceiveParentNum == 25)
        {
            existChild = false;                                 // 指定枠に選手はいないので配置できる
        }
        bool   enptyPairPsition    = false;
        string myPairRegDate       = PairManager.getPairRegDate(myRegDate);
        int    iPairPositionOffset = 0;

        if (myPairRegDate != null)
        {
            if (minReceiveParentNum == GameManager.PLACE_WAIT || minReceiveParentNum == GameManager.PLACE_BREAK)
            {
                enptyPairPsition = true;                                        // 自分はPair設定されていているが、待機中または休憩中への移動
            }
            else
            {
                iPairPositionOffset = minReceiveParentNum % SettingManager.form == 0 ? 1 : -1;                                          // 自分の位置からPairの位置のOffsetを計算
                if (GameManager.getPlaceOfPlayer(minReceiveParentNum + iPairPositionOffset) == null)
                {
                    enptyPairPsition = true;                                    // 自分はPair設定されており、Pair枠に選手はいない
                }
            }
        }
        else
        {
            enptyPairPsition = true;                                            // 自分はPair設定されていていない
        }
        bool courtLock = false;

        if (minReceiveParentNum != GameManager.PLACE_WAIT && minReceiveParentNum != GameManager.PLACE_BREAK)            // 待機中、休憩中以外
        {
            int iCourtStat = GameManager.chkCourtLockOfPosition(minReceiveParentNum + pageoffset * -8);
            if (iCourtStat == GameManager.LOCK || iCourtStat == -1)
            {
                courtLock = true;                               // Lockされているコートには配置できない
            }
        }

        if (dis < limtDistance && !existChild && enptyPairPsition && !courtLock)
        {
            this.transform.parent.SetParent(receiveParentTransform[minReceiveParentNum + pageoffset * -8]);
            this.transform.parent.position = receiveParentPosition[minReceiveParentNum];
            GameManager.placeStat          = minReceiveParentNum + pageoffset * -8;
            if (myPairRegDate != null)
            {
                GameManager.posPlayerOfRegDate(myPairRegDate);                                  //Pairのワーク移動
                if (minReceiveParentNum == GameManager.PLACE_WAIT || minReceiveParentNum == GameManager.PLACE_BREAK)
                {
                    iPairPositionOffset = 0;
                }

                GameManager.trsPlayer.SetParent(receiveParentTransform[minReceiveParentNum + pageoffset * -8 + iPairPositionOffset]);
                GameManager.trsPlayer.position = receiveParentPosition[minReceiveParentNum + iPairPositionOffset];
                GameManager.placeStat          = minReceiveParentNum + pageoffset * -8 + iPairPositionOffset;
                //Ring
                if (iPairPositionOffset == 0)                           // 0 のときは待機中か休憩中への移動
                {
                    this.transform.parent.FindChild("Ring").gameObject.SetActive(false);
                    GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                    GameManager.trsPlayer.SetAsLastSibling();
                }
                else if (iPairPositionOffset == 1)
                {
                    this.transform.parent.FindChild("Ring").gameObject.SetActive(false);
                    GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                }
                else
                {
                    this.transform.parent.FindChild("Ring").gameObject.SetActive(true);
                    GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
                }
            }
        }
        else
        {
            this.transform.parent.SetParent(tfOrignParent);
            this.transform.parent.position = tfOrignParent.position;
            if (myPairRegDate != null)
            {
                GameManager.posPlayerOfRegDate(myPairRegDate);                                  //Pairのワーク移動
                int iOriginPlace = GameManager.getPlayerPlace(myPairRegDate);
                if (iOriginPlace == GameManager.PLACE_WAIT || iOriginPlace == GameManager.PLACE_BREAK)
                {
                    this.transform.parent.FindChild("Ring").gameObject.SetActive(false);
                    GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                    GameManager.trsPlayer.SetAsLastSibling();
                }
            }
        }

        scriptGameView.loadView();
        //		Debug.Log ("["+minReceiveParentNum+"]  Minname  - > " + receiveParentTransform[minReceiveParentNum].name +"   "+dis);
    }
コード例 #24
0
    private bool calcMatch()    // 対戦を計算し、次の組合せエリアに表示 コート許容人数に満たない場合は、false を返す
    {
        Transform trsMem1 = this.transform.FindChild("ActiveMemberListPanel/Work/CourtBase/MemberSet/imgMember1");
        Transform trsMem2 = this.transform.FindChild("ActiveMemberListPanel/Work/CourtBase/MemberSet/imgMember2");
        Transform trsMem3 = this.transform.FindChild("ActiveMemberListPanel/Work/CourtBase/MemberSet/imgMember3");
        Transform trsMem4 = this.transform.FindChild("ActiveMemberListPanel/Work/CourtBase/MemberSet/imgMember4");

        // 人数不足に備えて計算前に選手を非表示
        trsMem1.gameObject.SetActive(false);
        trsMem2.gameObject.SetActive(false);
        trsMem3.gameObject.SetActive(false);
        trsMem4.gameObject.SetActive(false);
        trsMem1.FindChild("imgPair").GetComponent <Image>().gameObject.SetActive(false);
        trsMem2.FindChild("imgPair").GetComponent <Image>().gameObject.SetActive(false);
        trsMem3.FindChild("imgPair").GetComponent <Image>().gameObject.SetActive(false);
        trsMem4.FindChild("imgPair").GetComponent <Image>().gameObject.SetActive(false);

        int waitPNum = GameManager.getWaitPlayerCount();      // 待機中の人数
        int iPos     = 0;

        if (SettingManager.form == 2)       // Doublesの場合
        {
            if (waitPNum == iPos++)
            {
                return(false);   // 計算対象の待機中選手がいないなら終わり
            }
            else
            {
                trsMem1.gameObject.SetActive(true);
            }

            string sPairRegDate = null;
            // AポジションとBポジションを決定
            GameManager.getPositionA(true);
            string PosARegDate = GameManager.regDate;
            dispPlayer(PosARegDate, trsMem1, false, false);
            string PosBRegDate = PairManager.getPairRegDate(PosARegDate);       // Aポジション選手のPair選手を一時保存
            if (waitPNum == iPos++)
            {
                return(false);   // 計算対象の待機中選手がいないなら終わり
            }
            else
            {
                trsMem2.gameObject.SetActive(true);
            }

            if (PosBRegDate != null)
            {
                dispPlayer(PosARegDate, trsMem1, true, false);
                dispPlayer(PosBRegDate, trsMem2, true, true);
            }
            else
            {
                GameManager.getPositionB(PosARegDate, true);
                PosBRegDate  = GameManager.regDate;
                sPairRegDate = PairManager.getPairRegDate(PosBRegDate);
                if (sPairRegDate != null)   // Bポジション選手にPairがいたら、AポジションにPair選手を配置
                {
                    PosARegDate = sPairRegDate;
                    dispPlayer(PosARegDate, trsMem1, true, false);
                    dispPlayer(PosBRegDate, trsMem2, true, true);
                }
                else
                {
                    dispPlayer(PosBRegDate, trsMem2, false, false);
                }
            }

            if (waitPNum == iPos++)
            {
                return(false);   // 計算対象の待機中選手がいないなら終わり
            }
            else
            {
                trsMem3.gameObject.SetActive(true);
            }

            // CポジションとDポジションを決定 (待機中リストの3番目と4番目)
            GameManager.getPositionC(PosARegDate, PosBRegDate, true);
            string PosCRegDate = GameManager.regDate;
            dispPlayer(PosCRegDate, trsMem3, false, false);
            string PosDRegDate = PairManager.getPairRegDate(PosCRegDate);       // Dポジション選手のPair選手を一時保存
            if (waitPNum == iPos++)
            {
                return(false);   // 計算対象の待機中選手がいないなら終わり
            }
            else
            {
                trsMem4.gameObject.SetActive(true);
            }

            if (PosDRegDate != null)
            {
                dispPlayer(PosCRegDate, trsMem3, true, false);
                dispPlayer(PosDRegDate, trsMem4, true, true);
            }
            else
            {
                GameManager.getPositionD(PosARegDate, PosBRegDate, PosCRegDate, true);
                PosDRegDate  = GameManager.regDate;
                sPairRegDate = PairManager.getPairRegDate(PosDRegDate);
                if (sPairRegDate != null)   // Bポジション選手にPairがいたら、AポジションにPair選手を配置
                {
                    PosCRegDate = sPairRegDate;
                    dispPlayer(PosCRegDate, trsMem3, true, false);
                    dispPlayer(PosDRegDate, trsMem4, true, true);
                }
                else
                {
                    dispPlayer(PosDRegDate, trsMem4, false, false);
                }
            }
        }
        else
        {
            // シングルスの場合
        }
        return(true);
    }
コード例 #25
0
    private void updeteView()
    {
//		MemberManager.Load ();
        // 活動中ラベル
        // リスト全削除
//		sortViewItems();
        int pfCnt = tPfbParent.childCount;

        for (int i = 0; i < pfCnt; i++)
        {
            DestroyImmediate(tPfbParent.Find("ListSelectMember").gameObject);
        }

        // 選択リスト作成
        for (int i = 0; i < MemberManager.getMemberCount(); i++)
        {
            Transform pt = Instantiate(pfbMember).transform;
            pt.name = pfbMember.name;
            pt.SetParent(tPfbParent, false);

            Image  imgListBack = pt.FindChild("BaseWhite").GetComponent <Image> ();
            Toggle toggleStat  = pt.GetComponentInChildren <Toggle> ();

//			sortViewItems ();
            MemberManager.posMember(i);
            string sname = MemberManager.nameKaji_family + " " + MemberManager.nameKaji_first;
            pt.FindChild("BaseWhite/MemberName").GetComponent <Text> ().text = sname;
            string pname = PairManager.getPairPartnerNameOfMyRegDate(MemberManager.regDate);
            if (pname != null)
            {
                pt.FindChild("BaseWhite/PairName").GetComponent <Text> ().text = pname;
            }
            else
            {
                pt.FindChild("BaseWhite/PairName").GetComponent <Text> ().text = "";
            }

            if (MemberManager.gender == 0)
            {
                if (MemberManager.activeStat == 1)
                {
                    imgListBack.color = Colors.male;
                    toggleStat.isOn   = true;
                }
                else
                {
                    imgListBack.color = Colors.maleDisable;
                    toggleStat.isOn   = false;
                }
            }
            else
            {
                if (MemberManager.activeStat == 1)
                {
                    imgListBack.color = Colors.female;
                    toggleStat.isOn   = true;
                }
                else
                {
                    imgListBack.color = Colors.femaleDisable;
                    toggleStat.isOn   = false;
                }
            }

            if (GameManager.chkLock(MemberManager.regDate) == GameManager.LOCK)
            {
                pt.FindChild("BaseWhite/ImgLock").gameObject.SetActive(true);
            }
            else
            {
                pt.FindChild("BaseWhite/ImgLock").gameObject.SetActive(false);
            }


            // EditMemberでメンバー特定するため、プレハブ作成時に登録日を設定する。
            pt.Find("BaseWhite").GetComponent <DeleteMember>().myRegDate = MemberManager.regDate;
            pt.Find("BaseWhite/SelectTglSwitch").GetComponent <ToggleImage>().myRegDate = MemberManager.regDate;
        }
        //// Debug
//		Debug.Log("------------------------------------------- ScriptSelectView");
//		for (int i = 0; i < MemberManager.getMemberCount (); i++) {
//			MemberManager.posMember (i);
//			Debug.Log ("[" + i +"] idx:" + MemberManager.idxRec + " Active:" + MemberManager.activeStat + " seri:" + MemberManager.memberSerial + " NameKJ-Fml:" + MemberManager.nameKaji_family + " NameKJ-Fst:" + MemberManager.nameKaji_first + " NameKN-Fml:" + MemberManager.nameKana_family + " NameKN-Fst:" + MemberManager.nameKana_first + " Gen:" + MemberManager.gender + " Date:" + MemberManager.regDate);
//		}
//		Debug.Log("-------------------------------------------");
        //// Debug
    }
コード例 #26
0
    public void loadView()
    {
        // リスト全削除
        int pfCnt = tPfbParent.childCount;

        for (int i = 0; i < pfCnt; i++)
        {
            DestroyImmediate(tPfbParent.Find("PairSelectMember").gameObject);
        }

        // 選択リスト作成
        // 活動中でpareになっていない人+Tapされたpareの人
        PairManager.posPair(PairManager.tempCurrentRow);
        if (PairManager.tempCurrentLR == PairManager.LEFT)
        {
            taPMyDate  = PairManager.pairRegDateL;
            taPYouDate = PairManager.pairRegDateR;
        }
        else
        {
            taPMyDate  = PairManager.pairRegDateR;
            taPYouDate = PairManager.pairRegDateL;
        }

        MemberManager.initNoPairActivList(taPMyDate);
        int cntParedActiveCnt = MemberManager.getNotPairActiveCount();

        string noPairMemReg = PairManager.getRegNoPairinList();

        for (int i = 0; i < cntParedActiveCnt; i++)
        {
            MemberManager.posPairMember(i);
            if (MemberManager.pairRegDate == taPYouDate)
            {
                continue;
            }
            if ((noPairMemReg != taPMyDate) && (MemberManager.pairRegDate == noPairMemReg))
            {
                continue;
            }
            if (GameManager.chkLock(MemberManager.pairRegDate) == GameManager.LOCK)                     // 試合中Lockの選手
            {
                continue;
            }
            if (GameManager.getPlayerPlace(MemberManager.pairRegDate) == GameManager.PLACE_BREAK)                       // 試合中の休憩中の選手
            {
                continue;
            }

            Transform pt = Instantiate(pfbMember).transform;
            pt.name = pfbMember.name;
            pt.SetParent(tPfbParent, false);

            Image imgListBack = pt.GetComponentInChildren <Image> ();

            // 子コンポーネントのScriptに受け渡し用 日付を埋め込む
            pt.GetComponentInChildren <PairSelectMember>().regDate = MemberManager.pairRegDate;

            string sname = MemberManager.pairNameKaji_family + " " + MemberManager.pairNameKaji_first;
            if (MemberManager.pairRegDate == taPMyDate)
            {
                sname += "  [設定済]";
            }

            pt.GetComponentInChildren <Text> ().text = sname;
            if (MemberManager.pairGender == 0)
            {
                imgListBack.color = Colors.male;
            }
            else
            {
                imgListBack.color = Colors.female;
            }
        }
        this.transform.Find("PairMemberPanel/ListScroll/").GetComponent <ScrollRect>().verticalNormalizedPosition = 1;
    }
コード例 #27
0
ファイル: ScriptPairView.cs プロジェクト: AFSINC/iMatchup
    public void loadView()
    {
        Transform pt;

        if (PairManager.tempCurrentLR == PairManager.INIT)              // ファイルからリスト作成
        // リスト全削除
        {
            int pfCnt = tPfbParent.childCount;
            for (int i = 0; i < pfCnt; i++)
            {
                DestroyImmediate(tPfbParent.Find("Pair").gameObject);
            }

            // 選択リスト作成
            PairManager.Load();                 // load pareFile
            int cntPareCnt = PairManager.getPairCount();
            for (int i = 0; i < cntPareCnt; i++)
            {
                pt      = Instantiate(pfbMember).transform;             // prefabは1つに左右メンバーが対となっている
                pt.name = pfbMember.name;
                pt.SetParent(tPfbParent, false);

                PairManager.posPair(i);

                // 左側メンバー
                pt.transform.Find("ImgPairBase/LeftMember/MemberName").GetComponent <Text>().text = PairManager.pairNameKnji_familyL + " " + PairManager.pairNameKnji_firstL;
                Image imgListBack;
                imgListBack = pt.transform.Find("ImgPairBase/LeftMember/ImgMember").GetComponent <Image>();
                if (PairManager.pairGenderL == 0)
                {
                    imgListBack.color = Colors.male;
                }
                else
                {
                    imgListBack.color = Colors.female;
                }
                imgListBack.GetComponent <PairMember> ().myRegDate = PairManager.pairRegDateL;                  // ScriptにRegDateを代入設定
                if (GameManager.chkLock(PairManager.pairRegDateL) == GameManager.LOCK)
                {
                    pt.transform.Find("ImgPairBase/LeftMember/ImgLock").gameObject.SetActive(true);
                }
                else
                {
                    pt.transform.Find("ImgPairBase/LeftMember/ImgLock").gameObject.SetActive(false);
                }

                // 右側メンバー
                pt.transform.Find("ImgPairBase/RightMember/MemberName").GetComponent <Text> ().text = PairManager.pairNameKnji_familyR + " " + PairManager.pairNameKnji_firstR;
                imgListBack = pt.transform.Find("ImgPairBase/RightMember/ImgMember").GetComponent <Image>();
                if (PairManager.pairGenderR == 0)
                {
                    imgListBack.color = Colors.male;
                }
                else
                {
                    imgListBack.color = Colors.female;
                }
                imgListBack.GetComponent <PairMember> ().myRegDate = PairManager.pairRegDateR;                  // ScriptにRegDateを代入設定
                if (GameManager.chkLock(PairManager.pairRegDateR) == GameManager.LOCK)
                {
                    pt.transform.Find("ImgPairBase/RightMember/ImgLock").gameObject.SetActive(true);
                }
                else
                {
                    pt.transform.Find("ImgPairBase/RightMember/ImgLock").gameObject.SetActive(false);
                }
            }
            pt      = Instantiate(pfbMember).transform;
            pt.name = pfbMember.name;
            pt.SetParent(tPfbParent, false);
            PairManager.newPair();
            PairManager.addPair();
        }
        else                    // PareSelectView からデータを渡された場合
        {
            if (PairManager.tempSelectMyDate == "NULL")
            {
                return;
            }

            MemberManager.posMemberOfRegDate(PairManager.tempSelectMyDate);
            PairManager.posPair(PairManager.tempCurrentRow);

            // PairManagerの空白状態を調べる(空白bit)  0:空白なし  10:左空白  1:右空白  11:両方空白
            int enptyAreaBit = 0;
            if (PairManager.pairRegDateL == null)
            {
                enptyAreaBit += 10;
            }
            if (PairManager.pairRegDateR == null)
            {
                enptyAreaBit++;
            }

            // PairManagerの空白が埋まるのか調べる(空白bit)  99:newLine(空白なし)  10:左空白  1:右空白
//			bool flgNewLine = false;
            if (PairManager.tempCurrentLR == PairManager.LEFT)
            {
                switch (enptyAreaBit)
                {
                case 10:
                    enptyAreaBit = 99;
                    break;

                case 11:
                    enptyAreaBit = 1;
                    break;

                default:
                    break;
                }
            }
            if (PairManager.tempCurrentLR == PairManager.RIGHT)
            {
                switch (enptyAreaBit)
                {
                case 1:
                    enptyAreaBit = 99;
                    break;

                case 11:
                    enptyAreaBit = 10;
                    break;

                default:
                    break;
                }
            }

            // 空白なし上書きの場合は前処理として更新前のPairManagerを使ってMemberManagerのpare情報を削除
            // MemberManagerのpare情報は 'pairが完成したときのみ' 付加されている
            if (enptyAreaBit == 0)
            {
                MemberManager.clearPairMemberOfRegDate(PairManager.getPairRegDate(PairManager.pairRegDateL));
                MemberManager.clearPairMemberOfRegDate(PairManager.getPairRegDate(PairManager.pairRegDateR));
            }

            if (PairManager.tempCurrentLR == PairManager.LEFT)
            {
                PairManager.pairNameKnji_familyL = MemberManager.nameKaji_family;
                PairManager.pairNameKnji_firstL  = MemberManager.nameKaji_first;
                PairManager.pairGenderL          = MemberManager.gender;
                PairManager.pairRegDateL         = MemberManager.regDate;
                tPfbParent.GetChild(PairManager.tempCurrentRow).Find("ImgPairBase/LeftMember/MemberName").GetComponent <Text> ().text  = MemberManager.nameKaji_family + " " + MemberManager.nameKaji_first;
                tPfbParent.GetChild(PairManager.tempCurrentRow).Find("ImgPairBase/LeftMember/ImgMember").GetComponent <Image> ().color = MemberManager.gender == 0 ? Colors.male : Colors.female;
            }
            else
            {
                PairManager.pairNameKnji_familyR = MemberManager.nameKaji_family;
                PairManager.pairNameKnji_firstR  = MemberManager.nameKaji_first;
                PairManager.pairGenderR          = MemberManager.gender;
                PairManager.pairRegDateR         = MemberManager.regDate;
                tPfbParent.GetChild(PairManager.tempCurrentRow).Find("ImgPairBase/RightMember/MemberName").GetComponent <Text>().text  = MemberManager.nameKaji_family + " " + MemberManager.nameKaji_first;
                tPfbParent.GetChild(PairManager.tempCurrentRow).Find("ImgPairBase/RightMember/ImgMember").GetComponent <Image>().color = MemberManager.gender == 0 ? Colors.male : Colors.female;
            }

            if (enptyAreaBit == 99)
            {
                // 今回埋まったので行追加の場合、MemberManagerにpair情報を付加
                pt      = Instantiate(pfbMember).transform;
                pt.name = pfbMember.name;
                pt.SetParent(tPfbParent, false);
                MemberManager.updatePairMember(PairManager.pairRegDateL, PairManager.pairRegDateR);
                MemberManager.updatePairMember(PairManager.pairRegDateR, PairManager.pairRegDateL);
                PairManager.inserNewtPair();
            }
            if (enptyAreaBit == 0)
            {
                // 空白なし上書きの場合、MemberManagerにpair情報を付加
                MemberManager.updatePairMember(PairManager.pairRegDateL, PairManager.pairRegDateR);
                MemberManager.updatePairMember(PairManager.pairRegDateR, PairManager.pairRegDateL);
                PairManager.updatePair(PairManager.tempCurrentRow);
            }
            else
            {
                // 両方または片方が空白の場合
                PairManager.updatePair(PairManager.tempCurrentRow);
            }
        }
        PairManager.tempSelectMyDate = "NULL";
        PairManager.tempCurrentRow   = 0;
        PairManager.tempCurrentLR    = 0;
    }
コード例 #28
0
    private void Awake()
    {
        S = this;

        gameState = EGameState.Ready;
    }
コード例 #29
0
ファイル: ExchangeBase.cs プロジェクト: vinhins/IntTrader
 public virtual PairBase ConvertPair(PairBase pair)
 {
     return(PairManager.GetPair(pair.Key));
 }
コード例 #30
0
ファイル: GamePlayer.cs プロジェクト: AFSINC/iMatchup
    public void OnEndDrag(PointerEventData e)
    {
        flgDrag = false;

        if (longPressFlg)
        {
            Object.Destroy(sd);
            sd = null;
            Object.Destroy(ol);
            ol = null;

            int pageoffset      = 0;                            // 0:1page  -1:2page  -2:3page
            int MAXPLAYEROFPAGE = 8;
            if (minReceiveParentNum > 23)
            {
                pageoffset = 0;
            }
            else
            {
                pageoffset = GameManager.currentPage * (-1);                                    // 何ページ目かを計算する  page0:0~7    page1:8~15   page2:16~23
            }
            //			Debug.Log (" position num on page   min[" + minReceiveParentNum +"]  +  ["+ pageoffset * -8+"]  pageoffst:" + pageoffset);

            /// 各種移動前に可能か判定
            GameManager.posPlayerOfRegDate(myRegDate);
            // 最小となる移動先までの距離 (離れすぎていると移動しないように)
            float dis;
            dis = Vector3.Distance(receiveParentPosition [minReceiveParentNum], playerPos);


            // 入れ替え用変更
            // pairの有無 (pairがいる場合は、ダブルスであることが保証されていること)
            bool   toWaitBreak    = false;
            bool   courtLock      = false;
            bool   flgYouPair     = false;
            int    YouLock        = GameManager.UNLOCK;
            int    YouPairLock    = GameManager.UNLOCK;
            string youRegDate     = null;
            string youPairRegDate = null;
            int    youPosNum;
            int    iYouPairPositionOffset = 0;
            bool   flgMyPair  = false;
            int    myPairLock = GameManager.UNLOCK;
            string myPairRegDate;
            int    myPosNum;
            int    iMyPairPositionOffset = 0;


            // 自選手とpair位置にいる選手の存在有無と、pair判定、2人のLockの状況
            myPosNum      = GameManager.getPlayerPlace(myRegDate);
            myPairRegDate = PairManager.getPairRegDate(myRegDate);
            if (myPairRegDate != null)
            {
                flgMyPair = true;
            }
            else
            {
                flgMyPair = false;
            }

            if (myPosNum != GameManager.PLACE_WAIT && myPosNum != GameManager.PLACE_BREAK)               // 自分は待機、休憩中ではない コートでのpair位置にいる選手
            {
                iMyPairPositionOffset = myPosNum % SettingManager.form == 0 ? 1 : -1;                    // 自分の位置からPairの位置のOffset   上枠にpair 1:下枠にpair
                myPairRegDate         = GameManager.getPlaceOfPlayer(myPosNum + iMyPairPositionOffset);
                myPairLock            = GameManager.chkLock(myPairRegDate);
            }

            // 移動先の選手とpair位置にいる選手の存在有無と、pair判定、2人のLockの状況
            if (minReceiveParentNum != GameManager.PLACE_WAIT && minReceiveParentNum != GameManager.PLACE_BREAK)
            {
                toWaitBreak = false;

                // 移動先にいる選手とpair位置にいる選手の存在有無と、pair判定、2人のLockの状況
                youPosNum = minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE;
                iYouPairPositionOffset = youPosNum % SettingManager.form == 0 ? 1 : -1; // 相手の位置からPairの位置のOffset  -1:上枠にpair 1:下枠にpair
                youRegDate             = GameManager.getPlaceOfPlayer(youPosNum);
                if (youRegDate != null)                                                 // 移動先に選手がいる
                {
                    YouLock        = GameManager.chkLock(youRegDate);
                    youPairRegDate = PairManager.getPairRegDate(youRegDate);
                    if (youPairRegDate != null)                       // 相手にpairがいる
                    {
                        flgYouPair  = true;
                        YouPairLock = YouLock;
                    }
                    else                                                               // 相手にpairがいない
                    {
                        flgYouPair     = false;
                        youPairRegDate = GameManager.getPlaceOfPlayer(youPosNum + iYouPairPositionOffset);
                        if (youPairRegDate != null)                         // 相手にpairはいないが選手がいる
                        {
                            YouPairLock = GameManager.chkLock(youPairRegDate);
                        }
                    }
                }
                else                                                              // 移動先に選手がいない
                {
                    flgYouPair     = false;
                    youPairRegDate = GameManager.getPlaceOfPlayer(youPosNum + iYouPairPositionOffset);
                    if (youPairRegDate != null)                     // 移動先に選手がいないがpair枠に選手がいる
                    {
                        YouPairLock = GameManager.chkLock(youPairRegDate);
                    }
                }

                // Lockされているコートには配置できない
                int iCourtStat = GameManager.chkCourtLockOfPosition(minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE);
                if (iCourtStat == GameManager.LOCK || iCourtStat == -1)
                {
                    courtLock = true;
                }

                // 自分がPairのとき、移動先とPair枠の選手のLock状態を判定して、どちらかでもLockされているなら移動できない
                if (flgMyPair)
                {
                    if (YouLock == GameManager.LOCK || YouPairLock == GameManager.LOCK)
                    {
                        courtLock = true;
                    }
                }
                else
                {
                    if (YouLock == GameManager.LOCK)
                    {
                        courtLock = true;
                    }
                }
                if (flgYouPair)
                {
                    if (myPairLock == GameManager.LOCK)
                    {
                        courtLock = true;
                    }
                }
            }
            else
            {
                // 移動先が休憩中か待機中 (無条件で移動できる)
                toWaitBreak = true;
            }

            // 選手の移動
            if (dis < limtDistance && !courtLock)           // 必ず移動できることが保証されていること
            {
                if (toWaitBreak)                            // 待機中と休憩中へは無条件で移動 minReceiveParentNum=24,25
                {
                    this.transform.SetParent(receiveParentTransform[minReceiveParentNum]);
                    this.transform.position = receiveParentPosition[minReceiveParentNum];
                    GameManager.placeStat   = minReceiveParentNum;
                    if (flgMyPair)
                    {
                        GameManager.posPlayerOfRegDate(myPairRegDate);                                  //Pairのワーク移動
                        GameManager.trsPlayer.SetParent(receiveParentTransform[minReceiveParentNum]);
                        GameManager.trsPlayer.position = receiveParentPosition[minReceiveParentNum];
                        GameManager.placeStat          = minReceiveParentNum;
                        //Ring
                        this.transform.FindChild("Ring").gameObject.SetActive(false);
                        GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                        GameManager.trsPlayer.SetAsLastSibling();
                    }
                }
                else
                {
                    // 自分達の移動
                    this.transform.SetParent(receiveParentTransform[minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE]);
                    this.transform.position = receiveParentPosition[minReceiveParentNum];
                    GameManager.placeStat   = minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE;
                    if (flgMyPair || flgYouPair)
                    {
                        if (myPairRegDate != null)
                        {
                            GameManager.posPlayerOfRegDate(myPairRegDate);                                      //Pairのワーク移動
                            GameManager.trsPlayer.SetParent(receiveParentTransform[minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE + iYouPairPositionOffset]);
                            GameManager.trsPlayer.position = receiveParentPosition[minReceiveParentNum + iYouPairPositionOffset];
                            GameManager.placeStat          = minReceiveParentNum + pageoffset * MAXPLAYEROFPAGE + iYouPairPositionOffset;
                        }
                        //Ring
                        if (flgMyPair && iYouPairPositionOffset == 1)
                        {
                            this.transform.FindChild("Ring").gameObject.SetActive(false);
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                        }
                        else if (flgMyPair && iYouPairPositionOffset == -1)
                        {
                            this.transform.FindChild("Ring").gameObject.SetActive(true);
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
                        }
                    }
                    // 相手達の移動
                    if (youRegDate != null)
                    {
                        GameManager.posPlayerOfRegDate(youRegDate);                                  //相手選手のワーク移動
                        GameManager.trsPlayer.SetParent(receiveParentTransform[myPosNum]);
                        GameManager.trsPlayer.position = receiveParentPosition[myPosNum - pageoffset * MAXPLAYEROFPAGE];
                        GameManager.placeStat          = myPosNum;
                    }
                    if (flgMyPair || flgYouPair)
                    {
                        if (youPairRegDate != null)
                        {
                            GameManager.posPlayerOfRegDate(youPairRegDate);                                      //相手Pairのワーク移動
                            GameManager.trsPlayer.SetParent(receiveParentTransform[myPosNum + iMyPairPositionOffset]);
                            GameManager.trsPlayer.position = receiveParentPosition[myPosNum - pageoffset * MAXPLAYEROFPAGE + iMyPairPositionOffset];
                            GameManager.placeStat          = myPosNum + iMyPairPositionOffset;
                        }
                        //Ring
                        if (flgYouPair && (myPosNum == GameManager.PLACE_WAIT || myPosNum == GameManager.PLACE_BREAK)) //相手選手を待機中、休憩中への移動
                        {
                            GameManager.posPlayerOfRegDate(youRegDate);                                                //相手選手のワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
                            GameManager.posPlayerOfRegDate(youPairRegDate);                                            //相手Pairのワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                            GameManager.trsPlayer.SetAsLastSibling();
                        }
                        else if (flgYouPair && iMyPairPositionOffset == 1)
                        {
                            GameManager.posPlayerOfRegDate(youRegDate);                                      //相手選手のワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
                            GameManager.posPlayerOfRegDate(youPairRegDate);                                  //相手Pairのワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                        }
                        else if (flgYouPair && iMyPairPositionOffset == -1)
                        {
                            GameManager.posPlayerOfRegDate(youRegDate);                                      //相手選手のワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                            GameManager.posPlayerOfRegDate(youPairRegDate);                                  //相手Pairのワーク移動
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(false);
                        }
                    }
                }
            }
            else                                // 移動できない
            {
                this.transform.SetParent(tfOrignParent);
                this.transform.position = tfOrignParent.position;
                if (flgMyPair)
                {
                    GameManager.posPlayerOfRegDate(myPairRegDate);                              //Pairのワーク移動
                    int iOriginPlace = GameManager.getPlayerPlace(myPairRegDate);
                    if (iOriginPlace == GameManager.PLACE_WAIT || iOriginPlace == GameManager.PLACE_BREAK)
                    {
                        this.transform.FindChild("Ring").gameObject.SetActive(false);
                        GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                        GameManager.trsPlayer.SetAsLastSibling();
                    }
                    else
                    {
                        if (flgMyPariMk)
                        {
                            this.transform.FindChild("Ring").gameObject.SetActive(true);
                        }
                        else
                        {
                            GameManager.trsPlayer.FindChild("Ring").gameObject.SetActive(true);
                        }
                    }
                }
            }
            rcvParentTfmWait.vertical  = true;                  // scrollRsctの再開
            rcvParentTfmBreak.vertical = true;                  // scrollRsctの再開
            longPressFlg = false;
            rcvParentTfmWait.verticalNormalizedPosition  = 1;
            rcvParentTfmBreak.verticalNormalizedPosition = 1;
            scriptGameView.loadView();
        }

        int iPlaceNum = GameManager.getPlayerPlace(myRegDate);

        if (iPlaceNum == GameManager.PLACE_WAIT)
        {
            transform.DoParentEventSystemHandler <IBeginDragHandler> ((parent) => { rcvParentTfmWait.OnEndDrag(e); });
        }
        else if (iPlaceNum == GameManager.PLACE_BREAK)
        {
            transform.DoParentEventSystemHandler <IBeginDragHandler> ((parent) => { rcvParentTfmBreak.OnEndDrag(e); });
        }
        else
        {
            transform.DoParentEventSystemHandler <IBeginDragHandler>((parent) => { pageScrollRect.OnEndDrag(e); });
        }
        eventLP.enableLongPress = true;
    }