Skip to content

Instantly share code, notes, and snippets.

View DNA's full-sized avatar

Leonardo Prado DNA

View GitHub Profile
@DNA
DNA / worktime.rb
Last active July 30, 2018 22:23
check when its time to go home
#! /usr/bin/env ruby
# ./worktime 10:12 [13:06] [14:15] [19:40]
now = Time.now
expected_work_time = 28800
if ARGV[0].nil?
puts 'Você precisa fornecer ao menos o horário de entrada'
exit 1
@DNA
DNA / stats.py
Created July 2, 2018 04:01
Stats class for Renpy
class Stat(object):
class Delta(object):
def __init__(self, parent):
self.parent = parent
self.value = parent.value
def __repr__(self):
return '<Stat.Delta value={}>'.format(self.calculate())
def __str__(self):
@DNA
DNA / twitch_collection_download.rb
Created May 1, 2018 01:29
Pass a Twitch collection URL as an argument and it'll download all of them
#! /usr/bin/env ruby
require 'net/http'
require 'json'
require 'tempfile'
download_list = Tempfile.new
CLIENT_ID = 'TWITCH_CLIENT_ID'
collection_id = ARGV.first.split('/').last
twitch_uri = URI("https://api.twitch.tv/kraken/collections/#{collection_id}/items")
#!/usr/bin/env ruby
# Given 2 sorted arrays with unique values and arbitrary size, count the
# intersection values between them
array_a = [1, 2, 4, 5, 7, 8]
array_b = [0, 1, 3, 4, 6, 7, 9]
index_a = index_b = count = 0
loop do
@DNA
DNA / loop_bg.rpy
Created February 7, 2018 21:28
Create a looping bg on the say screen
# Create the Image ATL
image loop_bg:
"bg one"
time 1.0
"bg two"
time 1.0
repeat
# Add it as a background on screen window
# If you are using the default screen.rpy, there's probably a style
@DNA
DNA / healthcheck.html
Created October 20, 2017 19:02
check if url is available
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
<script>
document.onreadystatechange = () => {
if (document.readyState === 'complete') {
@DNA
DNA / combined_ordered_enumerator.rb
Last active July 27, 2017 20:12
Create an enumerator that receives N enumerators and sort then
# The aim of this class is to take a number of ordered enumerators and then
# create an Enumerator that emits their values in ascending order.
#
# Some assumptions:
# * The enumerators passed in emit their values in ascending order.
# * The enumerators emit values which are Comparable[1] with each other.
# * The enumerators can be finite *or* infinite.
#
# You can run the test suite with: `ruby combined_ordered_enumerator.rb`.
class CombinedOrderedEnumerator < Enumerator
@DNA
DNA / bootstrap_shortcodes.php
Created June 7, 2017 04:05
WP shortcodes to apply bootstrap grid
<?php
// [col size="foo-value"]
// Create the function that will handle the shortcode
function grid_column($attributes, $content = null) {
// shortcode_atts is used to define default attribute values
$attributes = shortcode_atts(array('size' => '12'), $attributes);
// keep applying shortcodes to content
$content = do_shortcode($content);
@DNA
DNA / cpf.rb
Created March 9, 2017 17:08
Generate random valid CPFs
#! /usr/bin/env ruby
# Setup initial variables
number = Random.new
cpf = []
vd1 = 0
vd2 = 0
# Generate the 9 first numbers
1.upto(9) do |i|
<?php
class myStdClass {
public function __call($method, $args) {
if (isset($this->$method)) {
return call_user_func_array($this->$method, $args);
}
}
}