protected override void OnReceivedMessage(string message, params object[] args)
        {
            if (message == "get reward")
            {
                var rew = (Reward)args[0];
                if (!rew.Verify())
                {
                    return;
                }

                if (rew.Coin > 0)
                {
                    userData.AddCoin(rew.Coin);
                }
                if (rew.Exp > 0)
                {
                    userData.AddExp(rew.Exp);
                }

                if (rew.Achivement != null && rew.Achivement.Verify() && !userData.Achivements.Exists(ach => ach.Name == rew.Achivement.Name))
                {
                    userData.Achivements.Add(rew.Achivement);
                    MMW.BroadcastMessage("log", $"Archived [{rew.Achivement.Name}]");
                }
            }
        }
Пример #2
0
        public ActionResult LoginCheckPassword(FormCollection form)
        {
            string username = form["Name"];
            string password = form["Password"];

            using (MD5 md5Hash = MD5.Create())
            {
                string hashedpassword = GetMd5Hash(md5Hash, password);


                if (hashedpassword == UserData.GetPassword(username))
                {
                    //when user submit the correct username and password , we create a new session.

                    Session["username"] = username;
                    DateTime lastlogin = UserData.GetLastLogin(username);
                    DateTime logindate = DateTime.Today;
                    int      bonus     = 0;
                    if (lastlogin != logindate && logindate < lastlogin.AddDays(7))
                    {
                        bonus = 50;
                    }
                    UserData.AddCoin(username, bonus);

                    Session["cart"] = CartData.GetCart(username);
                    Session["coin"] = UserData.GetCoinNum(username);
                    UserData.UpdateLastLogin(username);
                    return(RedirectToAction("ProductList", "Product"));
                }
            }
            TempData["isAuth"] = false;
            return(View("Login"));
        }
Пример #3
0
 protected override void OnReceivedMessage(string message, params object[] args)
 {
     if (message == "get coin" && args.Length >= 2 && args[1] as string == "98df1d6abbc7")
     {
         var value = (int)args[0];
         userData.AddCoin(value);
     }
     else if (message == "hud show")
     {
         Show();
     }
     else if (message == "hud hide")
     {
         Hide();
     }
     else if (message == "show dialog")
     {
         Hide();
     }
     else if (message == "close dialog")
     {
         Show();
     }
     else if (message == "show coin resolver")
     {
         Show();
     }
     else if (message == "close coin resolver")
     {
         Hide();
     }
 }
Пример #4
0
    public void SaveGameResult(int updateScore, int getCoin, int[] useItems)
    {
        _userData.AddCoin(getCoin);
        if (_userData.UpdateScore(updateScore))
        {
            //Upload Score rank.
            NetworkManager.Instance.SetScoreToLeaderBorad(updateScore);
        }

        ItemUseCountInfo    itemUseCountInfo    = ItemUseCountInfo.GetInstance(useItems);
        AnalyticsEventParam analyticsEventParam = new AnalyticsEventParam()
                                                  .AddParam("Score", updateScore)
                                                  .AddParam("Coin", getCoin)
                                                  .AddParam("Item_Recycle", itemUseCountInfo.GetCount(ItemType.TRASH))
                                                  .AddParam("Item_Hammer", itemUseCountInfo.GetCount(ItemType.BREAK))
                                                  .AddParam("Item_Rewind", itemUseCountInfo.GetCount(ItemType.UNDO));;

        AnalyticsManager.Instance.EventLog(GameConstants.EVENTLOG_BASICMODE_RESULT, analyticsEventParam);

        DeletePlayData();
        SaveUserDataFile();
    }
