Unity3d 显示IOS基本的游戏中心脚本
2014-05-10 11:32
344 查看
using UnityEngine; using UnityEngine.SocialPlatforms; public class Startup : MonoBehaviour { // we'll create some buttons in OnGui, allowing us to bump achievement and // score values for testing private double ach1 = 0; private double ach2 = 0; private double ach3 = 0; private double ach4 = 0; private long score1 = 1000; private long score2 = 200; private int buttonWidth = 120; private int buttonHeight = 50; private int buttonGap = 10; void Start() { Social.localUser.Authenticate(HandleAuthenticated); } // authentication private void HandleAuthenticated(bool success) { Debug.Log("*** HandleAuthenticated: success = " + success); if (success) { Social.localUser.LoadFriends(HandleFriendsLoaded); Social.LoadAchievements(HandleAchievementsLoaded); Social.LoadAchievementDescriptions(HandleAchievementDescriptionsLoaded); } } private void HandleFriendsLoaded(bool success) { Debug.Log("*** HandleFriendsLoaded: success = " + success); foreach (IUserProfile friend in Social.localUser.friends) { Debug.Log("* friend = " + friend.ToString()); } } private void HandleAchievementsLoaded(IAchievement[] achievements) { Debug.Log("*** HandleAchievementsLoaded"); foreach (IAchievement achievement in achievements) { Debug.Log("* achievement = " + achievement.ToString()); } } private void HandleAchievementDescriptionsLoaded(IAchievementDescription[] achievementDescriptions) { Debug.Log("*** HandleAchievementDescriptionsLoaded"); foreach (IAchievementDescription achievementDescription in achievementDescriptions) { Debug.Log("* achievementDescription = " + achievementDescription.ToString()); } } // achievements public void ReportProgress(string achievementId, double progress) { if (Social.localUser.authenticated) { Social.ReportProgress(achievementId, progress, HandleProgressReported); } } private void HandleProgressReported(bool success) { Debug.Log("*** HandleProgressReported: success = " + success); } public void ShowAchievements() { if (Social.localUser.authenticated) { Social.ShowAchievementsUI(); } } // leaderboard public void ReportScore(string leaderboardId, long score) { if (Social.localUser.authenticated) { Social.ReportScore(score, leaderboardId, HandleScoreReported); } } public void HandleScoreReported(bool success) { Debug.Log("*** HandleScoreReported: success = " + success); } public void ShowLeaderboard() { if (Social.localUser.authenticated) { Social.ShowLeaderboardUI(); } } // gui public void OnGUI() { // four buttons, allowing us to bump and test setting achievements int yDelta = buttonGap; if (GUI.Button(new Rect(buttonGap, yDelta, buttonWidth, buttonHeight), "Ach 1")) { ReportProgress("A0001", ach1); ach1 = (ach1 == 100) ? 0 : ach1 + 10; } yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(buttonGap, yDelta, buttonWidth, buttonHeight), "Ach 2")) { ReportProgress("A0002", ach2); ach2 = (ach2 == 100) ? 0 : ach2 + 10; } yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(buttonGap, yDelta, buttonWidth, buttonHeight), "Ach 3")) { ReportProgress("A0003", ach3); ach3 = (ach3 == 100) ? 0 : ach3 + 10; } yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(buttonGap, yDelta, buttonWidth, buttonHeight), "Ach 4")) { ReportProgress("A0004", ach4); ach4 = (ach4 == 100) ? 0 : ach4 + 10; } // show achievements yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(buttonGap, yDelta, buttonWidth, buttonHeight), "Show Achievements")) { ShowAchievements(); } // two buttons, allowing us to bump and test setting high scores int xDelta = Screen.width - buttonWidth - buttonGap; yDelta = buttonGap; if (GUI.Button(new Rect(xDelta, yDelta, buttonWidth, buttonHeight), "Score 1")) { ReportScore("L01", score1); score1 += 500; } yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(xDelta, yDelta, buttonWidth, buttonHeight), "Score 2")) { ReportScore("L02", score2); score2 += 100; } // show leaderboard yDelta += buttonHeight + buttonGap; if (GUI.Button(new Rect(xDelta, yDelta, buttonWidth, buttonHeight), "Show Leaderboard")) { ShowLeaderboard(); } } }
http://forum.unity3d.com/threads/116901-Game-Center-Support/page3
相关文章推荐
- Unity3D中平衡类游戏player的基本应用实例
- Unity3d动画脚本 Animation Scripting(深入了解游戏引擎中的动画处理原理)
- Unity3D 游戏引擎之构建游戏地形的基本元素(五)
- Unity3D研究:如何更合理的架构你的游戏脚本
- [脚本]Unity3D一些基本功能的脚本
- Unity3d动画脚本 Animation Scripting(深入了解游戏引擎中的动画处理原理)
- Unity3D笔记九 发送广播与消息、利用脚本控制游戏
- lua脚本调用cocos2d-x 之实现精灵、Tmx地图创建【iOS游戏开发征文】
- Unity3d动画脚本 Animation Scripting(深入了解游戏引擎中的动画处理原理)
- Unity3d iOS基本优化和高级优化
- Unity3D 游戏引擎之IOS高级界面发送消息与Unity3D消息的接收(九)
- iOS 百度地图 设置显示区域 中心点和范围
- Unity3D 游戏引擎之IOS自定义游戏摇杆与飞机平滑的移动(十一)
- Unity3D 发送广播与消息、利用脚本控制游戏
- Unity3D之游戏架构脚本该如何来写
- [Unity3D]手机3D游戏开发:简单的移动和缩放鼠标手势脚本源码
- unity3d 2d游戏如何导出IOS项目
- Unity3D 游戏引擎之构建游戏框架与导出IOS项目(一)
- Unity3D【脚本】 按键盘Esc弹出退出面板 确定退出游戏 取消关闭面板
- Unity3D-塔防游戏项目主要源码(防御塔炮弹脚本)