Skip to content

Instantly share code, notes, and snippets.

View trojanfoe's full-sized avatar

Andy Duplain trojanfoe

  • Wickham, Hampshire, UK.
View GitHub Profile
@echo off
REM Change this to where you want the files backed-up to...
REM (Always put a backslash at the end so xcopy knows you want to create a directory)
set dst="%USERPROFILE%\Backups\Minecraft Dungeons\"
set srcdir="%LOCALAPPDATA%\Packages\Microsoft.Lovika_8wekyb3d8bbwe\LocalCache\Local\Dungeons"
if exist %srcdir% goto find_subdir
set srcdir="%LOCALAPPDATA%\Dungeons"
if exist %srcdir% goto find_subdir
#!/usr/bin/python
#
# Bump build number if source files have changed, writing the version and build
# number to source files as well as updating one or more info.plist files.
#
# usage: bump_build_number.py version-file version-impl-file version-header-file plist-file [ ... plist-file ]
#
import sys, os, subprocess, re
@trojanfoe
trojanfoe / PrefabPool.m
Created May 6, 2015 10:10
Prefab Pool implementation
#import "PrefabPool.h"
#pragma mark - Private Interface
@interface PrefabPool ()
{
NSUInteger _nextIndex;
NSMutableArray *_pool;
}
@trojanfoe
trojanfoe / build-png.sh
Created September 4, 2014 20:24
Script to build libpng for iOS
#!/bin/sh
dobuild=1
docopy=1
doclean=1
version=1.6.9
srcdir=libpng-${version}
srcfile=${srcdir}.tar.gz
srctarball=http://sourceforge.net/projects/libpng/files/libpng16/${version}/${srcfile}/download
outdir=$(cd ../external-deps/png; pwd)
@trojanfoe
trojanfoe / Test results
Last active August 29, 2015 14:05
Demonstrate changing the directory to the executable's path using C++
--- Source/cpptinkering ‹master*➔ ?› » make
clang++ -DDEBUG=1 -g -Wall -std=c++11 -stdlib=libc++ -o setcwd setcwd.cpp -lstdc++
--- Source/cpptinkering ‹master*➔ ?› » ./setcwd
Changing to directory '.'
This is a one.
This is line two.
This is line three.
--- Source/cpptinkering ‹master*➔ ?› » cd /
--- / » /Users/andy/Source/cpptinkering/setcwd
Changing to directory '/Users/andy/Source/cpptinkering'
@trojanfoe
trojanfoe / osstatus.m
Created May 17, 2014 06:46
Print the meaning of an OSX OSStatus code value
#import <Foundation/Foundation.h>
#import <CoreServices/CoreServices.h>
int main(int argc, const char **argv)
{
@autoreleasepool {
for (int i = 1; i < argc; i++) {
char *endp;
long value = strtol(argv[i], &endp, 10);
if (*endp == '\0') {
@trojanfoe
trojanfoe / vslice.py
Last active August 29, 2015 13:56
Python script to split an image into vertical slices. Useful for processing background images (i.e. cocos2d, etc.)
#!/usr/bin/env python
#
# Slice an image into the specified number of vertical slices.
#
# Usage: vslice.py [options] image output-path num-slices
# Use --help for a list of options.
#
# Andy Duplain <trojanfoe@gmail.com> 26-Feb-2014
#
@trojanfoe
trojanfoe / Compilation and running
Created February 20, 2014 11:50
Sleeping for a set period of time while running the runloop
$ clang -DDEBUG=1 -g -fobjc-arc -o rlsleep rlsleep.m -framework Foundation
$ ./rlsleep
2014-02-20 11:45:36.481 rlsleep[95410:707] Before 2014-02-20 11:45:36 +0000
2014-02-20 11:45:37.475 rlsleep[95410:707] Tick
2014-02-20 11:45:38.476 rlsleep[95410:707] Tick
2014-02-20 11:45:39.475 rlsleep[95410:707] Tick
2014-02-20 11:45:40.475 rlsleep[95410:707] Tick
2014-02-20 11:45:41.475 rlsleep[95410:707] Tick
2014-02-20 11:45:42.476 rlsleep[95410:707] Tick
2014-02-20 11:45:43.476 rlsleep[95410:707] Tick
2014-01-21 14:57:39.317 getifaddrs[31705:707] name=lo0, family=30, address=fe80::1
2014-01-21 14:57:39.319 getifaddrs[31705:707] name=lo0, family=2, address=127.0.0.1
2014-01-21 14:57:39.319 getifaddrs[31705:707] name=lo0, family=30, address=::1
2014-01-21 14:57:39.320 getifaddrs[31705:707] name=en1, family=30, address=fe80::fa1a:67ff:fe0e:30eb
2014-01-21 14:57:39.320 getifaddrs[31705:707] name=en1, family=2, address=192.168.1.100
#import <Foundation/Foundation.h>
@interface ClassA : NSObject
@property NSMutableString *string;
- (void)changeString;
- (void)printString;
@end