Skip to content

Instantly share code, notes, and snippets.

View marcelschmidtdev's full-sized avatar

Marcel Schmidt marcelschmidtdev

  • Wooga
  • Berlin, Germany
View GitHub Profile
@marcelschmidtdev
marcelschmidtdev / GameSparksHelper.cs
Last active September 12, 2018 09:10
Shows GameSparks API key in Unity window title (Windows)
#if UNITY_EDITOR_WIN
using UnityEngine;
using System.Runtime.InteropServices;
using System.Text;
using UnityEditor;
using System;
namespace GameSparks.Editor
{
[InitializeOnLoad]
@marcelschmidtdev
marcelschmidtdev / PlistMerger.cs
Last active February 3, 2016 13:56
Merges two .plist files into a new one
using UnityEngine;
using System.Collections;
using UnityEditor.iOS.Xcode;
using System.Collections.Generic;
public class PlistMerger
{
public PlistDocument MergePlists(string plistPath, string plistToMergePath) {
var plist = new PlistDocument();
@marcelschmidtdev
marcelschmidtdev / require_once.js
Created March 29, 2016 16:21
Makes sure GameSparks modules are imported only once
if (typeof(require_once) !== 'undefined') {
Spark.setScriptError("require_once", "require_once is already defined! Only import this module in application entry points (Events, Requests, Responses, etc), not in modules!");
Spark.getLog().error("require_once already defined, probably imported from a module");
throw "require_once already defined";
}
var require_once__importedModules = {};
var require_once = function(shortCode) {
var importedModules = require_once__importedModules;
@marcelschmidtdev
marcelschmidtdev / RemoveEmptyFolders.py
Last active January 6, 2020 11:14
Python script which deletes empty folders and meta files in Unity projects. Can be used as git hook.
#!/c/Python27/python
# Used as post-checkout and pre-commit git hook
import os
import sys
import msvcrt
deleted_files = []
def is_directory_empty(path):
@marcelschmidtdev
marcelschmidtdev / ObjectPool.cs
Created March 30, 2016 00:28
Really simple ObjectPool for Unity
using UnityEngine;
using System.Collections.Generic;
public class ObjectPool : MonoBehaviour {
private const int MIN_AMOUNT_OF_POOLED_OBJECTS = 5;
private static ObjectPool _instance;
public static ObjectPool Instance {
get{
if(_instance == null) {
@marcelschmidtdev
marcelschmidtdev / DrawSampleVecs.cs
Created March 30, 2016 00:32
Visualizes vector axes in Unity
using UnityEngine;
using System.Collections;
public class DrawSampleVecs : MonoBehaviour
{
void OnDrawGizmos()
{
Color color;
color = Color.green;
// local up
using UnityEngine;
using System.Collections;
public class NetworkRigidbody : MonoBehaviour
{
public double m_InterpolationBackTime = 0.1;
public double m_ExtrapolationLimit = 0.5;
internal struct State
@marcelschmidtdev
marcelschmidtdev / Parable.cs
Created March 30, 2016 00:40
A simple throw parable for Unity
using UnityEngine;
using System.Collections;
public class Parable : MonoBehaviour
{
public Transform Target;
public float firingAngle = 45.0f;
public float gravity = 9.8f;
public Transform Projectile;
@marcelschmidtdev
marcelschmidtdev / NormalRenderer.cs
Created March 30, 2016 00:41
Renders normals of a geometry mesh in Unity
using UnityEngine;
using System.Collections;
public class NormalRenderer : MonoBehaviour
{
public float Threshold = 360.0f;
public float Offset = 0;
void OnDrawGizmos()
{
@marcelschmidtdev
marcelschmidtdev / ScrollToSelected.cs
Created March 30, 2016 00:42
Autoscroll Scrollrect for Unity
using UnityEngine;
using UnityEngine.UI;
using UnityEngine.EventSystems;
[RequireComponent(typeof(ScrollRect))]
public class ScrollToSelected : MonoBehaviour
{
public float scrollSpeed = 10f;