Skip to content

Instantly share code, notes, and snippets.

@error454
error454 / quicksort.lua
Created February 11, 2014 02:45
Stonescript Quicksort
-- Adapted from http://rosettacode.org/wiki/Sorting_algorithms/Quicksort#Lua
function quicksort (t, start, endi)
start = start or 0
endi = endi or table.getSize ( t ) - 1
if(endi - start < 1) then return t end
local pivot = start
@error454
error454 / Game1.cs
Created March 1, 2014 02:45
Rain of Arrows
// Rain of Arrows
// Author: Zachary Burke
// 5/7/2010
using System;
using System.Collections.Generic;
using Microsoft.Xna.Framework;
using Microsoft.Xna.Framework.Audio;
using Microsoft.Xna.Framework.Content;
using Microsoft.Xna.Framework.GamerServices;
@error454
error454 / achievementconvert.lua
Created May 2, 2014 23:52
Steam Achievement Image Converter
-- Author: Zachary Burke
-- License: MIT
--
-- Steam Achievement Image Converter
--
-- /-----------\ ----> Color JPG
-- (Color PNG) ----> |This script|
-- \-----------/ ----> Grayscale JPG
--
-- Each Steam Achievement requires two 64x64 JPG files. One image for the unachieved state and the
@error454
error454 / gist:4d4b15086c772c3f1bda
Created July 29, 2014 18:18
Local Space to Global Space
-- I have cube whose origin is in the center of the cube.
-- I want to place a joint on the end face of the cube, the +Z end.
-- --------------
-- | |
-- | |<--- Joint here
-- | |
-- --------------
--
-- I know that the width of the box is boxLength, so the localspace coordinate that gives me the
-- end of the box is 0, 0, boxLength * 0.5 (remember that the origin is in the center)
local ex,ey,ez = object.getTranslation ( hEnemy,object.kGlobalSpace )
local ox,oy,oz = object.getTranslation ( o,object.kGlobalSpace )
-- vector pointing at the enemy
local dx,dy,dz = math.vectorSubtract ( ex,ey,ez,ox,oy,oz )
-- distance between enemy and object
local dist = math.vectorLength ( dx,dy,dz )
-- vector pointing at enemy with length of half the distance
@error454
error454 / gist:0943cf7899c20f5f2b48
Created September 19, 2014 08:39
Delete JPGs that don't have a matching raw file
lfs = require "lfs"
local sPath = 'D:/temp photos/'
function hasExtension ( sFilename, sExt )
if sFilename then
return string.match ( string.lower ( sFilename ), "." .. string.lower( sExt ) ) ~= nil
end
return false
end
@error454
error454 / gist:e4e9c2f7620374baf283
Created September 19, 2014 10:07
Shiva Code File Count
--
-- Put at the root of your project and run
--
lfs = require "lfs"
function findAllAI ( )
local t = {}
count = 1
for file in lfs.dir('./Resources/AIModels') do
local sName, sExt = getFileNameAndExtension ( file )
@error454
error454 / copyengine.bat
Last active August 29, 2015 14:09
Package Unreal Engine 4 Editor and ignore debug files.
@echo off
set SOURCE=C:\projects\UnrealEngine
set DESTINATION=C:\projects\perforce\UnrealEngine
REM Samples
xcopy /e /f /r /h /i %SOURCE%\Samples %DESTINATION%\Samples
REM Templates
xcopy /e /f /r /h /i %SOURCE%\Templates %DESTINATION%\Templates
@error454
error454 / wav2RGB.py
Created December 6, 2014 23:38
wav2RGB
# http://codingmess.blogspot.com/2009/05/conversion-of-wavelength-in-nanometers.html
def wav2RGB(wavelength):
w = int(wavelength)
# colour
if w >= 380 and w < 440:
R = -(w - 440.) / (440. - 350.)
G = 0.0
B = 1.0
elif w >= 440 and w < 490:
@error454
error454 / sketchfab-oculus.js
Created January 8, 2015 03:19
Greasemonkey script to replace Sketchfab model links with dk1/dk2 links
// ==UserScript==
// @name Sketchfab Oculus-izer
// @namespace https://sketchfab.com/
// @description Replace all model links with dk1/dk2 links
// @include https://sketchfab.com/*
// ==/UserScript==
// DK1 users change this to false
var bIsUsingDK2 = true;
var dk1String = '/embed?oculus=1'