Skip to content

Instantly share code, notes, and snippets.

@DDru
DDru / EntityConfig.cs
Created September 10, 2025 06:29
Proto Entity Config
public class EntityConfig : ScriptableObject {
[SerializeField] private EntityConfig parentConfig;
[SerializeField] private bool replace;
[SerializeReference, SubclassSelector] private IConfigParam[] stats;
public void Apply(ProtoWorld world, ProtoEntity entity) {
if (parentConfig)
parentConfig.Apply(world, entity);
SetData(world, entity);
@DDru
DDru / FBSucks.cs
Created August 30, 2021 01:03 — forked from Borod4r/FBSucks.cs
Share image with text on android (works with FB)
private static void ShareImageWithTextOnAndroid(string message, string imageFilePath)
{
AndroidJavaClass intentClass = new AndroidJavaClass("android.content.Intent");
AndroidJavaObject intentObject = new AndroidJavaObject("android.content.Intent");
intentObject.Call<AndroidJavaObject>("setAction", intentClass.GetStatic<string>("ACTION_SEND"));
AndroidJavaClass uriClass = new AndroidJavaClass("android.net.Uri");
AndroidJavaObject uriObject = uriClass.CallStatic<AndroidJavaObject>("parse", "file://" + imageFilePath);
intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_STREAM"), uriObject);
intentObject.Call<AndroidJavaObject>("putExtra", intentClass.GetStatic<string>("EXTRA_TEXT"), message);
@DDru
DDru / ShowToastUnityAndroid.cs
Created August 29, 2021 21:22 — forked from TarasOsiris/ShowToastUnityAndroid.cs
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(
()=>
{
@DDru
DDru / test.cs
Last active July 8, 2021 03:39
LeoECS disable systems by tag
// Установка тега. TestSystem для отключения систем по тегу
m_Systems
.Add(new Player.Systems.RotateSystem()).SetTag("test")
.Add(new Player.Systems.MoveSystem()).SetTag("test")
.Add(new TestSystem())
// Класс расширения с методами
public static class EcsSystemDisabler {
private static EcsSystems _anySystem;