Skip to content

Instantly share code, notes, and snippets.

View TarasOsiris's full-sized avatar
🌍
https://ninevastudios.com/

Taras Leskiv TarasOsiris

🌍
https://ninevastudios.com/
View GitHub Profile
allprojects {
def mappings = [
'android.support.annotation': 'androidx.annotation',
'android.arch.lifecycle': 'androidx.lifecycle',
'android.support.v4.app.NotificationCompat': 'androidx.core.app.NotificationCompat',
'android.support.v4.app.ActivityCompat': 'androidx.core.app.ActivityCompat',
'android.support.v4.content.ContextCompat': 'androidx.core.content.ContextCompat',
'android.support.v13.app.FragmentCompat': 'androidx.legacy.app.FragmentCompat',
'android.arch.lifecycle.Lifecycle': 'androidx.lifecycle.Lifecycle',
'android.arch.lifecycle.LifecycleObserver': 'androidx.lifecycle.LifecycleObserver',
@TarasOsiris
TarasOsiris / MyPluginIsBananas.cs
Last active November 26, 2020 01:07
Create Toast on Android Unity
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class MyPluginIsBananas : MonoBehaviour
{
const string ToastClassName = "android.widget.Toast";
public void OnMyButtonClick()
{
@TarasOsiris
TarasOsiris / UnityExtensionMethods.cs
Last active January 25, 2022 12:17
Helper methods used within Unity3d
using UnityEngine;
public static class UnityExtensionMethods
{
#region go_utils
public static void Activate(this GameObject go)
{
go.SetActive(true);
}
@TarasOsiris
TarasOsiris / DumpEditorTextures.cs
Last active February 15, 2023 10:07
Dump all Unity3d Editor GUI skin textures as images
using UnityEngine;
using System.IO;
using UnityEditor;
public static class DumpEditorTextures
{
const string AssetsFolder = "Assets";
const string TexturesDestFolderNamePro = "TexturesPro";
const string TexturesDestFolderNameNormal = "TexturesNormal";
static readonly string TexturesDestPathPro = Path.Combine(AssetsFolder, TexturesDestFolderNamePro);
@TarasOsiris
TarasOsiris / ShowToastUnityAndroid.cs
Created April 15, 2016 12:52
Shows toast on Android
public static void ShowToast(string text)
{
if (Application.platform == RuntimePlatform.Android)
{
AndroidJavaClass unityPlayer = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject activity = unityPlayer.GetStatic<AndroidJavaObject>("currentActivity");
activity.Call("runOnUiThread", new AndroidJavaRunnable(
()=>
{
@TarasOsiris
TarasOsiris / FlowMap.shader
Last active April 20, 2023 07:36
Flow Map Shader for Unity3D. Used with Sprites.
Shader "Custom/Flow Map"
{
Properties
{
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
_Color ("Tint", Color) = (1,1,1,1)
// Flow
_FlowMap ("Flow Map", 2D) = "white" {}
_FlowSpeed ("Flow Speed", float) = 0.05
@TarasOsiris
TarasOsiris / BetterDefines.cs
Last active April 21, 2023 20:22 — forked from Borod4r/BetterDefines.cs
Better Defines for Unity3D
using System;
using System.Collections.Generic;
using System.Linq;
using BetterDefines.Editor.Entity;
using UnityEditor;
namespace BetterDefines.Editor
{
public static class BetterDefinesUtils
{
@TarasOsiris
TarasOsiris / CustomPlayerPrefs.cs
Created June 20, 2014 09:13
Unity3D PlayerPrefs wrapper to provide saving boolean values.
using UnityEngine;
/// <summary>
/// PlayerPrefs wrapper to provide saving boolean values.
/// </summary>
public static class CustomPlayerPrefs
{
private const int StorageFalse = 0;
private const int StorageTrue = 1;
#if UNITY_ANDROID
using UnityEngine;
using System;
public static class AndroidNativePicker
{
public delegate void OnDatePicked(int year,int month,int day);
public delegate void OnTimePicked(int hourOfDay, int minute);
public static void ShowDatePicker(OnDatePicked callback)
@TarasOsiris
TarasOsiris / EncryptedXmlSerializer.cs
Last active October 16, 2023 15:31
Save encrypted XML Files in Unity3D. Tested on Android, iOS, Windows standalone, Mac.
using System;
using System.IO;
using System.Security.Cryptography;
using System.Text;
using System.Xml.Serialization;
using UnityEngine;
namespace Com.Nravo.FlipTheBoard.PersistantStorage
{