Beispiel #1
0
    void ReLogin(GameObject go)
    {
        if (passwordinput.text.Length == 0 || accountinput.text.Length == 0)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入不能为空");
            return;
        }
        if (passwordinput.text.Length > DataManager.Instance.PlayerPassWordMaxLength || passwordinput.text.Length < DataManager.Instance.PlayerPassWordMinLength)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入长度不符合");
            return;
        }
        if (accountinput.text.Length != 11)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入手机号不符合");
            return;
        }
        UserLoginReq _msg = new UserLoginReq();

        _msg.playeraccount  = accountinput.text;
        _msg.password       = utils.GenMd5(passwordinput.text);
        data.PlayerAccount  = _msg.playeraccount;
        data.PlayerPassWord = _msg.password;
        TcpNet.Instance.send_proto_msg_to_client((int)Stype.Auth, (int)Cmd.eUserLoginReq, _msg);
    }
Beispiel #2
0
            private void RowsToTheLeft()
            {
                var lstDistinctX = LstSelectedItems.Select(c => c.X).Distinct().ToList();
                var lstEmptyX    = new List <int>();

                foreach (var x in lstDistinctX)
                {
                    if (FieldArray[x, MaxY - 1].IsVisible == false)
                    {
                        lstEmptyX.Add(x);
                    }
                }
                if (lstEmptyX.Count > 0)
                {
                    int startingX  = lstEmptyX.Min(x => x) + 1;
                    int movePlaces = 1;
                    for (int i = startingX; i < MaxX; i++)
                    {
                        if (lstEmptyX.Contains(i))
                        {
                            movePlaces++;
                            continue;
                        }
                        for (int j = 0; j < MaxY; j++)
                        {
                            FieldArray[i - movePlaces, j] = FieldArray[i, j];
                            FieldArray[i, j] = new PopItem();
                        }
                    }
                }
            }
    private void SureAccountUpgrade(GameObject go)
    {
        if (passwordinput.text.Length == 0 || accountinput.text.Length == 0)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入不能为空");
            return;
        }
        if (passwordinput.text.Length > DataManager.Instance.PlayerPassWordMaxLength || passwordinput.text.Length < DataManager.Instance.PlayerPassWordMinLength)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入长度不符合");
            return;
        }
        if (accountinput.text.Length != 11)
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips("输入手机号不符合");
            return;
        }
        AccountUpgradeReq req = new AccountUpgradeReq();

        req.phonenumber = accountinput.text;
        req.password    = utils.GenMd5(passwordinput.text);
        TcpNet.Instance.send_proto_msg_to_client((int)Stype.Auth, (int)Cmd.eAccountUpgradeReq, req);
    }
Beispiel #4
0
 public static void OnGetLoginBonusRes(GetLoginBonusRes ret)
 {
     if (ret.errcode == 0)
     {
         if (ret != null)
         {
             RewardStruct reward = new RewardStruct(ret);
             EquipConfig  config = EquipConfig.GetEquipByID(ret.id);
             if (config.IsMoney())
             {
                 PlayerManager.player_data.money += ret.num;
             }
             List <RewardStruct> list = new List <RewardStruct>();
             list.Add(reward);
             LoginBonusRewardPanel.Show(list);
             if (LoginBonusPanel.Instance != null)
             {
                 LoginBonusPanel.Instance.UpdatePanel(ret.bonusdata);
             }
         }
     }
     else
     {
         string  ErrTips = ErrCodeConfig.GetTipsById(ret.errcode);
         PopItem item    = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
         if (!string.IsNullOrEmpty(ErrTips))
         {
             item.SetTips(ErrTips);
         }
     }
 }
Beispiel #5
0
            public PopField()
            {
                var rnd = new Random();

                FieldArray       = new PopItem[MaxX, MaxY];
                LstSelectedItems = new List <ButtonCoords>();
                for (int i = 0; i < MaxX; ++i)
                {
                    for (int j = 0; j < MaxY; ++j)
                    {
                        FieldArray[i, j] = new PopItem(rnd.Next(5));
                    }
                }
            }
