Commit b89e0808 authored by nk161690's avatar nk161690

gg play

parent 6c4cd520
fileFormatVersion: 2 fileFormatVersion: 2
guid: d3c5c5ae093a5c7459a7c2875d753562 guid: 915c158b06079337fb2ca40f56727c1d
folderAsset: yes folderAsset: yes
DefaultImporter: DefaultImporter:
externalObjects: {} externalObjects: {}
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: b7b977ddac702410d9afe830593d49d1 guid: e2b1894e7d784825bf9719c33331fae8
labels:
- gvh
- gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.169/Google.IOSResolver.dll
- gvhp_targets-editor
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 8aafe0b0d0d5f4e0eb3476e052977318 guid: 2730c87d98d4480884d11cfb29ff72cb
labels:
- gvh
- gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.169/Google.JarResolver.dll
- gvhp_targets-editor
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 55cbe0f2ed59c472ab1f0f3ffdd43d0e guid: 3ed19a202c4b4b439183dc00efee3c4a
labels:
- gvh
- gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.169/Google.PackageManagerResolver.dll
- gvhp_targets-editor
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 2910e11bc0de145b7bb6ca10a42a9a40 guid: 14338063180a4626be53643cb2ab5d69
labels:
- gvh
- gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/1.2.169/Google.VersionHandlerImpl.dll
- gvhp_targets-editor
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
......
# Version 1.2.169 - Jan 20, 2021
* General - Fixes #425 - Change to save `GvhProjectSettings.xml` without
Unicode byte order mark (BoM).
* Android Resolver - Remove reference to `jcenter()`
* iOS Resolver - Force setting `LANG` when executing Cocoapods in shell mode on
Mac.
# Version 1.2.168 - Dec 9, 2021
* All - Fixes #472 by removing the use of `System.Diagnostics.Debug.Assert`
* All - Fixed #477 by properly enabling EDM4U libraries for Unity 2021.2+ when
the package is installed through `.tgz`
# Version 1.2.167 - Oct 6, 2021
* All - Moved versioned `.dll` in EDM4U to a versioned folder and remove their
version postfix in their filename. For instance, `IOSResolver.dll` will be
placed at `ExternalDependencyManager/Editor/1.2.167/Google.IOSResolver.dll`.
* Android Resolver - Fixed #243 by only using the highest version in
`mainTemplate.gradle` when duplicated dependencies are presented.
* Android Resolver - Added supports to x86_64 to ABI list for Android apps on
Chrome OS.
# Version 1.2.166 - Jun 30, 2021 # Version 1.2.166 - Jun 30, 2021
* All - Fixed #440 and fixed #447 by specifying the parameter type while calling * All - Fixed #440 and fixed #447 by specifying the parameter type while calling
`GetApplicationIdentifier()` Unity API using reflection, due to a new `GetApplicationIdentifier()` Unity API using reflection, due to a new
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: d67e36cf70144eeeb62948707545ecfd guid: deafbeef1ed04f639e3195087b6d2e9f
labels: labels:
- gvh - gvh
- gvh_version-1.2.166 - gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/CHANGELOG.md - gvhp_exportpath-ExternalDependencyManager/Editor/CHANGELOG.md
timeCreated: 1584567712
licenseType: Pro
TextScriptImporter: TextScriptImporter:
externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
fileFormatVersion: 2 fileFormatVersion: 2
guid: bb6999c8a5ce4ba99688ec579babe5b7 guid: 17e39196248d458daa69b514bc09b6a7
labels: labels:
- gvh - gvh
- gvh_version-1.2.166 - gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/Google.VersionHandler.dll - gvhp_exportpath-ExternalDependencyManager/Editor/Google.VersionHandler.dll
- gvhp_targets-editor - gvhp_targets-editor
timeCreated: 1480838400
PluginImporter: PluginImporter:
externalObjects: {} externalObjects: {}
serializedVersion: 2 serializedVersion: 2
iconMap: {} iconMap: {}
executionOrder: {} executionOrder: {}
defineConstraints: []
isPreloaded: 0 isPreloaded: 0
isOverridable: 0 isOverridable: 0
isExplicitlyReferenced: 0
validateReferences: 1
platformData: platformData:
- first: - first:
Any: Any:
......
fileFormatVersion: 2 fileFormatVersion: 2
guid: 35a6726adf03479eb04b8c082346d551 guid: 61e923e8fff245a9bf5cfcf0774e75df
labels: labels:
- gvh - gvh
- gvh_version-1.2.166 - gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/LICENSE - gvhp_exportpath-ExternalDependencyManager/Editor/LICENSE
timeCreated: 1584567712 DefaultImporter:
licenseType: Pro externalObjects: {}
TextScriptImporter:
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
fileFormatVersion: 2 fileFormatVersion: 2
guid: 11eb52f780284fd69194951ac46cb538 guid: 57b5c3f72b65480eba2cc96380835972
labels: labels:
- gvh - gvh
- gvh_version-1.2.166 - gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/README.md - gvhp_exportpath-ExternalDependencyManager/Editor/README.md
timeCreated: 1584567712
licenseType: Pro
TextScriptImporter: TextScriptImporter:
externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
Assets/ExternalDependencyManager/Editor/1.2.169/Google.IOSResolver.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.IOSResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.JarResolver.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.JarResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.PackageManagerResolver.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.PackageManagerResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.VersionHandlerImpl.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.VersionHandlerImpl.dll.mdb
Assets/ExternalDependencyManager/Editor/CHANGELOG.md Assets/ExternalDependencyManager/Editor/CHANGELOG.md
Assets/ExternalDependencyManager/Editor/Google.IOSResolver.dll
Assets/ExternalDependencyManager/Editor/Google.IOSResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/Google.JarResolver.dll
Assets/ExternalDependencyManager/Editor/Google.JarResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/Google.PackageManagerResolver.dll
Assets/ExternalDependencyManager/Editor/Google.PackageManagerResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll
Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.mdb Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.mdb
Assets/ExternalDependencyManager/Editor/Google.VersionHandlerImpl.dll
Assets/ExternalDependencyManager/Editor/Google.VersionHandlerImpl.dll.mdb
Assets/ExternalDependencyManager/Editor/LICENSE Assets/ExternalDependencyManager/Editor/LICENSE
Assets/ExternalDependencyManager/Editor/README.md Assets/ExternalDependencyManager/Editor/README.md
fileFormatVersion: 2 fileFormatVersion: 2
guid: 70e37c0d68034f8a953638d978633f87 guid: f0ebd68c0b4541ada7e16bfce4ef4155
labels: labels:
- gvh - gvh
- gvh_manifest - gvh_manifest
- gvh_version-1.2.166 - gvh_version-1.2.169
- gvhp_exportpath-ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.166_manifest.txt - gvhp_exportpath-ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.169_manifest.txt
- gvhp_manifestname-0External Dependency Manager - gvhp_manifestname-0External Dependency Manager
- gvhp_manifestname-play-services-resolver - gvhp_manifestname-play-services-resolver
timeCreated: 1474401009
licenseType: Pro
TextScriptImporter: TextScriptImporter:
externalObjects: {}
userData: userData:
assetBundleName: assetBundleName:
assetBundleVariant: assetBundleVariant:
using GooglePlayGames;
using TMPro;
using UnityEngine;
public class GgPlayLogin : MonoBehaviour
{
[SerializeField] private TextMeshProUGUI message;
}
fileFormatVersion: 2
guid: 3233805e6ce28714fa7e4a9c6aff793a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: be5036f1d701f274ba37e68da140a648
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 07c584f6dabcf1c52bdb6a9f07429cde
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 11083f74e79584f50ad394be94e2caec
folderAsset: yes
timeCreated: 1435699548
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 41fe658b93aa24c709c540575965fdff
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GPGSDocsUI.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
namespace GooglePlayGames.Editor
{
using UnityEngine;
using UnityEditor;
public class GPGSDocsUI
{
[MenuItem("Window/Google Play Games/Documentation/Plugin Getting Started Guide...", false, 100)]
public static void MenuItemGettingStartedGuide()
{
Application.OpenURL(GPGSStrings.ExternalLinks.GettingStartedGuideURL);
}
[MenuItem("Window/Google Play Games/Documentation/Google Play Games API...", false, 101)]
public static void MenuItemPlayGamesServicesAPI()
{
Application.OpenURL(GPGSStrings.ExternalLinks.PlayGamesServicesApiURL);
}
[MenuItem("Window/Google Play Games/About/About the Plugin...", false, 300)]
public static void MenuItemAbout()
{
string msg = GPGSStrings.AboutText +
PluginVersion.VersionString + " (" +
string.Format("0x{0:X8}", GooglePlayGames.PluginVersion.VersionInt) + ")";
EditorUtility.DisplayDialog(GPGSStrings.AboutTitle, msg,
GPGSStrings.Ok);
}
[MenuItem("Window/Google Play Games/About/License...", false, 301)]
public static void MenuItemLicense()
{
EditorUtility.DisplayDialog(GPGSStrings.LicenseTitle, GPGSStrings.LicenseText,
GPGSStrings.Ok);
}
}
}
\ No newline at end of file
fileFormatVersion: 2
guid: 73cbcab28a27446ff9e06e06a040814f
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GPGSPostBuild.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.Editor
{
using System.Collections.Generic;
using System.IO;
using UnityEditor.Callbacks;
using UnityEditor;
using UnityEngine;
public static class GPGSPostBuild
{
[PostProcessBuild(99999)]
public static void OnPostprocessBuild(BuildTarget target, string pathToBuiltProject)
{
if (!GPGSProjectSettings.Instance.GetBool(GPGSUtil.ANDROIDSETUPDONEKEY, false))
{
EditorUtility.DisplayDialog("Google Play Games not configured!",
"Warning!! Google Play Games was not configured, Game Services will not work correctly.",
"OK");
}
return;
}
}
}
#endif //UNITY_ANDROID
\ No newline at end of file
fileFormatVersion: 2
guid: 1a7b050a8e8214613893df7d81dcc13c
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GPGSProjectSettings.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
// Keep this file even on unsupported configurations.
namespace GooglePlayGames.Editor
{
using System.Collections.Generic;
using System.IO;
#if UNITY_2017_3_OR_NEWER
using UnityEngine.Networking;
#else
using UnityEngine;
#endif
public class GPGSProjectSettings
{
private static GPGSProjectSettings sInstance = null;
public static GPGSProjectSettings Instance
{
get
{
if (sInstance == null)
{
sInstance = new GPGSProjectSettings();
}
return sInstance;
}
}
private bool mDirty = false;
private readonly string mFile;
private Dictionary<string, string> mDict = new Dictionary<string, string>();
private GPGSProjectSettings()
{
mFile = GPGSUtil.SlashesToPlatformSeparator("ProjectSettings/GooglePlayGameSettings.txt");
StreamReader rd = null;
// read the settings file, this list is all the locations it can be in order of precedence.
string[] fileLocations =
{
mFile,
GPGSUtil.SlashesToPlatformSeparator(Path.Combine(GPGSUtil.RootPath, "Editor/projsettings.txt")),
GPGSUtil.SlashesToPlatformSeparator("Assets/Editor/projsettings.txt")
};
foreach (string f in fileLocations)
{
if (File.Exists(f))
{
// assign the reader and break out of the loop
rd = new StreamReader(f);
break;
}
}
if (rd != null)
{
while (!rd.EndOfStream)
{
string line = rd.ReadLine();
if (line == null || line.Trim().Length == 0)
{
break;
}
line = line.Trim();
string[] p = line.Split(new char[] {'='}, 2);
if (p.Length >= 2)
{
mDict[p[0].Trim()] = p[1].Trim();
}
}
rd.Close();
}
}
public string Get(string key, Dictionary<string, string> overrides)
{
if (overrides.ContainsKey(key))
{
return overrides[key];
}
else if (mDict.ContainsKey(key))
{
#if UNITY_2017_3_OR_NEWER
return UnityWebRequest.UnEscapeURL(mDict[key]);
#else
return WWW.UnEscapeURL(mDict[key]);
#endif
}
else
{
return string.Empty;
}
}
public string Get(string key, string defaultValue)
{
if (mDict.ContainsKey(key))
{
#if UNITY_2017_3_OR_NEWER
return UnityWebRequest.UnEscapeURL(mDict[key]);
#else
return WWW.UnEscapeURL(mDict[key]);
#endif
}
else
{
return defaultValue;
}
}
public string Get(string key)
{
return Get(key, string.Empty);
}
public bool GetBool(string key, bool defaultValue)
{
return Get(key, defaultValue ? "true" : "false").Equals("true");
}
public bool GetBool(string key)
{
return Get(key, "false").Equals("true");
}
public void Set(string key, string val)
{
#if UNITY_2017_3_OR_NEWER
string escaped = UnityWebRequest.EscapeURL(val);
#else
string escaped = WWW.EscapeURL(val);
#endif
mDict[key] = escaped;
mDirty = true;
}
public void Set(string key, bool val)
{
Set(key, val ? "true" : "false");
}
public void Save()
{
// See if we are building the plugin, and don't write the settings file
string[] args = System.Environment.GetCommandLineArgs();
foreach (string a in args)
{
if (a == "-g.building")
{
mDirty = false;
break;
}
}
if (!mDirty)
{
return;
}
StreamWriter wr = new StreamWriter(mFile, false);
foreach (string key in mDict.Keys)
{
wr.WriteLine(key + "=" + mDict[key]);
}
wr.Close();
mDirty = false;
}
public static void Reload()
{
sInstance = new GPGSProjectSettings();
}
}
}
fileFormatVersion: 2
guid: cf234a050ba25433f9386e20578ccf19
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 992ecb564cf02408d9c5a1b44d958334
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GPGSUpgrader.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.Editor
{
using System.IO;
using UnityEditor;
using UnityEngine;
/// <summary>
/// GPGS upgrader handles performing and upgrade tasks.
/// </summary>
[InitializeOnLoad]
public class GPGSUpgrader
{
/// <summary>
/// Initializes static members of the <see cref="GooglePlayGames.GPGSUpgrader"/> class.
/// </summary>
static GPGSUpgrader()
{
if (EditorApplication.isPlayingOrWillChangePlaymode)
return;
Debug.Log("GPGSUpgrader start");
GPGSProjectSettings.Instance.Set(GPGSUtil.LASTUPGRADEKEY, PluginVersion.VersionKey);
GPGSProjectSettings.Instance.Set(GPGSUtil.PLUGINVERSIONKEY,
PluginVersion.VersionString);
GPGSProjectSettings.Instance.Save();
bool isChanged = false;
// Check that there is a AndroidManifest.xml file
if (!GPGSUtil.AndroidManifestExists())
{
isChanged = true;
GPGSUtil.GenerateAndroidManifest();
}
if (isChanged)
{
AssetDatabase.Refresh();
}
Debug.Log("GPGSUpgrader done");
}
}
}
#endif
fileFormatVersion: 2
guid: 357a64420a0c44b61a0ed7ca22c7f10f
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: fd01714f9ee99447996b878b1ac67540
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
{
"name": "Google.Play.Games.Editor",
"references": [
"Google.Play.Games"
],
"includePlatforms": [
"Editor"
]
}
fileFormatVersion: 2
guid: 9172e27a923a34eb8b02dc3ab88d3dcd
labels:
- gvh
- gvh_version-0.11.01
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
<?xml version="1.0" encoding="UTF-8" ?>
<dependencies>
<!-- Internal library dependency generated at build time.
It also defines the transitive dependencies on play-services
-->
<androidPackages>
<androidPackage spec="com.google.games:gpgs-plugin-support:0.11.01">
<repositories>
<repository>Packages/com.google.play.games/Editor/m2repository</repository>
</repositories>
</androidPackage>
</androidPackages>
</dependencies>
fileFormatVersion: 2
guid: 56e4f40c267bfa268afda2ea9f4846a0
labels:
- gvh
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
Assets/Plugins/Android/GooglePlayGamesManifest.androidlib/project.properties
Assets/ExternalDependencyManager/Editor/README.md
Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll.mdb
Assets/ExternalDependencyManager/Editor/external-dependency-manager_version-1.2.169_manifest.txt
Assets/ExternalDependencyManager/Editor/1.2.169/Google.VersionHandlerImpl.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.JarResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.VersionHandlerImpl.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.PackageManagerResolver.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.IOSResolver.dll
Assets/ExternalDependencyManager/Editor/1.2.169/Google.IOSResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.PackageManagerResolver.dll.mdb
Assets/ExternalDependencyManager/Editor/1.2.169/Google.JarResolver.dll
Assets/ExternalDependencyManager/Editor/Google.VersionHandler.dll
Assets/ExternalDependencyManager/Editor/CHANGELOG.md
Assets/ExternalDependencyManager/Editor/LICENSE
Assets/GooglePlayGames/AssemblyInfo.cs
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/maven-metadata.xml
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/maven-metadata.xml.sha1
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.srcaar.sha1
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.pom
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.srcaar
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.pom.md5
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.pom.sha1
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/0.11.01/gpgs-plugin-support-0.11.01.srcaar.md5
Assets/GooglePlayGames/com.google.play.games/Editor/m2repository/com/google/games/gpgs-plugin-support/maven-metadata.xml.md5
Assets/GooglePlayGames/com.google.play.games/Editor/template-AndroidManifest.txt
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSUtil.cs
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSStrings.cs
Assets/GooglePlayGames/com.google.play.games/Editor/GooglePlayGamesPluginDependencies.xml
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSPostBuild.cs
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSDocsUI.cs
Assets/GooglePlayGames/com.google.play.games/Editor/Google.Play.Games.Editor.asmdef
Assets/GooglePlayGames/com.google.play.games/Editor/template-GameInfo.txt
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSProjectSettings.cs
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSUpgrader.cs
Assets/GooglePlayGames/com.google.play.games/Editor/NearbyConnectionUI.cs
Assets/GooglePlayGames/com.google.play.games/Editor/GPGSAndroidSetupUI.cs
Assets/GooglePlayGames/com.google.play.games/Editor/template-Constants.txt
Assets/GooglePlayGames/com.google.play.games/package.json
Assets/GooglePlayGames/com.google.play.games/Proguard/games.txt
Assets/GooglePlayGames/com.google.play.games/Runtime/Google.Play.Games.asmdef
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/OurUtils/NearbyHelperObject.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/OurUtils/PlayGamesHelperObject.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/OurUtils/Misc.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/OurUtils/PlatformUtils.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/OurUtils/Logger.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/GameInfo.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/PlayGamesClientFactory.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/NearbyConnectionClientFactory.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidNearbyConnectionClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidJavaConverter.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidSnapshotMetadata.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidSavedGameClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidHelperFragment.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidEventsClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/Platforms/Android/AndroidTaskUtils.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesPlatform.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesAchievement.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesLeaderboard.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesLocalUser.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesUserProfile.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/ISocialPlatform/PlayGamesScore.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/ScorePageToken.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Player.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/LeaderboardScoreData.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/AdvertisingResult.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/ConnectionResponse.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/ConnectionRequest.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/EndpointDetails.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/NearbyConnectionConfiguration.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/INearbyConnectionClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Nearby/DummyNearbyConnectionClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/CommonStatusCodes.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/CommonTypes.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/SavedGame/ISavedGameClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/SavedGame/SavedGameMetadataUpdate.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/SavedGame/ISavedGameMetadata.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Achievement.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/SignInStatus.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Events/Event.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Events/IEvent.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/Events/IEventsClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/PlayerStats.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/DummyClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/SignInInteractivity.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/IPlayGamesClient.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/BasicApi/PlayerProfile.cs
Assets/GooglePlayGames/com.google.play.games/Runtime/Scripts/PluginVersion.cs
Assets/PlayServicesResolver/Editor/play-services-resolver_v1.2.137.0.txt
fileFormatVersion: 2
guid: 693a823b8f0ad41fe8231a1b1c8a50da
labels:
- gvh
- gvh_manifest
- gvh_version-0.11.01
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="NearbyConnectionUI.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.Editor
{
using UnityEngine;
using UnityEditor;
public class NearbyConnectionUI : EditorWindow
{
private string mNearbyServiceId = string.Empty;
[MenuItem("Window/Google Play Games/Setup/Nearby Connections setup...", false, 3)]
public static void MenuItemNearbySetup()
{
EditorWindow window = EditorWindow.GetWindow(
typeof(NearbyConnectionUI), true, GPGSStrings.NearbyConnections.Title);
window.minSize = new Vector2(400, 200);
}
[MenuItem("Window/Google Play Games/Setup/Nearby Connections setup...", true)]
public static bool EnableNearbyMenuItem()
{
#if UNITY_ANDROID
return true;
#else
return false;
#endif
}
public void OnEnable()
{
mNearbyServiceId = GPGSProjectSettings.Instance.Get(GPGSUtil.SERVICEIDKEY);
}
public void OnGUI()
{
GUI.skin.label.wordWrap = true;
GUILayout.BeginVertical();
GUILayout.Space(10);
GUILayout.Label(GPGSStrings.NearbyConnections.Blurb);
GUILayout.Space(10);
GUILayout.Label(GPGSStrings.Setup.NearbyServiceId, EditorStyles.boldLabel);
GUILayout.Space(10);
GUILayout.Label(GPGSStrings.Setup.NearbyServiceBlurb);
mNearbyServiceId = EditorGUILayout.TextField(GPGSStrings.Setup.NearbyServiceId,
mNearbyServiceId, GUILayout.Width(350));
GUILayout.FlexibleSpace();
GUILayout.BeginHorizontal();
GUILayout.FlexibleSpace();
if (GUILayout.Button(GPGSStrings.Setup.SetupButton,
GUILayout.Width(100)))
{
DoSetup();
}
if (GUILayout.Button("Cancel", GUILayout.Width(100)))
{
this.Close();
}
GUILayout.FlexibleSpace();
GUILayout.EndHorizontal();
GUILayout.Space(20);
GUILayout.EndVertical();
}
private void DoSetup()
{
if (PerformSetup(mNearbyServiceId, true))
{
EditorUtility.DisplayDialog(GPGSStrings.Success,
GPGSStrings.NearbyConnections.SetupComplete, GPGSStrings.Ok);
this.Close();
}
}
/// Provide static access to setup for facilitating automated builds.
/// <param name="nearbyServiceId">The nearby connections service Id</param>
/// <param name="androidBuild">true if building android</param>
public static bool PerformSetup(string nearbyServiceId, bool androidBuild)
{
// check for valid app id
if (!GPGSUtil.LooksLikeValidServiceId(nearbyServiceId))
{
if (EditorUtility.DisplayDialog(
"Remove Nearby connection permissions? ",
"The service Id is invalid. It must follow package naming rules. " +
"Do you want to remove the AndroidManifest entries for Nearby connections?",
"Yes",
"No"))
{
GPGSProjectSettings.Instance.Set(GPGSUtil.SERVICEIDKEY, null);
GPGSProjectSettings.Instance.Save();
}
else
{
return false;
}
}
else
{
GPGSProjectSettings.Instance.Set(GPGSUtil.SERVICEIDKEY, nearbyServiceId);
GPGSProjectSettings.Instance.Save();
}
if (androidBuild)
{
// create needed directories
GPGSUtil.EnsureDirExists("Assets/Plugins");
GPGSUtil.EnsureDirExists("Assets/Plugins/Android");
// Generate AndroidManifest.xml
GPGSUtil.GenerateAndroidManifest();
GPGSProjectSettings.Instance.Set(GPGSUtil.NEARBYSETUPDONEKEY, true);
GPGSProjectSettings.Instance.Save();
// Resolve the dependencies
Google.VersionHandler.VerboseLoggingEnabled = true;
Google.VersionHandler.UpdateVersionedAssets(forceUpdate: true);
Google.VersionHandler.Enabled = true;
AssetDatabase.Refresh();
Google.VersionHandler.InvokeStaticMethod(
Google.VersionHandler.FindClass(
"Google.JarResolver",
"GooglePlayServices.PlayServicesResolver"),
"MenuResolve", null);
}
return true;
}
}
}
#endif
\ No newline at end of file
fileFormatVersion: 2
guid: b64332a502e18436da5652adbf7e24a3
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: a1aac54589c4640cd89900056af3a094
folderAsset: yes
timeCreated: 1515000812
licenseType: Free
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 6bfd2e0bf6a79efa5a524c758a029a97
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 44f501fdbcc7ecb3a9d935d48385fcd7
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: ab2c8702a5ac8186e833079b0c2b97eb
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 7aad2f859f18616f6b634cecc92785db
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 270a1b374befae139bb007ed9fe42c0a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
<?xml version="1.0" encoding="UTF-8"?>
<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<modelVersion>4.0.0</modelVersion>
<groupId>com.google.games</groupId>
<artifactId>gpgs-plugin-support</artifactId>
<version>0.11.01</version>
<packaging>srcaar</packaging>
<dependencies>
<dependency>
<groupId>com.google.android.gms</groupId>
<artifactId>play-services-games-v2</artifactId>
<version>17.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>com.google.android.gms</groupId>
<artifactId>play-services-nearby</artifactId>
<version>18.0.2</version>
<scope>compile</scope>
</dependency>
</dependencies>
</project>
fileFormatVersion: 2
guid: 021d4ecf67ff30875941d1d1d3e4273f
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 3a8de8e589297f83cbf708663d04784d
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 2ace5c923ae5a5e4182561bb8b0e47ad
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 6a5d6cd742873c73f8f0c9a1ac445182
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 8a7a2dcd7d551e040938c69456bd0643
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: b8fc53361999b1f4a830505b47234b73
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
<?xml version="1.0" encoding="UTF-8"?>
<metadata>
<groupId>com.google.games</groupId>
<artifactId>gpgs-plugin-support</artifactId>
<versioning>
<release>0.11.01</release>
<versions>
<version>0.11.01</version>
</versions>
<lastUpdated>20220321142410</lastUpdated>
</versioning>
</metadata>
fileFormatVersion: 2
guid: b99ac5f1bd7ba77d390d8508c2c3b8cc
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: e9ae03af85334796fa074f4f75bd5426
labels:
- gvh
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 75441663f29e7a430af793277d746c7e
labels:
- gvh
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
<?xml version="1.0" encoding="utf-8"?>
<!-- This file was automatically generated by the Google Play Games plugin for Unity
Do not edit. -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.google.example.games.mainlibproj"
android:versionCode="1"
android:versionName="1.0" >
__NEARBY_PERMISSIONS__
<application>
__NEARBY_SERVICE_ELEMENT__
<!-- The space in these forces it to be interpreted as a string vs. int -->
<meta-data android:name="com.google.android.gms.games.APP_ID"
android:value="\u003__APP_ID__" />
<!-- Keep track of which plugin is being used -->
<meta-data android:name="com.google.android.gms.games.unityVersion"
android:value="\u003__PLUGIN_VERSION__" />
<activity android:name="com.google.games.bridge.NativeBridgeActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
</application>
</manifest>
fileFormatVersion: 2
guid: 0e1f3c150256848b1ba98702cfb71220
labels:
- gvh
- gvh_version-0.11.01
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GPGSIds.cs" company="Google Inc.">
// Copyright (C) 2015 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
///
/// This file is automatically generated DO NOT EDIT!
///
/// These are the constants defined in the Play Games Console for Game Services
/// Resources.
///
__NameSpaceStart__
public static class __Class__
{
__Constant_Properties__
}
__NameSpaceEnd__
fileFormatVersion: 2
guid: 7f2719cb8be514661b7b6aa9986bfe5f
labels:
- gvh
- gvh_version-0.11.01
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="GameInfo.cs" company="Google Inc.">
// Copyright (C) 2015 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames {
///
/// This file is automatically generated DO NOT EDIT!
///
/// These are the constants defined in the Play Games Console for Game Services
/// Resources.
///
/// <summary>
/// File containing information about the game. This is automatically updated by running the
/// platform-appropriate setup commands in the Unity editor (which does a simple search / replace
/// on the IDs in the form "__ID__"). We can check whether any particular field has been updated
/// by checking whether it still retains its initial value - we prevent the constants from being
/// replaced in the aforementioned search/replace by stripping off the leading and trailing "__".
/// </summary>
public static class GameInfo {
private const string UnescapedApplicationId = "APP_ID";
private const string UnescapedIosClientId = "IOS_CLIENTID";
private const string UnescapedWebClientId = "WEB_CLIENTID";
private const string UnescapedNearbyServiceId = "NEARBY_SERVICE_ID";
public const string ApplicationId = "__APP_ID__"; // Filled in automatically
public const string IosClientId = "__IOS_CLIENTID__"; // Filled in automatically
public const string WebClientId = "__WEB_CLIENTID__"; // Filled in automatically
public const string NearbyConnectionServiceId = "__NEARBY_SERVICE_ID__";
public static bool ApplicationIdInitialized() {
return !string.IsNullOrEmpty(ApplicationId) && !ApplicationId.Equals(ToEscapedToken(UnescapedApplicationId));
}
public static bool IosClientIdInitialized() {
return !string.IsNullOrEmpty(IosClientId) && !IosClientId.Equals(ToEscapedToken(UnescapedIosClientId));
}
public static bool WebClientIdInitialized() {
return !string.IsNullOrEmpty(WebClientId) && !WebClientId.Equals(ToEscapedToken(UnescapedWebClientId));
}
public static bool NearbyConnectionsInitialized() {
return !string.IsNullOrEmpty(NearbyConnectionServiceId) &&
!NearbyConnectionServiceId.Equals(ToEscapedToken(UnescapedNearbyServiceId));
}
/// <summary>
/// Returns an escaped token (i.e. one flanked with "__") for the passed token
/// </summary>
/// <returns>The escaped token.</returns>
/// <param name="token">The Token</param>
private static string ToEscapedToken(string token) {
return string.Format("__{0}__", token);
}
}
}
#endif
fileFormatVersion: 2
guid: c6fa1c0456d174d298bf8dd66f584e9e
labels:
- gvh
- gvh_version-0.11.01
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 484e9bbdd408c50d993232965d92e0cb
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
-keep class com.google.android.gms.games.leaderboard.** { *; }
-keep class com.google.android.gms.games.snapshot.** { *; }
-keep class com.google.android.gms.games.achievement.** { *; }
-keep class com.google.android.gms.games.event.** { *; }
-keep class com.google.android.gms.games.stats.** { *; }
-keep class com.google.android.gms.games.* { *; }
-keep class com.google.android.gms.common.api.ResultCallback { *; }
-keep class com.google.android.gms.signin.** { *; }
-keep class com.google.android.gms.dynamic.** { *; }
-keep class com.google.android.gms.dynamite.** { *; }
-keep class com.google.android.gms.tasks.** { *; }
-keep class com.google.android.gms.security.** { *; }
-keep class com.google.android.gms.base.** { *; }
-keep class com.google.android.gms.actions.** { *; }
-keep class com.google.games.bridge.** { *; }
-keep class com.google.android.gms.common.ConnectionResult { *; }
-keep class com.google.android.gms.common.GooglePlayServicesUtil { *; }
-keep class com.google.android.gms.common.api.** { *; }
-keep class com.google.android.gms.common.data.DataBufferUtils { *; }
-keep class com.google.android.gms.nearby.** { *; }
fileFormatVersion: 2
guid: 4176788a1a4cdec9e8100aceecddd212
labels:
- gvh
TextScriptImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 831a102b513bb304da26f7ca18913f3e
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
{
"name": "Google.Play.Games",
"includePlatforms": [
"Android",
"Editor"
]
}
fileFormatVersion: 2
guid: 1ed07ff861e5f468287b0baef844706d
labels:
- gvh
- gvh_version-0.11.01
AssemblyDefinitionImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 6ac644c502fda71c8a1a146903d950de
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 0a565e85253b345878939982a360e0b6
folderAsset: yes
DefaultImporter:
userData:
// <copyright file="Achievement.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.BasicApi
{
using System;
/// <summary>Data interface for retrieving achievement information.</summary>
/// <remarks>
/// There are 3 states an achievement can be in:
/// <para>
/// Hidden - indicating the name and description of the achievement is
/// not visible to the player.
/// </para><para>
/// Revealed - indicating the name and description of the achievement is
/// visible to the player.
/// Unlocked - indicating the player has unlocked, or achieved, the achievment.
/// </para><para>
/// Achievements has two types, standard which is unlocked in one step,
/// and incremental, which require multiple steps to unlock.
/// </para>
/// </remarks>
public class Achievement
{
static readonly DateTime UnixEpoch =
new DateTime(1970, 1, 1, 0, 0, 0, 0, DateTimeKind.Utc);
private string mId = string.Empty;
private bool mIsIncremental = false;
private bool mIsRevealed = false;
private bool mIsUnlocked = false;
private int mCurrentSteps = 0;
private int mTotalSteps = 0;
private string mDescription = string.Empty;
private string mName = string.Empty;
private long mLastModifiedTime = 0;
private ulong mPoints;
private string mRevealedImageUrl;
private string mUnlockedImageUrl;
/// <summary>
/// Returns a <see cref="System.String"/> that represents the current <see cref="GooglePlayGames.BasicApi.Achievement"/>.
/// </summary>
/// <returns>A <see cref="System.String"/> that represents the current <see cref="GooglePlayGames.BasicApi.Achievement"/>.</returns>
public override string ToString()
{
return string.Format(
"[Achievement] id={0}, name={1}, desc={2}, type={3}, revealed={4}, unlocked={5}, steps={6}/{7}",
mId, mName, mDescription, mIsIncremental ? "INCREMENTAL" : "STANDARD",
mIsRevealed, mIsUnlocked, mCurrentSteps, mTotalSteps);
}
public Achievement()
{
}
/// <summary>
/// Indicates whether this achievement is incremental.
/// </summary>
public bool IsIncremental
{
get { return mIsIncremental; }
set { mIsIncremental = value; }
}
/// <summary>
/// The number of steps the user has gone towards unlocking this achievement.
/// </summary>
public int CurrentSteps
{
get { return mCurrentSteps; }
set { mCurrentSteps = value; }
}
/// <summary>
/// The total number of steps needed to unlock this achievement.
/// </summary>
public int TotalSteps
{
get { return mTotalSteps; }
set { mTotalSteps = value; }
}
/// <summary>
/// Indicates whether the achievement is unlocked or not.
/// </summary>
public bool IsUnlocked
{
get { return mIsUnlocked; }
set { mIsUnlocked = value; }
}
/// <summary>
/// Indicates whether the achievement is revealed or not (hidden).
/// </summary>
public bool IsRevealed
{
get { return mIsRevealed; }
set { mIsRevealed = value; }
}
/// <summary>
/// The ID string of this achievement.
/// </summary>
public string Id
{
get { return mId; }
set { mId = value; }
}
/// <summary>
/// The description of this achievement.
/// </summary>
public string Description
{
get { return this.mDescription; }
set { mDescription = value; }
}
/// <summary>
/// The name of this achievement.
/// </summary>
public string Name
{
get { return this.mName; }
set { mName = value; }
}
/// <summary>
/// The date and time the state of the achievement was modified.
/// </summary>
/// <remarks>
/// The value is invalid (-1 long) if the achievement state has
/// never been updated.
/// </remarks>
public DateTime LastModifiedTime
{
get { return UnixEpoch.AddMilliseconds(mLastModifiedTime); }
set
{
TimeSpan ts = value - UnixEpoch;
mLastModifiedTime = (long) ts.TotalMilliseconds;
}
}
/// <summary>
/// The number of experience points earned for unlocking this Achievement.
/// </summary>
public ulong Points
{
get { return mPoints; }
set { mPoints = value; }
}
/// <summary>
/// The URL to the image to display when the achievement is revealed.
/// </summary>
public string RevealedImageUrl
{
get { return mRevealedImageUrl; }
set { mRevealedImageUrl = value; }
}
/// <summary>
/// The URL to the image to display when the achievement is unlocked.
/// </summary>
public string UnlockedImageUrl
{
get { return mUnlockedImageUrl; }
set { mUnlockedImageUrl = value; }
}
}
}
#endif
\ No newline at end of file
fileFormatVersion: 2
guid: b20fc2fda369044ba962d1d9115c4c63
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="CommonStatusCodes.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.BasicApi
{
/// <summary>
/// Common status codes.
/// See https://developers.google.com/android/reference/com/google/android/gms/common/api/CommonStatusCodes
/// </summary>
public enum CommonStatusCodes
{
/// <summary>The operation was successful, but the device's cache was used.</summary>
SuccessCached = -1,
/// <summary>The operation was successful.</summary>
Success = 0,
/// <summary>Google Play services is missing on this device.</summary>
ServiceMissing = 1,
/// <summary>The installed version of Google Play services is out of date.</summary>
ServiceVersionUpdateRequired = 2,
/// <summary>The installed version of Google Play services has been disabled on this device.</summary>
ServiceDisabled = 3,
/// <summary>The client attempted to connect to the service but the user is not signed in.</summary>
SignInRequired = 4,
/// <summary>The client attempted to connect to the service with an invalid account name specified.</summary>
InvalidAccount = 5,
/// <summary>Completing the operation requires some form of resolution.</summary>
ResolutionRequired = 6,
/// <summary>A network error occurred.</summary>
NetworkError = 7,
/// <summary>An internal error occurred.</summary>
InternalError = 8,
/// <summary>The version of the Google Play services installed on this device is not authentic.</summary>
ServiceInvalid = 9,
/// <summary>The application is misconfigured.</summary>
DeveloperError = 10,
/// <summary>The application is not licensed to the user.</summary>
LicenseCheckFailed = 11,
/// <summary>The operation failed with no more detailed information.</summary>
Error = 13,
/// <summary>A blocking call was interrupted while waiting and did not run to completion.</summary>
Interrupted = 14,
/// <summary>Timed out while awaiting the result.</summary>
Timeout = 15,
/// <summary>The result was canceled either due to client disconnect or cancel().</summary>
Canceled = 16,
/// <summary>The client attempted to call a method from an API that failed to connect.</summary>
ApiNotConnected = 17,
/// <summary>Invalid credentials were provided.</summary>
AuthApiInvalidCredentials = 3000,
/// <summary>Access is forbidden.</summary>
AuthApiAccessForbidden = 3001,
/// <summary>Error related to the client.</summary>
AuthApiClientError = 3002,
/// <summary>Error related to the server.</summary>
AuthApiServerError = 3003,
/// <summary>Error related to token.</summary>
AuthTokenError = 3004,
/// <summary>Error related to auth URL resolution.</summary>
AuthUrlResolution = 3005
}
}
#endif
\ No newline at end of file
fileFormatVersion: 2
guid: cd54f7a2763f74ce191bdd3efa0a44d5
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="CommonTypes.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
namespace GooglePlayGames.BasicApi
{
/// <summary>
/// A enum describing where game data can be fetched from.
/// </summary>
public enum DataSource
{
/// <summary>
/// Allow a read from either a local cache, or the network.
/// </summary>
/// <remarks> Values from the cache may be
/// stale (potentially producing more write conflicts), but reading from cache may still
/// allow reads to succeed if the device does not have internet access and may complete more
/// quickly (as the reads can occur locally rather requiring network roundtrips).
/// </remarks>
ReadCacheOrNetwork,
/// <summary>
/// Only allow reads from network.
/// </summary>
/// <remarks> This guarantees any returned values were current at the time
/// the read succeeded, but prevents reads from succeeding if the network is unavailable for
/// any reason.
/// </remarks>
ReadNetworkOnly
}
/// <summary> Native response status codes</summary>
/// <remarks> These values are returned by the native SDK API.
/// NOTE: These values are different than the CommonStatusCodes.
/// </remarks>
public enum ResponseStatus
{
/// <summary>The operation was successful.</summary>
Success = 1,
/// <summary>The operation was successful, but the device's cache was used.</summary>
SuccessWithStale = 2,
/// <summary>The application is not licensed to the user.</summary>
LicenseCheckFailed = -1,
/// <summary>An internal error occurred.</summary>
InternalError = -2,
/// <summary>The player is not authorized to perform the operation.</summary>
NotAuthorized = -3,
/// <summary>The installed version of Google Play services is out of date.</summary>
VersionUpdateRequired = -4,
/// <summary>Timed out while awaiting the result.</summary>
Timeout = -5,
///< summary>
/// Constant indicating that the developer does not have access to the friends list, but can
/// call the AskForLoadFriendsResolution API to show a consent dialog.
///</summary>
ResolutionRequired = -6,
}
/// <summary> Native response status codes for UI operations.</summary>
/// <remarks> These values are returned by the native SDK API.
/// </remarks>
public enum UIStatus
{
/// <summary>The result is valid.</summary>
Valid = 1,
/// <summary>An internal error occurred.</summary>
InternalError = -2,
/// <summary>The player is not authorized to perform the operation.</summary>
NotAuthorized = -3,
/// <summary>The installed version of Google Play services is out of date.</summary>
VersionUpdateRequired = -4,
/// <summary>Timed out while awaiting the result.</summary>
Timeout = -5,
/// <summary>UI closed by user.</summary>
UserClosedUI = -6,
UiBusy = -12,
/// <summary>An network error occurred.</summary>
NetworkError = -20,
}
/// <summary>Values specifying the start location for fetching scores.</summary>
public enum LeaderboardStart
{
/// <summary>Start fetching scores from the top of the list.</summary>
TopScores = 1,
/// <summary>Start fetching relative to the player's score.</summary>
PlayerCentered = 2,
}
/// <summary>Values specifying which leaderboard timespan to use.</summary>
public enum LeaderboardTimeSpan
{
/// <summary>Daily scores. The day resets at 11:59 PM PST.</summary>
Daily = 1,
/// <summary>Weekly scores. The week resets at 11:59 PM PST on Sunday.</summary>
Weekly = 2,
/// <summary>All time scores.</summary>
AllTime = 3,
}
/// <summary>Values specifying which leaderboard collection to use.</summary>
public enum LeaderboardCollection
{
/// <summary>Public leaderboards contain the scores of players who are sharing their gameplay publicly.</summary>
Public = 1,
/// <summary>Social leaderboards contain the scores of players in the viewing player's circles.</summary>
Social = 2,
}
public enum FriendsListVisibilityStatus
{
///< summary>
/// Constant indicating that currently it's unknown if the friends list is visible to the
/// game, game can ask for permission from user.
///</summary>
Unknown = 0,
/// Constant indicating that the friends list is currently visible to the game.
Visible = 1,
///< summary>
/// Constant indicating that the developer does not have access to the friends list, but can
/// call the AskForLoadFriendsResolution API to show a consent dialog.
///</summary>
ResolutionRequired = 2,
///< summary>
/// Constant indicating that the friends list is currently unavailable for this user, and it
/// is not possible to request access at this time, either because the user has permanently
/// declined or the friends feature is not available to them. In this state, any attempts to
/// request
/// access to the friends list will be unsuccessful.
///</summary>
Unavailable = 3,
/// <summary>An network error occurred.</summary>
NetworkError = -4,
/// <summary>The player is not authorized to perform the operation.</summary>
NotAuthorized = -5,
}
public enum LoadFriendsStatus
{
/// <summary>An unknown value to return when loadFriends is not available.</summary>
Unknown = 0,
/// <summary>All the friends have been loaded.</summary>
Completed = 1,
/// <summary>There are more friends to load.</summary>
LoadMore = 2,
/// <summary>
/// The game doesn't have permission to access the player's friends list. No friends loaded.
/// </summary>
ResolutionRequired = -3,
/// <summary>An internal error occurred.</summary>
InternalError = -4,
/// <summary>The player is not authorized to perform the operation.</summary>
NotAuthorized = -5,
/// <summary>An network error occurred.</summary>
NetworkError = -6,
}
public class CommonTypesUtil
{
public static bool StatusIsSuccess(ResponseStatus status)
{
return ((int) status) > 0;
}
}
}
fileFormatVersion: 2
guid: 1c5d1cb1974d14c0c8b32fcf00089556
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="DummyClient.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.BasicApi
{
using System;
using GooglePlayGames.OurUtils;
using UnityEngine.SocialPlatforms;
/// <summary>
/// Dummy client used in Editor.
/// </summary>
/// <remarks>Google Play Game Services are not supported in the Editor
/// environment, so this client is used as a placeholder.
/// </remarks>
public class DummyClient : IPlayGamesClient
{
public void Authenticate(Action<SignInStatus> callback)
{
LogUsage();
if (callback != null)
{
callback(SignInStatus.Canceled);
}
}
public void ManuallyAuthenticate(Action<SignInStatus> callback)
{
LogUsage();
if (callback != null)
{
callback(SignInStatus.Canceled);
}
}
public bool IsAuthenticated()
{
LogUsage();
return false;
}
public void RequestServerSideAccess(bool forceRefreshToken, Action<string> callback)
{
LogUsage();
if (callback != null)
{
callback(null);
}
}
public string GetUserId()
{
LogUsage();
return "DummyID";
}
public void GetPlayerStats(Action<CommonStatusCodes, PlayerStats> callback)
{
LogUsage();
callback(CommonStatusCodes.ApiNotConnected, new PlayerStats());
}
public string GetUserDisplayName()
{
LogUsage();
return "Player";
}
public string GetUserImageUrl()
{
LogUsage();
return null;
}
public void LoadUsers(string[] userIds, Action<IUserProfile[]> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(null);
}
}
public void LoadAchievements(Action<Achievement[]> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(null);
}
}
public void UnlockAchievement(string achId, Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public void RevealAchievement(string achId, Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public void IncrementAchievement(string achId, int steps, Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public void SetStepsAtLeast(string achId, int steps, Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public void ShowAchievementsUI(Action<UIStatus> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(UIStatus.VersionUpdateRequired);
}
}
public void AskForLoadFriendsResolution(Action<UIStatus> callback) {
LogUsage();
if (callback != null) {
callback.Invoke(UIStatus.VersionUpdateRequired);
}
}
public LoadFriendsStatus GetLastLoadFriendsStatus() {
LogUsage();
return LoadFriendsStatus.Unknown;
}
public void LoadFriends(int pageSize, bool forceReload,
Action<LoadFriendsStatus> callback) {
LogUsage();
if (callback != null) {
callback.Invoke(LoadFriendsStatus.Unknown);
}
}
public void LoadMoreFriends(int pageSize, Action<LoadFriendsStatus> callback) {
LogUsage();
if (callback != null) {
callback.Invoke(LoadFriendsStatus.Unknown);
}
}
public void ShowCompareProfileWithAlternativeNameHintsUI(string userId,
string otherPlayerInGameName,
string currentPlayerInGameName,
Action<UIStatus> callback) {
LogUsage();
if (callback != null) {
callback.Invoke(UIStatus.VersionUpdateRequired);
}
}
public void GetFriendsListVisibility(bool forceReload,
Action<FriendsListVisibilityStatus> callback) {
LogUsage();
if (callback != null) {
callback.Invoke(FriendsListVisibilityStatus.Unknown);
}
}
public void ShowLeaderboardUI(
string leaderboardId,
LeaderboardTimeSpan span,
Action<UIStatus> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(UIStatus.VersionUpdateRequired);
}
}
public int LeaderboardMaxResults()
{
return 25;
}
public void LoadScores(
string leaderboardId,
LeaderboardStart start,
int rowCount,
LeaderboardCollection collection,
LeaderboardTimeSpan timeSpan,
Action<LeaderboardScoreData> callback)
{
LogUsage();
if (callback != null)
{
callback(new LeaderboardScoreData(
leaderboardId,
ResponseStatus.LicenseCheckFailed));
}
}
public void LoadMoreScores(
ScorePageToken token,
int rowCount,
Action<LeaderboardScoreData> callback)
{
LogUsage();
if (callback != null)
{
callback(new LeaderboardScoreData(
token.LeaderboardId,
ResponseStatus.LicenseCheckFailed));
}
}
public void SubmitScore(string leaderboardId, long score, Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public void SubmitScore(
string leaderboardId,
long score,
string metadata,
Action<bool> callback)
{
LogUsage();
if (callback != null)
{
callback.Invoke(false);
}
}
public SavedGame.ISavedGameClient GetSavedGameClient()
{
LogUsage();
return null;
}
public GooglePlayGames.BasicApi.Events.IEventsClient GetEventsClient()
{
LogUsage();
return null;
}
public void LoadFriends(Action<bool> callback)
{
LogUsage();
callback(false);
}
public IUserProfile[] GetFriends()
{
LogUsage();
return new IUserProfile[0];
}
private static void LogUsage()
{
Logger.d("Received method call on DummyClient - using stub implementation.");
}
}
}
#endif
fileFormatVersion: 2
guid: 2c600182c9892457e92f885549bd838a
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 672ea858ca3b74efb9d0981849563065
folderAsset: yes
timeCreated: 1435699548
licenseType: Pro
DefaultImporter:
userData:
assetBundleName:
assetBundleVariant:
namespace GooglePlayGames.BasicApi.Events
{
internal class Event : IEvent
{
private string mId;
private string mName;
private string mDescription;
private string mImageUrl;
private ulong mCurrentCount;
private EventVisibility mVisibility;
internal Event(string id, string name, string description, string imageUrl,
ulong currentCount, EventVisibility visibility)
{
mId = id;
mName = name;
mDescription = description;
mImageUrl = imageUrl;
mCurrentCount = currentCount;
mVisibility = visibility;
}
public string Id
{
get { return mId; }
}
public string Name
{
get { return mName; }
}
public string Description
{
get { return mDescription; }
}
public string ImageUrl
{
get { return mImageUrl; }
}
public ulong CurrentCount
{
get { return mCurrentCount; }
}
public EventVisibility Visibility
{
get { return mVisibility; }
}
}
}
fileFormatVersion: 2
guid: ce7f6801baead4bbda584bb96882e78b
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="IEvent.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
namespace GooglePlayGames.BasicApi.Events
{
public enum EventVisibility
{
Hidden = 1,
Revealed = 2,
}
/// <summary>
/// Data object representing an Event. <see cref="Native.PInvoke.EventManager"/> for more.
/// </summary>
public interface IEvent
{
/// <summary>
/// The ID of the event.
/// </summary>
string Id { get; }
/// <summary>
/// The name of the event.
/// </summary>
string Name { get; }
/// <summary>
/// The description of the event.
/// </summary>
string Description { get; }
/// <summary>
/// The URL of the image for the event. Empty if there is no image for this event.
/// </summary>
/// <value>The image URL.</value>
string ImageUrl { get; }
/// <summary>
/// The current count for this event.
/// </summary>
ulong CurrentCount { get; }
/// <summary>
/// The visibility of the event.
/// </summary>
EventVisibility Visibility { get; }
}
}
fileFormatVersion: 2
guid: 7e4f4f47218d14208a8ae0f676e1bca4
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="IEventsClient.cs" company="Google Inc.">
// Copyright (C) 2014 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.BasicApi.Events
{
using System;
using System.Collections.Generic;
/// <summary>
/// An interface for interacting with events.
///
/// <para>See online <a href="https://developers.google.com/games/services/common/concepts/events">
/// documentation for Events</a> for more information.</para>
///
/// All callbacks in this interface must be invoked on the game thread.
/// </summary>
public interface IEventsClient
{
/// <summary>
/// Fetches all events defined for this game.
/// </summary>
/// <param name="source">The source of the event (i.e. whether we can return stale cached
/// values).</param>
/// <param name="callback">A callback for the results of the request. The passed list will only
/// be non-empty if the request succeeded. This callback will be invoked on the game thread.
/// </param>
void FetchAllEvents(DataSource source, Action<ResponseStatus, List<IEvent>> callback);
/// <summary>
/// Fetchs the event with the specified ID.
/// </summary>
/// <param name="source">The source of the event (i.e. whether we can return stale cached
/// values).</param>
/// <param name="eventId">The ID of the event.</param>
/// <param name="callback">A callback for the result of the event. If the request failed, the
/// passed event will be null. This callback will be invoked on the game thread.</param>
void FetchEvent(DataSource source, string eventId, Action<ResponseStatus, IEvent> callback);
/// <summary>
/// Increments the indicated event.
/// </summary>
/// <param name="eventId">The ID of the event to increment.</param>
/// <param name="stepsToIncrement">The number of steps to increment by.</param>
void IncrementEvent(string eventId, uint stepsToIncrement);
}
}
#endif
fileFormatVersion: 2
guid: da57ba264ec114c57b8352923847ec34
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
fileFormatVersion: 2
guid: 9138e04e4459148c680055b40ad324c0
labels:
- gvh
- gvh_version-0.11.01
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:
// <copyright file="LeaderboardScoreData.cs" company="Google Inc.">
// Copyright (C) 2015 Google Inc. All Rights Reserved.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
// </copyright>
#if UNITY_ANDROID
namespace GooglePlayGames.BasicApi
{
using System.Collections.Generic;
using UnityEngine.SocialPlatforms;
/// <summary>
/// Leaderboard score data. This is the callback data
/// when loading leaderboard scores. There are several SDK
/// API calls needed to be made to collect all the required data,
/// so this class is used to simplify the response.
/// </summary>
public class LeaderboardScoreData
{
private string mId;
private ResponseStatus mStatus;
private ulong mApproxCount;
private string mTitle;
private IScore mPlayerScore;
private ScorePageToken mPrevPage;
private ScorePageToken mNextPage;
private List<PlayGamesScore> mScores = new List<PlayGamesScore>();
internal LeaderboardScoreData(string leaderboardId)
{
mId = leaderboardId;
}
internal LeaderboardScoreData(string leaderboardId, ResponseStatus status)
{
mId = leaderboardId;
mStatus = status;
}
public bool Valid
{
get
{
return mStatus == ResponseStatus.Success ||
mStatus == ResponseStatus.SuccessWithStale;
}
}
public ResponseStatus Status
{
get { return mStatus; }
internal set { mStatus = value; }
}
public ulong ApproximateCount
{
get { return mApproxCount; }
internal set { mApproxCount = value; }
}
public string Title
{
get { return mTitle; }
internal set { mTitle = value; }
}
public string Id
{
get { return mId; }
internal set { mId = value; }
}
public IScore PlayerScore
{
get { return mPlayerScore; }
internal set { mPlayerScore = value; }
}
public IScore[] Scores
{
get { return mScores.ToArray(); }
}
internal int AddScore(PlayGamesScore score)
{
mScores.Add(score);
return mScores.Count;
}
public ScorePageToken PrevPageToken
{
get { return mPrevPage; }
internal set { mPrevPage = value; }
}
public ScorePageToken NextPageToken
{
get { return mNextPage; }
internal set { mNextPage = value; }
}
public override string ToString()
{
return string.Format("[LeaderboardScoreData: mId={0}, " +
" mStatus={1}, mApproxCount={2}, mTitle={3}]",
mId, mStatus, mApproxCount, mTitle);
}
}
}
#endif
\ No newline at end of file
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment