Skip to content

Instantly share code, notes, and snippets.


Oscar S. oscarcs

Block or report user

Report or block oscarcs

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
from __future__ import print_function
from builtins import range
import itertools
import MalmoPython
import json
import logging
import math
import os
import random
import sys
View date.js
"use strict";
* Create a new CustomDate object.
* @param {Number} year 4-digit year
* @param {Number} month 1-indexed month (1 = January, etc.)
* @param {Number} day Day of the month (1-31)
let CustomDate = function(year, month, day) {
// Set the defaults:
View customjson.js
function customJSONStringify(value) {
function writeJSON(value) {
switch (toType(value)) {
case "object":
return writeObject(value);
case "array":
return writeArray(value);
oscarcs / userChrome.css
Created Jan 16, 2019
Prevent tab scrolling in Firefox with Chrome-style skinny tabs
View userChrome.css
.tabbrowser-tab {
min-width: initial !important;
.tab-content {
overflow: hidden !important;
* Attempts to add a Shape to a NestingShape object. If successful, a
* two-way link is established between the NestingShape and the newly-added
* Shape. Note that this method has package visibility.
* @param shape the shape to be added.
* @throws IllegalArgumentException if an attempt is made to add a Shape
* that will not fit within the bounds of the proposed NestingShape object.
void add(Shape shape) throws IllegalArgumentException {
oscarcs /
Last active Nov 22, 2016
Haxe install script for Ubuntu
# Adapted from
# Assumes Ubuntu system. Update HAXE_VERSION and NEKO_VERSION with up-to-date releases.
if [ "$1" = "y" -o "$1" = "-y" ]; then
oscarcs / HelloWorld.scala
Last active Jun 5, 2016
Scala & LWJGL Hello World
View HelloWorld.scala
import org.lwjgl._
import org.lwjgl.glfw._
import org.lwjgl.opengl._
import org.lwjgl.glfw.Callbacks._
import org.lwjgl.glfw.GLFW._
import org.lwjgl.opengl.GL11._
import org.lwjgl.system.MemoryUtil._
object Main {
oscarcs / autoTile.hx
Last active Nov 7, 2018
Haxe roguelike autotiling example
View autoTile.hx
public static function borderAutoTile(xt:Int, yt:Int, context:ITileable, cur:RLTile, values:BorderValues):Int
var val:Int = 1;
var u:RLTile =, yt - 1);
var r:RLTile = + 1, yt);
var d:RLTile =, yt + 1);
var l:RLTile = - 1, yt);
//check whether the surrounding tiles are walls.
oscarcs / TilemapGrid.hx
Created Dec 16, 2014
Manage a grid of FlxTilemaps
View TilemapGrid.hx
package ;
import flixel.FlxG;
import flixel.tile.FlxTilemap;
import flixel.util.FlxPoint;
* Class for management of an array of tilemaps.
class TilemapGrid
oscarcs / sort.hx
Last active Aug 29, 2015
Depthsorting funtimes
View sort.hx
private function getSort()
var sortval:Float = 0;
var curAngle = loop((( * Math.PI) / 180);
var r = Math.sqrt(Math.pow(top.getGraphicMidpoint().x - player.x, 2) + Math.pow(top.getGraphicMidpoint().y - player.y, 2));
var phi = Math.atan2(top.getGraphicMidpoint().x - player.x, top.getGraphicMidpoint().y - player.y) + Math.PI;
var topAngle = curAngle;
var botAngle = loop(curAngle + Math.PI);
You can’t perform that action at this time.