Beispiel #6
0
    // Update is called once per frame
    void Update()
    {
        for (int i = 0; i < popMap.Count;)
        {
            PopItem item = popMap [i];
            item.poptime -= Time.deltaTime;
            if (item.poptime < 0)
            {
                item.popobj.SetActive(false);
                objList.Enqueue(item.popobj);
                popMap.Remove(item);
            }
            else
            {
                switch (item.type)
                {
                case POP_TYPE.POP_UP:
                {
                    Vector3 pos = item.popobj.transform.localPosition;
                    pos.y += Time.deltaTime * 50f;
                    item.popobj.transform.localPosition = pos;
                    break;
                }

                case POP_TYPE.POP_DOWN:
                {
                    Vector3 pos = item.popobj.transform.localPosition;
                    pos.y -= Time.deltaTime * 50f;
                    item.popobj.transform.localPosition = pos;
                    break;
                }
                }

                i++;
            }
        }

        if (centerTipTime > 0)
        {
            centerTipTime -= Time.deltaTime;
            Vector3 pos = popCenter.transform.localPosition;
            pos.y += Time.deltaTime * 50f;
            popCenter.transform.localPosition = pos;
            if (centerTipTime < 0)
            {
                popCenter.SetActive(false);
            }
        }
    }
Beispiel #7
0
    public override void OnUIEventHandler(EventId eventId, params object[] args)
    {
        if (eventId == EventId.OnSkillPop)
        {
            if (BattleSystem.Instance.battleData.silent)
            {
                return;
            }

            POP_TYPE type = (POP_TYPE)args [0];
            string   text = (string)args [1];
            Vector3  pos  = Vector3.zero;
            if (type != POP_TYPE.POP_NORMAL)
            {
                pos = (Vector3)args [2];

                PopItem item = new PopItem();
                item.poptext = text;
                item.poptime = 2f;
                item.type    = type;
                if (objList.Count > 0)
                {
                    item.popobj = objList.Dequeue();
                }
                else
                {
                    item.popobj = GameObject.Instantiate(popTemp);
                }
                item.popobj.transform.parent     = popTemp.transform.parent;
                item.popobj.transform.localScale = Vector3.one;
                Vector3 sceenpos = Camera.main.WorldToScreenPoint(pos);
                Vector3 finalpos = UICamera.mainCamera.ScreenToWorldPoint(sceenpos);
                finalpos.z = 0;
                //Debug.Log (string.Format ("Node pos:{0},UI pos:{1}",pos ,finalpos));
                item.popobj.transform.position = finalpos;
                item.popobj.SetActive(true);
                UILabel label = item.popobj.GetComponentInChildren <UILabel> ();
                label.text = item.poptext;
                popMap.Add(item);
            }
            else
            {
                popCenter.SetActive(true);
                popCenterText.text = text;
                centerTipTime      = 2f;
                popCenter.transform.localPosition = new Vector3(0, 362f, 0);
            }
        }
    }
Beispiel #8
0
 public static void PlayerLoginOut(UserLoginOutRes ret)
 {
     if (ret.status == 0)
     {
         PlayerReLoginPanel.Show();
     }
     else
     {
         string  ErrTips = ErrCodeConfig.GetTipsById(ret.status);
         PopItem item    = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
         if (!string.IsNullOrEmpty(ErrTips))
         {
             item.SetTips(ErrTips);
         }
     }
 }
Beispiel #9
0
    void ClickFriend(GameObject go)
    {
        PopItem item = null;

        if (UIManager.PopItemPool.Count != 0)//缓存池中有
        {
            item = UIManager.PopItemPool.Dequeue();
            item.transform.localPosition = Vector3.zero;
            item.gameObject.SetActive(true);
        }
        else
        {
            item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
        }
        item.SetTips("clickfriendbtn");
    }
Beispiel #10
0
    public static void OnAccountUpgradeRes(AccountUpgradeRes res)
    {
        string  ErrTips = ErrCodeConfig.GetTipsById(res.status);
        PopItem item    = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);

        if (!string.IsNullOrEmpty(ErrTips))
        {
            item.SetTips(ErrTips);
        }
        if (res.status == 0)
        {
            data.is_guest       = false;
            data.PlayerAccount  = res.playeraccount;
            data.PlayerPassWord = res.password;
        }
        PlayerAccountUpgradePanel.Instance.Close();
    }
Beispiel #11
0
 public static void OnGuestLoginRes(GuestLoginRes ret)
 {
     if (ret.errcode == 0)
     {
         PlayerManager.info = ret.info;
         TcpNet.Instance.send_proto_msg_to_client((int)Stype.System, (int)Cmd.eGetPlayerDataReq, null);//向系统服务器获取数据
     }
     else
     {
         string  ErrTips = ErrCodeConfig.GetTipsById(ret.errcode);
         PopItem item    = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
         if (!string.IsNullOrEmpty(ErrTips))
         {
             item.SetTips(ErrTips);
         }
     }
 }
Beispiel #12
0
    private void ShowPop(string popStr, int wealthId)
    {
        PopItem[] oldPopItems = popTrans.GetComponentsInChildren <PopItem>();
        for (int i = 0; i < oldPopItems.Length; i++)
        {
            PopItem oldPopItem = oldPopItems[i];
            oldPopItem.MoveUp();
        }

        GameObject popItem = GameObject.Instantiate(popPrefab);

        popItem.transform.SetParent(popTrans, false);
        popItem.transform.localPosition = new Vector3(0, 400, 0);
        PopItem popItemCtr = popItem.GetComponent <PopItem>();

        popItemCtr.SetText(popStr);
        popItemCtr.SetWealthIcon(wealthId, false);
    }
Beispiel #13
0
    public static void OnModifyRes(Respose ret)
    {
        string ErrTips = ErrCodeConfig.GetTipsById(ret.status);

        if (!string.IsNullOrEmpty(ErrTips))
        {
            PopItem item = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
            item.SetTips(ErrTips);
        }
        if (ret.status == 198)//修改名称成功
        {
            PlayerManager.info.name = PlayerManager.LastPlayerName;
        }
        else if (ret.status == 197)//修改头像成功
        {
            PlayerManager.info.face = PlayerManager.LastPlayerFaceIcon;
        }
    }
Beispiel #14
0
    public void InitMgrTarget(float speed, Player p, bool keyUIFlag, DisplayPurpose dp, PopItem pi)
    {
        relayStagePos = Vector3.zero;


        this.moveFlag = false;

        this.speed   = speed;
        normalSpeed  = speed;
        cautionSpeed = speed * 1.5f;
        dangerSpeed  = speed * 2;

        //
        wp = this.gameObject.GetComponent <WayPoint>();
        wp.Initialize();

        player = p;

        SetStates(StateType.Normal);

        obstTime = 0;

        trailTime = 0;

        SelectTarget(pm, ref GameMgr.stageList);

        cautionEnemyUIFlag = false;
        dangerEnemyUIFlag  = false;

        dangerUIFlag = false;

        this.keyEnemyUIFlag = keyUIFlag;

        this.dp = dp;

        startFlag = false;

        decoyFlag = false;

        trailPrefab = Resources.Load("Prefabs/" + "tankTrail") as GameObject;

        this.pi = pi;
    }