Пример #5
0
        protected override void OnLoad()
        {
            base.OnLoad();

            server = MMW.GetAsset <Server>();

            userData = MMW.GetAsset <UserData>();
            //userData.ArchiveIndex = 6;
            //userData.UserID = "MikuMikuWorldOrg0001";

            MMW.RegistAsset(worldData = new WorldData());

            Resources = new WorldResources(nwWorldData);
            MMW.RegistAsset(Resources);

            // アイテムの整理

            var world = Resources.Worlds.First().Value;

            world.Load();

            var ch = Resources.Characters.First().Value;

            ch.Load();

            MMW.Window.CursorVisible = false;

            worldGO = GameObjectFactory.CreateWorld(world, "world", "Deferred Physical");
            worldGO.AddComponent <CoinSpown>();
            MMW.RegistGameObject(worldGO);

            playerGO = GameObjectFactory.CreatePlayer(ch, "player", ch.Bones != null ? "Deferred Physical Skin" : "Deferred Physical");
            playerGO.Properties["sessionID"] = server.SessionID;
            playerGO.Properties["userID"]    = userData.UserID;
            ch.EyePosition.Z = 0.1f;
            var rb = playerGO.GetComponent <RigidBody>();

            rb.Collide += Rb_Collide;
            rb.Collide += (s, e) =>
            {
                if (e.GameObject.Tags.Contains("coin") && e.GameObject.Tags.Contains("98df1d6abbc7"))
                {
                    e.GameObject.Tags.Remove("coin");
                    e.GameObject.Tags.Remove("98df1d6abbc7");
                    MMW.Invoke(() =>
                    {
                        MMW.DestroyGameObject(e.GameObject);
                        if (e.GameObject.Tags.Contains("cupper coin"))
                        {
                            userData.AddCoin(1);
                        }
                        else if (e.GameObject.Tags.Contains("silver coin"))
                        {
                            userData.AddCoin(5);
                        }
                        else if (e.GameObject.Tags.Contains("gold coin"))
                        {
                            userData.AddCoin(20);
                        }
                    });
                }
            };
            MMW.RegistGameObject(playerGO);
            Players.Add(playerGO);

            cameraTarget = new GameObject("camera target");
            cameraTarget.Transform.Parent   = playerGO.Transform;
            cameraTarget.Transform.Position = new Vector3(0.0f, ch.EyePosition.Y, ch.EyePosition.Z);
            MMW.RegistGameObject(cameraTarget);

            var wp = new WalkerPlayer()
            {
                Name          = userData.UserName,
                SessionID     = server.SessionID,
                ArchiveIndex  = userData.ArchiveIndex,
                CharacterHash = Resources.Characters.First().Key,
                Achivements   = userData.Achivements.ToList(),
                Rank          = userData.Rank,
                LikesCount    = userData.Likes.Count,
                LikedCount    = userData.ReceiveLikes.Count,
                UserID        = userData.UserID,
                Comment       = userData.Comment,
                IsAdmin       = false,
            };

            worldData.Players.Add(wp);

            playerGO.AddComponent <CharacterInfo>(ch, wp);
            playerGO.AddComponent <PlayerMoveController>();
            var cam = playerGO.AddComponent <PlayerCameraController>();

            cam.Target = cameraTarget.Transform;
            playerGO.AddComponent <PlayerRayResolver>();
            playerGO.AddComponent <PlayerHotbarItemResolver>();
            playerGO.AddComponent <UdpSender>();
            playerGO.AddComponent <CharacterPopupResolver>();
            playerGO.AddComponent <CharacterNameResolver>();
            playerGO.AddComponent <DoFResolver>();
            playerGO.AddComponent <WalkerGameObjectScript>(playerGO, new BigHead(), null);

            var env = nwWorldData.Worlds[0].Environments[0];

            MMW.GlobalAmbient = env.Ambient.FromColor4f();
            MMW.DirectionalLight.Intensity = env.DirLight.Intensity;
            MMW.DirectionalLight.Color     = env.DirLight.Color.FromColor4f();
            MMW.DirectionalLight.Direction = env.DirLight.Direction.FromVec3f().Normalized();

            MMW.MainCamera.ShadowMapping = true;
            MMW.MainCamera.GameObject.AddComponent <AudioListener>();
            var effs = MMW.MainCamera.GameObject.GetComponents <ImageEffect>();

            foreach (var eff in effs)
            {
                eff.Enabled = true;
            }

            blur        = MMW.MainCamera.GameObject.AddComponent <Blur>();
            blur.Radius = 0.0f;

            hudGO = new GameObject("hud", "system", "hud");
            //go.Layer = GameObject.LayerUI + 1;
            hudGO.AddComponent <HotBar>();
            hudGO.AddComponent <Aiming>();
            hudGO.AddComponent <CoinResolver>();
            hudGO.AddComponent <ScriptResolver>();
            hudGO.AddComponent <LogResolver>();
            hudGO.AddComponent <ChatResolver>();
            hudGO.AddComponent <PictureChatResolver>();
            hudGO.AddComponent <MenuResolver>();
            hudGO.AddComponent <PublicAchivementResolver>();
            hudGO.AddComponent <LeaveResolver>();
            hudGO.AddComponent <InventiryResolver>();
            MMW.RegistGameObject(hudGO);

            server.BeforeCmds.Add(new CmdAllTransform(this));

            /*
             * foreach (var g in nwWorldData.GameObjects)
             * {
             *  try
             *  {
             *      var wo = Resources.Objects[g.ObjectHash];
             *      if (wo.ItemType == "Put") PutGameObject(g, true);
             *  }
             *  catch { }
             * }
             */

            userData.SessionID     = server.SessionID;
            userData.CharacterHash = Resources.Characters.First().Key;

            server.Disconnected += Server_Disconnected;
            server.SendTcp(Walker.DataType.ResponseReady, Util.SerializeJson(wp));
        }