Skip to content

Instantly share code, notes, and snippets.

@Suor
Suor / hook_on_init.nut
Last active December 5, 2020 18:06
Hook enemy onInit
local gt = this.getroottable();
::mods_hookNewObject("entity/tactical/enemies/orc_berserker", function(o) {
this.logInfo("tb: hook orc_berserker");
local init = o.onInit;
o.onInit = function() {
this.logInfo("tb: orc_berserker onInit");
this.tb_orc_berserker_agent <- this.inherit("scripts/ai/tactical/orc_berserker_agent", {
m = {},
function create()
{
this.orc_berserker_agent.create();
this.m.Properties ...
}
function onAddBehaviors()
{
this.orc_berserker_agent.create();
@Suor
Suor / pprint.nut
Created November 11, 2020 15:05
Logger pretty printer in Squirrel
::mods_registerMod("mod_standout_foes", 0.1, "Standout foes");
local gt = this.getroottable();
// Alias to make it easier for us inside. Things are still global and accessible from outside,
// so if anyone will want to write a mod for this mod then it should be easy enough.
local sf = gt.StandoutFoes <- {};
local Debug = gt.StandoutFoes.Debug <- {};
@Suor
Suor / web-app.md
Last active March 2, 2020 07:27
Web App doc

Application

Language: Python 3.7.
Framework: Django, Django Rest Framework
Libraries: [django-allauth][], celery
Storage: PostgreSQL, Redis for cache and queues. May also use lazy queues over PostgreSQL, may shift non-lazy queues to RabbitMQ.

Front-end:

  • any popular framework chosen by front-end team,
@Suor
Suor / log_requests.py
Last active February 3, 2020 18:58
Log HTTP requests in Django
import re, logging
from django.conf import settings
from django.core.handlers.wsgi import STATUS_CODE_TEXT
req_handler = logging.FileHandler(settings.HOME_DIR + '/logs/requests.log')
req_handler.setLevel(logging.INFO)
formatter = logging.Formatter('[%(asctime)s] %(message)s')
req_handler.setFormatter(formatter)
@Suor
Suor / scrape.py
Created February 1, 2020 17:36
aioscrape perekrestok example
from aioscrape import settings, fetch, run
from parsechain import C
async def scrape():
resp = await fetch('https://www.perekrestok.ru/')
print(resp.css('.xf-product').map({
'id': C.attr('data-id').int,
'name': C.attr('data-gtm-product-name')
}))
@Suor
Suor / gen.py
Created August 19, 2019 14:16
Generate files
#!/usr/bin/env python3
import argparse
import os
import sys
import random
from funcy import re_find
from tqdm import tqdm
@Suor
Suor / compose_bench.py
Created September 4, 2018 06:54
Compare compose
def square (x):
return x ** 2
def increment (x):
return x + 1
def half (x):
return x / 2
@Suor
Suor / jinjalink_loader.py
Created May 14, 2011 12:08
Jinja2 template loader for django
@Suor
Suor / parse.py
Created June 23, 2018 11:00
Parse SWGOH zetas
import requests
import lxml.html
resp = requests.get('https://swgoh.gg/g/34508/darklightcrew/zetas/')
root = lxml.html.fromstring(resp.text)
rows = root.cssselect('.character-list table tbody tr')
for tr in rows:
nick = tr.cssselect('td:first-child')[0].attrib['data-sort-value']