Skip to content

Instantly share code, notes, and snippets.

View kennir's full-sized avatar
🏠
Working from home

Ken Zhang kennir

🏠
Working from home
View GitHub Profile
@kennir
kennir / EnemyFacade.Factory.cs
Created March 31, 2019 03:20 — forked from shayded-exe/EnemyFacade.Factory.cs
Dynamic Zenject enemy prefab factory
public partial class EnemyFacade : MonoBehaviour
{
public class Factory : Factory<EnemyType, EnemyTunables, EnemyFacade> { }
}
@kennir
kennir / mergeNoDup.js
Last active March 14, 2019 13:21
合并数组并且移除重复项
var c = array1.concat(array2.filter(function(i) {
return array1.indexOf(i) == -1;
}));
// LoadingScreenManager
// --------------------------------
// built by Martin Nerurkar (http://www.martin.nerurkar.de)
// for Nowhere Prophet (http://www.noprophet.com)
//
// Licensed under GNU General Public License v3.0
// http://www.gnu.org/licenses/gpl-3.0.txt
using UnityEngine;
using UnityEngine.UI;
static public void drawString(string text, Vector3 worldPos, Color? colour = null) {
UnityEditor.Handles.BeginGUI();
var restoreColor = GUI.color;
if (colour.HasValue) GUI.color = colour.Value;
var view = UnityEditor.SceneView.currentDrawingSceneView;
Vector3 screenPos = view.camera.WorldToScreenPoint(worldPos);
if (screenPos.y < 0 || screenPos.y > Screen.height || screenPos.x < 0 || screenPos.x > Screen.width || screenPos.z < 0)
@kennir
kennir / # protobuf250 - 2016-09-23_11-33-58.txt
Created September 23, 2016 03:35
protobuf250 (homebrew/versions/protobuf250) on macOS 10.12 - Homebrew build logs
Homebrew build logs for homebrew/versions/protobuf250 on macOS 10.12
Build date: 2016-09-23 11:33:58
@kennir
kennir / SpritesClippedShader.shader
Created July 13, 2016 05:58
Clipping sprite shader for Unity
Shader "Sprites/Clipped"
{
Properties
{
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
_Color ("Tint", Color) = (1,1,1,1)
[MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
_ClipX ("Clip X", Range(0.0, 2000.0)) = 0
_ClipY ("Clip Y", Range(0.0, 1000.0)) = 0
_Width ("Width", Range(0.0, 2000.0)) = 2000
Shader "Sprites/Gray"
{
Properties
{
[PerRendererData] _MainTex ("Sprite Texture", 2D) = "white" {}
_Color ("Tint", Color) = (1,1,1,1)
[MaterialToggle] PixelSnap ("Pixel snap", Float) = 0
}
SubShader
@kennir
kennir / CSVReader.cs
Created July 13, 2016 05:57
CSV Reader for unity
/*
CSVReader by Dock. (24/8/11)
http://starfruitgames.com
usage:
CSVReader.SplitCsvGrid(textString)
returns a 2D string array.
Drag onto a gameobject for a demo of CSV parsing.
@kennir
kennir / rotate_around.cs
Created July 13, 2016 05:57
RotateAround in Unity
void Update () {
//this.transform.RotateAround(this.transform.parent.position, this.transform.parent.up, 1);
MyRotateAround(this.transform.parent.position, this.transform.parent.up, 1);
}
void MyRotateAround(Vector3 pos, Vector3 up, float degree)
{
Quaternion q = Quaternion.AngleAxis(degree, up);
this.transform.position = q * (this.transform.position-pos) + pos;
@kennir
kennir / delete_column.sql
Created July 5, 2016 05:49
Delete column in sqlite3
BEGIN TRANSACTION;
CREATE TEMPORARY TABLE t1_backup(a,b);
INSERT INTO t1_backup SELECT a,b FROM t1;
DROP TABLE t1;
CREATE TABLE t1(a,b);
INSERT INTO t1 SELECT a,b FROM t1_backup;
DROP TABLE t1_backup;
COMMIT;