导入SDK,修改声音图片和逻辑代码
|
@ -128,3 +128,5 @@ crashlytics-build.properties
|
|||
/Assets/MaxSdk/
|
||||
/Assets/MaxSdk.meta
|
||||
|
||||
/Assets/ExternalDependencyManager/
|
||||
/Assets/ExternalDependencyManager.meta
|
||||
|
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8178c2fbdd90d49d0967f50d4539fe97
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
After Width: | Height: | Size: 24 KiB |
|
@ -0,0 +1,92 @@
|
|||
fileFormatVersion: 2
|
||||
guid: c6ddd9be50e5248038a03de9a4466a17
|
||||
TextureImporter:
|
||||
internalIDToNameTable: []
|
||||
externalObjects: {}
|
||||
serializedVersion: 11
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
sRGBTexture: 1
|
||||
linearTexture: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapsPreserveCoverage: 0
|
||||
alphaTestReferenceValue: 0.5
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: 0.25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
streamingMipmaps: 0
|
||||
streamingMipmapsPriority: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 6
|
||||
cubemapConvolution: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: 1
|
||||
maxTextureSize: 2048
|
||||
textureSettings:
|
||||
serializedVersion: 2
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: 0
|
||||
wrapU: 1
|
||||
wrapV: 1
|
||||
wrapW: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 1
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: 0.5, y: 0.5}
|
||||
spritePixelsToUnits: 100
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spriteGenerateFallbackPhysicsShape: 1
|
||||
alphaUsage: 1
|
||||
alphaIsTransparency: 1
|
||||
spriteTessellationDetail: -1
|
||||
textureType: 8
|
||||
textureShape: 1
|
||||
singleChannelComponent: 0
|
||||
maxTextureSizeSet: 0
|
||||
compressionQualitySet: 0
|
||||
textureFormatSet: 0
|
||||
applyGammaDecoding: 0
|
||||
platformSettings:
|
||||
- serializedVersion: 3
|
||||
buildTarget: DefaultTexturePlatform
|
||||
maxTextureSize: 2048
|
||||
resizeAlgorithm: 0
|
||||
textureFormat: -1
|
||||
textureCompression: 1
|
||||
compressionQuality: 50
|
||||
crunchedCompression: 0
|
||||
allowsAlphaSplitting: 0
|
||||
overridden: 0
|
||||
androidETC2FallbackOverride: 0
|
||||
forceMaximumCompressionQuality_BC6H_BC7: 0
|
||||
spriteSheet:
|
||||
serializedVersion: 2
|
||||
sprites: []
|
||||
outline: []
|
||||
physicsShape: []
|
||||
bones: []
|
||||
spriteID: 5e97eb03825dee720800000000000000
|
||||
internalID: 0
|
||||
vertices: []
|
||||
indices:
|
||||
edges: []
|
||||
weights: []
|
||||
secondaryTextures: []
|
||||
spritePackingTag:
|
||||
pSDRemoveMatte: 0
|
||||
pSDShowRemoveMatteOption: 0
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cc1ac5344793546e087cd4ccb867a099
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 00fdedd853f9b4bd8b2bab71a5f31ac0
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,19 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN-->
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.unity3d.player"
|
||||
xmlns:tools="http://schemas.android.com/tools">
|
||||
<application>
|
||||
<activity android:name="com.unity3d.player.UnityPlayerActivity"
|
||||
android:theme="@style/UnityThemeSelector">
|
||||
<intent-filter>
|
||||
<action android:name="android.intent.action.MAIN" />
|
||||
<category android:name="android.intent.category.LAUNCHER" />
|
||||
</intent-filter>
|
||||
<meta-data android:name="unityplayer.UnityActivity" android:value="true" />
|
||||
</activity>
|
||||
</application>
|
||||
<uses-permission android:name="android.permission.VIBRATE" />
|
||||
<uses-permission android:name="com.google.android.gms.permission.AD_ID"/>
|
||||
</manifest>
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e0192aaba931b459d80bca85678f958f
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,18 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN-->
|
||||
<manifest
|
||||
xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.unity3d.player"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:installLocation="preferExternal">
|
||||
<supports-screens
|
||||
android:smallScreens="true"
|
||||
android:normalScreens="true"
|
||||
android:largeScreens="true"
|
||||
android:xlargeScreens="true"
|
||||
android:anyDensity="true"/>
|
||||
|
||||
<application android:networkSecurityConfig="@xml/network_security_config"
|
||||
android:label="@string/app_name"
|
||||
android:icon="@mipmap/app_icon"/>
|
||||
</manifest>
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 3d87280b481704a97aa535b847aaf582
|
||||
TextScriptImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cba6da959876b401786c14a995bec8ed
|
||||
folderAsset: yes
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,6 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com.applovin.mediation.unity.adapters.google">
|
||||
<application>
|
||||
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="ca-app-pub-3916046151571724~6560524678" />
|
||||
</application>
|
||||
</manifest>
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: cf61ddd9f6ac647d4accf8a1a1d2a690
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,2 @@
|
|||
target=android-28
|
||||
android.library=true
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ccb8f1abd84ed4fa497d596a0e65ca25
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,7 @@
|
|||
org.gradle.jvmargs=-Xmx**JVM_HEAP_SIZE**M
|
||||
org.gradle.parallel=true
|
||||
android.useAndroidX=true
|
||||
android.enableJetifier=true
|
||||
android.useNewApkCreator=false
|
||||
android.enableR8 = true
|
||||
**ADDITIONAL_PROPERTIES**
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 4957a197659864483a9839b8f5a93a32
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,64 @@
|
|||
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
|
||||
|
||||
apply plugin: 'com.android.application'
|
||||
|
||||
dependencies {
|
||||
implementation project(':unityLibrary')
|
||||
}
|
||||
|
||||
android {
|
||||
compileSdkVersion **APIVERSION**
|
||||
buildToolsVersion '**BUILDTOOLS**'
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
multiDexEnabled true
|
||||
minSdkVersion **MINSDKVERSION**
|
||||
targetSdkVersion **TARGETSDKVERSION**
|
||||
applicationId '**APPLICATIONID**'
|
||||
ndk {
|
||||
abiFilters **ABIFILTERS**
|
||||
}
|
||||
versionCode **VERSIONCODE**
|
||||
versionName '**VERSIONNAME**'
|
||||
}
|
||||
|
||||
aaptOptions {
|
||||
noCompress = ['.unity3d', '.ress', '.resource', '.obb'**STREAMING_ASSETS**]
|
||||
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
|
||||
}**SIGN**
|
||||
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
|
||||
buildTypes {
|
||||
debug {
|
||||
minifyEnabled **MINIFY_DEBUG**
|
||||
useProguard **PROGUARD_DEBUG**
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG**
|
||||
jniDebuggable true
|
||||
}
|
||||
release {
|
||||
minifyEnabled **MINIFY_RELEASE**
|
||||
useProguard **PROGUARD_RELEASE**
|
||||
proguardFiles getDefaultProguardFile('proguard-android.txt')**SIGNCONFIG**
|
||||
}
|
||||
}**PACKAGING_OPTIONS****SPLITS**
|
||||
**BUILT_APK_LOCATION**
|
||||
bundle {
|
||||
language {
|
||||
enableSplit = false
|
||||
}
|
||||
density {
|
||||
enableSplit = false
|
||||
}
|
||||
abi {
|
||||
enableSplit = true
|
||||
}
|
||||
}
|
||||
}**SPLITS_VERSION_CODE****LAUNCHER_SOURCE_BUILD_SETUP**
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 76fa4c95ef4fb4653aaadcdefce414f3
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,39 @@
|
|||
// GENERATED BY UNITY. REMOVE THIS COMMENT TO PREVENT OVERWRITING WHEN EXPORTING AGAIN
|
||||
|
||||
apply plugin: 'com.android.library'
|
||||
**APPLY_PLUGINS**
|
||||
|
||||
dependencies {
|
||||
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
||||
implementation 'com.android.support:multidex:1.0.3'
|
||||
**DEPS**}
|
||||
|
||||
android {
|
||||
compileSdkVersion **APIVERSION**
|
||||
buildToolsVersion '**BUILDTOOLS**'
|
||||
|
||||
compileOptions {
|
||||
sourceCompatibility JavaVersion.VERSION_1_8
|
||||
targetCompatibility JavaVersion.VERSION_1_8
|
||||
}
|
||||
|
||||
defaultConfig {
|
||||
minSdkVersion **MINSDKVERSION**
|
||||
targetSdkVersion **TARGETSDKVERSION**
|
||||
ndk {
|
||||
abiFilters **ABIFILTERS**
|
||||
}
|
||||
versionCode **VERSIONCODE**
|
||||
versionName '**VERSIONNAME**'
|
||||
consumerProguardFiles 'proguard-unity.txt'**USER_PROGUARD**
|
||||
}
|
||||
|
||||
lintOptions {
|
||||
abortOnError false
|
||||
}
|
||||
|
||||
aaptOptions {
|
||||
ignoreAssetsPattern = "!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~"
|
||||
}**PACKAGING_OPTIONS**
|
||||
}**REPOSITORIES****SOURCE_BUILD_SETUP**
|
||||
**EXTERNAL_SOURCES**
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fd262932e6bc541748016095db13f618
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 7e62f94aca4f342d1904366f232618dc
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 04db98fdc810a459b9d5914c291fd04f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,24 @@
|
|||
//
|
||||
// UUIDManager.h
|
||||
// Unity-iPhone
|
||||
//
|
||||
// Created by fotoable on 2020/6/29.
|
||||
//
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
//#import "JKRBDMuteSwitch/RBDMuteSwitch.h"
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface NativeTool : NSObject//<RBDMuteSwitchDelegate>
|
||||
|
||||
typedef void (^BoolResultDel)(BOOL);
|
||||
|
||||
+(NativeTool *) getInstance;
|
||||
|
||||
-(void)shake:(int)pType Intensity:(float)pIntensity;
|
||||
-(void)shareWithTitle:(NSString *)pTitle Url:(NSString *)pUrl ResultCallback:(BoolResultDel)pResultDel;
|
||||
|
||||
@end
|
||||
|
||||
NS_ASSUME_NONNULL_END
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 49e8ac31aa2144f2cb71b482f0c6b6fd
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
AddToEmbeddedBinaries: false
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,99 @@
|
|||
//
|
||||
// UUIDManager.m
|
||||
// Unity-iPhone
|
||||
//
|
||||
// Created by fotoable on 2020/6/29.
|
||||
//
|
||||
|
||||
#import<AudioToolbox/AudioToolbox.h>
|
||||
#import "NativeTool.h"
|
||||
//#import "JKRBDMuteSwitch/RBDMuteSwitch.h"
|
||||
|
||||
@implementation NativeTool
|
||||
|
||||
BoolResultDel resultDel;
|
||||
|
||||
static NativeTool *mInstance;
|
||||
|
||||
+(NativeTool *)getInstance
|
||||
{
|
||||
if (mInstance == nil)
|
||||
{
|
||||
mInstance = [[NativeTool alloc] init];
|
||||
}
|
||||
return mInstance;
|
||||
}
|
||||
|
||||
-(void)shake:(int)pType Intensity:(float)pIntensity
|
||||
{
|
||||
UIImpactFeedbackStyle tStyle = UIImpactFeedbackStyleLight;
|
||||
if(pType == 1)
|
||||
{
|
||||
tStyle = UIImpactFeedbackStyleMedium;
|
||||
}
|
||||
else if(pType == 2)
|
||||
{
|
||||
tStyle = UIImpactFeedbackStyleHeavy;
|
||||
}
|
||||
|
||||
UIImpactFeedbackGenerator *generator = [[UIImpactFeedbackGenerator alloc] initWithStyle:tStyle];
|
||||
if (@available(iOS 13.0, *))
|
||||
{
|
||||
[generator impactOccurredWithIntensity:pIntensity];
|
||||
}
|
||||
else
|
||||
{
|
||||
[generator impactOccurred];
|
||||
}
|
||||
}
|
||||
|
||||
-(void)shareWithTitle:(NSString *)pTitle Url:(NSString *)pUrl ResultCallback:(nonnull BoolResultDel)pResultDel
|
||||
{
|
||||
NSMutableArray *sharingItems = [NSMutableArray new];
|
||||
if (pTitle && pTitle.length > 0)
|
||||
{
|
||||
[sharingItems addObject:pTitle];
|
||||
}
|
||||
// if (imageDataString && imageDataString.length > 0)
|
||||
// {
|
||||
// NSData *imageData = [[NSData alloc] initWithBase64EncodedString:imageDataString options:0];
|
||||
// UIImage *image = [[UIImage alloc] initWithData:imageData];
|
||||
//
|
||||
// [sharingItems addObject:image];
|
||||
// }
|
||||
if (pUrl && pUrl.length > 0)
|
||||
{
|
||||
NSURL *shareUrl = [NSURL URLWithString:pUrl];
|
||||
[sharingItems addObject:shareUrl];
|
||||
}
|
||||
|
||||
UIActivityViewController *activityViewController = [[UIActivityViewController alloc] initWithActivityItems:sharingItems applicationActivities:nil];
|
||||
activityViewController.popoverPresentationController.sourceView = UnityGetGLViewController().view;
|
||||
activityViewController.popoverPresentationController.sourceRect = CGRectMake(UnityGetGLViewController().view.frame.size.width/2, UnityGetGLViewController().view.frame.size.height/4, 0, 0);
|
||||
|
||||
activityViewController.modalInPopover = YES;
|
||||
|
||||
//回调
|
||||
if ([UIDevice currentDevice].systemVersion.floatValue >= 8.0)
|
||||
{
|
||||
// ios8.0 之后用此方法回调
|
||||
UIActivityViewControllerCompletionWithItemsHandler itemsBlock = ^(UIActivityType __nullable activityType, BOOL completed, NSArray * __nullable returnedItems, NSError * __nullable activityError)
|
||||
{
|
||||
if(pResultDel != NULL) pResultDel(completed);
|
||||
};
|
||||
activityViewController.completionWithItemsHandler = itemsBlock;
|
||||
}
|
||||
else
|
||||
{
|
||||
// ios8.0 之前用此方法回调
|
||||
UIActivityViewControllerCompletionHandler handlerBlock = ^(UIActivityType __nullable activityType, BOOL completed)
|
||||
{
|
||||
if(pResultDel != NULL) pResultDel(completed);
|
||||
};
|
||||
activityViewController.completionHandler = handlerBlock;
|
||||
}
|
||||
|
||||
[UnityGetGLViewController() presentViewController:activityViewController animated:YES completion:nil];
|
||||
}
|
||||
|
||||
@end
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: d5be5d67851c94fbfb89f43854469207
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
AddToEmbeddedBinaries: false
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,52 @@
|
|||
//
|
||||
// ZdkBridge.m
|
||||
// Unity-iPhone
|
||||
//
|
||||
// Created by PhantomJ on 2020/1/2.
|
||||
//
|
||||
|
||||
#import "NativeTool.h"
|
||||
#import "UnityAppController.h"
|
||||
|
||||
#import <Foundation/Foundation.h>
|
||||
|
||||
@interface NativeTool (CPart)
|
||||
{
|
||||
|
||||
}
|
||||
@end
|
||||
|
||||
@implementation NativeTool (CPart)
|
||||
|
||||
extern "C"
|
||||
{
|
||||
typedef void (*BoolResultDelegate)(bool pResult);
|
||||
|
||||
NSString* cStr2NSStr(const char* string)
|
||||
{
|
||||
NSString* tNSStr = [NSString stringWithUTF8String:string];
|
||||
|
||||
return tNSStr;
|
||||
}
|
||||
|
||||
const void mShake(int pType,float pIntensity)
|
||||
{
|
||||
[[NativeTool getInstance] shake:pType Intensity:pIntensity];
|
||||
}
|
||||
|
||||
const void mShare(char* pTitle,char* pUrl,BoolResultDelegate pResultCallback)
|
||||
{
|
||||
NSString* tTitle = [NSString stringWithUTF8String:pTitle];
|
||||
NSString* tUrl = [NSString stringWithUTF8String:pUrl];
|
||||
|
||||
[[NativeTool getInstance] shareWithTitle:tTitle Url:tUrl ResultCallback:^(BOOL pShareSucceed)
|
||||
{
|
||||
if(pResultCallback != NULL)
|
||||
{
|
||||
pResultCallback(pShareSucceed);
|
||||
}
|
||||
}];
|
||||
}
|
||||
}
|
||||
|
||||
@end
|
|
@ -0,0 +1,33 @@
|
|||
fileFormatVersion: 2
|
||||
guid: bf5a62c4551024959a84a28b7e4fcde0
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
- first:
|
||||
iPhone: iOS
|
||||
second:
|
||||
enabled: 1
|
||||
settings:
|
||||
AddToEmbeddedBinaries: false
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 34eb3a4bd8e69426aa840c7fea9b73f2
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 37bfd92a04d0a48ceaf2e9e784a6d59a
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1857a5c95790a4603b443911d9111458
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
userData:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 03106b2820a7543ccbfec9aa2ae05be7
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
externalObjects: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,499 @@
|
|||
using UnityEditor;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
public class GA_AssetPostprocessor : AssetPostprocessor
|
||||
{
|
||||
private const string AssetsPrependPath = GA_SettingsInspector.IsCustomPackage ? "Packages/com.gameanalytics.sdk/Runtime" : "Assets/GameAnalytics";
|
||||
static void OnPostprocessAllAssets(string[] importedAssets, string[] deletedAssets, string[] movedAssets, string[] movedFromAssetPaths)
|
||||
{
|
||||
#region iOS and tvOS
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/tvOS/GameAnalyticsTVOS.h") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.tvOS) || importer.GetCompatibleWithPlatform(BuildTarget.iOS)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/tvOS/GameAnalyticsTVOSUnity.m") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.tvOS) || importer.GetCompatibleWithPlatform(BuildTarget.iOS)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/tvOS/libGameAnalyticsTVOS.a") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.tvOS) || importer.GetCompatibleWithPlatform(BuildTarget.iOS)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
#endregion // iOS and tvOS
|
||||
#region General
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/GameAnalytics.dll") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinux64) ||
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinux) ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal) ||
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneOSX) ||
|
||||
#else
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel) ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64) ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal) ||
|
||||
#endif
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneWindows) ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneWindows64) ||
|
||||
importer.GetCompatibleWithPlatform(BuildTarget.WSAPlayer)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, true);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, true);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, true);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Tizen, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
#endregion // General
|
||||
#region Standalone
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/Windows/x86/sqlite3.dll") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.StandaloneWindows)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/Windows/x64/sqlite3.dll") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.StandaloneWindows64)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/Linux/sqlite3.so") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinux64)
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
|| !importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinux) ||
|
||||
!importer.GetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal)
|
||||
#endif
|
||||
))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, true);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, true);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
#endregion // Standalone
|
||||
#region WebGL
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WebGL/GameAnalytics.WebGL.dll") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WebGL)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WebGL/HandleIO.jslib") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WebGL)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WebGL/Mono.Data.Sqlite.dll") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WebGL)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WebGL/sqlite.c") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WebGL)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WebGL/sqlite.h") as PluginImporter;
|
||||
if(importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WebGL)))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, true);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, false);
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
#endregion // WebGL
|
||||
#region WSA
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WSA/x86/GameAnalytics.UWP.dll") as PluginImporter;
|
||||
if (importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WSAPlayer) ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "SDK").Equals("UWP") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "CPU").Equals("X86") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend").Equals("Il2Cpp")))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, true);
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "SDK", "UWP");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "CPU", "X86");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend", "Il2Cpp");
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WSA/x64/GameAnalytics.UWP.dll") as PluginImporter;
|
||||
if (importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WSAPlayer) ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "SDK").Equals("UWP") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "CPU").Equals("X64") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend").Equals("Il2Cpp")))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, true);
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "SDK", "UWP");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "CPU", "X64");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend", "Il2Cpp");
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
{
|
||||
PluginImporter importer = AssetImporter.GetAtPath(AssetsPrependPath + "/Plugins/WSA/ARM/GameAnalytics.UWP.dll") as PluginImporter;
|
||||
if (importer != null && (importer.GetCompatibleWithAnyPlatform() || !importer.GetCompatibleWithPlatform(BuildTarget.WSAPlayer) ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "SDK").Equals("UWP") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "CPU").Equals("ARM") ||
|
||||
!importer.GetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend").Equals("Il2Cpp")))
|
||||
{
|
||||
importer.SetCompatibleWithAnyPlatform(false);
|
||||
importer.SetCompatibleWithEditor(false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.Android, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux64, false);
|
||||
#if UNITY_2019_2_OR_NEWER
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinux, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneLinuxUniversal, false);
|
||||
#endif
|
||||
#if UNITY_2017_3_OR_NEWER
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSX, false);
|
||||
#else
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXIntel64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneOSXUniversal, false);
|
||||
#endif
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.StandaloneWindows64, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.iOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.tvOS, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WebGL, false);
|
||||
importer.SetCompatibleWithPlatform(BuildTarget.WSAPlayer, true);
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "SDK", "UWP");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "CPU", "ARM");
|
||||
importer.SetPlatformData(BuildTarget.WSAPlayer, "ScriptingBackend", "Il2Cpp");
|
||||
importer.SaveAndReimport();
|
||||
}
|
||||
}
|
||||
#endregion // WSA
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a2403619fc556407983e282336344f15
|
||||
timeCreated: 1457357714
|
||||
licenseType: Pro
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,18 @@
|
|||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
public class GA_Autorun : AssetPostprocessor
|
||||
{
|
||||
static void OnPostprocessAllAssets ( string[] importedAssets,string[] deletedAssets,string[] movedAssets,string[] movedFromAssetPaths)
|
||||
{
|
||||
string[] splitPath = Application.dataPath.Split('/');
|
||||
|
||||
if (!splitPath[splitPath.Length - 2].Equals("ga_unity_wrapper copy"))
|
||||
{
|
||||
GA_SettingsInspector.CheckForUpdates();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0a3d477cdf26e4516ab204fc8fd9a841
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,64 @@
|
|||
using UnityEngine;
|
||||
using System.Collections;
|
||||
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using UnityEditor;
|
||||
|
||||
namespace GameAnalyticsSDK
|
||||
{
|
||||
//Inspired from answer on answers.unity3d.com: http://answers.unity3d.com/questions/221651/yielding-with-www-in-editor.html
|
||||
public static class GA_ContinuationManager
|
||||
{
|
||||
private class EditorCoroutine
|
||||
{
|
||||
public EditorCoroutine(IEnumerator routine, Func<bool> done)
|
||||
{
|
||||
Routine = routine;
|
||||
Done = done;
|
||||
}
|
||||
public IEnumerator Routine { get; private set; }
|
||||
public Func<bool> Done {get; private set;}
|
||||
public Action ContinueWith { get; private set; }
|
||||
}
|
||||
|
||||
private static readonly List<EditorCoroutine> jobs = new List<EditorCoroutine>();
|
||||
|
||||
public static void StartCoroutine(IEnumerator routine,Func<bool> done)
|
||||
{
|
||||
if (!jobs.Any())
|
||||
{
|
||||
EditorApplication.update += Update;
|
||||
}
|
||||
jobs.Add(new EditorCoroutine(routine,done));
|
||||
}
|
||||
|
||||
private static void Update()
|
||||
{
|
||||
for (int i = jobs.Count-1; i>=0; --i)
|
||||
{
|
||||
var jobIt = jobs[i];
|
||||
#if UNITY_2017_1_OR_NEWER
|
||||
if (!jobIt.Routine.MoveNext()) //movenext is false if coroutine completed
|
||||
{
|
||||
jobs.RemoveAt(i);
|
||||
}
|
||||
#else
|
||||
if (jobIt.Done())
|
||||
{
|
||||
if (!jobIt.Routine.MoveNext()) //movenext is false if coroutine completed
|
||||
{
|
||||
Debug.Log("GA_ContinuationManager.Update: Routine finished");
|
||||
jobs.RemoveAt(i);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
if (!jobs.Any())
|
||||
{
|
||||
EditorApplication.update -= Update;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 546155fc8c8e946beb7aa56aa713067c
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,76 @@
|
|||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
public static class GA_EditorUtilities {
|
||||
|
||||
private const string XCaller = "unity";
|
||||
private const string XCallerKey = "X-Caller";
|
||||
private const string XCallerVersionKey = "X-Caller-Version";
|
||||
private const string XCallerPlatformKey = "X-Caller-Platform";
|
||||
private const string XAuthorizationKey = "X-Authorization";
|
||||
|
||||
private static string XCallerVersion
|
||||
{
|
||||
get {
|
||||
return Application.unityVersion;
|
||||
}
|
||||
}
|
||||
|
||||
private static string XCallerPlatform
|
||||
{
|
||||
get {
|
||||
EPlatform platform = EPlatform.Windows;
|
||||
|
||||
PlatformID platformId = Environment.OSVersion.Platform;
|
||||
|
||||
if (platformId == PlatformID.MacOSX) {
|
||||
platform = EPlatform.Mac;
|
||||
}
|
||||
else if (platformId == PlatformID.Unix) {
|
||||
platform = EPlatform.Linux;
|
||||
}
|
||||
else if (platformId == PlatformID.Win32NT ||
|
||||
platformId == PlatformID.Win32S ||
|
||||
platformId == PlatformID.Win32Windows ||
|
||||
platformId == PlatformID.WinCE) {
|
||||
|
||||
platform = EPlatform.Windows;
|
||||
}
|
||||
|
||||
return platform.ToString ();
|
||||
}
|
||||
}
|
||||
|
||||
public static Dictionary<string, string> WWWHeaders()
|
||||
{
|
||||
Dictionary<string, string> result = new Dictionary<string, string> ();
|
||||
result [XCallerKey] = XCaller;
|
||||
result [XCallerVersionKey] = XCallerVersion;
|
||||
result [XCallerPlatformKey] = XCallerPlatform;
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
public static Dictionary<string, string> WWWHeadersWithAuthorization(string token)
|
||||
{
|
||||
Dictionary<string, string> result = new Dictionary<string, string> ();
|
||||
result [XCallerKey] = XCaller;
|
||||
result [XCallerVersionKey] = XCallerVersion;
|
||||
result [XCallerPlatformKey] = XCallerPlatform;
|
||||
result [XAuthorizationKey] = token;
|
||||
|
||||
return result;
|
||||
}
|
||||
}
|
||||
|
||||
public enum EPlatform
|
||||
{
|
||||
Windows,
|
||||
Mac,
|
||||
Linux
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
fileFormatVersion: 2
|
||||
guid: dfd276755e3d24398b20a727ba63f40a
|
||||
timeCreated: 1433250864
|
||||
licenseType: Free
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,124 @@
|
|||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.IO;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
public static class GA_Menu
|
||||
{
|
||||
[MenuItem ("Window/GameAnalytics/Select Settings", false, 0)]
|
||||
static void SelectGASettings ()
|
||||
{
|
||||
Selection.activeObject = GameAnalytics.SettingsGA;
|
||||
}
|
||||
|
||||
[MenuItem ("Window/GameAnalytics/Setup Guide", false, 100)]
|
||||
static void SetupAndTour ()
|
||||
{
|
||||
GA_SignUp signup = ScriptableObject.CreateInstance<GA_SignUp> ();
|
||||
signup.maxSize = new Vector2(640, 600);
|
||||
signup.minSize = new Vector2(640, 600);
|
||||
|
||||
signup.titleContent = new GUIContent ("GameAnalytics - Sign up for FREE");
|
||||
signup.ShowUtility ();
|
||||
signup.Opened();
|
||||
|
||||
signup.SwitchToGuideStep();
|
||||
}
|
||||
|
||||
[MenuItem ("Window/GameAnalytics/Create GameAnalytics Object", false, 200)]
|
||||
static void AddGASystemTracker ()
|
||||
{
|
||||
if (Object.FindObjectOfType (typeof(GameAnalytics)) == null)
|
||||
{
|
||||
GameObject go = PrefabUtility.InstantiatePrefab(AssetDatabase.LoadAssetAtPath(GameAnalytics.WhereIs("GameAnalytics.prefab", "Prefab"), typeof(GameObject))) as GameObject;
|
||||
go.name = "GameAnalytics";
|
||||
Selection.activeObject = go;
|
||||
Undo.RegisterCreatedObjectUndo(go, "Created GameAnalytics Object");
|
||||
}
|
||||
else
|
||||
{
|
||||
Debug.LogWarning ("A GameAnalytics object already exists in this scene - you should never have more than one per scene!");
|
||||
}
|
||||
}
|
||||
|
||||
[MenuItem ("Window/GameAnalytics/PlayMaker/Toggle Scripts", false, 400)]
|
||||
static void TogglePlayMaker ()
|
||||
{
|
||||
bool enabled = false;
|
||||
bool fail = false;
|
||||
|
||||
string searchText = "#if false";
|
||||
string replaceText = "#if true";
|
||||
|
||||
string[] _files = new string[] {
|
||||
"/GameAnalytics/Plugins/Playmaker/GAInitialize.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/GetABTestingId.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/GetABTestingVariantId.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/GetRemoteConfigsValueAsString.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/IsRemoteConfigsReady.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendAdEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendBusinessEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendDesignEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendErrorEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendProgressionEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SendResourceEvent.cs",
|
||||
"/GameAnalytics/Plugins/Playmaker/SetCustomDimension.cs",
|
||||
"/GameAnalytics/Editor/Playmaker/SendProgressionEventActionEditor.cs",
|
||||
"/GameAnalytics/Editor/Playmaker/SendResourceEventActionEditor.cs"
|
||||
};
|
||||
|
||||
foreach(string _file in _files)
|
||||
{
|
||||
try {
|
||||
enabled = ReplaceInFile (Application.dataPath + _file, searchText, replaceText);
|
||||
} catch {
|
||||
Debug.Log("Failed to toggle "+_file);
|
||||
fail = true;
|
||||
}
|
||||
}
|
||||
|
||||
AssetDatabase.Refresh();
|
||||
|
||||
if (fail)
|
||||
{
|
||||
PlayMakerPresenceCheck.ResetPrefs();
|
||||
Debug.Log("Failed to toggle PlayMaker Scripts.");
|
||||
}else if (enabled)
|
||||
{
|
||||
Debug.Log("Enabled PlayMaker Scripts.");
|
||||
}else
|
||||
{
|
||||
PlayMakerPresenceCheck.ResetPrefs();
|
||||
Debug.Log("Disabled PlayMaker Scripts.");
|
||||
}
|
||||
}
|
||||
|
||||
public static bool ReplaceInFile (string filePath, string searchText, string replaceText)
|
||||
{
|
||||
bool enabled = false;
|
||||
|
||||
StreamReader reader = new StreamReader (filePath);
|
||||
string content = reader.ReadToEnd ();
|
||||
reader.Close ();
|
||||
|
||||
if (content.StartsWith(searchText))
|
||||
{
|
||||
enabled = true;
|
||||
content = Regex.Replace (content, searchText, replaceText);
|
||||
}
|
||||
else
|
||||
{
|
||||
enabled = false;
|
||||
content = Regex.Replace (content, replaceText, searchText);
|
||||
}
|
||||
|
||||
StreamWriter writer = new StreamWriter (filePath);
|
||||
writer.Write (content);
|
||||
writer.Close ();
|
||||
|
||||
return enabled;
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 406a6696e05cc447c8d6a01396d21b90
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,269 @@
|
|||
using UnityEditor.Callbacks;
|
||||
using UnityEditor;
|
||||
using System.IO;
|
||||
using System;
|
||||
using System.Linq;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
public class GA_PostprocessBuild : UnityEditor.Build.IPreprocessBuildWithReport
|
||||
#else
|
||||
public class GA_PostprocessBuild
|
||||
#endif
|
||||
{
|
||||
private static string gameanalytics_mopub = "gameanalytics_mopub_enabled";
|
||||
private static string gameanalytics_fyber = "gameanalytics_fyber_enabled";
|
||||
private static string gameanalytics_ironsource = "gameanalytics_ironsource_enabled";
|
||||
private static string gameanalytics_topon = "gameanalytics_topon_enabled";
|
||||
private static string gameanalytics_max = "gameanalytics_max_enabled";
|
||||
private static string gameanalytics_aequus = "gameanalytics_aequus_enabled";
|
||||
private static string gameanalytics_hyperbid = "gameanalytics_hyperbid_enabled";
|
||||
|
||||
#if UNITY_2018_1_OR_NEWER
|
||||
public int callbackOrder
|
||||
{
|
||||
get { return 0; }
|
||||
}
|
||||
|
||||
public void OnPreprocessBuild(UnityEditor.Build.Reporting.BuildReport report)
|
||||
{
|
||||
//Update3rdPartyIntegrations();
|
||||
}
|
||||
#endif
|
||||
|
||||
[DidReloadScripts]
|
||||
private static void OnScriptsReloaded()
|
||||
{
|
||||
//Update3rdPartyIntegrations();
|
||||
}
|
||||
|
||||
private static void Update3rdPartyIntegrations()
|
||||
{
|
||||
//UpdateMoPub();
|
||||
//UpdateFyber();
|
||||
//UpdateIronSource();
|
||||
//UpdateTopOn();
|
||||
//UpdateMax();
|
||||
//UpdateAequus();
|
||||
//UpdateHyperBid();
|
||||
}
|
||||
|
||||
private static void UpdateDefines(string entry, bool enabled, BuildTargetGroup[] groups)
|
||||
{
|
||||
foreach (var group in groups)
|
||||
{
|
||||
var defines = new List<string>(PlayerSettings.GetScriptingDefineSymbolsForGroup(group).Split(new[] { ';' }, StringSplitOptions.RemoveEmptyEntries));
|
||||
var edited = false;
|
||||
if (enabled && !defines.Contains(entry))
|
||||
{
|
||||
defines.Add(entry);
|
||||
edited = true;
|
||||
}
|
||||
else if (!enabled && defines.Contains(entry))
|
||||
{
|
||||
defines.Remove(entry);
|
||||
edited = true;
|
||||
}
|
||||
if (edited) {
|
||||
PlayerSettings.SetScriptingDefineSymbolsForGroup(group, string.Join(";", defines.ToArray()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#region 3rd Party Lib Detection
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_mopub_enabled` to true if MoPub classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateMoPub()
|
||||
{
|
||||
var mopubTypes = new string[] { "MoPubBase", "MoPubManager" };
|
||||
if (TypeExists(mopubTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_mopub, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_mopub, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_fyber_enabled` to true if Fyber classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateFyber()
|
||||
{
|
||||
var fyberTypes = new string[] { "Fyber.Interstitial", "Fyber.Banner", "Fyber.Rewarded" };
|
||||
if (TypeExists(fyberTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_fyber, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_fyber, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_ironsource_enabled` to true if IronSource classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateIronSource()
|
||||
{
|
||||
var ironSourceTypes = new string[] { "IronSourceEvents", "IronSource" };
|
||||
if (TypeExists(ironSourceTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_ironsource, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_ironsource, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_topon_enabled` to true if TopOn classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateTopOn()
|
||||
{
|
||||
var topOnTypes = new string[] { "AnyThinkAds.Api.ATBannerAd", "AnyThinkAds.Api.ATInterstitialAd", "AnyThinkAds.Api.ATRewardedVideo", "AnyThinkAds.Api.ATNativeAd" };
|
||||
if (TypeExists(topOnTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_topon, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_topon, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_max_enabled` to true if Max classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateMax()
|
||||
{
|
||||
var maxTypes = new string[] { "MaxSdkCallbacks", "MaxSdk", "MaxSdkBase.AdInfo" };
|
||||
if (TypeExists(maxTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_max, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_max, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_aequus_enabled` to true if Aequus classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateAequus()
|
||||
{
|
||||
var aequusTypes = new string[] { "Mobi.Aequus.Sdk.Aequus", "Mobi.Aequus.Sdk.AequusILRDListener", "Mobi.Aequus.Sdk.ImpressionData" };
|
||||
if (TypeExists(aequusTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_aequus, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_aequus, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Sets the scripting define symbol `gameanalytics_hyperbid_enabled` to true if HyperBid classes are detected within the Unity project
|
||||
/// </summary>
|
||||
private static void UpdateHyperBid()
|
||||
{
|
||||
var topOnTypes = new string[] { "HyperBid.Api.HBBannerAd", "HyperBid.Api.HBInterstitialAd", "HyperBid.Api.HBRewardedVideo", "HyperBid.Api.HBNativeAd" };
|
||||
if (TypeExists(topOnTypes))
|
||||
{
|
||||
UpdateDefines(gameanalytics_hyperbid, true, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
else
|
||||
{
|
||||
UpdateDefines(gameanalytics_hyperbid, false, new BuildTargetGroup[] { BuildTargetGroup.iOS, BuildTargetGroup.Android });
|
||||
}
|
||||
}
|
||||
|
||||
private static bool TypeExists(params string[] types)
|
||||
{
|
||||
if (types == null || types.Length == 0)
|
||||
return false;
|
||||
|
||||
var assemblies = AppDomain.CurrentDomain.GetAssemblies();
|
||||
foreach (var assembly in assemblies)
|
||||
{
|
||||
if (types.Any(type => assembly.GetType(type) != null))
|
||||
return true;
|
||||
}
|
||||
|
||||
return false;
|
||||
}
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
[PostProcessBuild]
|
||||
public static void OnPostprocessBuild(BuildTarget buildTarget, string path)
|
||||
{
|
||||
if (buildTarget == BuildTarget.iOS || buildTarget == BuildTarget.tvOS)
|
||||
{
|
||||
#if UNITY_IOS || UNITY_TVOS
|
||||
string projPath = UnityEditor.iOS.Xcode.PBXProject.GetPBXProjectPath(path);
|
||||
|
||||
UnityEditor.iOS.Xcode.PBXProject proj = new UnityEditor.iOS.Xcode.PBXProject();
|
||||
proj.ReadFromString(File.ReadAllText(projPath));
|
||||
|
||||
#if UNITY_2019_3_OR_NEWER
|
||||
string target = proj.GetUnityMainTargetGuid();
|
||||
#else
|
||||
string targetName = UnityEditor.iOS.Xcode.PBXProject.GetUnityTargetName();
|
||||
string target = proj.TargetGuidByName(targetName);
|
||||
#endif
|
||||
|
||||
proj.AddFileToBuild(target, proj.AddFile("usr/lib/libsqlite3.dylib", "Frameworks/libsqlite3.dylib", UnityEditor.iOS.Xcode.PBXSourceTree.Sdk));
|
||||
proj.AddFileToBuild(target, proj.AddFile("usr/lib/libz.dylib", "Frameworks/libz.dylib", UnityEditor.iOS.Xcode.PBXSourceTree.Sdk));
|
||||
proj.AddFrameworkToProject(target, "AdSupport.framework", false);
|
||||
proj.AddFrameworkToProject(target, "AppTrackingTransparency.framework", true);
|
||||
//proj.SetBuildProperty(target, "ENABLE_BITCODE", "YES");
|
||||
#if gameanalytics_topon_enabled
|
||||
string toponSubPath = "Libraries/GameAnalytics/Plugins/iOS/GameAnalyticsTopOnHelper.m";
|
||||
string[] topOnGuids = AssetDatabase.FindAssets("GameAnalyticsTopOnHelper", null);
|
||||
if (topOnGuids.Length > 0)
|
||||
{
|
||||
string[] p = AssetDatabase.GUIDToAssetPath(topOnGuids[0]).Split(new char[] { '/' }, 2);
|
||||
if(p.Length > 1)
|
||||
{
|
||||
toponSubPath = "Libraries/" + p[1];
|
||||
}
|
||||
}
|
||||
string toponHelperFilePath = Path.Combine(path, toponSubPath);
|
||||
string topOncontents = File.ReadAllText(toponHelperFilePath);
|
||||
topOncontents = topOncontents.Replace("#if gameanalytics_topon_enabled", "").Replace("#endif", "");
|
||||
File.WriteAllText(toponHelperFilePath, topOncontents);
|
||||
#endif
|
||||
#if gameanalytics_hyperbid_enabled
|
||||
string hyperbidSubPath = "Libraries/GameAnalytics/Plugins/iOS/GameAnalyticsHyperBidHelper.m";
|
||||
string[] hyperBidGuids = AssetDatabase.FindAssets("GameAnalyticsHyperBidHelper", null);
|
||||
if (hyperBidGuids.Length > 0)
|
||||
{
|
||||
string[] p = AssetDatabase.GUIDToAssetPath(hyperBidGuids[0]).Split(new char[] { '/' }, 2);
|
||||
if(p.Length > 1)
|
||||
{
|
||||
hyperbidSubPath = "Libraries/" + p[1];
|
||||
}
|
||||
}
|
||||
string hyperbidHelperFilePath = Path.Combine(path, hyperbidSubPath);
|
||||
string hyperbidContents = File.ReadAllText(hyperbidHelperFilePath);
|
||||
hyperbidContents = hyperbidContents.Replace("#if gameanalytics_hyperbid_enabled", "").Replace("#endif", "");
|
||||
File.WriteAllText(hyperbidHelperFilePath, hyperbidContents);
|
||||
#endif
|
||||
|
||||
File.WriteAllText(projPath, proj.WriteToString());
|
||||
#endif
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 19da6243a1a7449a585f5f945b7a1f94
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 771d45ab6687246f4ac00b5bf537e520
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8badeee0f8f58488c94706222ee1e6fb
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,113 @@
|
|||
using UnityEngine;
|
||||
using System.Collections;
|
||||
using UnityEditor;
|
||||
using System.Collections.Generic;
|
||||
using GameAnalyticsSDK.Setup;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
public class GA_UpdateWindow : EditorWindow
|
||||
{
|
||||
private GUIContent _close = new GUIContent("Skip", "Skip this version.");
|
||||
private GUIContent _download = new GUIContent("Download Page", "Open the GameAnalytics download support page.");
|
||||
//private GUIContent _assetStore = new GUIContent("AssetStore", "Open Unity Asset Store page in a browser window.");
|
||||
|
||||
private Vector2 _scrollPos;
|
||||
|
||||
void OnGUI ()
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
GUILayout.Label(GameAnalytics.SettingsGA.Logo);
|
||||
|
||||
GUILayout.BeginVertical();
|
||||
|
||||
GUILayout.Label("A new version of the GameAnalytics Unity SDK is available");
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
GUILayout.Label("Currently installed version: " + GameAnalyticsSDK.Setup.Settings.VERSION);
|
||||
GUILayout.Label("Latest version: " + GameAnalytics.SettingsGA.NewVersion);
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
GUILayout.Label("Changes:");
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
//EditorGUILayout.BeginVertical();
|
||||
|
||||
_scrollPos = EditorGUILayout.BeginScrollView(_scrollPos, GUILayout.Width (320), GUILayout.Height (160));
|
||||
GUILayout.Label(new GUIContent(GameAnalytics.SettingsGA.Changes), EditorStyles.wordWrappedLabel);
|
||||
EditorGUILayout.EndScrollView();
|
||||
|
||||
//EditorGUILayout.EndVertical();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
GUILayout.Label("You can download the latest version from the GameAnalytics download support page.", EditorStyles.wordWrappedMiniLabel, GUILayout.MaxWidth(320));
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
/*if (GUILayout.Button(_assetStore, GUILayout.MaxWidth(115)))
|
||||
{
|
||||
Application.OpenURL("https://www.assetstore.unity3d.com/#/content/6755");
|
||||
}*/
|
||||
|
||||
if (GUILayout.Button(_download, GUILayout.MaxWidth(115)))
|
||||
{
|
||||
Application.OpenURL("http://download.gameanalytics.com/unity/GA_SDK_UNITY.unitypackage");
|
||||
}
|
||||
|
||||
if (GUILayout.Button(_close, GUILayout.MaxWidth(72)))
|
||||
{
|
||||
EditorPrefs.SetString("ga_skip_version"+"-"+Application.dataPath, GameAnalytics.SettingsGA.NewVersion);
|
||||
Close();
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
GUILayout.EndVertical();
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
public static void SetNewVersion (string newVersion)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(newVersion))
|
||||
{
|
||||
GameAnalytics.SettingsGA.NewVersion = newVersion;
|
||||
}
|
||||
}
|
||||
|
||||
public static string GetNewVersion ()
|
||||
{
|
||||
return GameAnalytics.SettingsGA.NewVersion;
|
||||
}
|
||||
|
||||
public static void SetChanges (string changes)
|
||||
{
|
||||
if (!string.IsNullOrEmpty(changes))
|
||||
{
|
||||
GameAnalytics.SettingsGA.Changes = changes;
|
||||
}
|
||||
}
|
||||
|
||||
public static string UpdateStatus (string currentVersion)
|
||||
{
|
||||
try {
|
||||
int newV = int.Parse(GameAnalytics.SettingsGA.NewVersion.Replace(".",""));
|
||||
int oldV = int.Parse(currentVersion.Replace(".",""));
|
||||
|
||||
if (newV > oldV)
|
||||
return "New update";
|
||||
else
|
||||
return "";
|
||||
} catch {
|
||||
return "";
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: b025a92f1fe974e5faf57688a659013a
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,66 @@
|
|||
/// <summary>
|
||||
/// The inspector for the GA prefab.
|
||||
/// </summary>
|
||||
|
||||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System.Collections.Generic;
|
||||
using System.Reflection.Emit;
|
||||
using System.Reflection;
|
||||
using System;
|
||||
using GameAnalyticsSDK.Setup;
|
||||
|
||||
namespace GameAnalyticsSDK.Editor
|
||||
{
|
||||
[CustomEditor(typeof(GameAnalytics))]
|
||||
public class GameAnalyticsInspector : UnityEditor.Editor
|
||||
{
|
||||
private GUIContent _documentationLink = new GUIContent("Help", "Opens the GameAnalytics Unity SDK documentation page in your browser.");
|
||||
//private GUIContent _guiAllowScreenshot = new GUIContent("Take Screenshot", "If enabled the player will be able to include a screenshot when submitting feedback and bug reports (This feature is not yet fully implemented).");
|
||||
|
||||
override public void OnInspectorGUI ()
|
||||
{
|
||||
GameAnalytics ga = target as GameAnalytics;
|
||||
|
||||
EditorGUI.indentLevel = 1;
|
||||
EditorGUILayout.Space();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
|
||||
GUILayout.Label("GameAnalytics Object",EditorStyles.largeLabel);
|
||||
|
||||
if (GUILayout.Button(_documentationLink, GUILayout.MaxWidth(60)))
|
||||
{
|
||||
Application.OpenURL("http://support.gameanalytics.com/");
|
||||
}
|
||||
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
GUILayout.BeginHorizontal();
|
||||
GUILayout.Label("Basic component for initializing GameAnalytics.",EditorStyles.miniLabel);
|
||||
GUILayout.EndHorizontal();
|
||||
|
||||
EditorGUILayout.Space();
|
||||
|
||||
if (GUI.changed)
|
||||
{
|
||||
EditorUtility.SetDirty(ga);
|
||||
}
|
||||
}
|
||||
|
||||
private MessageType ConvertMessageType(GameAnalyticsSDK.Setup.Settings.MessageTypes msgType)
|
||||
{
|
||||
switch (msgType)
|
||||
{
|
||||
case GameAnalyticsSDK.Setup.Settings.MessageTypes.Error:
|
||||
return MessageType.Error;
|
||||
case GameAnalyticsSDK.Setup.Settings.MessageTypes.Info:
|
||||
return MessageType.Info;
|
||||
case GameAnalyticsSDK.Setup.Settings.MessageTypes.Warning:
|
||||
return MessageType.Warning;
|
||||
default:
|
||||
return MessageType.None;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: ef714624881664191ade6c6dda4bef44
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,7 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 19408680da89f4453b644599992eed64
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,81 @@
|
|||
using UnityEngine;
|
||||
using UnityEditor;
|
||||
using System;
|
||||
|
||||
public class PlayMakerPresenceCheck : AssetPostprocessor{
|
||||
|
||||
static string PlayMakerTypeCheck = "HutongGames.PlayMaker.Actions.ActivateGameObject, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null";
|
||||
static string PlayMakerBridgeTypeCheck = "HutongGames.PlayMaker.Actions.SendDesignEvent, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null";
|
||||
|
||||
static string IgnorePlayMakerBridgeKey = "IgnorePlayMakerBridge";
|
||||
static string PlayMakerBridgeEnabledKey = "PlayMakerBridgeEnabled";
|
||||
|
||||
static bool _debug = false;
|
||||
|
||||
|
||||
public static void ResetPrefs()
|
||||
{
|
||||
EditorPrefs.DeleteKey(IgnorePlayMakerBridgeKey+"-"+Application.dataPath);
|
||||
EditorPrefs.DeleteKey(PlayMakerBridgeEnabledKey+"-"+Application.dataPath);
|
||||
}
|
||||
|
||||
static void OnPostprocessAllAssets ( string[] importedAssets,string[] deletedAssets,string[] movedAssets,string[] movedFromAssetPaths)
|
||||
{
|
||||
|
||||
|
||||
//check here if we have access to a PlayMaker class, if we do, then we can alert the user.
|
||||
bool _playmakerDetected = System.Type.GetType(PlayMakerTypeCheck) != null;
|
||||
|
||||
// check here if we have access to the PlayMaker Bridge Class.
|
||||
bool _bridgeEnabled = System.Type.GetType(PlayMakerBridgeTypeCheck) !=null;
|
||||
|
||||
if (_debug)
|
||||
{
|
||||
Debug.Log("PlayMaker detected : "+_playmakerDetected+ " , Bridge enabled="+_bridgeEnabled);
|
||||
}
|
||||
|
||||
if (_playmakerDetected)
|
||||
{
|
||||
|
||||
if (! _bridgeEnabled)
|
||||
{
|
||||
|
||||
if (EditorPrefs.GetBool(IgnorePlayMakerBridgeKey+"-"+Application.dataPath))
|
||||
{
|
||||
if (_debug)
|
||||
{
|
||||
Debug.Log("Ignore detection alert");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (EditorPrefs.GetBool(PlayMakerBridgeEnabledKey+"-"+Application.dataPath) )
|
||||
{
|
||||
if (_debug)
|
||||
{
|
||||
Debug.Log("PlayMaker found but bridge not enabled, tho we actually enabled it, so we bail");
|
||||
}
|
||||
return;
|
||||
}
|
||||
|
||||
if (_debug)
|
||||
{
|
||||
Debug.Log("PlayMaker found but bridge not enabled");
|
||||
}
|
||||
|
||||
if (EditorUtility.DisplayDialog("GameAnalytics : PlayMaker Detected","Do you want to enable PlayMaker Actions for GameAnalytics?","Yes","No"))
|
||||
{
|
||||
EditorPrefs.SetBool(PlayMakerBridgeEnabledKey+"-"+Application.dataPath,true);
|
||||
|
||||
EditorApplication.ExecuteMenuItem("Window/GameAnalytics/PlayMaker/Toggle Scripts");
|
||||
|
||||
|
||||
}else{
|
||||
EditorPrefs.SetBool(IgnorePlayMakerBridgeKey+"-"+Application.dataPath,true);
|
||||
Debug.Log("To enable PlayMaker support for GameAnalytics manualy, simply go to the menu: 'Window/GameAnalytics/PlayMaker/Toggle Scripts'");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 59b631ff074a747748991261a24f2a0d
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,58 @@
|
|||
#if false
|
||||
|
||||
using HutongGames.PlayMaker.Actions;
|
||||
using HutongGames.PlayMakerEditor;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using GameAnalyticsSDK;
|
||||
|
||||
namespace HutongGames.PlayMakerEditor
|
||||
{
|
||||
[CustomActionEditor(typeof (SendProgressionEvent))]
|
||||
public class SendProgressionEventActionEditor : CustomActionEditor
|
||||
{
|
||||
|
||||
public override bool OnGUI()
|
||||
{
|
||||
bool edited = false;
|
||||
SendProgressionEvent _target = (SendProgressionEvent)target;
|
||||
|
||||
if (_target.ProgressionStatusAsString == null)
|
||||
{
|
||||
_target.ProgressionStatusAsString = new HutongGames.PlayMaker.FsmString(){ UseVariable=false };
|
||||
}
|
||||
|
||||
if (_target.ProgressionStatusAsString.UseVariable)
|
||||
{
|
||||
EditField("ProgressionStatusAsString");
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
_target.ProgressionStatus = (GAProgressionStatus)EditorGUILayout.EnumPopup("Progression Status", _target.ProgressionStatus);
|
||||
|
||||
if (PlayMakerEditor.FsmEditorGUILayout.MiniButtonPadded(PlayMakerEditor.FsmEditorContent.VariableButton))
|
||||
{
|
||||
_target.ProgressionStatusAsString.UseVariable = true;
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
EditField("Progression01");
|
||||
|
||||
if (_target.Progression01.Value != "" || !_target.Progression01.IsNone)
|
||||
EditField("Progression02");
|
||||
|
||||
if (_target.Progression02.Value != "" || !_target.Progression02.IsNone)
|
||||
EditField("Progression03");
|
||||
|
||||
EditField("Score");
|
||||
|
||||
return GUI.changed || edited;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0d4cc2e81a2a44fcbba82d0af4fe74fc
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,53 @@
|
|||
#if false
|
||||
|
||||
using HutongGames.PlayMaker.Actions;
|
||||
using HutongGames.PlayMakerEditor;
|
||||
using UnityEditor;
|
||||
using UnityEngine;
|
||||
using GameAnalyticsSDK;
|
||||
|
||||
namespace HutongGames.PlayMakerEditor
|
||||
{
|
||||
[CustomActionEditor(typeof (SendResourceEvent))]
|
||||
public class SendResourceEventActionEditor : CustomActionEditor
|
||||
{
|
||||
|
||||
public override bool OnGUI()
|
||||
{
|
||||
bool edited = false;
|
||||
SendResourceEvent _target = (SendResourceEvent)target;
|
||||
|
||||
if (_target.ResourceFlowTypeAsString == null)
|
||||
{
|
||||
_target.ResourceFlowTypeAsString = new HutongGames.PlayMaker.FsmString(){ UseVariable=false };
|
||||
}
|
||||
|
||||
if (_target.ResourceFlowTypeAsString.UseVariable)
|
||||
{
|
||||
EditField("ResourceFlowTypeAsString");
|
||||
|
||||
}
|
||||
else
|
||||
{
|
||||
GUILayout.BeginHorizontal();
|
||||
_target.ResourceFlowType = (GAResourceFlowType)EditorGUILayout.EnumPopup("Resource Flow Type", _target.ResourceFlowType);
|
||||
|
||||
if (PlayMakerEditor.FsmEditorGUILayout.MiniButtonPadded(PlayMakerEditor.FsmEditorContent.VariableButton))
|
||||
{
|
||||
_target.ResourceFlowTypeAsString.UseVariable = true;
|
||||
}
|
||||
GUILayout.EndHorizontal();
|
||||
}
|
||||
|
||||
EditField("ResourceCurrency");
|
||||
EditField("Amount");
|
||||
EditField("ItemType");
|
||||
EditField("ItemID");
|
||||
|
||||
return GUI.changed || edited;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
|
@ -0,0 +1,8 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f50974faf2211494d9c937a90c66fc94
|
||||
MonoImporter:
|
||||
serializedVersion: 2
|
||||
defaultReferences: []
|
||||
executionOrder: 0
|
||||
icon: {instanceID: 0}
|
||||
userData:
|
|
@ -0,0 +1,4 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 8774c230da39f2f41a5ca6ca2eb30aaf
|
||||
DefaultImporter:
|
||||
userData:
|
|
@ -0,0 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0815a0dd77f0048c28eb65386cbbaa8f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
userData:
|
|
@ -0,0 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 33f691f424cec47a3a0f33815f922bd2
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
userData:
|
After Width: | Height: | Size: 436 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2a410468f562749b09418cdaaa03e6c3
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 256
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 524 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0a098930e63804755878cae3eada3bd7
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 256
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 233 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 85a626f1668244d30a4e9f616991a793
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 32
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 408 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: a9ac7103fc40b4e00923bf8c2cb5d30f
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 64
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 244 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: fe7e2ecc9b2fe447bafe90f6395d4709
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 32
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 363 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 1b4dd779aadd54ac88856975af0d3c0a
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 32
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 340 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2ba470b4dffd848c6b267c34770cc63e
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 64
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 383 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f8ea67e311b0c4b2ea05718e90fd3b5b
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 32
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 1.1 KiB |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 810bbb19deed24f3cb7b854f9bafde26
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 32
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 308 B |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f49ef75333ff247cfb5dad4dab0d4dac
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 64
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
After Width: | Height: | Size: 8.7 KiB |
|
@ -0,0 +1,47 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 98df8f9c5678a4e5d964caa1244e8958
|
||||
TextureImporter:
|
||||
fileIDToRecycleName: {}
|
||||
serializedVersion: 2
|
||||
mipmaps:
|
||||
mipMapMode: 0
|
||||
enableMipMap: 0
|
||||
linearTexture: 1
|
||||
correctGamma: 0
|
||||
fadeOut: 0
|
||||
borderMipMap: 0
|
||||
mipMapFadeDistanceStart: 1
|
||||
mipMapFadeDistanceEnd: 3
|
||||
bumpmap:
|
||||
convertToNormalMap: 0
|
||||
externalNormalMap: 0
|
||||
heightScale: .25
|
||||
normalMapFilter: 0
|
||||
isReadable: 0
|
||||
grayScaleToAlpha: 0
|
||||
generateCubemap: 0
|
||||
seamlessCubemap: 0
|
||||
textureFormat: -1
|
||||
maxTextureSize: 64
|
||||
textureSettings:
|
||||
filterMode: 1
|
||||
aniso: 1
|
||||
mipBias: -1
|
||||
wrapMode: 1
|
||||
nPOTScale: 0
|
||||
lightmap: 0
|
||||
compressionQuality: 50
|
||||
spriteMode: 0
|
||||
spriteExtrude: 1
|
||||
spriteMeshType: 1
|
||||
alignment: 0
|
||||
spritePivot: {x: .5, y: .5}
|
||||
spriteBorder: {x: 0, y: 0, z: 0, w: 0}
|
||||
spritePixelsToUnits: 100
|
||||
alphaIsTransparency: 1
|
||||
textureType: 2
|
||||
buildTargetSettings: []
|
||||
spriteSheet:
|
||||
sprites: []
|
||||
spritePackingTag:
|
||||
userData:
|
|
@ -0,0 +1,5 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 97b79fc4d9d2243ed8192a5f84b29f1f
|
||||
folderAsset: yes
|
||||
DefaultImporter:
|
||||
userData:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 597ee60d9a475c840bd1048278120a0c
|
||||
folderAsset: yes
|
||||
timeCreated: 1537519465
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,32 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 945d8f3f6133f44b085ed8aa3df995b9
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,32 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 316a5978eed5b400c8dd756e6eb47fdc
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,32 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 2399d067eb0414c1788edd794d77e8c1
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,32 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 63c7fbb74d1694323b632b9b4cd7d1d1
|
||||
PluginImporter:
|
||||
externalObjects: {}
|
||||
serializedVersion: 2
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
defineConstraints: []
|
||||
isPreloaded: 0
|
||||
isOverridable: 0
|
||||
isExplicitlyReferenced: 0
|
||||
validateReferences: 1
|
||||
platformData:
|
||||
- first:
|
||||
Android: Android
|
||||
second:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
- first:
|
||||
Any:
|
||||
second:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
- first:
|
||||
Editor: Editor
|
||||
second:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,48 @@
|
|||
fileFormatVersion: 2
|
||||
guid: e185dadd9acc8487d8d4bb2936a243cc
|
||||
timeCreated: 1572358580
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
Linux:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
Linux64:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
LinuxUniversal:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
OSXIntel:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
OSXIntel64:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
OSXUniversal:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
Win:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
Win64:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
WindowsStoreApps:
|
||||
enabled: 0
|
||||
settings:
|
||||
CPU: AnyCPU
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,9 @@
|
|||
fileFormatVersion: 2
|
||||
guid: f10ba24b63b2c46459091962994de8c1
|
||||
folderAsset: yes
|
||||
timeCreated: 1460635935
|
||||
licenseType: Pro
|
||||
DefaultImporter:
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|
|
@ -0,0 +1,29 @@
|
|||
fileFormatVersion: 2
|
||||
guid: 0683b20eb25df464b8f46d93396af7f6
|
||||
timeCreated: 1565687811
|
||||
licenseType: Pro
|
||||
PluginImporter:
|
||||
serializedVersion: 1
|
||||
iconMap: {}
|
||||
executionOrder: {}
|
||||
isPreloaded: 0
|
||||
platformData:
|
||||
Any:
|
||||
enabled: 0
|
||||
settings: {}
|
||||
Editor:
|
||||
enabled: 0
|
||||
settings:
|
||||
DefaultValueInitialized: true
|
||||
Linux:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
Linux64:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
LinuxUniversal:
|
||||
enabled: 1
|
||||
settings: {}
|
||||
userData:
|
||||
assetBundleName:
|
||||
assetBundleVariant:
|