Beispiel #15
0
 public static void OnGetPlayerDataRes(GetPlayerDataRes ret)
 {
     if (ret.errcode == 0)
     {
         if (ret != null)
         {
             PlayerManager.BonusList   = ret.bonusdata;
             PlayerManager.player_data = ret.playerdata;
             SceneManager.LoadScene("scene_lobby");
         }
     }
     else
     {
         string  ErrTips = ErrCodeConfig.GetTipsById(ret.errcode);
         PopItem item    = UIManager.AddItem <PopItem>("PopItem", UIManager.PopPanelRoot);
         if (!string.IsNullOrEmpty(ErrTips))
         {
             item.SetTips(ErrTips);
         }
     }
 }
Beispiel #16
0
            private void PopItemsFall()
            {
                var lstDistinctX = LstSelectedItems.Select(c => c.X).Distinct().ToList();

                foreach (var x in lstDistinctX)
                {
                    int totalItemsInColumn = LstSelectedItems.Where(c => c.X == x).Count();
                    var lstEmptyY          = LstSelectedItems.Where(c => c.X == x).Select(c => c.Y);
                    int startingY          = lstEmptyY.Max(y => y) - 1;
                    int movePlaces         = 1;
                    for (int j = startingY; j >= 0; j--)
                    {
                        if (lstEmptyY.Contains(j))
                        {
                            movePlaces++;
                            continue;
                        }
                        FieldArray[x, j + movePlaces] = FieldArray[x, j];
                        FieldArray[x, j] = new PopItem();
                    }
                }
            }
Beispiel #17
0
    // Update is called once per frame
    void Update()
    {
        if (moveCameraFlag == true)
        {
            mainCamera.transform.position = Vector3.MoveTowards(mainCamera.transform.position, player.transform.position + cameraFollow.offset, Time.deltaTime * 25);
            if ((mainCamera.transform.position - (player.transform.position + cameraFollow.offset)).sqrMagnitude < 10f)
            {
                player.SetStartFlag(true);
                cameraFollow.enabled = true;
                moveCameraFlag       = false;
                if (enemyList != null)
                {
                    foreach (Enemy e in enemyList)
                    {
                        e.SetStartFlag(true);
                    }
                }
            }
        }

        if (player.GetHp() <= 0)
        {
            SceneManager.LoadScene("GameOver");
        }

        if (hostageFlag == true && (player.transform.position - startPos).sqrMagnitude < 2f && (player.transform.position - hostage.transform.position).sqrMagnitude < 5f)
        {
            SceneManager.LoadScene("GameClear");
        }


        if (SceneManager.GetActiveScene().name != "Select")
        {
            UpdateAlertUIStates();

            // プレイヤーに人質が近づいたら人質を連れる
            if ((player.transform.position - endPos).sqrMagnitude < 3f)
            {
                // 警告ステートの場合は人質を救出できない
                int cnt = 0;
                foreach (Enemy e in enemyList)
                {
                    //if (e.GetAttack()) cnt++;
                    if (e.GetStates() == StateType.Danger)
                    {
                        cnt++;
                    }
                }
                if (cnt == 0)
                {
                    hostageFlag = true;
                    dp.SetPurposeText("スタート地点に戻ろう");

                    // 敵が
                    if (Enemy.parent.Count() < (ENEMY_NUM / 2))
                    {
                        for (int i = 0; i < ENEMY_NUM / 4; i++)
                        {
                            int enemyNum = Random.Range(1, 3);
                            int ind      = 0;
                            for (int j = 0; j < stageList.Count; j++)
                            {
                                //
                                if (stageList[j].id == enemyNum)
                                {
                                    ind = j;
                                    break;
                                }
                            }
                            //Debug.Log("enemy : " + ind);
                            //Debug.Log(ind + " stageID : " + stageList[ind].id);
                            Enemy e       = Enemy.Add(enemyList.Count, stageList[ind].obj.transform.position.x, 1.0f, stageList[ind].obj.transform.position.z, stageList[ind].id, this, pm);
                            var   itemObj = Instantiate(itemBox, Vector3.zero, itemBox.transform.rotation);
                            pi = itemObj.GetComponent <PopItem>();
                            pi.Init(this, e);

                            e.InitMgrTarget(enemyMoveSpeed / 2, player, false, dp, pi);

                            //Debug.Log(stageList[0].obj.transform.position);

                            e.InitilizeShot();

                            e.InitilizeUI();

                            e.SetStartFlag(true);

                            enemyList.Add(e);
                        }
                    }
                }
            }

            // プレイヤーの周りにいない敵は描画しない
            foreach (Enemy e in enemyList)
            {
                if ((player.transform.position - e.transform.position).sqrMagnitude < 300f)
                {
                    e.gameObject.SetActive(true);
                }
                else
                {
                    e.gameObject.SetActive(false);
                }
            }
        }
    }
