Beispiel #1
0
        public override void Event(string param)
        {
            switch (param)
            {
            case "Create":
            {
                var data   = userComponent.props.data;
                var needsp = ServerDefine.CubeSeq2NeedSP(data.CubeSeq);
                if (data.SP < needsp)
                {
                    return;
                }

                teamHandler?.OnCreateCube(1);
            }
            break;
            }
            base.Event(param);
        }
Beispiel #2
0
        public override void Upsert(GameUser data)
        {
            base.Upsert(data);

            if (data == null)
            {
                return;
            }

            var needsp = ServerDefine.CubeSeq2NeedSP(data.CubeSeq);

            name_text.SetText(data.Name);
            sp_text.SetText(data.SP.ToString());
            needsp_text.SetText(needsp.ToString());
            needsp_lock_image?.gameObject.SetVisible(data.SP < needsp);
            life_image.ForEach((x, i) =>
            {
                x.gameObject.SetVisible((i < data.Life));
            });
        }
Beispiel #3
0
    public virtual Cube CreateCube(GameCube gameCube)
    {
        var position = Server2Local(new Vector3(gameCube.PositionX, gameCube.PositionY, 0f));
        var gameSlot = user.Slots.Find(x => x.CubeId == gameCube.CubeId);
        var cube     = PoolFactory.Get <Cube>("Cube", position, Quaternion.identity, transform);

        cube.OnMove        = OnMove;
        cube.OnCombineMove = OnCombineMove;
        cube.OnCombine     = OnCombine;
        cube.OnShot        = OnShot;
        cube.Spawn(user.Id, gameCube, gameSlot);
        cubes.Add(cube);

        user.Cubes.Add(gameCube);
        if (gameCube.CombineLv == 1)
        {
            user.SP -= ServerDefine.CubeSeq2NeedSP(user.CubeSeq);
        }

        user.CubeSeq++;

        return(cube);
    }