Skip to content

Instantly share code, notes, and snippets.

@will-hart
will-hart / arduino_charlieplex.c
Created July 13, 2012 18:25
Charlieplex_LEDs_Arduino
/**************************************/
/* Charlieplexing 6 LEDs with 3 Pins */
/* */
/* Code written by William Hart, 2011 */
/* http://www.williamhart.info */
/* */
/* Uses 3 pins to power a network of */
/* 6 LEDs using the charlieplexing */
/* technique. */
/**************************************/
// a basic counter and date template for adding new data
var seconds = 0;
var base_date = "2012-10-09 12:57:";
// declare five data arrays
var all_data = [
[],
[],
[],
[],
@will-hart
will-hart / README.md
Last active January 28, 2016 03:15
An ember dice rolling application based on a tutorial at http://www.williamhart.info/an-emberjs-beginners-tutorial.html.
@will-hart
will-hart / events.cs
Last active September 7, 2016 11:32
Event driven version
///
/// PlayerManager.cs
///
using System;
public class PlayerManager : MonoBehaviour {
public event EventHandler PlayerDied;
@will-hart
will-hart / castle.scad
Last active February 5, 2017 08:19
A simple castle wall written in OpenSCAD
// scale the wall up
wall_scale = 10;
// set wall proportions
wall_length = 1;
wall_thickness = 0.3;
wall_height = 0.8;
// crennelation properties
cren_duty_cycle = 0.5;
@will-hart
will-hart / SinglePlayerFallback.cs
Created April 13, 2017 08:01
Single Player Fallback (Forge Networking)
namespace Goliath.Networking
{
#region Dependencies
using BeardedManStudios.Forge.Networking;
using BeardedManStudios.Forge.Networking.Unity;
// other usings
using UnityEngine;
#endregion
@will-hart
will-hart / AbstractComponent.cs
Last active June 8, 2018 21:03
Sentry ECS - a simple public domain entity component system
public abstract class AbstractComponent : IComponent
{
[NonSerialized]
protected Entity _owner;
public AbstractComponent(Entity owner)
{
_owner = owner;
ID = Guid.NewGuid().ToString("n");
}
@will-hart
will-hart / list_files.py
Last active October 30, 2018 03:08
Get file information in a directory
# -*- coding: utf-8 -*-
"""
Created on Tue Oct 30 13:43:22 2018
@author: Will Hart
"""
from datetime import datetime
from os import walk, path
@will-hart
will-hart / hexmap.py
Last active January 12, 2020 12:25
Hexmap generator inkscape extension, without inkscape (and using python 3)
#!/usr/bin/env python
# borrowed from https://raw.githubusercontent.com/lifelike/hexmapextension/master/hexmap.py
# which isn't working in inkscape
# import inkex
import sys
# from inkex import NSS
import math
import lxml
@will-hart
will-hart / plugin.py
Created July 1, 2013 09:36
A simple python plugin system using a custom metaclass
# a simple Python plugin loading system
# see http://stackoverflow.com/questions/14510286/plugin-architecture-plugin-manager-vs-inspecting-from-plugins-import
class PluginMount(type):
"""
A plugin mount point derived from:
http://martyalchin.com/2008/jan/10/simple-plugin-framework/
Acts as a metaclass which creates anything inheriting from Plugin
"""