public void CreateAchievementPanels() { if (achievementPanelPrefab == null || achievementPanelContent == null) { return; } for (int i = 0; i < Game.current.achievementManager.playerAchievements.Count; i++) { GameObject achivementPanelClone = Instantiate(achievementPanelPrefab) as GameObject; achivementPanelClone.transform.SetParent(achievementPanelContent, false); PlayerAchievement playerAchievement = Game.current.achievementManager.playerAchievements [i]; if (playerAchievement == null) { return; } AchievementPanel achievementButton = achivementPanelClone.GetComponent <AchievementPanel> (); if (achievementButton != null) { achievementButton.SetAchievementPanel(playerAchievement); } } }
static public void unlockAchievement(Achievement a) { //Check first to see that the achievement is not already complete GameManager manager = GameObject.FindObjectOfType <GameManager>(); if (!GetAchievement(a.name, manager.achievementList).isCompleted) { a.isCompleted = true; AchievementPanel panel = GameObject.FindObjectOfType <AchievementPanel>(); panel.setInfo(a.name); panel.TriggerAnimation(); SaveDataReader.SaveData(); } }
private void SetupNetworkConnection() { // Setup Access Endpoint var url = "ec2-52-90-46-132.compute-1.amazonaws.com"; // Debug //var url = "localhost:51216/"; var httpEndPoint = $@"http://{url}"; //var httpEndPoint = "http://*****:*****@"ws://{url}/Websocket/WsChatHandler.ashx"; var sessionEventEndpoint = $@"ws://{url}/Websocket/WsSessionEventHandler.ashx"; var connexionEndpoint = $@"ws://{url}/Websocket/WsConnexionHandler.ashx"; // Websocket endpoint WebsocketChatAccess.Instance = new WebsocketChatAccess(chatEndpoint); SessionEventWebsocketAccess.Initialize(sessionEventEndpoint); ConnexionWebsocketAccess.Instance = new ConnexionWebsocketAccess(connexionEndpoint); // Http endpoint UserAccess.Instance = new UserAccess(httpEndPoint); ProfileAccess.Instance = new ProfileAccess(httpEndPoint); FriendAccess.Instance = new FriendAccess(httpEndPoint); GameAccess.Instance = new GameAccess(httpEndPoint); PingAccess.Instance = new PingAccess(httpEndPoint); LeaderboardAccess.Instance = new LeaderboardAccess(httpEndPoint); ZoneAccess.Instance = new ZoneAccess(httpEndPoint); DailyAccess.Instance = new DailyAccess(httpEndPoint); // Setup Chat Chatmenu = new ChatMenu(); ChatPanel.Content = Chatmenu; ChatPanel.Visibility = Visibility.Hidden; // Setup Achievement panel Achievement = new AchievementPanel(); AchievementPanel.Content = Achievement; Achievement.HideAchievement(); // Setup Message Panel var defaultMessage = new MessagePresenter(); SetMessage(defaultMessage); defaultMessage.IsVisible = false; }
void TriggerAchievementAnimation(AchievementBase ach) { RectTransform canvasRect = canvas.GetComponent <RectTransform>(); float midX = canvasRect.rect.width * 0.5f; float height = canvasRect.rect.height; GameObject panel = Instantiate(achievementPanel); RectTransform panelRect = panel.GetComponent <RectTransform>(); //Set Parent panel.transform.SetParent(canvas.transform, false); //Set Scale float dx = canvasRect.rect.width - panelinfo.width; float dy = height - panelinfo.height; panelRect.sizeDelta = new Vector2(-dx, -dy); //Set Pos Vector3 endPos; //= new Vector3(0, height * 0.5f - panelinfo.height * 0.5f - panelinfo.offsetFromTop - panelinfo.height * activepanels.Count); Vector3 firstEndReference = new Vector3(0, height * 0.5f - panelinfo.height * 0.5f - panelinfo.offsetFromTop); if (activepanels.Count <= 0) { endPos = new Vector3(0, 0, 0); } else { endPos = new Vector3(0, -panelinfo.height); } Vector3 startPos = new Vector3(0, height * 0.5f + panelinfo.height * 0.5f); panelRect.localPosition = startPos; float moveSpd = (firstEndReference - startPos).magnitude / panelinfo.moveTime; //Init values/text AchievementPanel panelScript = panel.GetComponent <AchievementPanel>(); panelScript.Init(ach.ach_name, ach.description); ActivePanelInfo api = new ActivePanelInfo(panel, panelinfo.lifeTime, startPos, endPos, panelinfo.moveTime); api.moveSpd = moveSpd; activepanels.Add(api); }