Beispiel #18
0
    void InitilizeEnemy()
    {
        // 管理オブジェクトを生成
        Enemy.parent = new TokenMgr <Enemy>("Enemy", ENEMY_NUM);
        Random.InitState(10);

        int keyFlag = 0;


        /*===================================================*/
        // 敵を生成
        enemyList = new List <Enemy>(ENEMY_NUM);
        for (int i = 0; i < ENEMY_NUM; i++)
        {
            int enemyNum = i % (ROOM_NUM)+1;
            if (i % (ROOM_NUM)+1 == 1 || i % (ROOM_NUM)+1 == ROOM_NUM + 1)
            {
                enemyNum = Random.Range(3, ROOM_NUM + 1);
            }
            int ind = 0;
            for (int j = 0; j < stageList.Count; j++)
            {
                //
                if (stageList[j].id == enemyNum)
                {
                    ind = j;
                    if (stageList[j].id == ROOM_NUM && keyFlag == 0)
                    {
                        keyFlag++;
                    }
                    break;
                }
            }
            // アイテムボックスを生成
            if (i % 2 == 0)
            {
                Vector3 itemPos = new Vector3(stageList[ind].obj.transform.position.x, 0.0f, stageList[ind].obj.transform.position.z);
                var     obj     = Instantiate(itemBox, itemPos, itemBox.transform.rotation);
                pi = obj.GetComponent <PopItem>();
                pi.Init(this, null);
            }

            // 敵を生成
            Enemy e       = Enemy.Add(enemyList.Count, stageList[ind].obj.transform.position.x, 1.0f, stageList[ind].obj.transform.position.z, stageList[ind].id, this, pm);
            var   itemObj = Instantiate(itemBox, Vector3.zero, itemBox.transform.rotation);
            //itemObj.GetComponent<Renderer>().material.color = new Color(0, 0, 0, 0);

            pi = itemObj.GetComponent <PopItem>();
            pi.Init(this, e);

            // ショットアイテムとデコイアイテムを生成

            /*
             * if (Random.Range(0,2) == 0)
             * {
             *  var obj = Instantiate(shotItem, new Vector3(stageList[ind].obj.transform.position.x, 0.0f, stageList[ind].obj.transform.position.z), shotItem.transform.rotation);
             * }
             * else
             * {
             *  var obj = Instantiate(decoyItem, new Vector3(stageList[ind].obj.transform.position.x, 0.0f, stageList[ind].obj.transform.position.z), decoyItem.transform.rotation);
             * }
             */

            // 敵に鍵持ちのステータスを設定する
            if (keyFlag == 1)
            {
                e.InitMgrTarget(enemyMoveSpeed / 2, player, true, dp, pi);
                keyFlag++;
            }
            else
            {
                e.InitMgrTarget(enemyMoveSpeed / 2, player, false, dp, pi);
            }

            //Debug.Log(stageList[0].obj.transform.position);

            e.InitilizeShot();

            e.InitilizeUI();

            enemyList.Add(e);

            //InitilizeEffect(e.transform.position, enemyEffect);
            StartCoroutine(InitilizeEffect(e.transform.position, enemyEffect));
        }
        /*===================================================*/
    }