Skip to content

Instantly share code, notes, and snippets.

View Naphier's full-sized avatar
🐱

Sean Mann Naphier

🐱
View GitHub Profile
@Naphier
Naphier / SimpleCSVDebug.cs
Created November 19, 2015 03:11
Simple class to log output to file for debugging.
using System.IO;
using System;
using System.Text;
public class SimpleCSVDebug
{
string GetPathFile()
{
string path = Environment.GetFolderPath(Environment.SpecialFolder.Desktop);
string file = "output.csv";
using UnityEngine;
using UnityEditor;
using UnityEditor.AnimatedValues;
[CustomEditor(typeof(Transform))]
[CanEditMultipleObjects]
public class MyTransformComponent : Editor
{
private Transform _transform;
private AnimBool m_showExtraFields;
// First we need an enum for a dropdown to select what to align to (first or last selected).
public AlignToType alignTo = AlignToType.lastSelected;
// We also need an enum to flag what axes we want to align on.
public AxisFlag alignmentAxis;
// This method will display the Alignment options and execution button.
private void AlignmentInspector()
{
// Start off with a nice bold label to help section off the area.
public enum AlignToType { lastSelected, firstSelected }
public enum AxisFlag { X = 1, Y = 2, Z = 4 }
using UnityEngine;
using UnityEditor;
// This custom Inspector just shows the default inspector and
// then, at the correct time, destroys the component if it has
// been flagged for destruction.
[CustomEditor(typeof(ShowLocalAxis))]
public class ShowLocalAxisInspector : Editor
{
public override void OnInspectorGUI()
using UnityEngine;
// Displays lines for the Local Axis of a game object evenwhen the object is not selected.
public class ShowLocalAxis : MonoBehaviour
{
// This is used by the CustomTransformComponent class
// and the custom inspector for this class so that we can tag the script component
// for deletion at the proper time. We're hiding it in the inspector since it shouldn't
// be modified by the user, but needs to be publically accessible by other classes.
[HideInInspector]
// This method allows us to add a ShowLocalAxis component to the currently selected transform.
// We'll be using a toggle box to add or remove the component. This bool holds that state.
private bool showLoxalAxisToggle = false;
// This holds a reference to the ShowLocalAxis component.
private ShowLocalAxis showLocalAxis;
private void ShowLocalAxisComponentToggle()
{
// First we check to see if there is a ShowLocalAxis component on this game object.
showLocalAxis = _transform.gameObject.GetComponent<ShowLocalAxis>();
@Naphier
Naphier / ce_tut_1.cs
Last active November 14, 2015 13:43
using UnityEngine;
using UnityEditor; // Required for any editor functions
using UnityEditor.AnimatedValues; // Required for fade out groups
[CustomEditor(typeof(Transform))] // This makes it override the standard inspector for Transforms
[CanEditMultipleObjects] // This allows us to select mutiple components and edit them simultaneously
// Inherits from Editor class so we can override OnInspectorGUI()
// Also note that Editor scripts should always be placed in an "Editor" folder.
public class MyTransformComponent : Editor
@Naphier
Naphier / mazegen.py
Created October 27, 2015 17:38
Maze generator script for python
#original script by Nikolaus Gradwohl 2012-05-21T05:08:35+02:00
#http://www.local-guru.net/blog/2012/5/21/blender-labyrinth-generator
from random import shuffle
from array import *
import bpy
def GetName( cnt ):
if (cnt < 100 and cnt > 9):
return 'm0' + str(cnt)
@Naphier
Naphier / NGDebug.cs
Created October 11, 2015 17:04
Replacement for Unity's debug so we can just shut it off for production
using UnityEngine;
/// <summary>
/// Replacement for Unity's debug so we can just shut it off for production
/// </summary>
public class NGDebug
{
private enum WarningLevel
{ all, warning, error, none }